Index: configure.ac ================================================================== --- configure.ac +++ configure.ac @@ -121,10 +121,17 @@ AC_SUBST(OFPLUGINTESTS_M, "OFPluginTests.m") AC_SUBST(TESTPLUGIN, "plugin") AC_DEFINE(OF_PLUGINS, 1, [Whether we have plugin support]) AC_SUBST(OFPLUGINS_DEF, "-DOF_PLUGINS") fi + +case "$host_os" in + darwin*) + AC_SUBST(REEXPORT_LIBOBJC, [-Wl,-reexport-lobjc]) + AC_SUBST(LDFLAGS_REEXPORT, [-Wl,-reexport-lobjfw]) + ;; +esac AC_C_BIGENDIAN([ AC_DEFINE(OF_BIG_ENDIAN, 1, [Whether we are big endian]) AC_SUBST(ENDIANESS_DEF, "-DOF_BIG_ENDIAN")]) Index: extra.mk.in ================================================================== --- extra.mk.in +++ extra.mk.in @@ -9,9 +9,10 @@ OFPLUGIN_M = @OFPLUGIN_M@ OFPLUGINTESTS_M = @OFPLUGINTESTS_M@ OFTHREAD_M = @OFTHREAD_M@ OFTHREADTESTS_M = @OFTHREADTESTS_M@ PROPERTIESTESTS_M = @PROPERTIESTESTS_M@ +REEXPORT_LIBOBJC = @REEXPORT_LIBOBJC@ TESTPLUGIN = @TESTPLUGIN@ TESTS = @TESTS@ TEST_LAUNCHER = @TEST_LAUNCHER@ THREADING_H = @THREADING_H@ Index: src/Makefile ================================================================== --- src/Makefile +++ src/Makefile @@ -49,5 +49,6 @@ include ../buildsys.mk CPPFLAGS += -I.. ${LIB_CPPFLAGS} OBJCFLAGS += ${LIB_CFLAGS} LD = ${OBJC} +LDFLAGS += ${REEXPORT_LIBOBJC} Index: utils/objfw-config.in ================================================================== --- utils/objfw-config.in +++ utils/objfw-config.in @@ -8,10 +8,11 @@ OBJC="@OBJC@" OBJCFLAGS="@GNU_RUNTIME@ -fexceptions -fobjc-exceptions" OBJCFLAGS="$OBJCFLAGS -fconstant-string-class=OFConstString" OBJCFLAGS="$OBJCFLAGS @NO_CONST_CFSTRINGS@ @NO_WARN_UNUSED@ @ATOMIC_OBJCFLAGS@" LDFLAGS="" +LDFLAGS_REEXPORT="@LDFLAGS_REEXPORT@" LDFLAGS_RPATH="@LDFLAGS_RPATH@" LIBS="-L${libdir} -lobjfw @LIBS@" VERSION="0.4-dev" show_help() { @@ -23,10 +24,11 @@ --cppflags Outputs the required CPPFLAGS --cxxflags Outputs the required CXXFLAGS --objc Outputs the OBJC used to compile ObjFW --objcflags Outputs the required OBJCFLAGS --ldflags Outputs the required LDFLAGS + --reexport Outputs LDFLAGS to reexport ObjFW --rpath Outputs LDFLAGS for using rpath --libs Outputs the required LIBS --version Outputs the installed version __EOF__ exit 0 @@ -40,11 +42,12 @@ echo "$CFLAGS" echo "$CPPFLAGS" echo "$CXXFLAGS" echo "$OBJCFLAGS" echo "$LDFLAGS" - echo "$RPATH_LDFLAGS" + echo "$LDFLAGS_REEXPORT" + echo "$LDFLAGS_RPATH" echo "$LIBS" ;; --cflags) echo "$CFLAGS" ;; @@ -64,10 +67,13 @@ echo "$LIBS" ;; --ldflags) echo "$LDFLAGS" ;; + --reexport) + echo "$LDFLAGS_REEXPORT" + ;; --rpath) echo "$LDFLAGS_RPATH" ;; --version) echo "$VERSION"