Ticket #274: tt274+shared-solaris.patch

File tt274+shared-solaris.patch, 4.0 KB (added by rurban, 5 years ago)
  • config/init/hints/solaris.pm

    old new  
    4040        %gnuc = eval $conf->cc_run() or die "Can't run the test program: $!"; 
    4141        if ( defined $gnuc{__GNUC__} ) { 
    4242            $link = 'g++'; 
    43         } 
    44         else { 
    45             $link =~ s/\bcc\b/CC/; 
     43            unless ($conf->data->get('rpath')) { 
     44                $conf->data->set( 'rpath', '-Wl,-rpath=' ); 
     45            } 
     46        } else { 
     47            unless ($conf->data->get('rpath')) { 
     48                $conf->data->set( 'rpath', '-R' ); 
     49            } 
    4650        } 
    4751        $conf->data->set( link => $link ); 
    4852        $conf->data->deltrigger( "cc", "solaris_link" ); 
     
    6468        else { 
    6569            $conf->data->set( cc_shared => '-KPIC' ); 
    6670        } 
     71        $conf->data->set( 'has_dynamic_linking', '1' ); 
     72        $conf->data->set( 'parrot_is_shared', '1' ); 
    6773        $conf->data->deltrigger( "gccversion", "solaris_cc_shared" ); 
    6874    }; 
    6975    $conf->data->settrigger( 
  • config/gen/makefiles/root.in

    old new  
    874874        $(LD) $(LD_SHARE_FLAGS) $(LDFLAGS) @ld_out@$@ @libparrot_soname@ \ 
    875875#IF(cygwin):            -Wl,--out-implib=libparrot.dll.a \ 
    876876#IF(win32 and cc==gcc):         -Wl,--out-implib=libparrot.lib \ 
    877                 $(O_FILES) $(C_LIBS) $(ICU_SHARED) 
     877                $(O_FILES) $(C_LIBS) $(ICU_SHARED) $(LINKFLAGS) 
    878878#IF(win32):     if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2 
    879879#IF(libparrot_shared_alias):    ( cd @blib_dir@ ; ln -sf @libparrot_shared@ @libparrot_shared_alias@ ) 
    880880 
  • PLATFORMS

    old new  
    1313Platform                     B8    Runloops      Feature Comp Test Inst YYYYMMDD 
    1414                                CGoto JIT EXEC   Thr Sig 
    1515-------------------------------------------------------------------------------- 
    16 cygwin1.5.25-x86-gcc3.4.4     4   Y    Y    -     -   -   Y    Y/6*1 ?  20080513 
     16cygwin1.5.25-x86-gcc3.4.4     4   Y    Y    -     -   -   Y    Y     Y  20090203 
    1717darwin8.11.1-x86-gcc4.0.1    ??   ?    ?    ?     ?   ?   Y    Y/1*3 ?  20081216 
    1818freebsd-x86-gcc-3.4.6             Y    ?    ?     ?   ?   Y    Y     ?  20080519 
    1919linux-x86-gcc4.1.2                Y    Y    ?     Y   Y   Y    Y     ?  20080617 
     
    4242linux-x86_64-gcc4.1.2         8   Y    -    -     Y   Y   Y    Y     ?  20080220 
    4343linux-x86_64-gcc4.3.2         8   Y    -    -     Y   Y   Y    Y     ?  20081118 
    4444opensolaris-x86-gcc_4.0.3     4   Y    Y    ?     ?   ?   Y    Y/2   ?  20080325 
     45opensolaris10-amd64-cc        8   Y    -    -     Y   -   Y    Y/24*2 ? 20090103 
    4546sol8-sparc-cc                B    -    -    -     -   -   -    Y/85  ?  20080818 
    4647sol8-sparc-gcc_4.1.0         B    -    -    -     -   -   -    Y/87  ?  20080818 
    4748win32-x86-mingw_gcc4.3.0          Y    Y    -     -   -   Y    Y/88  ?  20081203 
    48 win32-x64-msvc_9.0            8   -    N    -     -   -   Y    Y/51  ?  20081203 
     49win32-x86-msvc_6.0            4   -    Y    -     -   -   Y    Y/8   ?  20090103 
     50win32-x64-msvc_9.0            8   -    -    -     -   -   Y    Y/51  ?  20081203 
    4951win32-x64-mingw_gcc3.4.5      8   Y    Y    ?     ?   ?   Y    Y     ?  20081216 
    5052 
    5153Legend: 
     
    7476YYYYMMDD  The date tested. 
    7577 
    7678Remarks: 
    77 *1 need PATH=$PATH:$PWD/blib/lib to locate DLL 
    78 *2 gcc and cc defaults to 32bits on solaris 
     79*2 gcc and cc defaults to 32bits on solaris, for 64bit use 
     80   --ccflags='-m64 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TS_ERRNO' 
     81   --linkflags='-m64' 
    7982*3 http://rt.perl.org/rt3/Ticket/Display.html?id=60926 
    8083 
    8184The following configurations are also working on x86/linux (and possibly