Implemented filesystem support

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@24597 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Nicola Pero 2007-02-16 04:22:26 +00:00
parent 62437b27b8
commit 8bd8b002d1
13 changed files with 877 additions and 601 deletions

View file

@ -1,8 +1,43 @@
2007-02-15 Nicola Pero <nicola.pero@meta-innovation.com>
2007-02-16 Nicola Pero <nicola.pero@meta-innovation.com>
Completed implementation of customizable filesystem layouts
(including Linux FHS). ./configure --with-layout=linux will give
you the Linux FHS layout (experimental). Check the
FilesystemLayouts directory to create your own layout or to check
for more options. This is experimental, use it at your risk and
make sure you do not mess up your system directories while
testing. ;-)
* configure.ac: Added --with-layout=xxx option. Import
appropriate layout configuration. Rewritten management of prefix.
Disable importing config file if an explicit layout is specified.
Ignore --with-system-root, --with-local-root and
--with-network-root but print a warning if they are used. Updated
user domain settings code. Updated makefiles settings code.
Removed hardcoded filesystem layout. Added backwards
compatibility output of GNUSTEP_*_ROOT. Updated flattened checks
to use the GNUSTEP_IS_FLATTENED variable.
* configure: Regenerated.
* FilesystemLayouts: New directory.
* FilesystemLayouts/README: New file.
* FilesystemLayouts/gnustep: New file.
* FilesystemLayouts/linux: New file.
* FilesystemLayouts/linux-system: New file.
* FilesystemLayouts/windows: New file.
* GNUmakefile.in: Do not define GNUSTEP_*_ROOT. Updated tooldir
definition. Do not create system domain hierarchy; create the
system tools directory instead. Do not delete the makefiles
directory after creating it. Commented out installation of
config.site file that needs reviewing. Use override when defining
GNUSTEP_* variables.
* common.make: Updated warning when GNUSTEP_SYSTEM_TOOLS is not
found in PATH.
* gnustep-config.in: Fixed help message.
* relative_path.sh: Fixed situation when the second
argument is a subdirectory of the first one.
* GNUstep.conf.in: Updated comments. Moved NETWORK domain before
LOCAL domain.
* Version: bumped to 1.98.0.
2007-02-15 Nicola Pero <nicola.pero@meta-innovation.com>
* configure.ac (GNUSTEP_SYSTEM_HEADERS, GNUSTEP_NETWORK_HEADERS,

51
FilesystemLayouts/README Normal file
View file

@ -0,0 +1,51 @@
This directory contains filesystem layouts that you can use when you
configure your gnustep-make.
A filesystem layout describes how the GNUstep installation domains
(System, Network, Local, User) map to directories on disk.
Every file in this directory is a filesystem layout that you can use
in gnustep-make's ./configure.
Eg,
./configure --with-layout=linux
./configure --with-layout=linux-system
By default, the GNUstep layout is used. The files are shell files
that are directly include by ./configure and that should set the
specified variables.
If you want to use your own custom layout, just start with one of the
existing layouts, copy it into a new file, and edit it.
Here is a list of the filesystem layout with comments --
* GNUstep: default GNUstep filesystem layout; it installs everything
into /usr/GNUstep/System, /usr/GNUstep/Local. It's a very friendly
layout, similar to the ones found on NeXTstep, OpenStep and Apple Mac
OS X. It's the only layout that can support fat binaries. It may not
blend very well with the native environment because everything is
installed in special, GNUstep-only, directories, so you may need to
source a special script (GNUstep.sh) before being able to use the
layout. Recommended for the advanced GNUstep users and the
NeXTstep/Apple fans.
* linux: standard Linux FHS layout for locally compiled software; it
installs everything into /usr/local. Blends very well with native
GNU/Linux systems (and other Unix systems with similar directory
structure). Recommended if you're compiling from sources on Unix and
want good integration with your native system.
* linux-system: standard Linux FHS layout for software to be shipped
as part of distributions/systems; it installs system stuff into /usr,
and is ready to support local stuff to be installed into /usr/local.
Blends wonderfully with native GNU/Linux systems (and other Unix
systems with similar directory structure) as you're installing
everything straight into the standard system locations. Recommended
if you're building packages for a Unix system.
* windows: a GNUstep filesystem layout that installs by default into
C:/GNUstep. Recommend if you're compiling on Windows.

73
FilesystemLayouts/gnustep Normal file
View file

@ -0,0 +1,73 @@
#
# GNUstep filesystem layout
#
# This is the standard GNUstep filesystem layout. It's a layout very
# similar to the ones found on NeXTstep, OpenStep and Apple Mac OS X.
#
# This is also the only layout that supports fat binaries: binaries
# for multiple cpu/os/*step libraries in the same installation. The
# 'fat binary' support is called 'non-flattened' in GNUstep parlance,
# and is disabled by default. You can activate it by with ./configure
# --disable-flattened. It's cool, but your directory structure
# becomes more complex to account for all the types of binaries and
# systems. It's recommended that you source GNUstep.sh if you're
# using the non-flattened layout (the command is:
# '. $GNUSTEP_MAKEFILES/GNUstep.sh', and notice the '.' and the space
# after it).
#
# If the layout is flattened, it's still a good idea to source
# GNUstep.sh if it's not too much trouble for you, else you can
# manually add /usr/GNUstep/System/Tools and /usr/GNUstep/Local/Tools
# to your PATH, /usr/GNUstep/System/Library/Libraries and
# /usr/GNUstep/Local/Library/Libraries to your LD_LIBRARY_PATH (or
# /etc/ld.so.conf + ldconfig).
#
# To use gnustep-make in this environment, source GNUstep.sh or use
# 'export GNUSTEP_MAKEFILES=/usr/GNUstep/System/Library/Makefiles'.
# By default, we install into /usr/GNUstep, but this can be overridden
# by using ./configure --prefix=xxx when configuring.
GNUSTEP_DEFAULT_PREFIX=/usr/GNUstep
# NB: $prefix will be added to all the MAKEFILES/SYSTEM/NETWORK/LOCAL
# paths.
GNUSTEP_MAKEFILES=/System/Library/Makefiles
GNUSTEP_SYSTEM_APPS=/System/Applications
GNUSTEP_SYSTEM_TOOLS=/System/Tools
GNUSTEP_SYSTEM_LIBRARY=/System/Library
GNUSTEP_SYSTEM_HEADERS=/System/Library/Headers
GNUSTEP_SYSTEM_LIBRARIES=/System/Library/Libraries
GNUSTEP_SYSTEM_DOCUMENTATION=/System/Library/Documentation
GNUSTEP_SYSTEM_DOCUMENTATION_MAN=/System/Library/Documentation/man
GNUSTEP_SYSTEM_DOCUMENTATION_INFO=/System/Library/Documentation/info
GNUSTEP_LOCAL_APPS=/Local/Applications
GNUSTEP_LOCAL_TOOLS=/Local/Tools
GNUSTEP_LOCAL_LIBRARY=/Local/Library
GNUSTEP_LOCAL_HEADERS=/Local/Library/Headers
GNUSTEP_LOCAL_LIBRARIES=/Local/Library/Libraries
GNUSTEP_LOCAL_DOCUMENTATION=/Local/Library/Documentation
GNUSTEP_LOCAL_DOCUMENTATION_MAN=/Local/Library/Documentation/man
GNUSTEP_LOCAL_DOCUMENTATION_INFO=/Local/Library/Documentation/info
GNUSTEP_NETWORK_APPS=/Local/Applications
GNUSTEP_NETWORK_TOOLS=/Local/Tools
GNUSTEP_NETWORK_LIBRARY=/Local/Library
GNUSTEP_NETWORK_HEADERS=/Local/Library/Headers
GNUSTEP_NETWORK_LIBRARIES=/Local/Library/Libraries
GNUSTEP_NETWORK_DOCUMENTATION=/Local/Library/Documentation
GNUSTEP_NETWORK_DOCUMENTATION_MAN=/Local/Library/Documentation/man
GNUSTEP_NETWORK_DOCUMENTATION_INFO=/Local/Library/Documentation/info
GNUSTEP_USER_DIR_APPS=GNUstep/Applications
GNUSTEP_USER_DIR_TOOLS=GNUstep/Tools
GNUSTEP_USER_DIR_LIBRARY=GNUstep/Library
GNUSTEP_USER_DIR_HEADERS=GNUstep/Library/Headers
GNUSTEP_USER_DIR_LIBRARIES=GNUstep/Library/Libraries
GNUSTEP_USER_DIR_DOCUMENTATION=GNUstep/Documentation
GNUSTEP_USER_DIR_DOCUMENTATION_MAN=GNUstep/Documentation/man
GNUSTEP_USER_DIR_DOCUMENTATION_INFO=GNUstep/Documentation/info
GNUSTEP_USER_CONFIG_FILE=.GNUstep.conf
GNUSTEP_USER_DEFAULTS_DIR=GNUstep/Defaults

62
FilesystemLayouts/linux Normal file
View file

@ -0,0 +1,62 @@
#
# linux filesystem layout
#
# This is the standard Linux filesystem layout to use when installing
# everything into /usr/local. Use this on GNU/Linux (or any Unix with
# a similar filesystem layout) if you want GNUstep to blend in your
# GNU/Linux environment and you are compiling all of your GNUstep
# system from source.
#
# Basically, it's a standard Linux filesystem with all domains mapped
# into the same /usr/local directory.
# Make sure you have /usr/local/bin in your PATH, and /usr/local/lib
# in your /etc/ld.so.conf, and don't forget to run ldconfig after
# installing a library! To use gnustep-make in this environment, use
# 'export GNUSTEP_MAKEFILES=/usr/local/share/GNUstep/Makefiles'
# By default, we install into /usr/local, but this can be overridden
# by using ./configure --prefix=xxx when configuring.
GNUSTEP_DEFAULT_PREFIX=/usr/local
# NB: $prefix will be added to all the MAKEFILES/SYSTEM/NETWORK/LOCAL
# paths.
GNUSTEP_MAKEFILES=/share/GNUstep/Makefiles
GNUSTEP_SYSTEM_APPS=/lib/GNUstep/Apps
GNUSTEP_SYSTEM_TOOLS=/bin
GNUSTEP_SYSTEM_LIBRARY=/lib/GNUstep
GNUSTEP_SYSTEM_HEADERS=/include
GNUSTEP_SYSTEM_LIBRARIES=/lib
GNUSTEP_SYSTEM_DOCUMENTATION=/share/GNUstep/Documentation
GNUSTEP_SYSTEM_DOCUMENTATION_MAN=/man
GNUSTEP_SYSTEM_DOCUMENTATION_INFO=/info
GNUSTEP_NETWORK_APPS=/lib/GNUstep/Apps
GNUSTEP_NETWORK_TOOLS=/bin
GNUSTEP_NETWORK_LIBRARY=/lib/GNUstep
GNUSTEP_NETWORK_HEADERS=/include
GNUSTEP_NETWORK_LIBRARIES=/lib
GNUSTEP_NETWORK_DOCUMENTATION=/share/GNUstep/Documentation
GNUSTEP_NETWORK_DOCUMENTATION_MAN=/man
GNUSTEP_NETWORK_DOCUMENTATION_INFO=/info
GNUSTEP_LOCAL_APPS=/lib/GNUstep/Apps
GNUSTEP_LOCAL_TOOLS=/bin
GNUSTEP_LOCAL_LIBRARY=/lib/GNUstep
GNUSTEP_LOCAL_HEADERS=/include
GNUSTEP_LOCAL_LIBRARIES=/lib
GNUSTEP_LOCAL_DOCUMENTATION=/share/GNUstep/Documentation
GNUSTEP_LOCAL_DOCUMENTATION_MAN=/man
GNUSTEP_LOCAL_DOCUMENTATION_INFO=/info
GNUSTEP_USER_DIR_APPS=GNUstep/Applications
GNUSTEP_USER_DIR_TOOLS=GNUstep/Tools
GNUSTEP_USER_DIR_LIBRARY=GNUstep/Library
GNUSTEP_USER_DIR_HEADERS=GNUstep/Library/Headers
GNUSTEP_USER_DIR_LIBRARIES=GNUstep/Library/Libraries
GNUSTEP_USER_DIR_DOCUMENTATION=GNUstep/Documentation
GNUSTEP_USER_DIR_DOCUMENTATION_MAN=GNUstep/Documentation/man
GNUSTEP_USER_DIR_DOCUMENTATION_INFO=GNUstep/Documentation/info
GNUSTEP_USER_CONFIG_FILE=.GNUstep.conf
GNUSTEP_USER_DEFAULTS_DIR=GNUstep/Defaults

View file

@ -0,0 +1,70 @@
#
# linux filesystem layout for system installations
#
# This is the standard Linux filesystem layout when installing into
# /usr. Use this if you want GNUstep to blend into your GNU/Linux
# filesystem (or any other Unix with a similar filesystem) and you are
# compiling gnustep-make so that it can be shipped as part of a
# distribution/basic system installation.
#
# We put SYSTEM into /usr, and LOCAL into /usr/local. This allows you
# to make a distinction between stuff that you ship as part of your
# system/distribution, and the local stuff installed by the local
# sysadmin. Make sure you compile/install all packages that you want
# to go into /usr (ie, be part of the system/distribution) using
# 'make install GNUSTEP_INSTALLATION_DOMAIN=SYSTEM'
#
# To get system packages to work in this layout, you need /usr/bin in
# your PATH, and /usr/lib in your /etc/ld.so.conf. Don't forget to
# run ldconfig after installing a library!
#
# Your users will need to also add /usr/local/bin to PATH and
# /usr/local/lib to /etc/ld.so.conf if they want to use the LOCAL
# domain. To use gnustep-make in this environment, use 'export
# GNUSTEP_MAKEFILES=/usr/share/GNUstep/Makefiles'
# By default, we install into /usr, but this can be overridden
# by using ./configure --prefix=xxx when configuring.
GNUSTEP_DEFAULT_PREFIX=/usr
# NB: $prefix will be added to all the MAKEFILES/SYSTEM/NETWORK/LOCAL
# paths.
GNUSTEP_MAKEFILES=/share/GNUstep/Makefiles
GNUSTEP_SYSTEM_APPS=/lib/GNUstep/Apps
GNUSTEP_SYSTEM_TOOLS=/bin
GNUSTEP_SYSTEM_LIBRARY=/lib/GNUstep
GNUSTEP_SYSTEM_HEADERS=/include
GNUSTEP_SYSTEM_LIBRARIES=/lib
GNUSTEP_SYSTEM_DOCUMENTATION=/share/GNUstep/Documentation
GNUSTEP_SYSTEM_DOCUMENTATION_MAN=/man
GNUSTEP_SYSTEM_DOCUMENTATION_INFO=/info
GNUSTEP_NETWORK_APPS=/local/lib/GNUstep/Apps
GNUSTEP_NETWORK_TOOLS=/local/bin
GNUSTEP_NETWORK_LIBRARY=/local/lib/GNUstep
GNUSTEP_NETWORK_HEADERS=/local/include
GNUSTEP_NETWORK_LIBRARIES=/local/lib
GNUSTEP_NETWORK_DOCUMENTATION=/local/share/GNUstep/Documentation
GNUSTEP_NETWORK_DOCUMENTATION_MAN=/local/man
GNUSTEP_NETWORK_DOCUMENTATION_INFO=/local/info
GNUSTEP_LOCAL_APPS=/local/lib/GNUstep/Apps
GNUSTEP_LOCAL_TOOLS=/local/bin
GNUSTEP_LOCAL_LIBRARY=/local/lib/GNUstep
GNUSTEP_LOCAL_HEADERS=/local/include
GNUSTEP_LOCAL_LIBRARIES=/local/lib
GNUSTEP_LOCAL_DOCUMENTATION=/local/share/GNUstep/Documentation
GNUSTEP_LOCAL_DOCUMENTATION_MAN=/local/man
GNUSTEP_LOCAL_DOCUMENTATION_INFO=/local/info
GNUSTEP_USER_DIR_APPS=GNUstep/Applications
GNUSTEP_USER_DIR_TOOLS=GNUstep/Tools
GNUSTEP_USER_DIR_LIBRARY=GNUstep/Library
GNUSTEP_USER_DIR_HEADERS=GNUstep/Library/Headers
GNUSTEP_USER_DIR_LIBRARIES=GNUstep/Library/Libraries
GNUSTEP_USER_DIR_DOCUMENTATION=GNUstep/Documentation
GNUSTEP_USER_DIR_DOCUMENTATION_MAN=GNUstep/Documentation/man
GNUSTEP_USER_DIR_DOCUMENTATION_INFO=GNUstep/Documentation/info
GNUSTEP_USER_CONFIG_FILE=.GNUstep.conf
GNUSTEP_USER_DEFAULTS_DIR=GNUstep/Defaults

52
FilesystemLayouts/windows Normal file
View file

@ -0,0 +1,52 @@
#
# GNUstep filesystem layout for windows
#
# At the moment this is the same as the 'gnustep' layout, but it
# installs by default into C:/GNUstep. Contributions welcome though.
# By default, we install into C:/GNUstep, but this can be overridden
# by using ./configure --prefix=xxx when configuring.
GNUSTEP_DEFAULT_PREFIX=C:/GNUstep
# NB: $prefix will be added to all the MAKEFILES/SYSTEM/NETWORK/LOCAL
# paths.
GNUSTEP_MAKEFILES=/System/Library/Makefiles
GNUSTEP_SYSTEM_APPS=/System/Applications
GNUSTEP_SYSTEM_TOOLS=/System/Tools
GNUSTEP_SYSTEM_LIBRARY=/System/Library
GNUSTEP_SYSTEM_HEADERS=/System/Library/Headers
GNUSTEP_SYSTEM_LIBRARIES=/System/Library/Libraries
GNUSTEP_SYSTEM_DOCUMENTATION=/System/Library/Documentation
GNUSTEP_SYSTEM_DOCUMENTATION_MAN=/System/Library/Documentation/man
GNUSTEP_SYSTEM_DOCUMENTATION_INFO=/System/Library/Documentation/info
GNUSTEP_LOCAL_APPS=/Local/Applications
GNUSTEP_LOCAL_TOOLS=/Local/Tools
GNUSTEP_LOCAL_LIBRARY=/Local/Library
GNUSTEP_LOCAL_HEADERS=/Local/Library/Headers
GNUSTEP_LOCAL_LIBRARIES=/Local/Library/Libraries
GNUSTEP_LOCAL_DOCUMENTATION=/Local/Library/Documentation
GNUSTEP_LOCAL_DOCUMENTATION_MAN=/Local/Library/Documentation/man
GNUSTEP_LOCAL_DOCUMENTATION_INFO=/Local/Library/Documentation/info
GNUSTEP_NETWORK_APPS=/Local/Applications
GNUSTEP_NETWORK_TOOLS=/Local/Tools
GNUSTEP_NETWORK_LIBRARY=/Local/Library
GNUSTEP_NETWORK_HEADERS=/Local/Library/Headers
GNUSTEP_NETWORK_LIBRARIES=/Local/Library/Libraries
GNUSTEP_NETWORK_DOCUMENTATION=/Local/Library/Documentation
GNUSTEP_NETWORK_DOCUMENTATION_MAN=/Local/Library/Documentation/man
GNUSTEP_NETWORK_DOCUMENTATION_INFO=/Local/Library/Documentation/info
GNUSTEP_USER_DIR_APPS=GNUstep/Applications
GNUSTEP_USER_DIR_TOOLS=GNUstep/Tools
GNUSTEP_USER_DIR_LIBRARY=GNUstep/Library
GNUSTEP_USER_DIR_HEADERS=GNUstep/Library/Headers
GNUSTEP_USER_DIR_LIBRARIES=GNUstep/Library/Libraries
GNUSTEP_USER_DIR_DOCUMENTATION=GNUstep/Documentation
GNUSTEP_USER_DIR_DOCUMENTATION_MAN=GNUstep/Documentation/man
GNUSTEP_USER_DIR_DOCUMENTATION_INFO=GNUstep/Documentation/info
GNUSTEP_USER_CONFIG_FILE=.GNUstep.conf
GNUSTEP_USER_DEFAULTS_DIR=GNUstep/Defaults

View file

@ -40,38 +40,34 @@ ifneq ($(special_prefix),)
DESTDIR = $(special_prefix)
endif
GNUSTEP_CONFIG_FILE = $(DESTDIR)@GNUSTEP_CONFIG_FILE@
GNUSTEP_CONFIG_FILE_DIR = $(dir $(GNUSTEP_CONFIG_FILE))
GNUSTEP_SYSTEM_ROOT = $(DESTDIR)@GNUSTEP_SYSTEM_ROOT@
GNUSTEP_LOCAL_ROOT = $(DESTDIR)@GNUSTEP_LOCAL_ROOT@
GNUSTEP_NETWORK_ROOT = $(DESTDIR)@GNUSTEP_NETWORK_ROOT@
override GNUSTEP_CONFIG_FILE = $(DESTDIR)@GNUSTEP_CONFIG_FILE@
override GNUSTEP_CONFIG_FILE_DIR = $(dir $(GNUSTEP_CONFIG_FILE))
tooldir = $(DESTDIR)@GNUSTEP_SYSTEM_TOOLS@
makedir = $(DESTDIR)@GNUSTEP_MAKEFILES@
srcdir = @srcdir@
VPATH = @srcdir@
GNUSTEP_IS_FLATTENED = @GNUSTEP_IS_FLATTENED@
GNUSTEP_TARGET_CPU = @clean_target_cpu@
GNUSTEP_TARGET_VENDOR = @clean_target_vendor@
GNUSTEP_TARGET_OS = @clean_target_os@
override GNUSTEP_IS_FLATTENED = @GNUSTEP_IS_FLATTENED@
override GNUSTEP_TARGET_CPU = @clean_target_cpu@
override GNUSTEP_TARGET_VENDOR = @clean_target_vendor@
override GNUSTEP_TARGET_OS = @clean_target_os@
GNUSTEP_LIB_COMBO = @ac_cv_library_combo@
override GNUSTEP_LIB_COMBO = @ac_cv_library_combo@
ifeq ($(GNUSTEP_IS_FLATTENED), no)
GNUSTEP_TARGET_DIR = $(GNUSTEP_TARGET_CPU)/$(GNUSTEP_TARGET_OS)
GNUSTEP_TARGET_LDIR = $(GNUSTEP_TARGET_DIR)/$(GNUSTEP_LIB_COMBO)
MAYBE_LIBRARY_COMBO = $(GNUSTEP_LIB_COMBO)
override GNUSTEP_TARGET_DIR = $(GNUSTEP_TARGET_CPU)/$(GNUSTEP_TARGET_OS)
override GNUSTEP_TARGET_LDIR = $(GNUSTEP_TARGET_DIR)/$(GNUSTEP_LIB_COMBO)
override MAYBE_LIBRARY_COMBO = $(GNUSTEP_LIB_COMBO)
else
GNUSTEP_TARGET_DIR = .
GNUSTEP_TARGET_LDIR = .
MAYBE_LIBRARY_COMBO = .
override GNUSTEP_TARGET_DIR = .
override GNUSTEP_TARGET_LDIR = .
override MAYBE_LIBRARY_COMBO = .
endif
export GNUSTEP_TARGET_DIR
export GNUSTEP_TARGET_LDIR
export MAYBE_LIBRARY_COMBO
tooldir = $(GNUSTEP_SYSTEM_ROOT)/Tools
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
@ -123,10 +119,8 @@ all: generated-files
$(EC)(echo "Thanks. All is ready to install.")
install: generated-files
$(EC)(echo "Creating system domain: $(GNUSTEP_SYSTEM_ROOT)"; \
$(srcdir)/create_domain_dir_tree.sh "$(GNUSTEP_SYSTEM_ROOT)"; \
echo "Creating local and network dirs: $(GNUSTEP_LOCAL_ROOT), $(GNUSTEP_NETWORK_ROOT)"; \
$(srcdir)/mkinstalldirs "$(GNUSTEP_LOCAL_ROOT)" "$(GNUSTEP_NETWORK_ROOT)";\
$(EC)(echo "Creating system tools directory: $(tooldir)"; \
$(srcdir)/mkinstalldirs $(tooldir); \
echo "Creating makefile directories in: $(makedir)"; \
$(srcdir)/mkinstalldirs \
$(makedir) \
@ -142,7 +136,6 @@ install: generated-files
$(EC)(echo "Installing GNUstep configuration file in $(GNUSTEP_CONFIG_FILE)"; \
$(srcdir)/mkinstalldirs "$(GNUSTEP_CONFIG_FILE_DIR)"; \
$(INSTALL_DATA) GNUstep.conf "$(GNUSTEP_CONFIG_FILE)")
-$(EC) rm -f "$(GNUSTEP_SYSTEM_ROOT)/Makefiles"
$(EC)(echo "Installing gnustep-make support software")
$(EC)(for f in config.guess config.sub install-sh mkinstalldirs \
clean_cpu.sh clean_os.sh \
@ -183,13 +176,15 @@ install: generated-files
$(INSTALL_DATA) executable.template $(makedir); \
$(INSTALL_DATA) config-noarch.make $(makedir); \
$(INSTALL_DATA) config.make $(makedir)/$(GNUSTEP_TARGET_LDIR))
$(EC)($(srcdir)/mkinstalldirs $(GNUSTEP_SYSTEM_ROOT)/share; \
$(INSTALL_DATA) $(srcdir)/config.site $(GNUSTEP_SYSTEM_ROOT)/share)
$(EC)(if [ "@GNUSTEP_STRIP_MAKEFILES@" = "strip" ]; then \
echo "Stripping makefiles and shell scripts..."; \
cd $(makedir); ./strip_makefiles.sh; \
fi)
# FIXME - review the issue of this config.site. What is it used for ?
# $(EC)($(srcdir)/mkinstalldirs $(GNUSTEP_SYSTEM_ROOT)/share; \
# $(INSTALL_DATA) $(srcdir)/config.site $(GNUSTEP_SYSTEM_ROOT)/share)
uninstall:
for f in config.guess config.sub install-sh mkinstalldirs \
clean_cpu.sh clean_os.sh \

View file

@ -3,7 +3,7 @@
# The version number of this release.
GNUSTEP_MAKE_MAJOR_VERSION=1
GNUSTEP_MAKE_MINOR_VERSION=14
GNUSTEP_MAKE_MINOR_VERSION=98
GNUSTEP_MAKE_SUBMINOR_VERSION=0
GNUSTEP_MAKE_VERSION=${GNUSTEP_MAKE_MAJOR_VERSION}.${GNUSTEP_MAKE_MINOR_VERSION}.${GNUSTEP_MAKE_SUBMINOR_VERSION}

View file

@ -689,7 +689,7 @@ ifneq ($(findstring cygwin, $(GNUSTEP_HOST_OS)), cygwin)
ifeq ($(findstring $(GNUSTEP_SYSTEM_TOOLS),$(PATH)),)
$(warning WARNING: Your PATH may not be set up correctly !)
$(warning Please try again after running ". $(GNUSTEP_MAKEFILES)/GNUstep.sh")
$(warning Please try again after adding "$(GNUSTEP_SYSTEM_TOOLS)" to your path)
endif
endif

553
configure vendored
View file

@ -272,12 +272,8 @@ PACKAGE_STRING=
PACKAGE_BUGREPORT=
ac_unique_file="application.make"
ac_default_prefix=`if test -d C: ; then
echo C:/GNUstep;
else
echo /usr/GNUstep ;
fi`
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os ac_cv_library_combo cc_cppprecomp cc_bundle CYGWIN RANLIB AR DLLTOOL ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S TAR CHOWN GNUSTEP_CONFIG_FILE GNUSTEP_SYSTEM_ROOT GNUSTEP_LOCAL_ROOT GNUSTEP_NETWORK_ROOT GNUSTEP_USER_CONFIG_FILE GNUSTEP_USER_DIR GNUSTEP_USER_DEFAULTS_DIR GNUSTEP_MAKEFILES HOST_INSTALL GNUSTEP_FLATTENED GNUSTEP_IS_FLATTENED GNUSTEP_SYSTEM_TOOLS GNUSTEP_SYSTEM_APPS GNUSTEP_SYSTEM_LIBRARY GNUSTEP_SYSTEM_HEADERS GNUSTEP_SYSTEM_LIBRARIES GNUSTEP_SYSTEM_DOCUMENTATION GNUSTEP_SYSTEM_DOCUMENTATION_MAN GNUSTEP_SYSTEM_DOCUMENTATION_INFO GNUSTEP_LOCAL_TOOLS GNUSTEP_LOCAL_APPS GNUSTEP_LOCAL_LIBRARY GNUSTEP_LOCAL_HEADERS GNUSTEP_LOCAL_LIBRARIES GNUSTEP_LOCAL_DOCUMENTATION GNUSTEP_LOCAL_DOCUMENTATION_MAN GNUSTEP_LOCAL_DOCUMENTATION_INFO GNUSTEP_NETWORK_TOOLS GNUSTEP_NETWORK_APPS GNUSTEP_NETWORK_LIBRARY GNUSTEP_NETWORK_HEADERS GNUSTEP_NETWORK_LIBRARIES GNUSTEP_NETWORK_DOCUMENTATION GNUSTEP_NETWORK_DOCUMENTATION_MAN GNUSTEP_NETWORK_DOCUMENTATION_INFO GNUSTEP_USER_DIR_TOOLS GNUSTEP_USER_DIR_APPS GNUSTEP_USER_DIR_LIBRARY GNUSTEP_USER_DIR_HEADERS GNUSTEP_USER_DIR_LIBRARIES GNUSTEP_USER_DIR_DOCUMENTATION GNUSTEP_USER_DIR_DOCUMENTATION_MAN GNUSTEP_USER_DIR_DOCUMENTATION_INFO GNUSTEP_MULTI_PLATFORM BACKEND_BUNDLE objc_threaded ac_cv_objc_threaded USE_OBJC_EXCEPTIONS AUTO_DEPENDENCIES GCC_WITH_PRECOMPILED_HEADERS SOLARIS_SHARED INCLUDES LIB_DIR OBJCFLAGS GNUMAKE MAKE_WITH_INFO_FUNCTION GNUSTEP_STRIP_MAKEFILES GNUSTEP_MAKE_VERSION GNUSTEP_MAKE_MAJOR_VERSION GNUSTEP_MAKE_MINOR_VERSION GNUSTEP_MAKE_SUBMINOR_VERSION clean_target_os clean_target_cpu clean_target_vendor LIBOBJS LTLIBOBJS'
ac_default_prefix=NONE
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os ac_cv_library_combo cc_cppprecomp cc_bundle CYGWIN RANLIB AR DLLTOOL ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S TAR CHOWN GNUSTEP_CONFIG_FILE GNUSTEP_USER_CONFIG_FILE GNUSTEP_USER_DIR GNUSTEP_USER_DEFAULTS_DIR GNUSTEP_MAKEFILES HOST_INSTALL GNUSTEP_FLATTENED GNUSTEP_IS_FLATTENED GNUSTEP_SYSTEM_TOOLS GNUSTEP_SYSTEM_APPS GNUSTEP_SYSTEM_LIBRARY GNUSTEP_SYSTEM_HEADERS GNUSTEP_SYSTEM_LIBRARIES GNUSTEP_SYSTEM_DOCUMENTATION GNUSTEP_SYSTEM_DOCUMENTATION_MAN GNUSTEP_SYSTEM_DOCUMENTATION_INFO GNUSTEP_LOCAL_TOOLS GNUSTEP_LOCAL_APPS GNUSTEP_LOCAL_LIBRARY GNUSTEP_LOCAL_HEADERS GNUSTEP_LOCAL_LIBRARIES GNUSTEP_LOCAL_DOCUMENTATION GNUSTEP_LOCAL_DOCUMENTATION_MAN GNUSTEP_LOCAL_DOCUMENTATION_INFO GNUSTEP_NETWORK_TOOLS GNUSTEP_NETWORK_APPS GNUSTEP_NETWORK_LIBRARY GNUSTEP_NETWORK_HEADERS GNUSTEP_NETWORK_LIBRARIES GNUSTEP_NETWORK_DOCUMENTATION GNUSTEP_NETWORK_DOCUMENTATION_MAN GNUSTEP_NETWORK_DOCUMENTATION_INFO GNUSTEP_USER_DIR_TOOLS GNUSTEP_USER_DIR_APPS GNUSTEP_USER_DIR_LIBRARY GNUSTEP_USER_DIR_HEADERS GNUSTEP_USER_DIR_LIBRARIES GNUSTEP_USER_DIR_DOCUMENTATION GNUSTEP_USER_DIR_DOCUMENTATION_MAN GNUSTEP_USER_DIR_DOCUMENTATION_INFO GNUSTEP_SYSTEM_ROOT GNUSTEP_NETWORK_ROOT GNUSTEP_LOCAL_ROOT GNUSTEP_MULTI_PLATFORM BACKEND_BUNDLE objc_threaded ac_cv_objc_threaded USE_OBJC_EXCEPTIONS AUTO_DEPENDENCIES GCC_WITH_PRECOMPILED_HEADERS SOLARIS_SHARED INCLUDES LIB_DIR OBJCFLAGS GNUMAKE MAKE_WITH_INFO_FUNCTION GNUSTEP_STRIP_MAKEFILES GNUSTEP_MAKE_VERSION GNUSTEP_MAKE_MAJOR_VERSION GNUSTEP_MAKE_MINOR_VERSION GNUSTEP_MAKE_SUBMINOR_VERSION clean_target_os clean_target_cpu clean_target_vendor LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@ -898,6 +894,17 @@ Optional Packages:
default choice does not work for you.
--with-layout=FILE
Set the type of filesystem layout that you want your GNUstep
installation to use. The layout described by FILE will be
read from the FilesystemLayouts directory. Check the
FilesystemLayouts subdirectory for a list of layouts and how
to choose which one you want (or create your own). If a layout
is specified, we automatically avoid importing an existing config
file. The default layout is 'gnustep'.
Example: --with-layout=linux
--with-config-file=PATH
Set the path of the system GNUstep config file. Use this option
if you want to have the GNUstep config file in a non-standard place.
@ -905,21 +912,30 @@ Optional Packages:
--with-system-root
Set the GNUSTEP_SYSTEM_ROOT directory. Use this option if you want
to have the GNUSTEP_SYSTEM_ROOT directory in a non-standard place.
Example: --with-system-root=/usr/GNUstep/System
This is an obsolete option. It used to determine the location of
the SYSTEM domain directory under the 'gnustep' layout. We ignore
this option so that you can write ./configure commands that work
with both old and new gnustep-makes. To get the effect of this
option with this version of gnustep-make, please create your own layout
file and use --with-layout=xxx to use it.
--with-local-root
Set the GNUSTEP_LOCAL_ROOT directory. Use this option if you want
to have the GNUSTEP_LOCAL_ROOT directory in a non-standard place.
Example: --with-local-root=/usr/local/GNUstep/Local
This is an obsolete option. It used to determine the location of
the LOCAL domain directory under the 'gnustep' layout. We ignore
this option so that you can write ./configure commands that work
with both old and new gnustep-makes. To get the effect of this
option with this version of gnustep-make, please create your own layout
file and use --with-layout=xxx to use it.
--with-network-root
Set the GNUSTEP_NETWORK_ROOT directory. Use this option if you
want to have the GNUSTEP_NETWORK_ROOT directory.
Example: --with-network-root=/usr/local/GNUstep/Network
This is an obsolete option. It used to determine the location of
the NETWORK domain directory under the 'gnustep' layout. We ignore
this option so that you can write ./configure commands that work
with both old and new gnustep-makes. To get the effect of this
option with this version of gnustep-make, please create your own layout
file and use --with-layout=xxx to use it.
--with-user-config-file
@ -3278,6 +3294,152 @@ fi
# GNUstep specific options follow
#-------------------------------------------------------------------
#-------------------------------------------------------------------
# Determine filesystem layout to use
#-------------------------------------------------------------------
# Hmmm - currently we only allow them to specify a file containing the
# filesystem layout. We could have a separate flag for each of the
# layout variables; that would be a lot of flags though! But maybe
# for completeness we could go through all of them and add a flag for
# each.
echo "$as_me:$LINENO: checking for GNUstep filesystem layout to use" >&5
echo $ECHO_N "checking for GNUstep filesystem layout to use... $ECHO_C" >&6
# Check whether --with-layout or --without-layout was given.
if test "${with_layout+set}" = set; then
withval="$with_layout"
GNUSTEP_FILESYSTEM_LAYOUT="$withval"
fi;
# The variable GNUSTEP_FILESYSTEM_LAYOUT is empty if no layout was
# specified on the command line. In that case, we read the config
# file (which might contain more up-to-date information on what layout
# the user wants). If the variable is non-empty, then we avoid
# reading the config file (the user already explicitly specified what
# layout they want, so we omit to read existing config that might mess
# that up).
if test ! x"$GNUSTEP_FILESYSTEM_LAYOUT" = x""; then
echo "$as_me:$LINENO: result: $GNUSTEP_FILESYSTEM_LAYOUT" >&5
echo "${ECHO_T}$GNUSTEP_FILESYSTEM_LAYOUT" >&6
GNUSTEP_FILESYSTEM_LAYOUT_FILE="$GNUSTEP_FILESYSTEM_LAYOUT"
else
# This is the default layout that is used when installing
# GNUstep with no other indication. We normally use 'gnustep',
# but we first test for the C: directory, which means we're on
# Windows; in that case we use 'windows'.
if test -d C: >&5 2>&5; then
echo "$as_me:$LINENO: result: none specified: we will use 'windows'" >&5
echo "${ECHO_T}none specified: we will use 'windows'" >&6
GNUSTEP_FILESYSTEM_LAYOUT_FILE=windows
else
echo "$as_me:$LINENO: result: none specified: we will use 'gnustep'" >&5
echo "${ECHO_T}none specified: we will use 'gnustep'" >&6
GNUSTEP_FILESYSTEM_LAYOUT_FILE=gnustep
fi
fi
if test ! -f "$srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE" >&5 2>&5; then
echo "Can not find $srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE"
echo "Please check your --with-layout=xxx argument and try again."
exit 1
fi
#-------------------------------------------------------------------
# Read filesystem layout from file
#-------------------------------------------------------------------
echo "$as_me:$LINENO: checking if we manage to import the filesystem layout configuration" >&5
echo $ECHO_N "checking if we manage to import the filesystem layout configuration... $ECHO_C" >&6
. "$srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE"
if test ! x"$GNUSTEP_DEFAULT_PREFIX" = x""; then
echo "$as_me:$LINENO: result: ok" >&5
echo "${ECHO_T}ok" >&6
else
echo "$as_me:$LINENO: result: failed" >&5
echo "${ECHO_T}failed" >&6
echo "Please check your $srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE"
echo "layout file, as it can not be loaded (GNUSTEP_DEFAULT_PREFIX missing)"
exit 1
fi
# Now, all MAKEFILES/SYSTEM/LOCAL/NETWORK paths in the filesystem
# layout file will be relative to prefix. So we need to immediately
# determine prefix, and use it.
#--------------------------------------------------------------------
# Process --prefix
#--------------------------------------------------------------------
# We use this to make sure we know if the user has passed a
# --prefix=xxx option or not. We use it if it was passed.
#
# If it wasn't passed, then we want to know because in that case we
# want to use the specified default prefix for that filesystem. For
# example, the 'gnustep' filesystem will install by default in
# /usr/GNUstep, while the 'linux' filesystem will install by default
# in /usr/local, and the 'windows' one in C:/GNUstep. Please note
# that AC_PREFIX_DEFAULT will actually be done at the very beginning
# of ./configure, not here. So we wouldn't have access to all the
# filesystem layout information yet, which is why we only use the
# macro to know if a --prefix=xxx was passed or not.
echo "$as_me:$LINENO: checking for prefix" >&5
echo $ECHO_N "checking for prefix... $ECHO_C" >&6
if test "x$prefix" = "xNONE"; then
# Use the default prefix for this filesystem layout
GNUSTEP_PREFIX="$GNUSTEP_DEFAULT_PREFIX";
else
# Use the prefix that the user specified
GNUSTEP_PREFIX="$prefix";
fi
# Remove any '/' at the end of prefix. All system/network/local paths
# from layout files must start with a '/'. We don't want a '/' at the
# end of the prefix to generate a '//' mostly because common.make will
# try to double-check that GNUSTEP_SYSTEM_TOOLS is in your PATH. Any
# '//' in GNUSTEP_SYSTEM_TOOLS will have been normalized to '/' in
# PATH (on some systems at least) and so comparing them won't find a
# match and the check will fail even if GNUSTEP_SYSTEM_TOOLS is in
# PATH and a spurious warning will be produced.
GNUSTEP_PREFIX="`echo \"$GNUSTEP_PREFIX\" | sed 's%/*$%%'`"
echo "$as_me:$LINENO: result: $GNUSTEP_PREFIX" >&5
echo "${ECHO_T}$GNUSTEP_PREFIX" >&6
# Now we apply the prefix
GNUSTEP_MAKEFILES="$GNUSTEP_PREFIX$GNUSTEP_MAKEFILES"
GNUSTEP_SYSTEM_APPS="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_APPS"
GNUSTEP_SYSTEM_TOOLS="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_TOOLS"
GNUSTEP_SYSTEM_LIBRARY="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_LIBRARY"
GNUSTEP_SYSTEM_HEADERS="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_HEADERS"
GNUSTEP_SYSTEM_LIBRARIES="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_LIBRARIES"
GNUSTEP_SYSTEM_DOCUMENTATION="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_DOCUMENTATION"
GNUSTEP_SYSTEM_DOCUMENTATION_MAN="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_DOCUMENTATION_MAN"
GNUSTEP_SYSTEM_DOCUMENTATION_INFO="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_DOCUMENTATION_INFO"
GNUSTEP_NETWORK_APPS="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_APPS"
GNUSTEP_NETWORK_TOOLS="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_TOOLS"
GNUSTEP_NETWORK_LIBRARY="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_LIBRARY"
GNUSTEP_NETWORK_HEADERS="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_HEADERS"
GNUSTEP_NETWORK_LIBRARIES="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_LIBRARIES"
GNUSTEP_NETWORK_DOCUMENTATION="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_DOCUMENTATION"
GNUSTEP_NETWORK_DOCUMENTATION_MAN="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_DOCUMENTATION_MAN"
GNUSTEP_NETWORK_DOCUMENTATION_INFO="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_DOCUMENTATION_INFO"
GNUSTEP_LOCAL_APPS="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_APPS"
GNUSTEP_LOCAL_TOOLS="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_TOOLS"
GNUSTEP_LOCAL_LIBRARY="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_LIBRARY"
GNUSTEP_LOCAL_HEADERS="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_HEADERS"
GNUSTEP_LOCAL_LIBRARIES="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_LIBRARIES"
GNUSTEP_LOCAL_DOCUMENTATION="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_DOCUMENTATION"
GNUSTEP_LOCAL_DOCUMENTATION_MAN="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_DOCUMENTATION_MAN"
GNUSTEP_LOCAL_DOCUMENTATION_INFO="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_DOCUMENTATION_INFO"
#---------------------------------------------------------------------
# Location of the GNUstep.conf config file (--with-config-file)
#---------------------------------------------------------------------
@ -3325,8 +3487,16 @@ echo "${ECHO_T}$GNUSTEP_CONFIG_FILE" >&6
# we read will be used to generate the new system-wide one, while the
# user one will be left untouched).
# Please note that if the user explicitly specified a
# --with-layout=xxx option, we do not read the config file. They
# already made clear what they want.
# TODO: what about flattened vs non-flattened ? It would be nice to
# import that option as well.
# It can be annoying in certain cases though; this option lets you
# turn it off
# turn it off (or turn it back on if disabled because of the
# --with-layout=xxx option!)
echo "$as_me:$LINENO: checking if we should import an existing configuration file" >&5
echo $ECHO_N "checking if we should import an existing configuration file... $ECHO_C" >&6
# Check whether --enable-importing-config-file or --disable-importing-config-file was given.
@ -3334,193 +3504,101 @@ if test "${enable_importing_config_file+set}" = set; then
enableval="$enable_importing_config_file"
ac_cv_importing_config_file=$enableval
else
ac_cv_importing_config_file="yes"
ac_cv_importing_config_file="maybe"
fi;
# If importing the file is disabled, don't import it.
if test "$ac_cv_importing_config_file" = "no"; then
echo "$as_me:$LINENO: result: no: disabled from the command-line" >&5
echo "${ECHO_T}no: disabled from the command-line" >&6
else
# Check that the file exists
if test ! -f "$GNUSTEP_CONFIG_FILE"; then
echo "$as_me:$LINENO: result: no: file \"$GNUSTEP_CONFIG_FILE\" does not exist" >&5
echo "${ECHO_T}no: file \"$GNUSTEP_CONFIG_FILE\" does not exist" >&6
if test "$ac_cv_importing_config_file" = "maybe" && test ! x"$GNUSTEP_FILESYSTEM_LAYOUT" = x""; then
echo "$as_me:$LINENO: result: no: already imported a layout file" >&5
echo "${ECHO_T}no: already imported a layout file" >&6
else
echo "$as_me:$LINENO: result: yes: trying to import \"$GNUSTEP_CONFIG_FILE\"" >&5
if test ! -f "$GNUSTEP_CONFIG_FILE"; then
echo "$as_me:$LINENO: result: no: file \"$GNUSTEP_CONFIG_FILE\" does not exist" >&5
echo "${ECHO_T}no: file \"$GNUSTEP_CONFIG_FILE\" does not exist" >&6
else
echo "$as_me:$LINENO: result: yes: trying to import \"$GNUSTEP_CONFIG_FILE\"" >&5
echo "${ECHO_T}yes: trying to import \"$GNUSTEP_CONFIG_FILE\"" >&6
{ echo "$as_me:$LINENO: If this fails, please run configure again with the --disable-importing-config-file option" >&5
echo "$as_me: If this fails, please run configure again with the --disable-importing-config-file option" >&6;}
. "$GNUSTEP_CONFIG_FILE"
fi
{ echo "$as_me:$LINENO: If this fails, run configure again with --disable-importing-config-file" >&5
echo "$as_me: If this fails, run configure again with --disable-importing-config-file" >&6;}
. "$GNUSTEP_CONFIG_FILE"
fi
fi
fi
#--------------------------------------------------------------------
# Important - from now on, any variable that is set in the
# configuration file (eg, GNUSTEP_SYSTEM_ROOT) could already have a
# value that we have imported from the previous file. ./configure
# command line options should override those values, but otherwise we
# should keep them!
#
# Those could also be env variables, which is really a backwards
# compatibility hack that won't necessarily be kept in the future!
# Important - from now on, any variable that is set in the filesystem
# layout and/or configuration file (eg, GNUSTEP_SYSTEM_ROOT) could
# already have a value that we have imported from the files.
# ./configure command line options should override those values, but
# otherwise we should keep them!
#--------------------------------------------------------------------
#--------------------------------------------------------------------
# Process --prefix
#--------------------------------------------------------------------
#
# In practice,
#
# ./configure --prefix=/usr/GNUstep
#
# is equivalent to:
#
# ./configure --with-system-root=/usr/GNUstep/System
# --with-local-root=/usr/GNUstep/Local
#
# plus it has the side-effect that a config.site will be loaded by
# ./configure from $prefix/share/config.site, if it exists. Our
# config.site is in $prefix/System/share/config.site though, so it
# won't be found. It doesn't really matter though, as the config.site
# is irrelevant for us in this context.
#
# Please note that AC_PREFIX_DEFAULT will not appear in this position
# in the generated configure file; it will appear at the very
# beginning. So we can't check for GNUSTEP_SYSTEM_ROOT or anything
# similar in the implementation of AC_PREFIX_DEFAULT because we will
# not have read GNUstep.conf yet ...
# PS: This is the default GNUSTEP_ROOT that is used when installing
# GNUstep with no other indication. Test for the C: directory, which
# means we're on Windows
#
# GNUSTEP_ROOT is only used to set default values for
# GNUSTEP_SYSTEM_ROOT and GNUSTEP_LOCAL_ROOT if they are not set in
# config file or as a command-line argument.
#
if test "x$prefix" = "xNONE"; then
GNUSTEP_ROOT="$ac_default_prefix" ;
else
GNUSTEP_ROOT="$prefix";
# Set the values for all those variables ovverriding anything read
# from the configuration file or inherited from the environment.
# The --prefix=xxx option should overwrite those. Please notice
# that the --with-system-root=xxx (and similar) options are
# processed later as overwrite --prefix=xxx in their specific area.
GNUSTEP_SYSTEM_ROOT="$GNUSTEP_ROOT/System";
GNUSTEP_LOCAL_ROOT="$GNUSTEP_ROOT/Local";
GNUSTEP_NETWORK_ROOT="$GNUSTEP_LOCAL_ROOT";
fi
#--------------------------------------------------------------------
# Process --with-system-root
#--------------------------------------------------------------------
echo "$as_me:$LINENO: checking for GNUSTEP_SYSTEM_ROOT to use" >&5
echo $ECHO_N "checking for GNUSTEP_SYSTEM_ROOT to use... $ECHO_C" >&6
echo "$as_me:$LINENO: checking if the obsolete --with-system-root option was used" >&5
echo $ECHO_N "checking if the obsolete --with-system-root option was used... $ECHO_C" >&6
# Check whether --with-system-root or --without-system-root was given.
if test "${with_system_root+set}" = set; then
withval="$with_system_root"
GNUSTEP_SYSTEM_ROOT="$withval"
OBSOLETE_GNUSTEP_SYSTEM_ROOT="$withval"
fi;
if test "$GNUSTEP_SYSTEM_ROOT" = "" -o "$GNUSTEP_SYSTEM_ROOT" = "no"; then
GNUSTEP_SYSTEM_ROOT="$GNUSTEP_ROOT/System"
if test ! x"$OBSOLETE_GNUSTEP_SYSTEM_ROOT" = x"" && test ! x"$OBSOLETE_GNUSTEP_SYSTEM_ROOT" = x"no"; then
echo "$as_me:$LINENO: result: $OBSOLETE_GNUSTEP_SYSTEM_ROOT: ignored" >&5
echo "${ECHO_T}$OBSOLETE_GNUSTEP_SYSTEM_ROOT: ignored" >&6
{ echo "$as_me:$LINENO: WARNING: ignoring --with-system-root=$OBSOLETE_GNUSTEP_SYSTEM_ROOT option" >&5
echo "$as_me: WARNING: ignoring --with-system-root=$OBSOLETE_GNUSTEP_SYSTEM_ROOT option" >&2;}
else
echo "$as_me:$LINENO: result: no: good" >&5
echo "${ECHO_T}no: good" >&6
fi
if echo "$GNUSTEP_SYSTEM_ROOT" | grep '[ \\] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_SYSTEM_ROOT'"
echo "Please try again using --with-system-root= to specify a valid path."
if test "$MSWIND" = "yes"
then
echo "Please note that on windows you must use unix-style paths within"
echo "the make package even though gnustep programs built in the mingw32"
echo "environment use native paths throughout."
fi
exit 1
fi
echo "$as_me:$LINENO: result: $GNUSTEP_SYSTEM_ROOT" >&5
echo "${ECHO_T}$GNUSTEP_SYSTEM_ROOT" >&6
#--------------------------------------------------------------------
# Process --with-local-root
#--------------------------------------------------------------------
echo "$as_me:$LINENO: checking for GNUSTEP_LOCAL_ROOT to use" >&5
echo $ECHO_N "checking for GNUSTEP_LOCAL_ROOT to use... $ECHO_C" >&6
echo "$as_me:$LINENO: checking if the obsolete --with-local-root option was used" >&5
echo $ECHO_N "checking if the obsolete --with-local-root option was used... $ECHO_C" >&6
# Check whether --with-local-root or --without-local-root was given.
if test "${with_local_root+set}" = set; then
withval="$with_local_root"
GNUSTEP_LOCAL_ROOT="$withval"
OBSOLETE_GNUSTEP_LOCAL_ROOT="$withval"
fi;
# If GNUSTEP_LOCAL_ROOT is explicitly set to 'no', we effectively disable it
# by setting it to be the same as GNUSTEP_SYSTEM_ROOT
if test "$GNUSTEP_LOCAL_ROOT" = "no"; then
GNUSTEP_LOCAL_ROOT="$GNUSTEP_SYSTEM_ROOT"
if test ! x"$OBSOLETE_GNUSTEP_LOCAL_ROOT" = x"" && test ! x"$OBSOLETE_GNUSTEP_LOCAL_ROOT" = x"no"; then
echo "$as_me:$LINENO: result: $OBSOLETE_GNUSTEP_LOCAL_ROOT: ignored" >&5
echo "${ECHO_T}$OBSOLETE_GNUSTEP_LOCAL_ROOT: ignored" >&6
{ echo "$as_me:$LINENO: WARNING: ignoring --with-local-root=$OBSOLETE_GNUSTEP_LOCAL_ROOT option" >&5
echo "$as_me: WARNING: ignoring --with-local-root=$OBSOLETE_GNUSTEP_LOCAL_ROOT option" >&2;}
else
echo "$as_me:$LINENO: result: no: good" >&5
echo "${ECHO_T}no: good" >&6
fi
if test "$GNUSTEP_LOCAL_ROOT" = ""; then
GNUSTEP_LOCAL_ROOT="$GNUSTEP_ROOT/Local"
fi
if echo "$GNUSTEP_LOCAL_ROOT" | grep '[ \\] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_LOCAL_ROOT'"
echo "Please try again using --with-local-root= to specify a valid path."
if test "$MSWIND" = "yes"
then
echo "Please note that on windows you must use unix-style paths within"
echo "the make package even though gnustep programs built in the mingw32"
echo "environment use native paths throughout."
fi
exit 1
fi
echo "$as_me:$LINENO: result: $GNUSTEP_LOCAL_ROOT" >&5
echo "${ECHO_T}$GNUSTEP_LOCAL_ROOT" >&6
#--------------------------------------------------------------------
# Process --with-network-root
#--------------------------------------------------------------------
echo "$as_me:$LINENO: checking for GNUSTEP_NETWORK_ROOT to use" >&5
echo $ECHO_N "checking for GNUSTEP_NETWORK_ROOT to use... $ECHO_C" >&6
echo "$as_me:$LINENO: checking if the obsolete --with-network-root option was used" >&5
echo $ECHO_N "checking if the obsolete --with-network-root option was used... $ECHO_C" >&6
# Check whether --with-network-root or --without-network-root was given.
if test "${with_network_root+set}" = set; then
withval="$with_network_root"
GNUSTEP_NETWORK_ROOT="$withval"
OBSOLETE_GNUSTEP_NETWORK_ROOT="$withval"
fi;
# By default we disable network root, by setting GNUSTEP_NETWORK_ROOT
# to be the same as GNUSTEP_LOCAL_ROOT. GNUSTEP_NETWORK_ROOT is very
# rarely used, and most users prefer simpler systems with shorter
# paths and shorter command lines. To turn on GNUSTEP_NETWORK_ROOT
# again, you can use the --with-network-root=xxx option; pass
# something like --with-network-root=/usr/GNUstep/Network on the
# configure command line.
if test "$GNUSTEP_NETWORK_ROOT" = "" -o "$GNUSTEP_NETWORK_ROOT" = "no"; then
GNUSTEP_NETWORK_ROOT="$GNUSTEP_LOCAL_ROOT"
if test ! x"$OBSOLETE_GNUSTEP_NETWORK_ROOT" = x"" && test ! x"$OBSOLETE_GNUSTEP_NETWORK_ROOT" = x"no"; then
echo "$as_me:$LINENO: result: $OBSOLETE_GNUSTEP_NETWORK_ROOT: ignored" >&5
echo "${ECHO_T}$OBSOLETE_GNUSTEP_NETWORK_ROOT: ignored" >&6
{ echo "$as_me:$LINENO: WARNING: ignoring --with-network-root=$OBSOLETE_GNUSTEP_NETWORK_ROOT option" >&5
echo "$as_me: WARNING: ignoring --with-network-root=$OBSOLETE_GNUSTEP_NETWORK_ROOT option" >&2;}
else
echo "$as_me:$LINENO: result: no: good" >&5
echo "${ECHO_T}no: good" >&6
fi
if echo "$GNUSTEP_NETWORK_ROOT" | grep '[ \\] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_NETWORK_ROOT'"
echo "Please try again using --with-network-root= to specify a valid path."
if test "$MSWIND" = "yes"
then
echo "Please note that on windows you must use unix-style paths within"
echo "the make package even though gnustep programs built in the mingw32"
echo "environment use native paths throughout."
fi
exit 1
fi
echo "$as_me:$LINENO: result: $GNUSTEP_NETWORK_ROOT" >&5
echo "${ECHO_T}$GNUSTEP_NETWORK_ROOT" >&6
#--------------------------------------------------------------------
# Process --with-user-config-file
@ -3533,9 +3611,8 @@ if test "${with_user_config_file+set}" = set; then
withval="$with_user_config_file"
GNUSTEP_USER_CONFIG_FILE="$withval"
fi;
if test "$GNUSTEP_USER_CONFIG_FILE" = "" -o "$GNUSTEP_USER_CONFIG_FILE" = "no"; then
GNUSTEP_USER_CONFIG_FILE=".GNUstep.conf"
fi
# Keep in mind we already have a default value set by the filesystem
# layout, so it should never be empty.
if echo "$GNUSTEP_USER_CONFIG_FILE" | grep '[ \\] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_USER_CONFIG_FILE'"
@ -3548,8 +3625,6 @@ then
fi
exit 1
fi
echo "$as_me:$LINENO: result: $GNUSTEP_NETWORK_ROOT" >&5
echo "${ECHO_T}$GNUSTEP_NETWORK_ROOT" >&6
echo "$as_me:$LINENO: result: $GNUSTEP_USER_CONFIG_FILE" >&5
echo "${ECHO_T}$GNUSTEP_USER_CONFIG_FILE" >&6
@ -3565,9 +3640,8 @@ if test "${with_user_dir+set}" = set; then
withval="$with_user_dir"
GNUSTEP_USER_DIR="$withval"
fi;
if test "$GNUSTEP_USER_DIR" = "" -o "$GNUSTEP_USER_DIR" = "no"; then
GNUSTEP_USER_DIR="GNUstep"
fi
# Keep in mind we already have a default value set by the filesystem
# layout, so it should never be empty.
if echo "$GNUSTEP_USER_DIR" | grep '[ \\] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_USER_DIR'"
@ -3595,9 +3669,8 @@ if test "${with_user_defaults_dir+set}" = set; then
withval="$with_user_defaults_dir"
GNUSTEP_USER_DEFAULTS_DIR="$withval"
fi;
if test "$GNUSTEP_USER_DEFAULTS_DIR" = "" -o "$GNUSTEP_USER_DEFAULTS_DIR" = "no"; then
GNUSTEP_USER_DEFAULTS_DIR="GNUstep/Defaults"
fi
# Keep in mind we already have a default value set by the filesystem
# layout, so it should never be empty.
if echo "$GNUSTEP_USER_DEFAULTS_DIR" | grep '[ \\] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_USER_DEFAULTS_DIR'"
@ -3618,14 +3691,10 @@ echo "${ECHO_T}$GNUSTEP_USER_DEFAULTS_DIR" >&6
# Setting up GNUSTEP_MAKEFILES
#--------------------------------------------------------------------
#
# Please note that we do an explicit check in preparation for the (not
# so far) future when this directory (like any other GNUstep
# directory, eg, Applications or Tools or Libraries) will be
# relocatable to anywhere you like.
# This is where you install gnustep-make. We just print it out.
#
echo "$as_me:$LINENO: checking for GNUSTEP_MAKEFILES to use" >&5
echo $ECHO_N "checking for GNUSTEP_MAKEFILES to use... $ECHO_C" >&6
GNUSTEP_MAKEFILES="$GNUSTEP_SYSTEM_ROOT/Library/Makefiles"
echo "$as_me:$LINENO: result: $GNUSTEP_MAKEFILES" >&5
echo "${ECHO_T}$GNUSTEP_MAKEFILES" >&6
@ -3666,6 +3735,9 @@ if test "$ac_cv_flattened" = "no"; then
GNUSTEP_FLATTENED=;
GNUSTEP_IS_FLATTENED=no;
# FIXME - maybe we should have a warning here if you try to
# use 'linux' or 'linux-system' layout with non-flattened!
else
GNUSTEP_FLATTENED=yes;
GNUSTEP_IS_FLATTENED=yes;
@ -3682,42 +3754,9 @@ echo "${ECHO_T}no" >&6;
fi
#--------------------------------------------------------------------
# Determine the full filesystem layout
# Output the full filesystem layout
#--------------------------------------------------------------------
#
# TODO: Add configure flags to set these. This just sets up the
# default GNUstep filesystem config.
#
#
# SYSTEM domain
#
if test x"$GNUSTEP_SYSTEM_APPS" = x""; then
GNUSTEP_SYSTEM_APPS="$GNUSTEP_SYSTEM_ROOT/Applications"
fi
if test x"$GNUSTEP_SYSTEM_TOOLS" = x""; then
GNUSTEP_SYSTEM_TOOLS="$GNUSTEP_SYSTEM_ROOT/Tools"
fi
if test x"$GNUSTEP_SYSTEM_LIBRARY" = x""; then
GNUSTEP_SYSTEM_LIBRARY="$GNUSTEP_SYSTEM_ROOT/Library"
fi
if test x"$GNUSTEP_SYSTEM_HEADERS" = x""; then
GNUSTEP_SYSTEM_HEADERS="$GNUSTEP_SYSTEM_ROOT/Library/Headers"
fi
if test x"$GNUSTEP_SYSTEM_LIBRARIES" = x""; then
GNUSTEP_SYSTEM_LIBRARIES="$GNUSTEP_SYSTEM_LIBRARY/Libraries/"
fi
if test x"$GNUSTEP_SYSTEM_DOCUMENTATION" = x""; then
GNUSTEP_SYSTEM_DOCUMENTATION="$GNUSTEP_SYSTEM_LIBRARY/Documentation"
fi
if test x"$GNUSTEP_SYSTEM_DOCUMENTATION_MAN" = x""; then
GNUSTEP_SYSTEM_DOCUMENTATION_MAN="$GNUSTEP_SYSTEM_DOCUMENTATION/man"
fi
if test x"$GNUSTEP_SYSTEM_DOCUMENTATION_INFO" = x""; then
GNUSTEP_SYSTEM_DOCUMENTATION_INFO="$GNUSTEP_SYSTEM_DOCUMENTATION/info"
fi
@ -3728,30 +3767,6 @@ fi
if test x"$GNUSTEP_LOCAL_APPS" = x""; then
GNUSTEP_LOCAL_APPS="$GNUSTEP_LOCAL_ROOT/Applications"
fi
if test x"$GNUSTEP_LOCAL_TOOLS" = x""; then
GNUSTEP_LOCAL_TOOLS="$GNUSTEP_LOCAL_ROOT/Tools"
fi
if test x"$GNUSTEP_LOCAL_LIBRARY" = x""; then
GNUSTEP_LOCAL_LIBRARY="$GNUSTEP_LOCAL_ROOT/Library"
fi
if test x"$GNUSTEP_LOCAL_HEADERS" = x""; then
GNUSTEP_LOCAL_HEADERS="$GNUSTEP_LOCAL_ROOT/Library/Headers"
fi
if test x"$GNUSTEP_LOCAL_LIBRARIES" = x""; then
GNUSTEP_LOCAL_LIBRARIES="$GNUSTEP_LOCAL_LIBRARY/Libraries/"
fi
if test x"$GNUSTEP_LOCAL_DOCUMENTATION" = x""; then
GNUSTEP_LOCAL_DOCUMENTATION="$GNUSTEP_LOCAL_LIBRARY/Documentation"
fi
if test x"$GNUSTEP_LOCAL_DOCUMENTATION_MAN" = x""; then
GNUSTEP_LOCAL_DOCUMENTATION_MAN="$GNUSTEP_LOCAL_DOCUMENTATION/man"
fi
if test x"$GNUSTEP_LOCAL_DOCUMENTATION_INFO" = x""; then
GNUSTEP_LOCAL_DOCUMENTATION_INFO="$GNUSTEP_LOCAL_DOCUMENTATION/info"
fi
@ -3762,30 +3777,6 @@ fi
if test x"$GNUSTEP_NETWORK_APPS" = x""; then
GNUSTEP_NETWORK_APPS="$GNUSTEP_NETWORK_ROOT/Applications"
fi
if test x"$GNUSTEP_NETWORK_TOOLS" = x""; then
GNUSTEP_NETWORK_TOOLS="$GNUSTEP_NETWORK_ROOT/Tools"
fi
if test x"$GNUSTEP_NETWORK_LIBRARY" = x""; then
GNUSTEP_NETWORK_LIBRARY="$GNUSTEP_NETWORK_ROOT/Library"
fi
if test x"$GNUSTEP_NETWORK_HEADERS" = x""; then
GNUSTEP_NETWORK_HEADERS="$GNUSTEP_NETWORK_ROOT/Library/Headers"
fi
if test x"$GNUSTEP_NETWORK_LIBRARIES" = x""; then
GNUSTEP_NETWORK_LIBRARIES="$GNUSTEP_NETWORK_LIBRARY/Libraries/"
fi
if test x"$GNUSTEP_NETWORK_DOCUMENTATION" = x""; then
GNUSTEP_NETWORK_DOCUMENTATION="$GNUSTEP_NETWORK_LIBRARY/Documentation"
fi
if test x"$GNUSTEP_NETWORK_DOCUMENTATION_MAN" = x""; then
GNUSTEP_NETWORK_DOCUMENTATION_MAN="$GNUSTEP_NETWORK_DOCUMENTATION/man"
fi
if test x"$GNUSTEP_NETWORK_DOCUMENTATION_INFO" = x""; then
GNUSTEP_NETWORK_DOCUMENTATION_INFO="$GNUSTEP_NETWORK_DOCUMENTATION/info"
fi
@ -3796,35 +3787,23 @@ fi
if test x"$GNUSTEP_USER_DIR_APPS" = x""; then
GNUSTEP_USER_DIR_APPS="$GNUSTEP_USER_DIR/Applications"
fi
if test x"$GNUSTEP_USER_DIR_TOOLS" = x""; then
GNUSTEP_USER_DIR_TOOLS="$GNUSTEP_USER_DIR/Tools"
fi
if test x"$GNUSTEP_USER_DIR_LIBRARY" = x""; then
GNUSTEP_USER_DIR_LIBRARY="$GNUSTEP_USER_DIR/Library"
fi
if test x"$GNUSTEP_USER_DIR_HEADERS" = x""; then
GNUSTEP_USER_DIR_HEADERS="$GNUSTEP_USER_DIR/Library/Headers"
fi
if test x"$GNUSTEP_USER_DIR_LIBRARIES" = x""; then
GNUSTEP_USER_DIR_LIBRARIES="$GNUSTEP_USER_DIR_LIBRARY/Libraries/"
fi
if test x"$GNUSTEP_USER_DIR_DOCUMENTATION" = x""; then
GNUSTEP_USER_DIR_DOCUMENTATION="$GNUSTEP_USER_DIR/Documentation"
fi
if test x"$GNUSTEP_USER_DIR_DOCUMENTATION_MAN" = x""; then
GNUSTEP_USER_DIR_DOCUMENTATION_MAN="$GNUSTEP_USER_DIR_DOCUMENTATION/man"
fi
if test x"$GNUSTEP_USER_DIR_DOCUMENTATION_INFO" = x""; then
GNUSTEP_USER_DIR_DOCUMENTATION_INFO="$GNUSTEP_USER_DIR_DOCUMENTATION/info"
fi
#--------------------------------------------------------------------
# These variables no longer exist! We try to set some compatibility
# values for them that should work with the old 'gnustep' layout.
# So things using the old 'gnustep' layout should keep working.
# These variables won't have any meaning with the new layouts.
# They are deprecated and they *will* be removed.
#--------------------------------------------------------------------
GNUSTEP_SYSTEM_ROOT="$GNUSTEP_PREFIX/System"
GNUSTEP_NETWORK_ROOT="$GNUSTEP_PREFIX/Network"
GNUSTEP_LOCAL_ROOT="$GNUSTEP_PREFIX/Local"
GNUSTEP_USER_DIR="GNUstep"
@ -3893,9 +3872,7 @@ fi
#--------------------------------------------------------------------
# Set location of System GNUstep dirs for later use
if test "$GNUSTEP_FLATTENED" = yes; then
if test "$GNUSTEP_IS_FLATTENED" = yes; then
GNUSTEP_LDIR="$GNUSTEP_SYSTEM_LIBRARIES"
GNUSTEP_HDIR="$GNUSTEP_SYSTEM_HEADERS"
else
@ -5439,9 +5416,6 @@ s,@LN_S@,$LN_S,;t t
s,@TAR@,$TAR,;t t
s,@CHOWN@,$CHOWN,;t t
s,@GNUSTEP_CONFIG_FILE@,$GNUSTEP_CONFIG_FILE,;t t
s,@GNUSTEP_SYSTEM_ROOT@,$GNUSTEP_SYSTEM_ROOT,;t t
s,@GNUSTEP_LOCAL_ROOT@,$GNUSTEP_LOCAL_ROOT,;t t
s,@GNUSTEP_NETWORK_ROOT@,$GNUSTEP_NETWORK_ROOT,;t t
s,@GNUSTEP_USER_CONFIG_FILE@,$GNUSTEP_USER_CONFIG_FILE,;t t
s,@GNUSTEP_USER_DIR@,$GNUSTEP_USER_DIR,;t t
s,@GNUSTEP_USER_DEFAULTS_DIR@,$GNUSTEP_USER_DEFAULTS_DIR,;t t
@ -5481,6 +5455,9 @@ s,@GNUSTEP_USER_DIR_LIBRARIES@,$GNUSTEP_USER_DIR_LIBRARIES,;t t
s,@GNUSTEP_USER_DIR_DOCUMENTATION@,$GNUSTEP_USER_DIR_DOCUMENTATION,;t t
s,@GNUSTEP_USER_DIR_DOCUMENTATION_MAN@,$GNUSTEP_USER_DIR_DOCUMENTATION_MAN,;t t
s,@GNUSTEP_USER_DIR_DOCUMENTATION_INFO@,$GNUSTEP_USER_DIR_DOCUMENTATION_INFO,;t t
s,@GNUSTEP_SYSTEM_ROOT@,$GNUSTEP_SYSTEM_ROOT,;t t
s,@GNUSTEP_NETWORK_ROOT@,$GNUSTEP_NETWORK_ROOT,;t t
s,@GNUSTEP_LOCAL_ROOT@,$GNUSTEP_LOCAL_ROOT,;t t
s,@GNUSTEP_MULTI_PLATFORM@,$GNUSTEP_MULTI_PLATFORM,;t t
s,@BACKEND_BUNDLE@,$BACKEND_BUNDLE,;t t
s,@objc_threaded@,$objc_threaded,;t t

View file

@ -1,7 +1,7 @@
#
# configure.ac
#
# Copyright (C) 1997-2004 Free Software Foundation, Inc.
# Copyright (C) 1997-2007 Free Software Foundation, Inc.
#
# Author: Scott Christley <scottc@net-community.com>
# Ovidiu Predescu <ovidiu@net-community.com>
@ -189,6 +189,149 @@ fi
# GNUstep specific options follow
#-------------------------------------------------------------------
#-------------------------------------------------------------------
# Determine filesystem layout to use
#-------------------------------------------------------------------
# Hmmm - currently we only allow them to specify a file containing the
# filesystem layout. We could have a separate flag for each of the
# layout variables; that would be a lot of flags though! But maybe
# for completeness we could go through all of them and add a flag for
# each.
AC_MSG_CHECKING([for GNUstep filesystem layout to use])
AC_ARG_WITH(layout,[
--with-layout=FILE
Set the type of filesystem layout that you want your GNUstep
installation to use. The layout described by FILE will be
read from the FilesystemLayouts directory. Check the
FilesystemLayouts subdirectory for a list of layouts and how
to choose which one you want (or create your own). If a layout
is specified, we automatically avoid importing an existing config
file. The default layout is 'gnustep'.
Example: --with-layout=linux
],
GNUSTEP_FILESYSTEM_LAYOUT="$withval",)
# The variable GNUSTEP_FILESYSTEM_LAYOUT is empty if no layout was
# specified on the command line. In that case, we read the config
# file (which might contain more up-to-date information on what layout
# the user wants). If the variable is non-empty, then we avoid
# reading the config file (the user already explicitly specified what
# layout they want, so we omit to read existing config that might mess
# that up).
if test ! x"$GNUSTEP_FILESYSTEM_LAYOUT" = x""; then
AC_MSG_RESULT($GNUSTEP_FILESYSTEM_LAYOUT)
GNUSTEP_FILESYSTEM_LAYOUT_FILE="$GNUSTEP_FILESYSTEM_LAYOUT"
else
# This is the default layout that is used when installing
# GNUstep with no other indication. We normally use 'gnustep',
# but we first test for the C: directory, which means we're on
# Windows; in that case we use 'windows'.
if test -d C: >&5 2>&5; then
AC_MSG_RESULT(none specified: we will use 'windows')
GNUSTEP_FILESYSTEM_LAYOUT_FILE=windows
else
AC_MSG_RESULT(none specified: we will use 'gnustep')
GNUSTEP_FILESYSTEM_LAYOUT_FILE=gnustep
fi
fi
if test ! -f "$srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE" >&5 2>&5; then
echo "Can not find $srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE"
echo "Please check your --with-layout=xxx argument and try again."
exit 1
fi
#-------------------------------------------------------------------
# Read filesystem layout from file
#-------------------------------------------------------------------
AC_MSG_CHECKING([if we manage to import the filesystem layout configuration])
. "$srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE"
if test ! x"$GNUSTEP_DEFAULT_PREFIX" = x""; then
AC_MSG_RESULT(ok)
else
AC_MSG_RESULT(failed)
echo "Please check your $srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE"
echo "layout file, as it can not be loaded (GNUSTEP_DEFAULT_PREFIX missing)"
exit 1
fi
# Now, all MAKEFILES/SYSTEM/LOCAL/NETWORK paths in the filesystem
# layout file will be relative to prefix. So we need to immediately
# determine prefix, and use it.
#--------------------------------------------------------------------
# Process --prefix
#--------------------------------------------------------------------
# We use this to make sure we know if the user has passed a
# --prefix=xxx option or not. We use it if it was passed.
#
# If it wasn't passed, then we want to know because in that case we
# want to use the specified default prefix for that filesystem. For
# example, the 'gnustep' filesystem will install by default in
# /usr/GNUstep, while the 'linux' filesystem will install by default
# in /usr/local, and the 'windows' one in C:/GNUstep. Please note
# that AC_PREFIX_DEFAULT will actually be done at the very beginning
# of ./configure, not here. So we wouldn't have access to all the
# filesystem layout information yet, which is why we only use the
# macro to know if a --prefix=xxx was passed or not.
AC_PREFIX_DEFAULT(NONE)
AC_MSG_CHECKING([for prefix])
if test "x$prefix" = "xNONE"; then
# Use the default prefix for this filesystem layout
GNUSTEP_PREFIX="$GNUSTEP_DEFAULT_PREFIX";
else
# Use the prefix that the user specified
GNUSTEP_PREFIX="$prefix";
fi
# Remove any '/' at the end of prefix. All system/network/local paths
# from layout files must start with a '/'. We don't want a '/' at the
# end of the prefix to generate a '//' mostly because common.make will
# try to double-check that GNUSTEP_SYSTEM_TOOLS is in your PATH. Any
# '//' in GNUSTEP_SYSTEM_TOOLS will have been normalized to '/' in
# PATH (on some systems at least) and so comparing them won't find a
# match and the check will fail even if GNUSTEP_SYSTEM_TOOLS is in
# PATH and a spurious warning will be produced.
GNUSTEP_PREFIX="`echo \"$GNUSTEP_PREFIX\" | sed 's%/*$%%'`"
AC_MSG_RESULT($GNUSTEP_PREFIX)
# Now we apply the prefix
GNUSTEP_MAKEFILES="$GNUSTEP_PREFIX$GNUSTEP_MAKEFILES"
GNUSTEP_SYSTEM_APPS="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_APPS"
GNUSTEP_SYSTEM_TOOLS="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_TOOLS"
GNUSTEP_SYSTEM_LIBRARY="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_LIBRARY"
GNUSTEP_SYSTEM_HEADERS="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_HEADERS"
GNUSTEP_SYSTEM_LIBRARIES="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_LIBRARIES"
GNUSTEP_SYSTEM_DOCUMENTATION="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_DOCUMENTATION"
GNUSTEP_SYSTEM_DOCUMENTATION_MAN="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_DOCUMENTATION_MAN"
GNUSTEP_SYSTEM_DOCUMENTATION_INFO="$GNUSTEP_PREFIX$GNUSTEP_SYSTEM_DOCUMENTATION_INFO"
GNUSTEP_NETWORK_APPS="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_APPS"
GNUSTEP_NETWORK_TOOLS="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_TOOLS"
GNUSTEP_NETWORK_LIBRARY="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_LIBRARY"
GNUSTEP_NETWORK_HEADERS="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_HEADERS"
GNUSTEP_NETWORK_LIBRARIES="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_LIBRARIES"
GNUSTEP_NETWORK_DOCUMENTATION="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_DOCUMENTATION"
GNUSTEP_NETWORK_DOCUMENTATION_MAN="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_DOCUMENTATION_MAN"
GNUSTEP_NETWORK_DOCUMENTATION_INFO="$GNUSTEP_PREFIX$GNUSTEP_NETWORK_DOCUMENTATION_INFO"
GNUSTEP_LOCAL_APPS="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_APPS"
GNUSTEP_LOCAL_TOOLS="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_TOOLS"
GNUSTEP_LOCAL_LIBRARY="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_LIBRARY"
GNUSTEP_LOCAL_HEADERS="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_HEADERS"
GNUSTEP_LOCAL_LIBRARIES="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_LIBRARIES"
GNUSTEP_LOCAL_DOCUMENTATION="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_DOCUMENTATION"
GNUSTEP_LOCAL_DOCUMENTATION_MAN="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_DOCUMENTATION_MAN"
GNUSTEP_LOCAL_DOCUMENTATION_INFO="$GNUSTEP_PREFIX$GNUSTEP_LOCAL_DOCUMENTATION_INFO"
#---------------------------------------------------------------------
# Location of the GNUstep.conf config file (--with-config-file)
#---------------------------------------------------------------------
@ -235,11 +378,16 @@ AC_SUBST(GNUSTEP_CONFIG_FILE)
# we read will be used to generate the new system-wide one, while the
# user one will be left untouched).
# FIXME: what about flattened vs non-flattened ? It would be nice to
# import that option as well ?
# Please note that if the user explicitly specified a
# --with-layout=xxx option, we do not read the config file. They
# already made clear what they want.
# TODO: what about flattened vs non-flattened ? It would be nice to
# import that option as well.
# It can be annoying in certain cases though; this option lets you
# turn it off
# turn it off (or turn it back on if disabled because of the
# --with-layout=xxx option!)
AC_MSG_CHECKING([if we should import an existing configuration file])
AC_ARG_ENABLE(importing-config-file, [
--disable-importing-config-file
@ -248,189 +396,95 @@ AC_ARG_ENABLE(importing-config-file, [
parsed and used when configure is being run.
],
ac_cv_importing_config_file=$enableval,
ac_cv_importing_config_file="yes")
ac_cv_importing_config_file="maybe")
# If importing the file is disabled, don't import it.
if test "$ac_cv_importing_config_file" = "no"; then
AC_MSG_RESULT([no: disabled from the command-line])
else
# Check that the file exists
if test ! -f "$GNUSTEP_CONFIG_FILE"; then
AC_MSG_RESULT([no: file "$GNUSTEP_CONFIG_FILE" does not exist])
if test "$ac_cv_importing_config_file" = "maybe" && test ! x"$GNUSTEP_FILESYSTEM_LAYOUT" = x""; then
AC_MSG_RESULT([no: already imported a layout file])
else
AC_MSG_RESULT([yes: trying to import "$GNUSTEP_CONFIG_FILE"])
AC_MSG_NOTICE([If this fails, please run configure again with the --disable-importing-config-file option])
. "$GNUSTEP_CONFIG_FILE"
fi
if test ! -f "$GNUSTEP_CONFIG_FILE"; then
AC_MSG_RESULT([no: file "$GNUSTEP_CONFIG_FILE" does not exist])
else
AC_MSG_RESULT([yes: trying to import "$GNUSTEP_CONFIG_FILE"])
AC_MSG_NOTICE([If this fails, run configure again with --disable-importing-config-file])
. "$GNUSTEP_CONFIG_FILE"
fi
fi
fi
#--------------------------------------------------------------------
# Important - from now on, any variable that is set in the
# configuration file (eg, GNUSTEP_SYSTEM_ROOT) could already have a
# value that we have imported from the previous file. ./configure
# command line options should override those values, but otherwise we
# should keep them!
#
# Those could also be env variables, which is really a backwards
# compatibility hack that won't necessarily be kept in the future!
# Important - from now on, any variable that is set in the filesystem
# layout and/or configuration file (eg, GNUSTEP_SYSTEM_ROOT) could
# already have a value that we have imported from the files.
# ./configure command line options should override those values, but
# otherwise we should keep them!
#--------------------------------------------------------------------
#--------------------------------------------------------------------
# Process --prefix
#--------------------------------------------------------------------
#
# In practice,
#
# ./configure --prefix=/usr/GNUstep
#
# is equivalent to:
#
# ./configure --with-system-root=/usr/GNUstep/System
# --with-local-root=/usr/GNUstep/Local
#
# plus it has the side-effect that a config.site will be loaded by
# ./configure from $prefix/share/config.site, if it exists. Our
# config.site is in $prefix/System/share/config.site though, so it
# won't be found. It doesn't really matter though, as the config.site
# is irrelevant for us in this context.
#
# Please note that AC_PREFIX_DEFAULT will not appear in this position
# in the generated configure file; it will appear at the very
# beginning. So we can't check for GNUSTEP_SYSTEM_ROOT or anything
# similar in the implementation of AC_PREFIX_DEFAULT because we will
# not have read GNUstep.conf yet ...
# PS: This is the default GNUSTEP_ROOT that is used when installing
# GNUstep with no other indication. Test for the C: directory, which
# means we're on Windows
AC_PREFIX_DEFAULT(`if test -d C: ; then
echo C:/GNUstep;
else
echo /usr/GNUstep ;
fi`)
#
# GNUSTEP_ROOT is only used to set default values for
# GNUSTEP_SYSTEM_ROOT and GNUSTEP_LOCAL_ROOT if they are not set in
# config file or as a command-line argument.
#
if test "x$prefix" = "xNONE"; then
GNUSTEP_ROOT="$ac_default_prefix" ;
else
GNUSTEP_ROOT="$prefix";
# Set the values for all those variables ovverriding anything read
# from the configuration file or inherited from the environment.
# The --prefix=xxx option should overwrite those. Please notice
# that the --with-system-root=xxx (and similar) options are
# processed later as overwrite --prefix=xxx in their specific area.
GNUSTEP_SYSTEM_ROOT="$GNUSTEP_ROOT/System";
GNUSTEP_LOCAL_ROOT="$GNUSTEP_ROOT/Local";
GNUSTEP_NETWORK_ROOT="$GNUSTEP_LOCAL_ROOT";
fi
#--------------------------------------------------------------------
# Process --with-system-root
#--------------------------------------------------------------------
AC_MSG_CHECKING(for GNUSTEP_SYSTEM_ROOT to use)
AC_MSG_CHECKING(if the obsolete --with-system-root option was used)
AC_ARG_WITH(system-root,[
--with-system-root
Set the GNUSTEP_SYSTEM_ROOT directory. Use this option if you want
to have the GNUSTEP_SYSTEM_ROOT directory in a non-standard place.
Example: --with-system-root=/usr/GNUstep/System
This is an obsolete option. It used to determine the location of
the SYSTEM domain directory under the 'gnustep' layout. We ignore
this option so that you can write ./configure commands that work
with both old and new gnustep-makes. To get the effect of this
option with this version of gnustep-make, please create your own layout
file and use --with-layout=xxx to use it.
],
GNUSTEP_SYSTEM_ROOT="$withval",)
if test "$GNUSTEP_SYSTEM_ROOT" = "" -o "$GNUSTEP_SYSTEM_ROOT" = "no"; then
GNUSTEP_SYSTEM_ROOT="$GNUSTEP_ROOT/System"
OBSOLETE_GNUSTEP_SYSTEM_ROOT="$withval",)
if test ! x"$OBSOLETE_GNUSTEP_SYSTEM_ROOT" = x"" && test ! x"$OBSOLETE_GNUSTEP_SYSTEM_ROOT" = x"no"; then
AC_MSG_RESULT([$OBSOLETE_GNUSTEP_SYSTEM_ROOT: ignored])
AC_MSG_WARN([ignoring --with-system-root=$OBSOLETE_GNUSTEP_SYSTEM_ROOT option])
else
AC_MSG_RESULT(no: good)
fi
if echo "$GNUSTEP_SYSTEM_ROOT" | grep '[[ \\]] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_SYSTEM_ROOT'"
echo "Please try again using --with-system-root= to specify a valid path."
if test "$MSWIND" = "yes"
then
echo "Please note that on windows you must use unix-style paths within"
echo "the make package even though gnustep programs built in the mingw32"
echo "environment use native paths throughout."
fi
exit 1
fi
AC_MSG_RESULT($GNUSTEP_SYSTEM_ROOT)
AC_SUBST(GNUSTEP_SYSTEM_ROOT)
#--------------------------------------------------------------------
# Process --with-local-root
#--------------------------------------------------------------------
AC_MSG_CHECKING(for GNUSTEP_LOCAL_ROOT to use)
AC_MSG_CHECKING(if the obsolete --with-local-root option was used)
AC_ARG_WITH(local-root,[
--with-local-root
Set the GNUSTEP_LOCAL_ROOT directory. Use this option if you want
to have the GNUSTEP_LOCAL_ROOT directory in a non-standard place.
Example: --with-local-root=/usr/local/GNUstep/Local
This is an obsolete option. It used to determine the location of
the LOCAL domain directory under the 'gnustep' layout. We ignore
this option so that you can write ./configure commands that work
with both old and new gnustep-makes. To get the effect of this
option with this version of gnustep-make, please create your own layout
file and use --with-layout=xxx to use it.
],
GNUSTEP_LOCAL_ROOT="$withval",)
# If GNUSTEP_LOCAL_ROOT is explicitly set to 'no', we effectively disable it
# by setting it to be the same as GNUSTEP_SYSTEM_ROOT
if test "$GNUSTEP_LOCAL_ROOT" = "no"; then
GNUSTEP_LOCAL_ROOT="$GNUSTEP_SYSTEM_ROOT"
OBSOLETE_GNUSTEP_LOCAL_ROOT="$withval",)
if test ! x"$OBSOLETE_GNUSTEP_LOCAL_ROOT" = x"" && test ! x"$OBSOLETE_GNUSTEP_LOCAL_ROOT" = x"no"; then
AC_MSG_RESULT([$OBSOLETE_GNUSTEP_LOCAL_ROOT: ignored])
AC_MSG_WARN([ignoring --with-local-root=$OBSOLETE_GNUSTEP_LOCAL_ROOT option])
else
AC_MSG_RESULT(no: good)
fi
if test "$GNUSTEP_LOCAL_ROOT" = ""; then
GNUSTEP_LOCAL_ROOT="$GNUSTEP_ROOT/Local"
fi
if echo "$GNUSTEP_LOCAL_ROOT" | grep '[[ \\]] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_LOCAL_ROOT'"
echo "Please try again using --with-local-root= to specify a valid path."
if test "$MSWIND" = "yes"
then
echo "Please note that on windows you must use unix-style paths within"
echo "the make package even though gnustep programs built in the mingw32"
echo "environment use native paths throughout."
fi
exit 1
fi
AC_MSG_RESULT($GNUSTEP_LOCAL_ROOT)
AC_SUBST(GNUSTEP_LOCAL_ROOT)
#--------------------------------------------------------------------
# Process --with-network-root
#--------------------------------------------------------------------
AC_MSG_CHECKING(for GNUSTEP_NETWORK_ROOT to use)
AC_MSG_CHECKING(if the obsolete --with-network-root option was used)
AC_ARG_WITH(network-root,[
--with-network-root
Set the GNUSTEP_NETWORK_ROOT directory. Use this option if you
want to have the GNUSTEP_NETWORK_ROOT directory.
Example: --with-network-root=/usr/local/GNUstep/Network
This is an obsolete option. It used to determine the location of
the NETWORK domain directory under the 'gnustep' layout. We ignore
this option so that you can write ./configure commands that work
with both old and new gnustep-makes. To get the effect of this
option with this version of gnustep-make, please create your own layout
file and use --with-layout=xxx to use it.
],
GNUSTEP_NETWORK_ROOT="$withval",)
# By default we disable network root, by setting GNUSTEP_NETWORK_ROOT
# to be the same as GNUSTEP_LOCAL_ROOT. GNUSTEP_NETWORK_ROOT is very
# rarely used, and most users prefer simpler systems with shorter
# paths and shorter command lines. To turn on GNUSTEP_NETWORK_ROOT
# again, you can use the --with-network-root=xxx option; pass
# something like --with-network-root=/usr/GNUstep/Network on the
# configure command line.
if test "$GNUSTEP_NETWORK_ROOT" = "" -o "$GNUSTEP_NETWORK_ROOT" = "no"; then
GNUSTEP_NETWORK_ROOT="$GNUSTEP_LOCAL_ROOT"
OBSOLETE_GNUSTEP_NETWORK_ROOT="$withval",)
if test ! x"$OBSOLETE_GNUSTEP_NETWORK_ROOT" = x"" && test ! x"$OBSOLETE_GNUSTEP_NETWORK_ROOT" = x"no"; then
AC_MSG_RESULT([$OBSOLETE_GNUSTEP_NETWORK_ROOT: ignored])
AC_MSG_WARN([ignoring --with-network-root=$OBSOLETE_GNUSTEP_NETWORK_ROOT option])
else
AC_MSG_RESULT(no: good)
fi
if echo "$GNUSTEP_NETWORK_ROOT" | grep '[[ \\]] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_NETWORK_ROOT'"
echo "Please try again using --with-network-root= to specify a valid path."
if test "$MSWIND" = "yes"
then
echo "Please note that on windows you must use unix-style paths within"
echo "the make package even though gnustep programs built in the mingw32"
echo "environment use native paths throughout."
fi
exit 1
fi
AC_MSG_RESULT($GNUSTEP_NETWORK_ROOT)
AC_SUBST(GNUSTEP_NETWORK_ROOT)
#--------------------------------------------------------------------
# Process --with-user-config-file
@ -446,9 +500,8 @@ AC_ARG_WITH(user-config-file,[
Example: --with-user-config-file=GNUstep/GNUstep.conf
],
GNUSTEP_USER_CONFIG_FILE="$withval",)
if test "$GNUSTEP_USER_CONFIG_FILE" = "" -o "$GNUSTEP_USER_CONFIG_FILE" = "no"; then
GNUSTEP_USER_CONFIG_FILE=".GNUstep.conf"
fi
# Keep in mind we already have a default value set by the filesystem
# layout, so it should never be empty.
if echo "$GNUSTEP_USER_CONFIG_FILE" | grep '[[ \\]] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_USER_CONFIG_FILE'"
@ -461,7 +514,6 @@ then
fi
exit 1
fi
AC_MSG_RESULT($GNUSTEP_NETWORK_ROOT)
AC_MSG_RESULT($GNUSTEP_USER_CONFIG_FILE)
AC_SUBST(GNUSTEP_USER_CONFIG_FILE)
@ -480,9 +532,8 @@ AC_ARG_WITH(user-dir,[
Example: --with-user-dir='gnustep'
],
GNUSTEP_USER_DIR="$withval",)
if test "$GNUSTEP_USER_DIR" = "" -o "$GNUSTEP_USER_DIR" = "no"; then
GNUSTEP_USER_DIR="GNUstep"
fi
# Keep in mind we already have a default value set by the filesystem
# layout, so it should never be empty.
if echo "$GNUSTEP_USER_DIR" | grep '[[ \\]] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_USER_DIR'"
@ -513,9 +564,8 @@ AC_ARG_WITH(user-defaults-dir,[
Example: --with-user-defaults-dir='GNUstep/Library/Defaults'
],
GNUSTEP_USER_DEFAULTS_DIR="$withval",)
if test "$GNUSTEP_USER_DEFAULTS_DIR" = "" -o "$GNUSTEP_USER_DEFAULTS_DIR" = "no"; then
GNUSTEP_USER_DEFAULTS_DIR="GNUstep/Defaults"
fi
# Keep in mind we already have a default value set by the filesystem
# layout, so it should never be empty.
if echo "$GNUSTEP_USER_DEFAULTS_DIR" | grep '[[ \\]] > /dev/null'
then
echo "found a backslash or space (illegal) in '$GNUSTEP_USER_DEFAULTS_DIR'"
@ -535,13 +585,9 @@ AC_SUBST(GNUSTEP_USER_DEFAULTS_DIR)
# Setting up GNUSTEP_MAKEFILES
#--------------------------------------------------------------------
#
# Please note that we do an explicit check in preparation for the (not
# so far) future when this directory (like any other GNUstep
# directory, eg, Applications or Tools or Libraries) will be
# relocatable to anywhere you like.
# This is where you install gnustep-make. We just print it out.
#
AC_MSG_CHECKING(for GNUSTEP_MAKEFILES to use)
GNUSTEP_MAKEFILES="$GNUSTEP_SYSTEM_ROOT/Library/Makefiles"
AC_SUBST(GNUSTEP_MAKEFILES)
AC_MSG_RESULT($GNUSTEP_MAKEFILES)
@ -594,6 +640,9 @@ if test "$ac_cv_flattened" = "no"; then
GNUSTEP_FLATTENED=;
GNUSTEP_IS_FLATTENED=no;
# FIXME - maybe we should have a warning here if you try to
# use 'linux' or 'linux-system' layout with non-flattened!
else
GNUSTEP_FLATTENED=yes;
GNUSTEP_IS_FLATTENED=yes;
@ -608,43 +657,9 @@ else
fi
#--------------------------------------------------------------------
# Determine the full filesystem layout
# Output the full filesystem layout
#--------------------------------------------------------------------
#
# TODO: Add configure flags to set these. This just sets up the
# default GNUstep filesystem config.
#
#
# SYSTEM domain
#
if test x"$GNUSTEP_SYSTEM_APPS" = x""; then
GNUSTEP_SYSTEM_APPS="$GNUSTEP_SYSTEM_ROOT/Applications"
fi
if test x"$GNUSTEP_SYSTEM_TOOLS" = x""; then
GNUSTEP_SYSTEM_TOOLS="$GNUSTEP_SYSTEM_ROOT/Tools"
fi
if test x"$GNUSTEP_SYSTEM_LIBRARY" = x""; then
GNUSTEP_SYSTEM_LIBRARY="$GNUSTEP_SYSTEM_ROOT/Library"
fi
if test x"$GNUSTEP_SYSTEM_HEADERS" = x""; then
GNUSTEP_SYSTEM_HEADERS="$GNUSTEP_SYSTEM_ROOT/Library/Headers"
fi
if test x"$GNUSTEP_SYSTEM_LIBRARIES" = x""; then
GNUSTEP_SYSTEM_LIBRARIES="$GNUSTEP_SYSTEM_LIBRARY/Libraries/"
fi
if test x"$GNUSTEP_SYSTEM_DOCUMENTATION" = x""; then
GNUSTEP_SYSTEM_DOCUMENTATION="$GNUSTEP_SYSTEM_LIBRARY/Documentation"
fi
if test x"$GNUSTEP_SYSTEM_DOCUMENTATION_MAN" = x""; then
GNUSTEP_SYSTEM_DOCUMENTATION_MAN="$GNUSTEP_SYSTEM_DOCUMENTATION/man"
fi
if test x"$GNUSTEP_SYSTEM_DOCUMENTATION_INFO" = x""; then
GNUSTEP_SYSTEM_DOCUMENTATION_INFO="$GNUSTEP_SYSTEM_DOCUMENTATION/info"
fi
AC_SUBST(GNUSTEP_SYSTEM_TOOLS)
AC_SUBST(GNUSTEP_SYSTEM_APPS)
AC_SUBST(GNUSTEP_SYSTEM_LIBRARY)
@ -654,31 +669,6 @@ AC_SUBST(GNUSTEP_SYSTEM_DOCUMENTATION)
AC_SUBST(GNUSTEP_SYSTEM_DOCUMENTATION_MAN)
AC_SUBST(GNUSTEP_SYSTEM_DOCUMENTATION_INFO)
if test x"$GNUSTEP_LOCAL_APPS" = x""; then
GNUSTEP_LOCAL_APPS="$GNUSTEP_LOCAL_ROOT/Applications"
fi
if test x"$GNUSTEP_LOCAL_TOOLS" = x""; then
GNUSTEP_LOCAL_TOOLS="$GNUSTEP_LOCAL_ROOT/Tools"
fi
if test x"$GNUSTEP_LOCAL_LIBRARY" = x""; then
GNUSTEP_LOCAL_LIBRARY="$GNUSTEP_LOCAL_ROOT/Library"
fi
if test x"$GNUSTEP_LOCAL_HEADERS" = x""; then
GNUSTEP_LOCAL_HEADERS="$GNUSTEP_LOCAL_ROOT/Library/Headers"
fi
if test x"$GNUSTEP_LOCAL_LIBRARIES" = x""; then
GNUSTEP_LOCAL_LIBRARIES="$GNUSTEP_LOCAL_LIBRARY/Libraries/"
fi
if test x"$GNUSTEP_LOCAL_DOCUMENTATION" = x""; then
GNUSTEP_LOCAL_DOCUMENTATION="$GNUSTEP_LOCAL_LIBRARY/Documentation"
fi
if test x"$GNUSTEP_LOCAL_DOCUMENTATION_MAN" = x""; then
GNUSTEP_LOCAL_DOCUMENTATION_MAN="$GNUSTEP_LOCAL_DOCUMENTATION/man"
fi
if test x"$GNUSTEP_LOCAL_DOCUMENTATION_INFO" = x""; then
GNUSTEP_LOCAL_DOCUMENTATION_INFO="$GNUSTEP_LOCAL_DOCUMENTATION/info"
fi
AC_SUBST(GNUSTEP_LOCAL_TOOLS)
AC_SUBST(GNUSTEP_LOCAL_APPS)
AC_SUBST(GNUSTEP_LOCAL_LIBRARY)
@ -688,31 +678,6 @@ AC_SUBST(GNUSTEP_LOCAL_DOCUMENTATION)
AC_SUBST(GNUSTEP_LOCAL_DOCUMENTATION_MAN)
AC_SUBST(GNUSTEP_LOCAL_DOCUMENTATION_INFO)
if test x"$GNUSTEP_NETWORK_APPS" = x""; then
GNUSTEP_NETWORK_APPS="$GNUSTEP_NETWORK_ROOT/Applications"
fi
if test x"$GNUSTEP_NETWORK_TOOLS" = x""; then
GNUSTEP_NETWORK_TOOLS="$GNUSTEP_NETWORK_ROOT/Tools"
fi
if test x"$GNUSTEP_NETWORK_LIBRARY" = x""; then
GNUSTEP_NETWORK_LIBRARY="$GNUSTEP_NETWORK_ROOT/Library"
fi
if test x"$GNUSTEP_NETWORK_HEADERS" = x""; then
GNUSTEP_NETWORK_HEADERS="$GNUSTEP_NETWORK_ROOT/Library/Headers"
fi
if test x"$GNUSTEP_NETWORK_LIBRARIES" = x""; then
GNUSTEP_NETWORK_LIBRARIES="$GNUSTEP_NETWORK_LIBRARY/Libraries/"
fi
if test x"$GNUSTEP_NETWORK_DOCUMENTATION" = x""; then
GNUSTEP_NETWORK_DOCUMENTATION="$GNUSTEP_NETWORK_LIBRARY/Documentation"
fi
if test x"$GNUSTEP_NETWORK_DOCUMENTATION_MAN" = x""; then
GNUSTEP_NETWORK_DOCUMENTATION_MAN="$GNUSTEP_NETWORK_DOCUMENTATION/man"
fi
if test x"$GNUSTEP_NETWORK_DOCUMENTATION_INFO" = x""; then
GNUSTEP_NETWORK_DOCUMENTATION_INFO="$GNUSTEP_NETWORK_DOCUMENTATION/info"
fi
AC_SUBST(GNUSTEP_NETWORK_TOOLS)
AC_SUBST(GNUSTEP_NETWORK_APPS)
AC_SUBST(GNUSTEP_NETWORK_LIBRARY)
@ -722,31 +687,6 @@ AC_SUBST(GNUSTEP_NETWORK_DOCUMENTATION)
AC_SUBST(GNUSTEP_NETWORK_DOCUMENTATION_MAN)
AC_SUBST(GNUSTEP_NETWORK_DOCUMENTATION_INFO)
if test x"$GNUSTEP_USER_DIR_APPS" = x""; then
GNUSTEP_USER_DIR_APPS="$GNUSTEP_USER_DIR/Applications"
fi
if test x"$GNUSTEP_USER_DIR_TOOLS" = x""; then
GNUSTEP_USER_DIR_TOOLS="$GNUSTEP_USER_DIR/Tools"
fi
if test x"$GNUSTEP_USER_DIR_LIBRARY" = x""; then
GNUSTEP_USER_DIR_LIBRARY="$GNUSTEP_USER_DIR/Library"
fi
if test x"$GNUSTEP_USER_DIR_HEADERS" = x""; then
GNUSTEP_USER_DIR_HEADERS="$GNUSTEP_USER_DIR/Library/Headers"
fi
if test x"$GNUSTEP_USER_DIR_LIBRARIES" = x""; then
GNUSTEP_USER_DIR_LIBRARIES="$GNUSTEP_USER_DIR_LIBRARY/Libraries/"
fi
if test x"$GNUSTEP_USER_DIR_DOCUMENTATION" = x""; then
GNUSTEP_USER_DIR_DOCUMENTATION="$GNUSTEP_USER_DIR/Documentation"
fi
if test x"$GNUSTEP_USER_DIR_DOCUMENTATION_MAN" = x""; then
GNUSTEP_USER_DIR_DOCUMENTATION_MAN="$GNUSTEP_USER_DIR_DOCUMENTATION/man"
fi
if test x"$GNUSTEP_USER_DIR_DOCUMENTATION_INFO" = x""; then
GNUSTEP_USER_DIR_DOCUMENTATION_INFO="$GNUSTEP_USER_DIR_DOCUMENTATION/info"
fi
AC_SUBST(GNUSTEP_USER_DIR_TOOLS)
AC_SUBST(GNUSTEP_USER_DIR_APPS)
AC_SUBST(GNUSTEP_USER_DIR_LIBRARY)
@ -756,6 +696,22 @@ AC_SUBST(GNUSTEP_USER_DIR_DOCUMENTATION)
AC_SUBST(GNUSTEP_USER_DIR_DOCUMENTATION_MAN)
AC_SUBST(GNUSTEP_USER_DIR_DOCUMENTATION_INFO)
#--------------------------------------------------------------------
# These variables no longer exist! We try to set some compatibility
# values for them that should work with the old 'gnustep' layout.
# So things using the old 'gnustep' layout should keep working.
# These variables won't have any meaning with the new layouts.
# They are deprecated and they *will* be removed.
#--------------------------------------------------------------------
GNUSTEP_SYSTEM_ROOT="$GNUSTEP_PREFIX/System"
GNUSTEP_NETWORK_ROOT="$GNUSTEP_PREFIX/Network"
GNUSTEP_LOCAL_ROOT="$GNUSTEP_PREFIX/Local"
GNUSTEP_USER_DIR="GNUstep"
AC_SUBST(GNUSTEP_SYSTEM_ROOT)
AC_SUBST(GNUSTEP_NETWORK_ROOT)
AC_SUBST(GNUSTEP_LOCAL_ROOT)
AC_SUBST(GNUSTEP_USER_DIR)
#--------------------------------------------------------------------
# Is the system multi-platform?
#--------------------------------------------------------------------
@ -824,9 +780,7 @@ AC_SUBST(BACKEND_BUNDLE)
#--------------------------------------------------------------------
# Set location of System GNUstep dirs for later use
if test "$GNUSTEP_FLATTENED" = yes; then
if test "$GNUSTEP_IS_FLATTENED" = yes; then
GNUSTEP_LDIR="$GNUSTEP_SYSTEM_LIBRARIES"
GNUSTEP_HDIR="$GNUSTEP_SYSTEM_HEADERS"
else

View file

@ -30,7 +30,7 @@ if [ -z "$1" ]; then
fi
if [ "$1" == "--help" ]; then
echo "usage: gnustep-config.sh argument"
echo "usage: gnustep-config argument"
echo
echo "Will print out the value of the specified argument, which can be "
echo "any GNUstep filesystem setting from the following list -- "

View file

@ -137,9 +137,16 @@ if [ "$partial_match" != "" ]; then
fi
# Ok - now ready to build the result
result=""
result="."
# First add as many ../ as there are components in a
# Special case - if a is now empty, the second directory was a
# subdirectory of the first. Start the result with '.', so
# that we will get something like ./GNUstep/Frameworks/
if [ -z "$a" ]; then
result="."
fi
# Now add as many ../ as there are components in a
tmp_IFS="$IFS"
IFS=/
for component in $a; do