Subject: bug#47583: closed (Re: libtool no-suppress evaluated incorrectly)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 18 Mar 2024 16:11:02 +0000

Your bug report

#47583: libtool no-suppress evaluated incorrectly

which was filed against the libtool package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
47583: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=47583
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: libtool no-suppress evaluated incorrectly
From: Ileana Dumitrescu <[email-masked]>
To: [email-masked]
Date: Mon, 18 Mar 2024 17:46:37 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Thank you for your bug report!

This is the intended behaviour. The '-no-suppress' option is a
compile mode flag, and Section 4.1 of the libtool.pdf [1] should
contain a sufficient description for why this is.

[1] https://www.gnu.org/software/libtool/manual/libtool.pdf

-- 
Ileana Dumitrescu

GPG Public Key: FA26 CA78 4BE1 8892 7F22 B99F 6570 EA01 146F 7354

Subject: libtool no-suppress evaluated incorrectly
From: "Michal Ambroz" <[email-masked]>
To: <[email-masked]>
Date: Sat, 03 Apr 2021 17:35:54 +0200 (CEST)
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,
I believe it is bug that the "-no-suppress" option for is evaluated 
depending on the possition in the agruments for the --mode=compile.

This doesn't work:

$ /bin/sh ../libtool --tag=CC --mode=compile -no-suppress gcc -DHAVE_CONFIG_
H -I. -I..   -D _GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_
LARGE_FILES -pipe -D _GNU_SOURCE -I../include -Werror -Wall -g -O2 -flto=
auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -
Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -
specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -
specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64 -mtune=generic -
fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -
Wstrict-prototypes -c -o emu.lo emu.c

Usage: /home/mambroz/rpmbuild/BUILD/libemu-ab48695b7113db692982a1839e3d6eb9e
73e90a9/libtool [OPTION]... [MODE-ARG]...

Try 'libtool --help' for more information.

libtool:   error: unrecognised option: '-no-suppress'

Placing the option "-no-suppress" as any option after gcc works:

$ /bin/sh ../libtool --tag=CC --mode=compile gcc -no-suppress -DHAVE_CONFIG_
H -I. -I..   -D _GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_
LARGE_FILES -pipe -D _GNU_SOURCE -I../include -Werror -Wall -g -O2 -flto=
auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -
Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -
specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -
specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64 -mtune=generic -
fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -
Wstrict-prototypes -c -o emu.lo emu.c

OR this works as well

/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I..   -D
 _GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES -pipe
-D _GNU_SOURCE -I../include -Werror -Wall -g -O2 -flto=auto -ffat-lto-
objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-
security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/
rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/
redhat/redhat-annobin-cc1  -m64 -mtune=generic -fasynchronous-unwind-tables 
-fstack-clash-protection -fcf-protection -Wstrict-prototypes -c -o emu.lo 
emu.c -no-suppress

best regards

Michal Ambroz