[ping] [PATCH] Use EXEEXT and -no-undefined flag even on Unix.
Michael Haubenwallner
michael.haubenwallner at ssi-schaefer.com
Thu Nov 17 10:08:05 CET 2016
Hi Yutaka,
On 11/17/2016 06:36 AM, NIIBE Yutaka wrote:
> Hello,
>
> Thank you for your notification.
>
> On 11/17/2016 12:16 AM, Michael Haubenwallner wrote:
>> Ohw, Cygwin actually requires _no_ undefined symbols for shared libraries.
>
> I understand your points for Cygwin. For EXEEXT thing, I applied a
> part of your change, it's pushed to repo.
Thanks a lot!
> On 05/20/2016 05:19 PM, Michael Haubenwallner wrote:
>> * src/Makefile.am: Always use the -no-undefined libtool flag.
>> Use EXEEXT with gen-posix-lock-obj in extra make target.
>>
>> Cygwin is not identified as W32 system, but requires undefined symbols
>> to create a shared library. As the shared library should not have
>> undefined symbols anywhere at all, we can use the -no-undefined libtool
>> flag unconditionally.
>> Although Cygwin tries to hide the .exe extension in general, automake
>> uses EXEEXT with PROGRAMS targets, which we have to match here.
>
> Your change effects not only Cygwin but also other POSIX systems,
> because you remove the Make variable of no_undefined to force
> -no-undefined flag. It's good for Cygwin, but it's too radical
> for other systems.
While I'm fine with the no_undefined=-no-undefined workaround, would
you mind to elaborate why it's too radical for other systems?
>> @@ -288,8 +286,8 @@ else
>> pre_mkheader_cmds = :
>> parts_of_gpg_error_h += ./lock-obj-pub.native.h
>>
>> -./lock-obj-pub.native.h: Makefile gen-posix-lock-obj posix-lock-obj.h
>> - ./gen-posix-lock-obj >$@
>> +./lock-obj-pub.native.h: Makefile gen-posix-lock-obj$(EXEEXT) posix-lock-obj.h
>> + ./gen-posix-lock-obj$(EXEEXT) >$@
>> endif
>
> $(EXEEXT) is not needed to be invoked.
Indeed!
> The change will be in 1.26.
Thanks!
/haubi/
More information about the Gnupg-devel
mailing list