diff --git a/Make.inc b/Make.inc index 6f93f108dd4c2..8d3178b10e001 100644 --- a/Make.inc +++ b/Make.inc @@ -654,7 +654,10 @@ endif ifeq ($(OS), Linux) OSLIBS += -ldl -lrt -lpthread -Wl,--export-dynamic -Wl,--version-script=$(JULIAHOME)/src/julia.expmap -Wl,--no-whole-archive $(LIBUNWIND) -JLDFLAGS = -Wl,-Bdynamic -Wl,-Bsymbolic-functions +JLDFLAGS = -Wl,-Bdynamic +JLIBLDFLAGS = -Wl,-Bsymbolic-functions +else +JLIBLDFLAGS = endif ifeq ($(OS), FreeBSD) diff --git a/src/Makefile b/src/Makefile index 7e79dd68329a4..6f6f8b128d963 100644 --- a/src/Makefile +++ b/src/Makefile @@ -94,7 +94,7 @@ CXXLD = $(LD) -dll -export:jl_setjmp -export:jl_longjmp endif $(build_shlibdir)/libjulia-debug.$(SHLIB_EXT): julia.expmap $(DOBJS) $(BUILDDIR)/flisp/libflisp-debug.a $(BUILDDIR)/support/libsupport-debug.a $(LIBUV) - @$(call PRINT_LINK, $(CXXLD) $(CXXLDFLAGS) $(DEBUGFLAGS) $(DOBJS) $(RPATH_ORIGIN) -o $@ $(LDFLAGS) $(DEBUG_LIBS)) + @$(call PRINT_LINK, $(CXXLD) $(CXXLDFLAGS) $(DEBUGFLAGS) $(DOBJS) $(RPATH_ORIGIN) -o $@ $(LDFLAGS) $(JLIBLDFLAGS) $(DEBUG_LIBS)) $(INSTALL_NAME_CMD)libjulia-debug.$(SHLIB_EXT) $@ $(DSYMUTIL) $@ $(BUILDDIR)/libjulia-debug.a: julia.expmap $(DOBJS) $(BUILDDIR)/flisp/libflisp-debug.a $(BUILDDIR)/support/libsupport-debug.a @@ -109,7 +109,7 @@ else endif $(build_shlibdir)/libjulia.$(SHLIB_EXT): julia.expmap $(OBJS) $(BUILDDIR)/flisp/libflisp.a $(BUILDDIR)/support/libsupport.a $(LIBUV) - @$(call PRINT_LINK, $(CXXLD) $(CXXLDFLAGS) $(SHIPFLAGS) $(OBJS) $(RPATH_ORIGIN) -o $@ $(LDFLAGS) $(RELEASE_LIBS) $(SONAME)) $(CXXLDFLAGS) + @$(call PRINT_LINK, $(CXXLD) $(CXXLDFLAGS) $(SHIPFLAGS) $(OBJS) $(RPATH_ORIGIN) -o $@ $(LDFLAGS) $(JLIBLDFLAGS) $(RELEASE_LIBS) $(SONAME)) $(CXXLDFLAGS) $(INSTALL_NAME_CMD)libjulia.$(SHLIB_EXT) $@ $(DSYMUTIL) $@ $(BUILDDIR)/libjulia.a: julia.expmap $(OBJS) $(BUILDDIR)/flisp/libflisp.a $(BUILDDIR)/support/libsupport.a