[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
-no-undefined
From: |
Gavin Smith |
Subject: |
-no-undefined |
Date: |
Wed, 13 Jan 2016 19:42:45 +0000 |
On 1 January 2016 at 14:36, Eli Zaretskii <address@hidden> wrote:
>> Is this the right fix? -
>>
>> Index: Makefile.am
>> ===================================================================
>> --- Makefile.am (revision 6893)
>> +++ Makefile.am (working copy)
>> @@ -78,14 +78,14 @@
>>
>> XSParagraph_la_CFLAGS += -DVERSION=\"$(VERSION)\"
>> -DXS_VERSION=\"$(XSPARAGRAPH_INTERFACE_VERSION)\" "-I$(PERL_INC)"
>>
>> -XSParagraph_la_LDFLAGS=-avoid-version -module $(PERL_CONF_cccdlflags)
>> +XSParagraph_la_LDFLAGS=-no-undefined -avoid-version -module
>> $(PERL_CONF_cccdlflags)
>>
>>
>> TestXS_la_CFLAGS = $(PERL_CONF_ccflags)
>>
>> TestXS_la_CFLAGS += -DVERSION=\"$(VERSION)\"
>> -DXS_VERSION=\"$(VERSION)\" "-I$(PERL_INC)"
>>
>> -TestXS_la_LDFLAGS=-module $(PERL_CONF_cccdlflags)
>> +TestXS_la_LDFLAGS=-no-undefined -module $(PERL_CONF_cccdlflags)
>
> Looks OK, thanks.
Apparent problem under Solaris 10 with this change. I've realised that
since SVN revision 6903, which made this change (adding
-no-undefined), the XS modules don't get used. From log at
https://buildfarm.opencsw.org/buildbot/builders/texinfo-solaris10-i386/builds/574/steps/shell_1/logs/stdio:
/bin/bash ./libtool --tag=CC --mode=link /opt/SUNWspro/bin/cc
-D_REENTRANT -I/opt/csw/bdb48/include -I/opt/csw/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPERL_USE_SAFE_PUTENV
-DVERSION=\"6.0\" -DXS_VERSION=\"6.0\"
"-I/opt/csw/lib/perl/5.10.1/CORE" -no-undefined -module -o
TestXS.la -rpath /usr/local/libexec/texinfo TestXS_la-TestXS.lo
libtool: link: /opt/SUNWspro/bin/cc -G -z defs -h TestXS.so.0 -o
.libs/TestXS.so.0.0.0 .libs/TestXS_la-TestXS.o -lc
Undefined first referenced
symbol in file
Perl_newSVpv .libs/TestXS_la-TestXS.o
Perl_vstringify .libs/TestXS_la-TestXS.o
Perl_croak .libs/TestXS_la-TestXS.o
Perl_sv_derived_from .libs/TestXS_la-TestXS.o
Perl_Istack_sp_ptr .libs/TestXS_la-TestXS.o
Perl_Icurpad_ptr .libs/TestXS_la-TestXS.o
Perl_get_sv .libs/TestXS_la-TestXS.o
Perl_Iunitcheckav_ptr .libs/TestXS_la-TestXS.o
Perl_croak_xs_usage .libs/TestXS_la-TestXS.o
Perl_form .libs/TestXS_la-TestXS.o
Perl_vcmp .libs/TestXS_la-TestXS.o
Perl_Iop_ptr .libs/TestXS_la-TestXS.o
Perl_newXS_flags .libs/TestXS_la-TestXS.o
Perl_sv_newmortal .libs/TestXS_la-TestXS.o
Perl_Isv_yes_ptr .libs/TestXS_la-TestXS.o
Perl_Istack_base_ptr .libs/TestXS_la-TestXS.o
Perl_sv_2pv_flags .libs/TestXS_la-TestXS.o
Perl_Imarkstack_ptr_ptr .libs/TestXS_la-TestXS.o
Perl_new_version .libs/TestXS_la-TestXS.o
Perl_Iscopestack_ix_ptr .libs/TestXS_la-TestXS.o
Perl_call_list .libs/TestXS_la-TestXS.o
ld: fatal: symbol referencing errors. No output written to .libs/TestXS.so.0.0.0
Makefile:914: recipe for target 'TestXS.la' failed
make: *** [TestXS.la] Error 1
no
Compare this with the log at
https://buildfarm.opencsw.org/buildbot/builders/texinfo-solaris10-i386/builds/573/steps/shell_1/logs/stdio:
/bin/bash ./libtool --tag=CC --mode=link /opt/SUNWspro/bin/cc
-D_REENTRANT -I/opt/csw/bdb48/include -I/opt/csw/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPERL_USE_SAFE_PUTENV
-DVERSION=\"6.0\" -DXS_VERSION=\"6.0\"
"-I/opt/csw/lib/perl/5.10.1/CORE" -module -o TestXS.la -rpath
/usr/local/libexec/texinfo TestXS_la-TestXS.lo
libtool: link: /opt/SUNWspro/bin/cc -G -h TestXS.so.0 -o
.libs/TestXS.so.0.0.0 .libs/TestXS_la-TestXS.o -lc
libtool: link: (cd ".libs" && rm -f "TestXS.so.0" && ln -s
"TestXS.so.0.0.0" "TestXS.so.0")
libtool: link: (cd ".libs" && rm -f "TestXS.so" && ln -s
"TestXS.so.0.0.0" "TestXS.so")
libtool: link: ar cru .libs/TestXS.a TestXS_la-TestXS.o
libtool: link: ranlib .libs/TestXS.a
libtool: link: ( cd ".libs" && rm -f "TestXS.la" && ln -s
"../TestXS.la" "TestXS.la" )
message from XS module
yes
It would appear to be inappropriate to add the -no-undefined flag
unconditionally.
- -no-undefined,
Gavin Smith <=
- Re: -no-undefined, Eli Zaretskii, 2016/01/13
- Re: -no-undefined, Ken Brown, 2016/01/13
- Re: -no-undefined, Gavin Smith, 2016/01/14
- Re: -no-undefined, Ken Brown, 2016/01/14
- Re: -no-undefined, Eli Zaretskii, 2016/01/14
- Re: -no-undefined, Gavin Smith, 2016/01/14
- Re: -no-undefined, Eli Zaretskii, 2016/01/14
- Re: -no-undefined, Gavin Smith, 2016/01/15
- Re: -no-undefined, Ken Brown, 2016/01/15
- Re: -no-undefined, Eli Zaretskii, 2016/01/15