Ensure we link against libraries in /lib instead of anywhere else and always use the linker in /libexec instead of anywhere else.
This commit is contained in:
parent
0ec43dfe47
commit
d4404ea9c7
@ -25,6 +25,8 @@ lib${LIB}.a: ${OBJS} ${STATICOBJS}
|
|||||||
|
|
||||||
${SHLIB_NAME}: ${VERSION_MAP}
|
${SHLIB_NAME}: ${VERSION_MAP}
|
||||||
LDFLAGS+= -Wl,--version-script=${VERSION_MAP}
|
LDFLAGS+= -Wl,--version-script=${VERSION_MAP}
|
||||||
|
# We need to ensure we use libraries in /lib
|
||||||
|
LDFLAGS+= -L/${LIBNAME} -Wl,-rpath=/${LIBNAME}
|
||||||
|
|
||||||
${SHLIB_NAME}: ${SOBJS}
|
${SHLIB_NAME}: ${SOBJS}
|
||||||
@${ECHO} building shared library $@
|
@${ECHO} building shared library $@
|
||||||
|
11
mk/prog.mk
11
mk/prog.mk
@ -8,11 +8,14 @@ OBJS+= ${SRCS:.c=.o}
|
|||||||
include ${MK}/sys.mk
|
include ${MK}/sys.mk
|
||||||
# Some systems don't include /lib in their standard link path
|
# Some systems don't include /lib in their standard link path
|
||||||
# so we should embed it if different
|
# so we should embed it if different
|
||||||
_RPATH_SH= if test "${SHLIBDIR}" != "/usr/${LIBNAME}"; then \
|
# This is currently hardcoded for NetBSD which has two dynamic linkers
|
||||||
echo "-Wl,-rpath=/${LIBNAME}"; \
|
# and we need to use the one in /libexec instead of /usr/libexec
|
||||||
|
_DYNLINK_SH= if test -e /libexec/ld.elf_so; then \
|
||||||
|
echo "-Wl,-dynamic-linker=/libexec/ld.elf_so"; \
|
||||||
fi
|
fi
|
||||||
_RPATH!= ${_RPATH_SH}
|
_DYNLINK!= ${_DYNLINK_SH}
|
||||||
LDFLAGS+= ${_RPATH}$(shell ${_RPATH_SH})
|
LDFLAGS+= ${_DYNLINK}$(shell ${_DYNLINK_SH})
|
||||||
|
LDFLAGS+= -Wl,-rpath=/${LIBNAME} -L/${LIBNAME}
|
||||||
LDFLAGS+= ${PROGLDFLAGS}
|
LDFLAGS+= ${PROGLDFLAGS}
|
||||||
|
|
||||||
all: depend ${PROG}
|
all: depend ${PROG}
|
||||||
|
Loading…
Reference in New Issue
Block a user