mirror of
https://github.com/gnustep/tools-make.git
synced 2025-04-23 22:33:28 +00:00
Fixed gnustep-make to use -lobjc_gc when GNU Objective-C garbage collection is being used
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@28154 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
79258a2351
commit
34aba0d7bf
4 changed files with 66 additions and 19 deletions
|
@ -1,3 +1,10 @@
|
|||
2009-03-30 Nicola Pero <nicola.pero@meta-innovation.com>
|
||||
|
||||
* configure.ac, library-combo.make: Fixed to automatically use
|
||||
-lobjc_gc for the GNU Objective-C runtime with garbage collection
|
||||
if no --with-objc-lib-flag=... is used in configure.
|
||||
* configure: Regenerated.
|
||||
|
||||
2009-03-30 Nicola Pero <nicola.pero@meta-innovation.com>
|
||||
|
||||
From a suggestion by Truls Becken <truls.becken@gmail.com>:
|
||||
|
|
33
configure
vendored
33
configure
vendored
|
@ -5327,33 +5327,48 @@ else
|
|||
|
||||
fi
|
||||
|
||||
if test "$OBJC_LIB_FLAG" = ""; then
|
||||
OBJC_LIB_FLAG="-lobjc"
|
||||
fi
|
||||
{ echo "$as_me:$LINENO: result: $OBJC_LIB_FLAG" >&5
|
||||
echo "${ECHO_T}$OBJC_LIB_FLAG" >&6; }
|
||||
# We pass the flag, unchanged, to gnustep-make - if it's empty,
|
||||
# gnustep-make will be free to use -lobjc or -lobjc_gc depending on
|
||||
# the case.
|
||||
|
||||
|
||||
# But we need to compute, and print out, what flag we're using now.
|
||||
OBJC_FINAL_LIB_FLAG="$OBJC_LIB_FLAG"
|
||||
|
||||
saved_CFLAGS="$CFLAGS"
|
||||
saved_LIBS="$LIBS"
|
||||
CFLAGS="$CFLAGS -x objective-c -I$srcdir $OBJC_CPPFLAGS $OBJC_LDFLAGS"
|
||||
if test "$OBJC_RUNTIME_LIB" = "gnu"; then
|
||||
CFLAGS="$CFLAGS -fgnu-runtime -DGNU_RUNTIME"
|
||||
OBJCRT="$OBJC_LIB_FLAG"
|
||||
if test "$OBJC_FINAL_LIB_FLAG" = ""; then
|
||||
OBJC_FINAL_LIB_FLAG=-lobjc
|
||||
fi
|
||||
OBJCRT="$OBJC_FINAL_LIB_FLAG"
|
||||
fi
|
||||
if test "$OBJC_RUNTIME_LIB" = "gnugc"; then
|
||||
CFLAGS="$CFLAGS -fgnu-runtime -DGNU_RUNTIME"
|
||||
OBJCRT="$OBJC_LIB_FLAG -ldl -lgc"
|
||||
if test "$OBJC_FINAL_LIB_FLAG" = ""; then
|
||||
OBJC_FINAL_LIB_FLAG=-lobjc_gc
|
||||
fi
|
||||
OBJCRT="$OBJC_FINAL_LIB_FLAG -ldl -lgc"
|
||||
fi
|
||||
if test "$OBJC_RUNTIME_LIB" = "nx"; then
|
||||
CFLAGS="$CFLAGS -DNeXT_RUNTIME"
|
||||
OBJCRT="$OBJC_LIB_FLAG"
|
||||
if test "$OBJC_FINAL_LIB_FLAG" = ""; then
|
||||
OBJC_FINAL_LIB_FLAG=-lobjc
|
||||
fi
|
||||
OBJCRT="$OBJC_FINAL_LIB_FLAG"
|
||||
fi
|
||||
if test "$OBJC_RUNTIME_LIB" = "apple"; then
|
||||
CFLAGS="$CFLAGS -DAPPLE_RUNTIME"
|
||||
OBJCRT="$OBJC_LIB_FLAG"
|
||||
if test "$OBJC_FINAL_LIB_FLAG" = ""; then
|
||||
OBJC_FINAL_LIB_FLAG=-lobjc
|
||||
fi
|
||||
OBJCRT="$OBJC_FINAL_LIB_FLAG"
|
||||
fi
|
||||
|
||||
{ echo "$as_me:$LINENO: result: $OBJC_FINAL_LIB_FLAG" >&5
|
||||
echo "${ECHO_T}$OBJC_FINAL_LIB_FLAG" >&6; }
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
# Check if libobjc was compiled with thread support.
|
||||
|
|
31
configure.ac
31
configure.ac
|
@ -1147,32 +1147,47 @@ AC_ARG_WITH(objc-lib-flag,[
|
|||
OBJC_LIB_FLAG="$withval",
|
||||
OBJC_LIB_FLAG=""
|
||||
)
|
||||
if test "$OBJC_LIB_FLAG" = ""; then
|
||||
OBJC_LIB_FLAG="-lobjc"
|
||||
fi
|
||||
AC_MSG_RESULT($OBJC_LIB_FLAG)
|
||||
# We pass the flag, unchanged, to gnustep-make - if it's empty,
|
||||
# gnustep-make will be free to use -lobjc or -lobjc_gc depending on
|
||||
# the case.
|
||||
AC_SUBST(OBJC_LIB_FLAG)
|
||||
|
||||
# But we need to compute, and print out, what flag we're using now.
|
||||
OBJC_FINAL_LIB_FLAG="$OBJC_LIB_FLAG"
|
||||
|
||||
saved_CFLAGS="$CFLAGS"
|
||||
saved_LIBS="$LIBS"
|
||||
CFLAGS="$CFLAGS -x objective-c -I$srcdir $OBJC_CPPFLAGS $OBJC_LDFLAGS"
|
||||
if test "$OBJC_RUNTIME_LIB" = "gnu"; then
|
||||
CFLAGS="$CFLAGS -fgnu-runtime -DGNU_RUNTIME"
|
||||
OBJCRT="$OBJC_LIB_FLAG"
|
||||
if test "$OBJC_FINAL_LIB_FLAG" = ""; then
|
||||
OBJC_FINAL_LIB_FLAG=-lobjc
|
||||
fi
|
||||
OBJCRT="$OBJC_FINAL_LIB_FLAG"
|
||||
fi
|
||||
if test "$OBJC_RUNTIME_LIB" = "gnugc"; then
|
||||
CFLAGS="$CFLAGS -fgnu-runtime -DGNU_RUNTIME"
|
||||
OBJCRT="$OBJC_LIB_FLAG -ldl -lgc"
|
||||
if test "$OBJC_FINAL_LIB_FLAG" = ""; then
|
||||
OBJC_FINAL_LIB_FLAG=-lobjc_gc
|
||||
fi
|
||||
OBJCRT="$OBJC_FINAL_LIB_FLAG -ldl -lgc"
|
||||
fi
|
||||
if test "$OBJC_RUNTIME_LIB" = "nx"; then
|
||||
CFLAGS="$CFLAGS -DNeXT_RUNTIME"
|
||||
OBJCRT="$OBJC_LIB_FLAG"
|
||||
if test "$OBJC_FINAL_LIB_FLAG" = ""; then
|
||||
OBJC_FINAL_LIB_FLAG=-lobjc
|
||||
fi
|
||||
OBJCRT="$OBJC_FINAL_LIB_FLAG"
|
||||
fi
|
||||
if test "$OBJC_RUNTIME_LIB" = "apple"; then
|
||||
CFLAGS="$CFLAGS -DAPPLE_RUNTIME"
|
||||
OBJCRT="$OBJC_LIB_FLAG"
|
||||
if test "$OBJC_FINAL_LIB_FLAG" = ""; then
|
||||
OBJC_FINAL_LIB_FLAG=-lobjc
|
||||
fi
|
||||
OBJCRT="$OBJC_FINAL_LIB_FLAG"
|
||||
fi
|
||||
|
||||
AC_MSG_RESULT($OBJC_FINAL_LIB_FLAG)
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
# Check if libobjc was compiled with thread support.
|
||||
|
|
|
@ -94,6 +94,9 @@ OBJC_LIBS =
|
|||
ifeq ($(OBJC_RUNTIME_LIB), gnu)
|
||||
OBJC_LDFLAGS =
|
||||
OBJC_LIB_DIR =
|
||||
ifeq ($(OBJC_LIB_FLAG),)
|
||||
OBJC_LIB_FLAG = -lobjc
|
||||
endif
|
||||
OBJC_LIBS = $(OBJC_LIB_FLAG)
|
||||
RUNTIME_FLAG = -fgnu-runtime
|
||||
RUNTIME_DEFINE = -DGNU_RUNTIME=1
|
||||
|
@ -102,8 +105,9 @@ endif
|
|||
ifeq ($(OBJC_RUNTIME_LIB), gnugc)
|
||||
OBJC_LDFLAGS =
|
||||
OBJC_LIB_DIR =
|
||||
# FIXME: Do we need to use -lobjc_gc here ? If so,
|
||||
# OBJC_LIB_FLAG = -lobjc_gc should be set by configure.
|
||||
ifeq ($(OBJC_LIB_FLAG),)
|
||||
OBJC_LIB_FLAG = -lobjc_gc
|
||||
endif
|
||||
OBJC_LIBS = $(OBJC_LIB_FLAG) -ldl -lgc
|
||||
RUNTIME_FLAG = -fgnu-runtime
|
||||
RUNTIME_DEFINE = -DGNU_RUNTIME=1 -DGS_WITH_GC=1
|
||||
|
@ -116,6 +120,9 @@ ifeq ($(OBJC_RUNTIME_LIB), nx)
|
|||
RUNTIME_FLAG = -fnext-runtime
|
||||
RUNTIME_DEFINE = -DNeXT_RUNTIME=1
|
||||
ifeq ($(FOUNDATION_LIB), gnu)
|
||||
ifeq ($(OBJC_LIB_FLAG),)
|
||||
OBJC_LIB_FLAG = -lobjc
|
||||
endif
|
||||
OBJC_LIBS = $(OBJC_LIB_FLAG)
|
||||
endif
|
||||
endif
|
||||
|
@ -128,6 +135,9 @@ ifeq ($(OBJC_RUNTIME_LIB), apple)
|
|||
RUNTIME_FLAG = -fnext-runtime
|
||||
RUNTIME_DEFINE = -DNeXT_RUNTIME=1
|
||||
ifeq ($(FOUNDATION_LIB), gnu)
|
||||
ifeq ($(OBJC_LIB_FLAG),)
|
||||
OBJC_LIB_FLAG = -lobjc
|
||||
endif
|
||||
OBJC_LIBS = $(OBJC_LIB_FLAG)
|
||||
endif
|
||||
endif
|
||||
|
|
Loading…
Reference in a new issue