зеркало из https://github.com/mozilla/gecko-dev.git
Bugzilla Bug 323977: use the "mapfile" (ld version script) on FreeBSD.
Build the freebl shared libraries with the -Bsymbolic flag for GNU ld. r=nelsonb. Thanks to Glenn Randers-Pehrson <glennrp@imagemagick.org> for reporting this bug and verifying these changes. Modified files: coreconf/FreeBSD.mk nss/lib/freebl/Makefile
This commit is contained in:
Родитель
26ab2d16ca
Коммит
d6b2459e61
|
@ -75,10 +75,10 @@ endif
|
|||
|
||||
MKSHLIB = $(CC) $(DSO_LDOPTS)
|
||||
ifdef MAPFILE
|
||||
# Add LD options to restrict exported symbols to those in the map file
|
||||
MKSHLIB += -Wl,--version-script,$(MAPFILE)
|
||||
endif
|
||||
# Change PROCESS to put the mapfile in the correct format for this platform
|
||||
PROCESS_MAP_FILE = cp $< $@
|
||||
PROCESS_MAP_FILE = grep -v ';-' $< | \
|
||||
sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@
|
||||
|
||||
G++INCLUDES = -I/usr/include/g++
|
||||
|
||||
|
|
|
@ -188,6 +188,17 @@ endif
|
|||
endif
|
||||
endif
|
||||
|
||||
# The blapi functions are defined not only in the freebl shared
|
||||
# libraries but also in the shared libraries linked with loader.c
|
||||
# (libsoftokn3.so and libssl3.so). We need to use GNU ld's
|
||||
# -Bsymbolic option or the equivalent option for other linkers
|
||||
# to bind the blapi function references in FREEBLVector vector
|
||||
# (ldvector.c) to the blapi functions defined in the freebl
|
||||
# shared libraries.
|
||||
ifeq (,$(filter-out BSD_OS FreeBSD Linux NetBSD, $(OS_TARGET)))
|
||||
MKSHLIB += -Wl,-Bsymbolic
|
||||
endif
|
||||
|
||||
ifeq ($(OS_TARGET),SunOS)
|
||||
|
||||
# The -R '$ORIGIN' linker option instructs this library to search for its
|
||||
|
|
Загрузка…
Ссылка в новой задаче