From 4b1d1caac87b4889e7080d7fd738975c08e01b44 Mon Sep 17 00:00:00 2001 From: Richard Frith-MacDonald Date: Mon, 22 Dec 2008 09:18:32 +0000 Subject: [PATCH] Update config/build stuff from stable branch git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27396 72102866-910b-0410-8b05-ffd578937521 --- ChangeLog | 12 ++++++- GNUmakefile | 16 ++++++++-- Makefile.postamble | 6 +++- config.mak.in | 1 + configure | 78 ++++++++++++++++++++++++---------------------- configure.ac | 68 ++++++++++++++++++++-------------------- 6 files changed, 104 insertions(+), 77 deletions(-) diff --git a/ChangeLog b/ChangeLog index 32a649bb4..eda8a7167 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2008-12-22 Richard Frith-Macdonald + + * config.mak.in: + * configure: + * Makefile.postamble: + * configure.ac: + * GNUmakefile: + Update from stable branch. + 2008-12-21 Adam Fedor * Update documentation for version 1.18.0 @@ -8,7 +17,8 @@ added PACKAGE_NAME=gnustep-base. * GNUmakefile: Export PACKAGE_NAME to reduce chances of a problem if a GNUmakefile in a subdirectory is missing it. - * Tools/make_strings/GNUmakefile: Do not set PACKAGE_NAME to make_strings. + * Tools/make_strings/GNUmakefile: Do not set PACKAGE_NAME to + make_strings. * Testing/synctest/GNUmakefile: Do not set PACKAGE_NAME to Synctest. 2008-12-19 Richard Frith-Macdonald diff --git a/GNUmakefile b/GNUmakefile index 1fd8e1c6f..511015ea5 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -31,12 +31,19 @@ ifeq ($(GNUSTEP_MAKEFILES),) $(error You need to set GNUSTEP_MAKEFILES before compiling!) endif +-include config.mak +ifeq ($(GNUSTEP_INSTALLATION_DOMAIN),) + GNUSTEP_INSTALLATION_DOMAIN := LOCAL +endif +ifeq ($(GNUSTEP_BASE_DOMAIN),) + GNUSTEP_BASE_DOMAIN := LOCAL +endif + +GNUSTEP_CORE_SOFTWARE = YES +export GNUSTEP_CORE_SOFTWARE RPM_DISABLE_RELOCATABLE = YES PACKAGE_NEEDS_CONFIGURE = YES -PACKAGE_NAME = gnustep-base -export PACKAGE_NAME - SVN_MODULE_NAME = base SVN_BASE_URL = svn+ssh://svn.gna.org/svn/gnustep/libs @@ -49,6 +56,9 @@ include $(GNUSTEP_MAKEFILES)/common.make include ./Version +PACKAGE_NAME = gnustep-base +export PACKAGE_NAME + # # The list of subproject directories # diff --git a/Makefile.postamble b/Makefile.postamble index 4a9c6be8d..71e656ff5 100644 --- a/Makefile.postamble +++ b/Makefile.postamble @@ -33,7 +33,11 @@ # # Things to do before compiling -# before-all:: +before-all:: + if [ $(GNUSTEP_BASE_DOMAIN) != $(GNUSTEP_INSTALLATION_DOMAIN) ]; \ + then \ + GNUSTEP_INSTALLATION_DOMAIN=$(GNUSTEP_INSTALLATION_DOMAIN) ./config.status --recheck; \ + fi # Things to do after compiling # after-all:: diff --git a/config.mak.in b/config.mak.in index 6c6f949ed..32b653c4d 100644 --- a/config.mak.in +++ b/config.mak.in @@ -31,6 +31,7 @@ endif GNUSTEP_BASE_HAVE_LIBXML=@HAVE_LIBXML@ GNUSTEP_BASE_HAVE_GNUTLS=@HAVE_GNUTLS@ +GNUSTEP_BASE_DOMAIN=@GNUSTEP_BASE_DOMAIN@ # Default to building only -baseadd # on non *-gnu-* library combos diff --git a/configure b/configure index b3f410c2d..84d873885 100755 --- a/configure +++ b/configure @@ -662,6 +662,7 @@ target target_cpu target_vendor target_os +GNUSTEP_BASE_DOMAIN CC CFLAGS LDFLAGS @@ -1396,13 +1397,14 @@ Optional Packages: is found at runtime. If this is not specified then the path from --with-config-file or from the gnustep-make package is used. - --with-installation-domain=DOMAIN (Mingw32-only option) Specify the domain (SYSTEM, LOCAL, NETWORK - or USER) into which gnustep-base will be installed. This is - necessary on Microsoft Windows (mingw) because relative paths - are hardcoded into gnustep-base. If this is not specified, LOCAL - is used. Please make sure this matches the DOMAIN where - you will be installing gnustep-base to prevent problems - with finding resources at runtime. + --with-installation-domain=DOMAIN +Specify the domain (SYSTEM, LOCAL, NETWORK +or USER) into which gnustep-base will be installed. This is +necessary whenever because relative paths +are hardcoded into gnustep-base. If this is not specified, LOCAL +is used. Please make sure this matches the DOMAIN where +you will be installing gnustep-base to prevent problems +with finding resources at runtime. --with-include-flags=FLAGS Specify all include flags at once --with-library-flags=FLAGS Specify all library flags at once --with-ffi-include=PATH Include path for ffi (ffcall/libffi) headers @@ -2313,17 +2315,7 @@ if test x"$GNUSTEP_USER_DIR_DOC" = x""; then GNUSTEP_USER_DIR_DOC=$GNUSTEP_USER_ if test x"$GNUSTEP_USER_DIR_DOC_MAN" = x""; then GNUSTEP_USER_DIR_DOC_MAN=$GNUSTEP_USER_DIR/Documentation/man; fi if test x"$GNUSTEP_USER_DIR_DOC_INFO" = x""; then GNUSTEP_USER_DIR_DOC_INFO=$GNUSTEP_USER_DIR/Documentation/info; fi -# -# If we are on mingw, we now want to convert the paths to relative -# paths (relative to libgnustep-base.dll). -# -# TODO: To do it properly, we ought to allow the user to configure -# the installation domain at configure time! This assumes we always -# install into System. -# -case "$target_os" in - mingw*) - { echo "$as_me:$LINENO: checking for GNUstep-base installation domain" >&5 +{ echo "$as_me:$LINENO: checking for GNUstep-base installation domain" >&5 echo $ECHO_N "checking for GNUstep-base installation domain... $ECHO_C" >&6; } # Check whether --with-installation-domain was given. @@ -2334,29 +2326,38 @@ else fi - case "$result" in - SYSTEM) - { echo "$as_me:$LINENO: result: SYSTEM" >&5 +case "$result" in + SYSTEM) + { echo "$as_me:$LINENO: result: SYSTEM" >&5 echo "${ECHO_T}SYSTEM" >&6; } - GNUSTEP_BASE_PATH="$GNUSTEP_SYSTEM_TOOLS";; - LOCAL) - { echo "$as_me:$LINENO: result: LOCAL" >&5 + GNUSTEP_BASE_PATH="$GNUSTEP_SYSTEM_TOOLS";; + LOCAL) + { echo "$as_me:$LINENO: result: LOCAL" >&5 echo "${ECHO_T}LOCAL" >&6; } - GNUSTEP_BASE_PATH="$GNUSTEP_LOCAL_TOOLS";; - NETWORK) - { echo "$as_me:$LINENO: result: NETWORK" >&5 + GNUSTEP_BASE_PATH="$GNUSTEP_LOCAL_TOOLS";; + NETWORK) + { echo "$as_me:$LINENO: result: NETWORK" >&5 echo "${ECHO_T}NETWORK" >&6; } - GNUSTEP_BASE_PATH="$GNUSTEP_NETWORK_TOOLS";; - USER) - { echo "$as_me:$LINENO: result: USER" >&5 + GNUSTEP_BASE_PATH="$GNUSTEP_NETWORK_TOOLS";; + USER) + { echo "$as_me:$LINENO: result: USER" >&5 echo "${ECHO_T}USER" >&6; } - GNUSTEP_BASE_PATH="$GNUSTEP_USER_TOOLS";; - *) - { echo "$as_me:$LINENO: result: none specified => using LOCAL" >&5 + GNUSTEP_BASE_PATH="$GNUSTEP_USER_TOOLS";; + *) + { echo "$as_me:$LINENO: result: none specified => using LOCAL" >&5 echo "${ECHO_T}none specified => using LOCAL" >&6; } - GNUSTEP_BASE_PATH="$GNUSTEP_LOCAL_TOOLS";; - esac + result=LOCAL; + GNUSTEP_BASE_PATH="$GNUSTEP_LOCAL_TOOLS";; +esac +GNUSTEP_BASE_DOMAIN=$result + +# +# If we are on mingw, we now want to convert the paths to relative +# paths (relative to libgnustep-base.dll). +# +case "$target_os" in + mingw*) # TODO: Improve this hack. # According to Wikipedia, this is the default for Windows 2000, # Windows XP and Windows Server 2003. For Windows Vista this will @@ -4406,7 +4407,7 @@ if test "$gs_cv_objc_libdir" != "NONE"; then # INCLUDE_FLAGS="$INCLUDE_FLAGS -I$gs_cv_objc_incdir" LDIR_FLAGS="$LDIR_FLAGS -L$gs_cv_objc_libdir/$LIBRARY_COMBO -L$gs_cv_objc_libdir" - CPPFLAGS="$CPPFLAGS -I$gs_cv_objc_incdir" + CPPFLAGS="$CPPFLAGS -I$gs_cv_objc_incdir" LDFLAGS="$LDFLAGS -L$gs_cv_objc_libdir" fi @@ -20350,6 +20351,7 @@ target!$target$ac_delim target_cpu!$target_cpu$ac_delim target_vendor!$target_vendor$ac_delim target_os!$target_os$ac_delim +GNUSTEP_BASE_DOMAIN!$GNUSTEP_BASE_DOMAIN$ac_delim CC!$CC$ac_delim CFLAGS!$CFLAGS$ac_delim LDFLAGS!$LDFLAGS$ac_delim @@ -20397,7 +20399,6 @@ HAVE_PTHREAD_H!$HAVE_PTHREAD_H$ac_delim HAVE_PTS_STREAM_MODULES!$HAVE_PTS_STREAM_MODULES$ac_delim INCLUDE_STDINT!$INCLUDE_STDINT$ac_delim DEFINE_INT8_T!$DEFINE_INT8_T$ac_delim -DEFINE_UINT8_T!$DEFINE_UINT8_T$ac_delim _ACEOF if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then @@ -20439,6 +20440,7 @@ _ACEOF ac_delim='%!_!# ' for ac_last_try in false false false false false :; do cat >conf$$subs.sed <<_ACEOF +DEFINE_UINT8_T!$DEFINE_UINT8_T$ac_delim DEFINE_INT16_T!$DEFINE_INT16_T$ac_delim DEFINE_UINT16_T!$DEFINE_UINT16_T$ac_delim DEFINE_INT32_T!$DEFINE_INT32_T$ac_delim @@ -20477,7 +20479,7 @@ LIBOBJS!$LIBOBJS$ac_delim LTLIBOBJS!$LTLIBOBJS$ac_delim _ACEOF - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 36; then + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 37; then break elif $ac_last_try; then { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 diff --git a/configure.ac b/configure.ac index 273ce4a50..2edb88cac 100644 --- a/configure.ac +++ b/configure.ac @@ -350,46 +350,46 @@ if test x"$GNUSTEP_USER_DIR_DOC" = x""; then GNUSTEP_USER_DIR_DOC=$GNUSTEP_USER_ if test x"$GNUSTEP_USER_DIR_DOC_MAN" = x""; then GNUSTEP_USER_DIR_DOC_MAN=$GNUSTEP_USER_DIR/Documentation/man; fi if test x"$GNUSTEP_USER_DIR_DOC_INFO" = x""; then GNUSTEP_USER_DIR_DOC_INFO=$GNUSTEP_USER_DIR/Documentation/info; fi +AC_MSG_CHECKING([for GNUstep-base installation domain]) +AC_ARG_WITH(installation-domain, +[ --with-installation-domain=DOMAIN +Specify the domain (SYSTEM, LOCAL, NETWORK +or USER) into which gnustep-base will be installed. This is +necessary whenever because relative paths +are hardcoded into gnustep-base. If this is not specified, LOCAL +is used. Please make sure this matches the DOMAIN where +you will be installing gnustep-base to prevent problems +with finding resources at runtime.], + result="$withval", + result="$GNUSTEP_INSTALLATION_DOMAIN" +) +case "$result" in + SYSTEM) + AC_MSG_RESULT([SYSTEM]) + GNUSTEP_BASE_PATH="$GNUSTEP_SYSTEM_TOOLS";; + LOCAL) + AC_MSG_RESULT([LOCAL]) + GNUSTEP_BASE_PATH="$GNUSTEP_LOCAL_TOOLS";; + NETWORK) + AC_MSG_RESULT([NETWORK]) + GNUSTEP_BASE_PATH="$GNUSTEP_NETWORK_TOOLS";; + USER) + AC_MSG_RESULT([USER]) + GNUSTEP_BASE_PATH="$GNUSTEP_USER_TOOLS";; + *) + AC_MSG_RESULT([none specified => using LOCAL]) + result=LOCAL; + GNUSTEP_BASE_PATH="$GNUSTEP_LOCAL_TOOLS";; +esac +GNUSTEP_BASE_DOMAIN=$result +AC_SUBST(GNUSTEP_BASE_DOMAIN) + # # If we are on mingw, we now want to convert the paths to relative # paths (relative to libgnustep-base.dll). # -# TODO: To do it properly, we ought to allow the user to configure -# the installation domain at configure time! This assumes we always -# install into System. -# case "$target_os" in mingw*) - AC_MSG_CHECKING([for GNUstep-base installation domain]) - AC_ARG_WITH(installation-domain, - [ --with-installation-domain=DOMAIN (Mingw32-only option) Specify the domain (SYSTEM, LOCAL, NETWORK - or USER) into which gnustep-base will be installed. This is - necessary on Microsoft Windows (mingw) because relative paths - are hardcoded into gnustep-base. If this is not specified, LOCAL - is used. Please make sure this matches the DOMAIN where - you will be installing gnustep-base to prevent problems - with finding resources at runtime.], - result="$withval", - result="$GNUSTEP_INSTALLATION_DOMAIN" - ) - case "$result" in - SYSTEM) - AC_MSG_RESULT([SYSTEM]) - GNUSTEP_BASE_PATH="$GNUSTEP_SYSTEM_TOOLS";; - LOCAL) - AC_MSG_RESULT([LOCAL]) - GNUSTEP_BASE_PATH="$GNUSTEP_LOCAL_TOOLS";; - NETWORK) - AC_MSG_RESULT([NETWORK]) - GNUSTEP_BASE_PATH="$GNUSTEP_NETWORK_TOOLS";; - USER) - AC_MSG_RESULT([USER]) - GNUSTEP_BASE_PATH="$GNUSTEP_USER_TOOLS";; - *) - AC_MSG_RESULT([none specified => using LOCAL]) - GNUSTEP_BASE_PATH="$GNUSTEP_LOCAL_TOOLS";; - esac - # TODO: Improve this hack. # According to Wikipedia, this is the default for Windows 2000, # Windows XP and Windows Server 2003. For Windows Vista this will