diff options
author | Pedro Giffuni <pfg@apache.org> | 2011-11-15 19:53:01 +0000 |
---|---|---|
committer | Pedro Giffuni <pfg@apache.org> | 2011-11-15 19:53:01 +0000 |
commit | 1f883f4b455b0aa1d5da165c5afe7af9343ad0c7 (patch) | |
tree | f83f1d85a14f79a44b2db472c6f591348887e1b5 /solenv | |
parent | 9145ee498f57707ebfd8cea5533baa4c552a9eb3 (diff) |
FreeBSD port: more configuration updates. Add support for alternative ptmalloc and tcmalloc.
Diffstat (limited to 'solenv')
-rw-r--r-- | solenv/inc/unxfbsd.mk | 59 | ||||
-rw-r--r-- | solenv/inc/unxfbsdi.mk | 3 | ||||
-rw-r--r-- | solenv/inc/unxfbsdx.mk | 2 |
3 files changed, 46 insertions, 18 deletions
diff --git a/solenv/inc/unxfbsd.mk b/solenv/inc/unxfbsd.mk index 1657bcd0f465..ed930987db4a 100644 --- a/solenv/inc/unxfbsd.mk +++ b/solenv/inc/unxfbsd.mk @@ -31,6 +31,7 @@ ASM= AFLAGS= SOLAR_JAVA*= +PICSWITCH*:=-fpic JAVAFLAGSDEBUG=-g # Include arch specific makefile. @@ -68,7 +69,7 @@ CXX*=g++ # name of C Compiler CC*=gcc .IF "$(SYSBASE)"!="" -CFLAGS_SYSBASE:=-isystem $(SYSBASE)/usr/include +CFLAGS_SYSBASE:=--sysroot=$(SYSBASE) CXX+:=$(CFLAGS_SYSBASE) CC+:=$(CFLAGS_SYSBASE) .ENDIF # "$(SYSBASE)"!="" @@ -91,7 +92,6 @@ CFLAGS_NO_EXCEPTIONS=-fno-exceptions # -fpermissive should be removed as soon as possible CFLAGSCXX= -pipe $(ARCH_FLAGS) -PICSWITCH:=-fpic .IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE" CFLAGSCXX += -fvisibility-inlines-hidden .ENDIF # "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE" @@ -136,20 +136,26 @@ LINK*=$(CXX) LINKC*=$(CC) # default linker flags -LINKFLAGSDEFS*=#-Wl,-z,defs -LINKFLAGSRUNPATH_URELIB=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN'\' -LINKFLAGSRUNPATH_UREBIN=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\' +.IF "$(SYSBASE)"!="" +LINKFLAGS_SYSBASE:=-Wl,--sysroot=$(SYSBASE) +.ENDIF # "$(SYSBASE)"!="" +LINKFLAGSDEFS*=-Wl,-z,defs +LINKFLAGSRUNPATH_URELIB=-Wl,-rpath,\''$$ORIGIN'\' +LINKFLAGSRUNPATH_UREBIN=-Wl,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\' #TODO: drop $ORIGIN once no URE executable is also shipped in OOo -LINKFLAGSRUNPATH_OOO=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\' -LINKFLAGSRUNPATH_SDK=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN/../../ure-link/lib'\' -LINKFLAGSRUNPATH_BRAND=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\' +LINKFLAGSRUNPATH_OOO=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\' +LINKFLAGSRUNPATH_SDK=-Wl,-rpath,\''$$ORIGIN/../../ure-link/lib'\' +LINKFLAGSRUNPATH_BRAND=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../basis-link/program:$$ORIGIN/../basis-link/ure-link/lib'\' LINKFLAGSRUNPATH_OXT= +LINKFLAGSRUNPATH_BOXT=-Wl,-rpath,\''$$ORIGIN/../../../basis-link/program'\' LINKFLAGSRUNPATH_NONE= -LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS) +LINKFLAGS=-Wl,-z,combreloc $(LINKFLAGSDEFS) $(LINKFLAGS_SYSBASE) # linker flags for linking applications -LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec -LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec +LINKFLAGSAPPGUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \ + -Wl,-rpath-link,$(LB):$(SOLARLIBDIR):$(SYSBASE)/lib:$(SYSBASE)/usr/lib +LINKFLAGSAPPCUI= -Wl,-export-dynamic -Wl,--noinhibit-exec \ + -Wl,-rpath-link,$(LB):$(SOLARLIBDIR):$(SYSBASE)/lib:$(SYSBASE)/usr/lib # linker flags for linking shared libraries LINKFLAGSSHLGUI= -shared @@ -172,18 +178,38 @@ SONAME_SWITCH=-Wl,-h STDLIBCPP=-lstdc++ # default objectfilenames to link -STDOBJVCL=$(L)/salmain.o +STDOBJVCL=$(L)$/salmain.o STDOBJGUI= STDSLOGUI= STDOBJCUI= STDSLOCUI= +.IF "$(ALLOC)" == "PTMALLOC" +STDLIBGUIMT+=-lptmalloc +STDLIBCUIMT+=-lptmalloc +STDSHLGUIMT+=-lptmalloc +STDSHLCUIMT+=-lptmalloc +.ELIF "$(ALLOC)" == "TCMALLOC" +STDLIBGUIMT+=-ltcmalloc +STDLIBCUIMT+=-ltcmalloc +STDSHLGUIMT+=-ltcmalloc +STDSHLCUIMT+=-ltcmalloc +.ENDIF + +.IF "$(HAVE_LD_HASH_STYLE)" == "TRUE" +LINKFLAGS += -Wl,--hash-style=both +.ELSE +LINKFLAGS += -Wl,-zdynsort +.ENDIF + # libraries for linking applications -STDLIBGUIMT=-lX11 $(PTHREAD_LIBS) -lm -STDLIBCUIMT=$(PTHREAD_LIBS) -lm +STDLIBGUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed +STDLIBCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed # libraries for linking shared libraries -STDSHLGUIMT=-lX11 -lXext $(PTHREAD_LIBS) -lm -STDSHLCUIMT=$(PTHREAD_LIBS) -lm +STDSHLGUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed +STDSHLCUIMT+=-Wl,--as-needed $(PTHREAD_LIBS) -lm -Wl,--no-as-needed + +X11LINK_DYNAMIC = -Wl,--as-needed -lXext -lX11 -Wl,--no-as-needed LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive @@ -227,3 +253,4 @@ RCSETVERSION= # platform specific identifier for shared libs DLLPRE=lib DLLPOST=.so +PCHPOST=.gch
\ No newline at end of file diff --git a/solenv/inc/unxfbsdi.mk b/solenv/inc/unxfbsdi.mk index aaaf81d27375..22fbac2db4fe 100644 --- a/solenv/inc/unxfbsdi.mk +++ b/solenv/inc/unxfbsdi.mk @@ -26,7 +26,7 @@ #************************************************************************* # -# FreBSD/i386 specific defines +# FreeBSD/i386 specific defines # CDEFS+=-DX86 @@ -43,4 +43,5 @@ CFLAGSOPT= # no optimizing for non products .ENDIF # "$(PRODUCT)"!="" # platform specific identifier for shared libs +DLLPOST=.so DLLPOSTFIX= diff --git a/solenv/inc/unxfbsdx.mk b/solenv/inc/unxfbsdx.mk index 7d97cea90d17..2e8c43af7242 100644 --- a/solenv/inc/unxfbsdx.mk +++ b/solenv/inc/unxfbsdx.mk @@ -26,7 +26,7 @@ #************************************************************************* # -# FreBSD/amd64 specific defines +# FreeBSD/amd64 specific defines # CDEFS+=-DX86_64 |