diff options
author | Steve Bennett <steveb@workware.net.au> | 2011-12-10 08:20:32 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2011-12-12 13:44:43 +1000 |
commit | bdc3729473a79b144cbdf49fddeb288b05ccc8f5 (patch) | |
tree | b219fc22b5ec26688c04281f9fda9d9839a67c2e /autosetup | |
parent | 9798fcccedb779101becaac5313afb80dbbd283d (diff) | |
download | jimtcl-bdc3729473a79b144cbdf49fddeb288b05ccc8f5.zip jimtcl-bdc3729473a79b144cbdf49fddeb288b05ccc8f5.tar.gz jimtcl-bdc3729473a79b144cbdf49fddeb288b05ccc8f5.tar.bz2 |
Better dynamic extension building
If libjim is built shared, ensure that all symbols are resolved.
This can't be done if libjim is built static.
Also, build-jim-ext now shows stderr from the compiler and linker
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'autosetup')
-rw-r--r-- | autosetup/cc-shared.tcl | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/autosetup/cc-shared.tcl b/autosetup/cc-shared.tcl index 204e06f..1ff9071 100644 --- a/autosetup/cc-shared.tcl +++ b/autosetup/cc-shared.tcl @@ -9,7 +9,8 @@ ## SH_CFLAGS Flags to use compiling sources destined for a shared library ## SH_LDFLAGS Flags to use linking a shared library ## SHOBJ_CFLAGS Flags to use compiling sources destined for a shared object -## SHOBJ_LDFLAGS Flags to use linking a shared object +## SHOBJ_LDFLAGS Flags to use linking a shared object, undefined symbols allowed +## SHOBJ_LDFLAGS_R - as above, but all symbols must be resolved ## SH_LINKFLAGS Flags to use linking an executable which will load shared objects ## LD_LIBRARY_PATH Environment variable which specifies path to shared libraries @@ -27,11 +28,13 @@ switch -glob -- [get-define host] { define SH_LDFLAGS "-dynamiclib" define SHOBJ_CFLAGS "-dynamic -fno-common" define SHOBJ_LDFLAGS "-bundle -undefined dynamic_lookup" + define SHOBJ_LDFLAGS_R "-bundle" define LD_LIBRARY_PATH DYLD_LIBRARY_PATH } *-*-ming* { define SH_LDFLAGS -shared define SHOBJ_LDFLAGS -shared + define SHOBJ_LDFLAGS_R -shared } *-*-cygwin { define SH_LDFLAGS -shared @@ -69,3 +72,7 @@ switch -glob -- [get-define host] { define SHOBJ_LDFLAGS -shared } } + +if {![is-defined SHOBJ_LDFLAGS_R]} { + define SHOBJ_LDFLAGS_R [get-define SHOBJ_LDFLAGS] +} |