Hello,
I want to apply the attached bootstrap patch. It disables the very
interesting feature of creating unusable binaries when one gets unlucky.
From 'man ld':
--noinhibit-exec
Retain the executable output file whenever it is still usable. Normally, the
linker will not produce an output file if it encounters errors during the
link process; it exits without writing an output file when it issues any
error whatsoever.
Binutils developers apparently have a very relaxed definition of usable,
because this option can lead to binaries that are very unusable without
advanced hackery. Specifically, I've found out about this because when
kdefilepicker (a helper binary for KDE3 support) gets linked against the
wrong version of kdelibs, ld will report all the undefined references,
hardcode the KDE4 .so number and then will happily "successfully" finish
creating the binary, no matter how useless it is in the end.
I'm not quite sure about the HP part of the patch, but since I assume there
the ld option has the same brain-damaged result and I see no good reason for
that option's existence anywhere in LO, I've included it in the removal too.
--
Lubos Lunak
l.lunak@suse.cz
diff --git a/solenv/inc/unxfbsd.mk b/solenv/inc/unxfbsd.mk
index 4a22bea..9266d5d 100644
--- a/solenv/inc/unxfbsd.mk
+++ b/solenv/inc/unxfbsd.mk
@@ -148,8 +148,8 @@ LINKFLAGSRUNPATH_NONE=
LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS)
# linker flags for linking applications
-LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
-LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec
+LINKFLAGSAPPGUI= -Wl,-export-dynamic
+LINKFLAGSAPPCUI= -Wl,-export-dynamic
# linker flags for linking shared libraries
LINKFLAGSSHLGUI= -shared
diff --git a/solenv/inc/unxgcc.mk b/solenv/inc/unxgcc.mk
index 4688b25..c090024 100644
--- a/solenv/inc/unxgcc.mk
+++ b/solenv/inc/unxgcc.mk
@@ -176,9 +176,9 @@ LINKFLAGS += -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-l
.ENDIF
# linker flags for linking applications
-LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \
+LINKFLAGSAPPGUI= -Wl,-export-dynamic \
-Wl,-rpath-link,$(LB):$(SOLARLIBDIR)
-LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \
+LINKFLAGSAPPCUI= -Wl,-export-dynamic \
-Wl,-rpath-link,$(LB):$(SOLARLIBDIR)
# linker flags for linking shared libraries
diff --git a/solenv/inc/unxhpgr.mk b/solenv/inc/unxhpgr.mk
index 9ac0c7e..fa5c4a5 100644
--- a/solenv/inc/unxhpgr.mk
+++ b/solenv/inc/unxhpgr.mk
@@ -79,9 +79,9 @@ DYNAMIC = -Bdynamic
LINK=ld
LINKFLAGS=-L/nw386/dev/s/solenv/unxhpgr/lib/gcc-lib/hppa1.1-hp-hpux10.20/egcs-2.91.57/threads
-L/nw386/dev/s/solenv/unxhpgr/lib/gcc-lib/hppa1.1-hp-hpux10.20/egcs-2.91.57
LINKFLAGSAPPGUI= /usr/lib/crt0.o
-LINKFLAGSSHLGUI= -b -noinhibit-exec -Bsymbolic -G $(THREADLIB)
+LINKFLAGSSHLGUI= -b -Bsymbolic -G $(THREADLIB)
LINKFLAGSAPPCUI= /usr/lib/crt0.o
-LINKFLAGSSHLCUI= -b -noinhibit-exec -warn-once -Bsymbolic -G
+LINKFLAGSSHLCUI= -b -warn-once -Bsymbolic -G
LINKFLAGSTACK=
APPLINKSTATIC=-Bstatic
APPLINKSHARED=-Bsymbolic
Context
- [Libreoffice] [PATCH] Get rid of --noinhibit-exec · Lubos Lunak
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.