[svn:parrot] r36551 - in trunk: . config/init/hints

rurban at svn.parrot.org rurban at svn.parrot.org
Tue Feb 10 17:46:49 UTC 2009


Author: rurban
Date: Tue Feb 10 17:46:48 2009
New Revision: 36551
URL: https://trac.parrot.org/parrot/changeset/36551

Log:
TT #274: renable solaris builds for 64bit, gcc and sunpro cc
* use --ldflags and no --linkflags
* enable --rpath and shared linking
* disable the 'CC -G' hack as it doesn't correctly link in 
  contrast to the default perl5 linker 'cc -G'
* update PLATFORMS

Modified:
   trunk/PLATFORMS
   trunk/config/init/hints/solaris.pm

Modified: trunk/PLATFORMS
==============================================================================
--- trunk/PLATFORMS	Tue Feb 10 17:42:39 2009	(r36550)
+++ trunk/PLATFORMS	Tue Feb 10 17:46:48 2009	(r36551)
@@ -13,7 +13,7 @@
 Platform                     B8    Runloops      Feature Comp Test Inst YYYYMMDD
                                 CGoto JIT EXEC   Thr Sig
 --------------------------------------------------------------------------------
-cygwin1.5.25-x86-gcc3.4.4     4   Y    Y    -     -   -   Y    Y/6*1 ?  20080513
+cygwin1.5.25-x86-gcc3.4.4     4   Y    Y    -     -   -   Y    Y     Y  20090203
 darwin8.11.1-x86-gcc4.0.1    ??   ?    ?    ?     ?   ?   Y    Y/1*3 ?  20081216
 freebsd-x86-gcc-3.4.6             Y    ?    ?     ?   ?   Y    Y     ?  20080519
 linux-x86-gcc4.1.2                Y    Y    ?     Y   Y   Y    Y     ?  20080617
@@ -23,7 +23,7 @@
 linux-x86-gcc4.3.2                Y    Y    ?     Y   Y   Y    Y     ?  20081030
 linux-x86-llvm-gcc-4.2            Y    Y    ?     ?   ?   Y    Y     ?  20080801
 sol10-sparc-cc_5.9           B4*2 Y    -    -     Y   Y   Y    Y     ?  20080510
-sol10-sparc-cc_5.9           B8   Y    -    -     Y   Y   Y    Y/2   ?  20080518
+sol10-sparc-cc_5.9           B8   Y    -    -     Y   Y   Y    Y/3*2 ?  20090103
 sol10-sparc-gcc_4.0.2        B4*2 Y    -    -     Y   Y   Y    Y/1   ?  20080510
 sol10-sparc-gcc_4.0.2        B8   Y    -    -     Y   Y   Y    Y/2   ?  20080518
 win32-x86-mingw_gcc3.4.5          Y    Y    -     -   -   Y    Y     Y  20090120
@@ -45,8 +45,9 @@
 sol8-sparc-cc                B    -    -    -     -   -   -    Y/85  ?  20080818
 sol8-sparc-gcc_4.1.0         B    -    -    -     -   -   -    Y/87  ?  20080818
 win32-x86-mingw_gcc4.3.0          Y    Y    -     -   -   Y    Y/88  ?  20081203
-win32-x64-msvc_9.0            8   -    N    -     -   -   Y    Y/51  ?  20081203
-win32-x64-mingw_gcc3.4.5      8   Y    Y    ?     ?   ?   Y    Y     ?  20081216
+win32-x86-msvc_6.0            4   -    Y    -     -   -   Y    Y/8   ?  20090103
+win32-x64-msvc_9.0            8   -    -    -     -   -   Y    Y/51  ?  20081203
+win32-x64-mingw_gcc3.4.5      8   Y    Y    ?     ?   ?   Y    Y     ?  20090210
 
 Legend:
 ?   ... unknown or untested
@@ -74,8 +75,9 @@
 YYYYMMDD  The date tested.
 
 Remarks:
-*1 need PATH=$PATH:$PWD/blib/lib to locate DLL
-*2 gcc and cc defaults to 32bits on solaris
+*2 gcc and cc defaults to 32bits on solaris, for 64bit use
+   --ccflags='-m64 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TS_ERRNO'
+   --ldflags='-m64'
 *3 http://rt.perl.org/rt3/Ticket/Display.html?id=60926
 
 The following configurations are also working on x86/linux (and possibly

Modified: trunk/config/init/hints/solaris.pm
==============================================================================
--- trunk/config/init/hints/solaris.pm	Tue Feb 10 17:42:39 2009	(r36550)
+++ trunk/config/init/hints/solaris.pm	Tue Feb 10 17:46:48 2009	(r36551)
@@ -40,9 +40,14 @@
         %gnuc = eval $conf->cc_run() or die "Can't run the test program: $!";
         if ( defined $gnuc{__GNUC__} ) {
             $link = 'g++';
+            unless ($conf->data->get('rpath')) {
+                $conf->data->set( 'rpath', '-Wl,-rpath=' );
+            }
         }
         else {
-            $link =~ s/\bcc\b/CC/;
+            unless ($conf->data->get('rpath')) {
+                $conf->data->set( 'rpath', '-R' );
+            }
         }
         $conf->data->set( link => $link );
         $conf->data->deltrigger( "cc", "solaris_link" );
@@ -64,6 +69,8 @@
         else {
             $conf->data->set( cc_shared => '-KPIC' );
         }
+        $conf->data->set( 'has_dynamic_linking', '1' );
+        $conf->data->set( 'parrot_is_shared', '1' );
         $conf->data->deltrigger( "gccversion", "solaris_cc_shared" );
     };
     $conf->data->settrigger(


More information about the parrot-commits mailing list