Updated apple-apple-apple support to automatically choose a reasonable filesystem and config file on Apple Mac OS X

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@26176 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Nicola Pero 2008-03-02 18:37:50 +00:00
parent ffbea25fba
commit 245feb51ab
8 changed files with 2378 additions and 2938 deletions

View file

@ -1,3 +1,23 @@
2008-03-02 Nicola Pero <nicola.pero@meta-innovation.com>
Updated configure and filesystem layouts so that a ./configure on
Apple Mac OS X sets up a consistent apple-apple-apple environment.
* FileSystemLayouts/apple: New filesystem layout for compiling and
installing apple-apple-apple software.
* FileSystemLayouts/README: Added the new filesystem layout.
* configure.ac: If the library-combo is apple-apple-apple, by
default use the apple filesystem layout. On darwin, use
/Library/GNUstep/GNUstep.conf as the default config file.
* configure: Regenerated.
* Documentation/GNUmakefile
(./tmp-installation/System/Library/Makefiles): Specify
--with-layout=gnustep when creating the temporary local
installation.
* Documentation/releasenotes.texi: Explain change of the default
filesystem layout on apple-apple-apple.
* RELEASENOTES: Regenerated.
2008-02-21 Gregory John Casamento <greg_casamento@yahoo.com>
* Documentation/faq.texi: Minor updates to the faq.

View file

@ -40,6 +40,7 @@ CURRENT_DIR = $(shell pwd)
(mkdir tmp-build; \
cd tmp-build; \
../../configure --prefix="$(CURRENT_DIR)/tmp-installation" \
--with-layout=gnustep \
--with-config-file="$(CURRENT_DIR)/tmp-installation/GNUstep.conf"; \
make; \
make install)

View file

@ -8,6 +8,17 @@ migrate to using a newer version of the make system.
@table @samp
@item default filesystem layout on apple-apple-apple
The default filesystem layout when using the apple-apple-apple
library-combo has been changed from 'gnustep' to the new 'apple'
filesystem layout, and on darwin the configuration file is by default
installed in /Library/GNUstep/GNUstep.conf instead of
/etc/GNUstep/GNUstep.conf. Using the 'gnustep' filesystem layout with
the apple-apple-apple library-combo did not make much sense; in
gnustep-make version 2.0.5 and newer, a ./configure on Apple Mac OS X
automatically chooses the right library-combo and filesystem layout to
compile and install Apple native frameworks and applications.
@item ~/GNUstep/GNUstep.sh
This script used to be automatically sourced whenever the main
GNUstep.sh file was sourced. In gnustep-make version 2 (starting with

View file

@ -51,4 +51,10 @@ similar directory structure) as you're installing everything straight
into the standard system locations. Recommended if you're building
packages for a Unix system.
* apple: the Apple Mac OS X layout for software using the
apple-apple-apple library-combo (ie, the Apple frameworks); it
installs everything in /Library or /usr/local. Blends very well with
native Apple Mac OS X systems. Recommended if you're compiling your
own software from sources on Apple Mac OS X using the Apple frameworks
(*not* gnustep-base and gnustep-gui) and want good integration with
your native system.

79
FilesystemLayouts/apple Normal file
View file

@ -0,0 +1,79 @@
#
# Apple Mac OS X filesystem layout
#
# This is the layout found on Apple Mac OS X when installing
# everything into /Library and /usr/local. Use this on Apple Mac OS X
# to compile and install software that uses the native Apple
# frameworks (ie, using the apple-apple-apple library-combo).
#
# Basically, it's a the Apple Mac OS X filesystem with all domains
# mapped into the same /Library and /usr/local directory.
#
# To use gnustep-make in this environment, source GNUstep.sh or use
# 'export GNUSTEP_MAKEFILES=/Library/GNUstep/Makefiles'.
# By default, we install into /, but this can be overridden by using
# ./configure --prefix=xxx when configuring.
GNUSTEP_DEFAULT_PREFIX=/
# These are only used by gnustep-base to implement the NSUserDirectory
# API. We never install anything in them. They will be used as they
# are without $prefix.
GNUSTEP_SYSTEM_USERS_DIR=/Users
GNUSTEP_NETWORK_USERS_DIR=/Network/Users
GNUSTEP_LOCAL_USERS_DIR=/Users
# NB: $prefix will be added to all the MAKEFILES/SYSTEM/NETWORK/LOCAL
# paths.
GNUSTEP_MAKEFILES=/Library/GNUstep/Makefiles
GNUSTEP_SYSTEM_APPS=/Applications
GNUSTEP_SYSTEM_ADMIN_APPS=/Applications/Utilities
GNUSTEP_SYSTEM_WEB_APPS=/Library/WebApplications
GNUSTEP_SYSTEM_TOOLS=/usr/local/bin
GNUSTEP_SYSTEM_ADMIN_TOOLS=/usr/local/sbin
GNUSTEP_SYSTEM_LIBRARY=/Library
GNUSTEP_SYSTEM_HEADERS=/usr/local/include
GNUSTEP_SYSTEM_LIBRARIES=/usr/local/lib
GNUSTEP_SYSTEM_DOC=/Library/Documentation
GNUSTEP_SYSTEM_DOC_MAN=/Library/Documentation/man
GNUSTEP_SYSTEM_DOC_INFO=/Library/Documentation/info
GNUSTEP_NETWORK_APPS=/Applications
GNUSTEP_NETWORK_ADMIN_APPS=/Applications/Utilities
GNUSTEP_NETWORK_WEB_APPS=/Library/WebApplications
GNUSTEP_NETWORK_TOOLS=/usr/local/bin
GNUSTEP_NETWORK_ADMIN_TOOLS=/usr/local/sbin
GNUSTEP_NETWORK_LIBRARY=/Library
GNUSTEP_NETWORK_HEADERS=/usr/local/include
GNUSTEP_NETWORK_LIBRARIES=/usr/local/lib
GNUSTEP_NETWORK_DOC=/Library/Documentation
GNUSTEP_NETWORK_DOC_MAN=/Library/Documentation/man
GNUSTEP_NETWORK_DOC_INFO=/Library/Documentation/info
GNUSTEP_LOCAL_APPS=/Applications
GNUSTEP_LOCAL_ADMIN_APPS=/Applications/Utilities
GNUSTEP_LOCAL_WEB_APPS=/Library/WebApplications
GNUSTEP_LOCAL_TOOLS=/usr/local/bin
GNUSTEP_LOCAL_ADMIN_TOOLS=/usr/local/sbin
GNUSTEP_LOCAL_LIBRARY=/Library
GNUSTEP_LOCAL_HEADERS=/usr/local/include
GNUSTEP_LOCAL_LIBRARIES=/usr/local/lib
GNUSTEP_LOCAL_DOC=/Library/Documentation
GNUSTEP_LOCAL_DOC_MAN=/Library/Documentation/man
GNUSTEP_LOCAL_DOC_INFO=/Library/Documentation/info
GNUSTEP_USER_DIR_APPS=Applications
GNUSTEP_USER_DIR_ADMIN_APPS=Applications/Utilities
GNUSTEP_USER_DIR_WEB_APPS=Library/WebApplications
GNUSTEP_USER_DIR_TOOLS=bin
GNUSTEP_USER_DIR_ADMIN_TOOLS=sbin
GNUSTEP_USER_DIR_LIBRARY=Library
GNUSTEP_USER_DIR_HEADERS=Library/Headers
GNUSTEP_USER_DIR_LIBRARIES=Library/Libraries
GNUSTEP_USER_DIR_DOC=Library/Documentation
GNUSTEP_USER_DIR_DOC_MAN=Library/Documentation/man
GNUSTEP_USER_DIR_DOC_INFO=Library/Documentation/info
GNUSTEP_USER_CONFIG_FILE=Library/.GNUstep.conf
GNUSTEP_USER_DEFAULTS_DIR=Library/Defaults

View file

@ -8,6 +8,18 @@ using a newer version of the make system.
1.1 Version 2.0.5
=================
`default filesystem layout on apple-apple-apple'
The default filesystem layout when using the apple-apple-apple
library-combo has been changed from 'gnustep' to the new 'apple'
filesystem layout, and on darwin the configuration file is by
default installed in /Library/GNUstep/GNUstep.conf instead of
/etc/GNUstep/GNUstep.conf. Using the 'gnustep' filesystem layout
with the apple-apple-apple library-combo did not make much sense;
in gnustep-make version 2.0.5 and newer, a ./configure on Apple
Mac OS X automatically chooses the right library-combo and
filesystem layout to compile and install Apple native frameworks
and applications.
`~/GNUstep/GNUstep.sh'
This script used to be automatically sourced whenever the main
GNUstep.sh file was sourced. In gnustep-make version 2 (starting

5168
configure vendored

File diff suppressed because it is too large Load diff

View file

@ -244,7 +244,8 @@ AC_ARG_WITH(layout,[
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'.
file. The default layout is 'gnustep' except when the library-combo
is apple-apple-apple, in which case the default layout is 'apple'.
Example: --with-layout=fhs
],
GNUSTEP_FILESYSTEM_LAYOUT="$withval",)
@ -262,9 +263,16 @@ if test ! x"$GNUSTEP_FILESYSTEM_LAYOUT" = x""; then
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'.
AC_MSG_RESULT(none specified: we will use 'gnustep')
GNUSTEP_FILESYSTEM_LAYOUT_FILE=gnustep
# GNUstep with no other indication. We normally use 'gnustep',
# unless the library-combo is apple-apple-apple, in which case
# we use 'apple'.
if test "$ac_cv_library_combo" = "apple-apple-apple"; then
AC_MSG_RESULT(none specified: we use 'apple' since we're on apple-apple-apple)
GNUSTEP_FILESYSTEM_LAYOUT_FILE=apple
else
AC_MSG_RESULT(none specified: we use 'gnustep')
GNUSTEP_FILESYSTEM_LAYOUT_FILE=gnustep
fi
fi
if test ! -f "$srcdir/FilesystemLayouts/$GNUSTEP_FILESYSTEM_LAYOUT_FILE" >&5 2>&5; then
@ -388,6 +396,7 @@ if test "$GNUSTEP_CONFIG_FILE" = "" -o "$GNUSTEP_CONFIG_FILE" = "no"; then
case "$target_os" in
freebsd* | openbsd* ) GNUSTEP_CONFIG_FILE=/usr/etc/GNUstep.conf ;;
netbsd* ) GNUSTEP_CONFIG_FILE=/usr/pkg/etc/GNUstep.conf ;;
darwin*) GNUSTEP_CONFIG_FILE=/Library/GNUstep/GNUstep.conf ;;
*) GNUSTEP_CONFIG_FILE=/etc/GNUstep/GNUstep.conf ;;
esac
fi