libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: dotnet platform support / gnu config.sub (long)


From: Guido Draheim
Subject: Re: dotnet platform support / gnu config.sub (long)
Date: Fri, 03 Oct 2003 13:11:10 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030313



Jim Pick wrote:

Anyways, the config.sub name is just going to be used to define a
"target" - so it makes sense to call the target "Java", since it's only
going to be used by tools generating Java byte code, which will run on
Sun's JVM.  Of course it will still run on other virtual machines that
can't use the Java trademark, but that shouldn't be of any concern to
the tools generating the code, IMHO.


Yes, in the java world it is pretty strict what there is as names for the
machine and language. My original mail was asking for a similar thing
in the dotnet world where microsoft has used "il" internally for its vm,
it was submitted as "cil" to ecma, the binaries get executed with "ilrun",
the class platform is now named "dotnet", and the language is not strictly
specified but "csharp" being new to the flock and sent in for standard in
in the dotnet world as well.

While java does have mostly its own toolchain from .java to .jar parts,
there are tools in the ilvm world that convert .c/.cpp to an ilrun .exe,
including free tools. That spawned the idea to make the platform be
recognized as a crosscompile build target by the usual gnu build tools
that also handle .c/.cpp input sources, and with config.sub heading off
and trying to get a canonic form of whatever of the dozen of names is given
on the commandline.

We could as well clean out the java canonicalization from the patch that
I would like to see put into gnu config, - yet as far as the discussion
has shown the current scheme would still be good and usable around and
in free projects as well. In consequence, the proposed scheme to identify
vm-type platforms would be better supported by its examples living in
config.sub from there on, calling them a *vm-* something $host. That
would be great.

BJE, what do you get from the discussion?       Revised patch attached.
cheers,
-- guido                                  http://google.de/search?q=guidod
GCS/E/S/P C++/++++$ ULHS L++w- N++@ d(+-) s+a- r+@>+++ y++ 5++X- (geekcode)
Index: config.sub
===================================================================
RCS file: /cvsroot/config/config/config.sub,v
retrieving revision 1.289
diff -u -r1.289 config.sub
--- config.sub  3 Oct 2003 00:17:36 -0000       1.289
+++ config.sub  3 Oct 2003 11:05:04 -0000
@@ -3,7 +3,7 @@
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
 #   2000, 2001, 2002, 2003 Free Software Foundation, Inc.
 
-timestamp='2003-08-18'
+timestamp='2003-10-03'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -218,6 +218,8 @@
                basic_machine=m68k-atari
                os=-mint
                ;;
+        -jdk | -j2*)
+                os="-java$os"
 esac
 
 # Decode aliases for certain CPU-COMPANY combinations.
@@ -602,6 +604,22 @@
                basic_machine=i386-unknown
                os=-vsta
                ;;
+        cil | ilvm | ilrun)
+                basic_machine=ilvm-pc
+                os=`echo "-ilrun$os" | sed -e 's/ilrun-ilrun/ilrun/'`
+                ;;
+        cil32 | ilvm32 | ilrun32)
+                basic_machine=ilvm32-pc
+                os=`echo "-ilrun$os" | sed -e 's/ilrun-ilrun/ilrun/'`
+                ;;
+        cil-* | ilvm-* | ilrun-*)
+                basic_machine=`echo "$basic_machine" | sed -e 's/^[^-]*/ilvm/'`
+                os=`echo "-ilrun$os" | sed -e 's/ilrun-ilrun/ilrun/'`
+                ;;
+        cil32-* | ilvm32-* | ilrun32-*)
+                basic_machine=`echo "$basic_machine" | sed -e 
's/^[^-]*/ilvm32/'`
+                os=`echo "-ilrun$os" | sed -e 's/ilrun-ilrun/ilrun/'`
+                ;;
        iris | iris4d)
                basic_machine=mips-sgi
                case $os in
@@ -616,6 +634,14 @@
                basic_machine=m68k-isi
                os=-sysv
                ;;
+        jvm | java | jvm-java)
+               basic_machine=jvm-unknown
+                os=`echo "-java$os" | sed -e 's/java-java/java/'`
+                ;;
+        jvm-* | java-*)
+                basic_machine=`echo "$basic_machine" | sed -e 's/^java/jvm/'`
+                os=`echo "-java$os" | sed -e 's/java-java/java/'`
+                ;;
        m88k-omron*)
                basic_machine=m88k-omron
                ;;
@@ -824,6 +850,14 @@
                basic_machine=i586-unknown
                os=-pw32
                ;;
+        pyvm | python)
+               basic_machine=pyvm-unknown
+                os=`echo "-python$os" | sed -e 's/python-python/python/'`
+                ;;
+        pyvm-* | python-*)
+               basic_machine=`echo "$basic_machine" | sed -e 's/^python/pyvm/'`
+                os=`echo "-python$os" | sed -e 's/python-python/python/'`
+                ;;
        rom68k)
                basic_machine=m68k-rom68k
                os=-coff
@@ -1143,7 +1177,8 @@
              | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
              | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
              | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-             | -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
+             | -powermax* | -dnix* | -nx6 | -nx7 | -sei* \
+             | -java* | -ilrun* | -python*)
        # Remember, each alternative MUST END IN *, to match a version number.
                ;;
        -qnx*)
@@ -1425,6 +1460,15 @@
        *-atari*)
                os=-mint
                ;;
+        ilvm-* | ilvm32-*)
+                os=`echo "-ilrun$os" | sed -e 's/ilrun-ilrun/ilrun/'`
+                ;;
+        jvm-*)
+                os=`echo "-java$os" | sed -e 's/java-java/java/'`
+                ;;
+        pyvm-*)
+                os=`echo "-python$os" | sed -e 's/python-python/python/'`
+                ;;
        *)
                os=-none
                ;;

reply via email to

[Prev in Thread] Current Thread [Next in Thread]