mirror of
https://github.com/gnustep/tools-make.git
synced 2025-04-22 22:00:49 +00:00
Changed to restructure subdirectory layout for binaries and system dependent
resources in a non-flattened installation. First step towards seamless Debian multiarch support. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@39918 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
5e17de6df4
commit
3a998d4d16
12 changed files with 117 additions and 93 deletions
32
ChangeLog
32
ChangeLog
|
@ -1,3 +1,35 @@
|
|||
2016-06-25 Richard Frith-Macdonald <rfm@gnu.org>
|
||||
|
||||
* Documentation/releasenotes.texi:
|
||||
* GNUmakefile.in:
|
||||
* GNUstep.csh.in:
|
||||
* GNUstep.sh.in:
|
||||
* Master/rules.make:
|
||||
* common.make:
|
||||
* config-noarch.make.in:
|
||||
* gnustep-config.in:
|
||||
* openapp.in:
|
||||
* opentool.in:
|
||||
* rules.make:
|
||||
When building non-flattened, the subdirectory name for
|
||||
libraries/binaries is changed for Debian compatibility (and simplicity)
|
||||
to use a directory whose name is of the form architecture/library-combo
|
||||
rather than nested directories of the form cpu/os-abi/library-combo.
|
||||
The architecture name format is a sanitised triplet cpu-os-abi (where
|
||||
previously we had cpu/os-abi).
|
||||
When building non-flattened, header files are now installed in an
|
||||
architecture and library-combo dependent subdirectory in the same way
|
||||
that binary libraries are installed. This removes an inconsistency and
|
||||
makes sense with Debian multiarch support which puts headers in an
|
||||
architecture specific subdirectory.
|
||||
These changes are the first step in making GNUstep work seamlessly
|
||||
with Debian multiarch. To use them you will need to rebuild your
|
||||
entire gnustep installation, and in particular build a version of
|
||||
gnustep-base which has correspoinding changes to know where to look
|
||||
up resources at runtime.
|
||||
However, the changes should have no effect on a flattened installation
|
||||
(currently the default).
|
||||
|
||||
2016-05-19 Seong Gu Lee <sgleehd@gmail.com>
|
||||
|
||||
* Instance/application.make:
|
||||
|
|
|
@ -4,6 +4,21 @@ The release notes include descriptions of API changes, behavior
|
|||
changes and other information that might help developers and users
|
||||
migrate to using a newer version of the make system.
|
||||
|
||||
@section Version 2.7.0
|
||||
|
||||
When building non-flattened, the subdirectory name for libraries/binaries
|
||||
is changed for Debian compatibility (and simplicity) to use a directory
|
||||
whose name is of the form architecture/library-combo rather than nested
|
||||
directories of the form cpu/os-abi/library-combo. The architecture name
|
||||
format is a sanitised triplet cpu-os-abi (where previously we had cpu/os-abi).
|
||||
|
||||
When building non-flattened, header files are now installed in an architecture
|
||||
and library-combo dependent subdirectory in the same way that binary libraries
|
||||
are installed. This removes an inconsistency and makes sense with Debian
|
||||
multiarch support which puts headers in an architecture specific subdirectory.
|
||||
|
||||
The long since deprecated GNUSTEP_INSTALLATION_DIR is removed.
|
||||
|
||||
@section Version 2.6.8
|
||||
|
||||
Configure option '--with-library-combo=ng-gnu-gnu' to use the 'Next Generation' setup of the latest ObjectiveC-2 runtime and compiler features rather than traditional runtime. Requires the new runtime and a recent clang compiler.
|
||||
|
|
|
@ -85,7 +85,7 @@ override GNUSTEP_TARGET_OS = @clean_target_os@
|
|||
override GNUSTEP_LIB_COMBO = @ac_cv_library_combo@
|
||||
|
||||
ifeq ($(GNUSTEP_IS_FLATTENED), no)
|
||||
override GNUSTEP_TARGET_DIR = $(GNUSTEP_TARGET_CPU)/$(GNUSTEP_TARGET_OS)
|
||||
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)
|
||||
override MAKE_CONFIG_DIR = $(GNUSTEP_TARGET_LDIR)
|
||||
|
@ -93,7 +93,7 @@ else
|
|||
override GNUSTEP_TARGET_DIR = .
|
||||
override GNUSTEP_TARGET_LDIR = .
|
||||
override MAYBE_LIBRARY_COMBO = .
|
||||
override MAKE_CONFIG_DIR = $(GNUSTEP_LIB_COMBO)
|
||||
override MAKE_CONFIG_DIR = .
|
||||
endif
|
||||
|
||||
export GNUSTEP_TARGET_DIR
|
||||
|
@ -192,10 +192,8 @@ install: generated-files
|
|||
echo "Creating makefile directories in: $(makedir)"; \
|
||||
"$(srcdir)/mkinstalldirs" \
|
||||
"$(makedir)" \
|
||||
"$(makedir)/$(GNUSTEP_TARGET_CPU)" \
|
||||
"$(makedir)/$(GNUSTEP_TARGET_DIR)" \
|
||||
"$(makedir)/$(GNUSTEP_TARGET_LDIR)" \
|
||||
"$(makedir)/$(GNUSTEP_LIB_COMBO)" \
|
||||
"$(makedir)/Additional" \
|
||||
"$(makedir)/Auxiliary" \
|
||||
"$(makedir)/Master" \
|
||||
|
|
|
@ -220,7 +220,7 @@ end
|
|||
foreach dir ( `/bin/sh -c 'IFS=:; for i in '"${GNUSTEP_TOOLS_PATHLIST}"'; do echo $i; done'` )
|
||||
set path_fragment="${dir}"
|
||||
if ( "${GNUSTEP_IS_FLATTENED}" == "no" ) then
|
||||
set path_fragment="${dir}:${dir}/${GNUSTEP_HOST_CPU}/${GNUSTEP_HOST_OS}/${LIBRARY_COMBO}:${dir}/${GNUSTEP_HOST_CPU}/${GNUSTEP_HOST_OS}"
|
||||
set path_fragment="${dir}:${dir}/${GNUSTEP_HOST_CPU}-${GNUSTEP_HOST_OS}/${LIBRARY_COMBO}:${dir}/${GNUSTEP_HOST_CPU}-${GNUSTEP_HOST_OS}"
|
||||
endif
|
||||
|
||||
if ( ! ${?PATH} ) then
|
||||
|
@ -238,7 +238,7 @@ foreach dir ( `/bin/sh -c 'IFS=:; for i in '"${GNUSTEP_LIBRARIES_PATHLIST}"'; do
|
|||
if ( "$GNUSTEP_IS_FLATTENED" == "yes" ) then
|
||||
set path_fragment="$dir"
|
||||
else
|
||||
set path_fragment="$dir/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS/$LIBRARY_COMBO:$dir/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS"
|
||||
set path_fragment="$dir/$GNUSTEP_HOST_CPU-$GNUSTEP_HOST_OS/$LIBRARY_COMBO:$dir/$GNUSTEP_HOST_CPU-$GNUSTEP_HOST_OS"
|
||||
endif
|
||||
|
||||
switch ( "${GNUSTEP_HOST_OS}" )
|
||||
|
|
|
@ -332,7 +332,7 @@ for dir in $GNUSTEP_TOOLS_PATHLIST; do
|
|||
|
||||
# Prepare the path_fragment
|
||||
if [ "$GNUSTEP_IS_FLATTENED" = "no" ]; then
|
||||
path_fragment="$dir:$dir/${GNUSTEP_HOST_CPU}/${GNUSTEP_HOST_OS}/${LIBRARY_COMBO}:$dir/${GNUSTEP_HOST_CPU}/${GNUSTEP_HOST_OS}"
|
||||
path_fragment="$dir:$dir/${GNUSTEP_HOST_CPU}-${GNUSTEP_HOST_OS}/${LIBRARY_COMBO}:$dir/${GNUSTEP_HOST_CPU}-${GNUSTEP_HOST_OS}"
|
||||
else
|
||||
path_fragment="$dir"
|
||||
fi
|
||||
|
@ -366,7 +366,7 @@ IFS=:
|
|||
if [ "$GNUSTEP_IS_FLATTENED" = "yes" ]; then
|
||||
path_fragment="$dir"
|
||||
else
|
||||
path_fragment="$dir/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS/$LIBRARY_COMBO:$dir/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS"
|
||||
path_fragment="$dir/$GNUSTEP_HOST_CPU-$GNUSTEP_HOST_OS/$LIBRARY_COMBO:$dir/$GNUSTEP_HOST_CPU-$GNUSTEP_HOST_OS"
|
||||
fi
|
||||
|
||||
# Append the path_fragment to lib_paths ... in a different way,
|
||||
|
|
|
@ -77,8 +77,8 @@ $(GNUSTEP_OBJ_DIR):
|
|||
# install depends on all as per GNU/Unix habits, conventions and standards.
|
||||
|
||||
# The very first top-most make invocation we want to have install
|
||||
# depend on internal-check-install-permissions and on all, and
|
||||
# distclean depend on clean. We used to check MAKELEVEL=0 here to
|
||||
# depend on all, and distclean depend on clean.
|
||||
# We used to check MAKELEVEL=0 here to
|
||||
# determine if this is the top-most invocation of make, but that does
|
||||
# not work if the top-most invocation of make is done from within a
|
||||
# (non-gnustep-make) makefile itself! So we use a marker variable.
|
||||
|
@ -87,7 +87,7 @@ $(GNUSTEP_OBJ_DIR):
|
|||
# subinvocations will have it set and we can distinguish them.
|
||||
ifeq ($(_GNUSTEP_TOP_INVOCATION_DONE),)
|
||||
# Top-most invocation of make
|
||||
install:: internal-check-install-permissions all \
|
||||
install:: all \
|
||||
before-install internal-install after-install internal-after-install
|
||||
|
||||
distclean:: clean before-distclean internal-distclean after-distclean
|
||||
|
@ -127,20 +127,6 @@ internal-jar::
|
|||
after-jar::
|
||||
|
||||
|
||||
ifneq ($(GNUSTEP_INSTALLATION_DIR),)
|
||||
internal-check-install-permissions:
|
||||
@if [ -d "$(GNUSTEP_INSTALLATION_DIR)" \
|
||||
-a ! -w "$(GNUSTEP_INSTALLATION_DIR)" ]; then \
|
||||
echo "*ERROR*: the software is configured to install itself into $(GNUSTEP_INSTALLATION_DIR)"; \
|
||||
echo "but you do not have permissions to write in that directory:";\
|
||||
echo "Aborting installation."; \
|
||||
echo ""; \
|
||||
exit 1; \
|
||||
fi
|
||||
else
|
||||
internal-check-install-permissions:
|
||||
endif
|
||||
|
||||
# By adding an ADDITIONAL_INSTALL_DIRS variable you can request
|
||||
# additional installation directories to be created before the first
|
||||
# installation target is executed. You can also have xxx_INSTALL_DIRS
|
||||
|
|
48
common.make
48
common.make
|
@ -143,8 +143,8 @@ export LIBRARY_COMBO = $(OBJC_RUNTIME_LIB)-$(FOUNDATION_LIB)-$(GUI_LIB)
|
|||
|
||||
|
||||
ifeq ($(GNUSTEP_IS_FLATTENED), no)
|
||||
GNUSTEP_HOST_DIR = $(GNUSTEP_HOST_CPU)/$(GNUSTEP_HOST_OS)
|
||||
GNUSTEP_TARGET_DIR = $(GNUSTEP_TARGET_CPU)/$(GNUSTEP_TARGET_OS)
|
||||
GNUSTEP_HOST_DIR = $(GNUSTEP_HOST_CPU)-$(GNUSTEP_HOST_OS)
|
||||
GNUSTEP_TARGET_DIR = $(GNUSTEP_TARGET_CPU)-$(GNUSTEP_TARGET_OS)
|
||||
GNUSTEP_HOST_LDIR = $(GNUSTEP_HOST_DIR)/$(LIBRARY_COMBO)
|
||||
GNUSTEP_TARGET_LDIR = $(GNUSTEP_TARGET_DIR)/$(LIBRARY_COMBO)
|
||||
else
|
||||
|
@ -159,9 +159,10 @@ endif
|
|||
# this includes CC, OPTFLAG etc.
|
||||
#
|
||||
ifeq ($(GNUSTEP_IS_FLATTENED),yes)
|
||||
include $(GNUSTEP_MAKEFILES)/$(LIBRARY_COMBO)/config.make
|
||||
include $(GNUSTEP_MAKEFILES)/config.make
|
||||
else
|
||||
include $(GNUSTEP_MAKEFILES)/$(GNUSTEP_TARGET_LDIR)/config.make
|
||||
-include $(GNUSTEP_MAKEFILES)/config.make
|
||||
-include $(GNUSTEP_MAKEFILES)/$(GNUSTEP_TARGET_LDIR)/config.make
|
||||
endif
|
||||
|
||||
# Then, work out precisely library combos etc
|
||||
|
@ -327,7 +328,7 @@ ifneq ($(GNUSTEP_INSTALLATION_DIR),)
|
|||
ifeq ($(GNUSTEP_IS_FLATTENED),yes)
|
||||
GNUSTEP_HEADERS = $(GNUSTEP_INSTALLATION_DIR)/Library/Headers
|
||||
else
|
||||
GNUSTEP_HEADERS = $(GNUSTEP_INSTALLATION_DIR)/Library/Headers/$(LIBRARY_COMBO)
|
||||
GNUSTEP_HEADERS = $(GNUSTEP_INSTALLATION_DIR)/Library/Headers/$(GNUSTEP_TARGET_LDIR)
|
||||
endif
|
||||
GNUSTEP_APPLICATION_SUPPORT = $(GNUSTEP_LIBRARY)/ApplicationSupport
|
||||
GNUSTEP_BUNDLES = $(GNUSTEP_LIBRARY)/Bundles
|
||||
|
@ -366,7 +367,7 @@ else
|
|||
ifeq ($(GNUSTEP_IS_FLATTENED),yes)
|
||||
GNUSTEP_HEADERS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_HEADERS)
|
||||
else
|
||||
GNUSTEP_HEADERS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_HEADERS)/$(LIBRARY_COMBO)
|
||||
GNUSTEP_HEADERS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_HEADERS)/$(GNUSTEP_TARGET_LDIR)
|
||||
endif
|
||||
GNUSTEP_APPLICATION_SUPPORT = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_APPLICATION_SUPPORT)
|
||||
GNUSTEP_BUNDLES = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_BUNDLES)
|
||||
|
@ -457,8 +458,8 @@ ifeq ($(GNUSTEP_IS_FLATTENED), no)
|
|||
# Later, we'll systematically replace domain with USER, the LOCAL,
|
||||
# then NETWORK, then SYSTEM.
|
||||
GS_HEADER_PATH = \
|
||||
$(GNUSTEP_$(domain)_HEADERS)/$(LIBRARY_COMBO)/$(GNUSTEP_TARGET_DIR) \
|
||||
$(GNUSTEP_$(domain)_HEADERS)/$(LIBRARY_COMBO) \
|
||||
$(GNUSTEP_$(domain)_HEADERS)/$(GNUSTEP_TARGET_LDIR) \
|
||||
$(GNUSTEP_$(domain)_HEADERS)/$(GNUSTEP_TARGET_DIR) \
|
||||
$(GNUSTEP_$(domain)_HEADERS)
|
||||
|
||||
GS_LIBRARY_PATH = \
|
||||
|
@ -609,37 +610,6 @@ ifeq ($(OBJC_RUNTIME_LIB), gnu)
|
|||
OBJC_RUNTIME = GNU
|
||||
endif
|
||||
|
||||
# If all of the following really needed ? If the system is not
|
||||
# flattened, multiple Foundation libraries are not permitted anyway,
|
||||
# so libFoundation could just put his headers in Foundation/. If
|
||||
# library combos are used, all headers are in a library-combo
|
||||
# directory, so libFoundation could still put his headers in
|
||||
# Foundation/ and no conflict should arise. As for the
|
||||
# GNUSTEP_TARGET_DIR, maybe we should key all of our headers in a
|
||||
# GNUSTEP_TARGET_LDIR directory (rather than just a LIBRARY_COMBO
|
||||
# directory). But does it really matter in practice anyway ?
|
||||
ifeq ($(GNUSTEP_IS_FLATTENED),yes)
|
||||
GNUSTEP_HEADERS_FND_DIRS = \
|
||||
$(GNUSTEP_USER_HEADERS)/libFoundation \
|
||||
$(GNUSTEP_LOCAL_HEADERS)/libFoundation \
|
||||
$(GNUSTEP_NETWORK_HEADERS)/libFoundation \
|
||||
$(GNUSTEP_SYSTEM_HEADERS)/libFoundation \
|
||||
$(GNUSTEP_USER_HEADERS)/libFoundation/$(GNUSTEP_TARGET_DIR)/$(OBJC_RUNTIME) \
|
||||
$(GNUSTEP_LOCAL_HEADERS)/libFoundation/$(GNUSTEP_TARGET_DIR)/$(OBJC_RUNTIME) \
|
||||
$(GNUSTEP_NETWORK_HEADERS)/libFoundation/$(GNUSTEP_TARGET_DIR)/$(OBJC_RUNTIME) \
|
||||
$(GNUSTEP_SYSTEM_HEADERS)/libFoundation/$(GNUSTEP_TARGET_DIR)/$(OBJC_RUNTIME)
|
||||
else
|
||||
GNUSTEP_HEADERS_FND_DIRS = \
|
||||
$(GNUSTEP_USER_HEADERS)/$(LIBRARY_COMBO)/libFoundation \
|
||||
$(GNUSTEP_LOCAL_HEADERS)/$(LIBRARY_COMBO)/libFoundation \
|
||||
$(GNUSTEP_NETWORK_HEADERS)/$(LIBRARY_COMBO)/libFoundation \
|
||||
$(GNUSTEP_SYSTEM_HEADERS)/$(LIBRARY_COMBO)/libFoundation \
|
||||
$(GNUSTEP_USER_HEADERS)/$(LIBRARY_COMBO)/libFoundation/$(GNUSTEP_TARGET_DIR)/$(OBJC_RUNTIME) \
|
||||
$(GNUSTEP_LOCAL_HEADERS)/$(LIBRARY_COMBO)/libFoundation/$(GNUSTEP_TARGET_DIR)/$(OBJC_RUNTIME) \
|
||||
$(GNUSTEP_NETWORK_HEADERS)/$(LIBRARY_COMBO)/libFoundation/$(GNUSTEP_TARGET_DIR)/$(OBJC_RUNTIME) \
|
||||
$(GNUSTEP_SYSTEM_HEADERS)/$(LIBRARY_COMBO)/libFoundation/$(GNUSTEP_TARGET_DIR)/$(OBJC_RUNTIME)
|
||||
endif
|
||||
|
||||
ifeq ($(REMOVE_EMPTY_DIRS), yes)
|
||||
# Build the GNUSTEP_HEADERS_FND_FLAG by removing the empty dirs
|
||||
# from GNUSTEP_HEADERS_FND_DIRS, then prepending -I to each of them
|
||||
|
|
|
@ -74,12 +74,10 @@ endif
|
|||
# not set in the config files (or on the command-line or in
|
||||
# environment).
|
||||
ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
|
||||
# FIXME: These should abort if the variables are ever evaluated, but
|
||||
# it needs testing.
|
||||
# GNUSTEP_SYSTEM_ROOT = $(error GNUSTEP_SYSTEM_ROOT is obsolete)
|
||||
# GNUSTEP_LOCAL_ROOT = $(error GNUSTEP_LOCAL_ROOT is obsolete)
|
||||
# GNUSTEP_NETWORK_ROOT = $(error GNUSTEP_NETWORK_ROOT is obsolete)
|
||||
# GNUSTEP_USER_DIR = $(error GNUSTEP_USER_DIR is obsolete)
|
||||
GNUSTEP_SYSTEM_ROOT = $(error GNUSTEP_SYSTEM_ROOT is obsolete)
|
||||
GNUSTEP_LOCAL_ROOT = $(error GNUSTEP_LOCAL_ROOT is obsolete)
|
||||
GNUSTEP_NETWORK_ROOT = $(error GNUSTEP_NETWORK_ROOT is obsolete)
|
||||
GNUSTEP_USER_DIR = $(error GNUSTEP_USER_DIR is obsolete)
|
||||
else
|
||||
GNUSTEP_SYSTEM_ROOT = @GNUSTEP_SYSTEM_ROOT@
|
||||
GNUSTEP_LOCAL_ROOT = @GNUSTEP_LOCAL_ROOT@
|
||||
|
@ -111,8 +109,7 @@ endif
|
|||
# GNUSTEP_FLATTENED is obsolete, please use GNUSTEP_IS_FLATTENED
|
||||
# instead
|
||||
ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
|
||||
# FIXME: Test that this is OK
|
||||
# GNUSTEP_FLATTENED = $(error GNUSTEP_FLATTENED is obsolete)
|
||||
GNUSTEP_FLATTENED = $(error GNUSTEP_FLATTENED is obsolete)
|
||||
else
|
||||
GNUSTEP_FLATTENED = @GNUSTEP_FLATTENED@
|
||||
endif
|
||||
|
@ -131,9 +128,7 @@ ifneq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
|
|||
GNUSTEP_USER_ROOT = $(GNUSTEP_HOME)/$(GNUSTEP_USER_DIR)
|
||||
endif
|
||||
else
|
||||
# FIXME: Test that this is OK. When I use it, it seems to
|
||||
# abort even if GNUSTEP_USER_ROOT is never referenced!
|
||||
# GNUSTEP_USER_ROOT = $(error GNUSTEP_USER_ROOT is obsolete)
|
||||
GNUSTEP_USER_ROOT = $(error GNUSTEP_USER_ROOT is obsolete)
|
||||
endif
|
||||
|
||||
# FIXME: Shouldn't the following go into config.make ? They are
|
||||
|
@ -164,4 +159,4 @@ endif
|
|||
# an additional make invocation which is performed when compiling an
|
||||
# executable or library; that invocation does not use .NOTPARALLEL and
|
||||
# will compile all the files of the executable or library in parallel.
|
||||
GNUSTEP_MAKE_PARALLEL_BUILDING = @GNUSTEP_MAKE_PARALLEL_BUILDING@
|
||||
GNUSTEP_MAKE_PARALLEL_BUILDING = @GNUSTEP_MAKE_PARALLEL_BUILDING@
|
||||
|
|
|
@ -39,7 +39,11 @@ case "$1" in
|
|||
--objc-libs) ;;
|
||||
--base-libs) ;;
|
||||
--gui-libs) ;;
|
||||
--host-dir) ;;
|
||||
--host-ldir) ;;
|
||||
--installation-domain-for=*) ;;
|
||||
--target-dir-for=*) ;;
|
||||
--target-ldir-for=*) ;;
|
||||
*)
|
||||
# An unrecognized option
|
||||
echo "Unrecognized option: $1"
|
||||
|
@ -97,10 +101,18 @@ if [ "$1" = "--help" ]; then
|
|||
echo
|
||||
echo "--gui-libs: prints all the flags required to link a GUI ObjC program"
|
||||
echo
|
||||
echo "--host-dir: prints the host architecture name"
|
||||
echo
|
||||
echo "--host-ldir: prints the host architecture and library combo name"
|
||||
echo
|
||||
echo "--installation-domain-for=xxx: prints the value of the default installation domain"
|
||||
echo " for the package xxx. The result could be 'SYSTEM', 'NETWORK', 'LOCAL'"
|
||||
echo " or 'USER'. This command always returns LOCAL unless the system has been"
|
||||
echo " personalized using an installation-domains.conf file."
|
||||
echo "--target-dir-for=xxx: prints the standardised target architecture directory"
|
||||
echo
|
||||
echo "--target-ldir-for=xxx: prints the target architecture and library combo name"
|
||||
echo
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
@ -186,9 +198,21 @@ case "$1" in
|
|||
exit 0;;
|
||||
--gui-libs) @GNUMAKE@ --no-print-directory -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-gui-libs quiet=yes 2>/dev/null
|
||||
exit 0;;
|
||||
--host-dir) @GNUMAKE@ --no-print-directory -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-host-dir quiet=yes 2>/dev/null
|
||||
exit 0;;
|
||||
--host-ldir) @GNUMAKE@ --no-print-directory -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-host-ldir quiet=yes 2>/dev/null
|
||||
exit 0;;
|
||||
--installation-domain-for=*) gs_package_name=`echo "$1" | sed -e 's/--installation-domain-for=//'`
|
||||
@GNUMAKE@ --no-print-directory -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-installation-domain PACKAGE_NAME="$gs_package_name" quiet=yes 2>/dev/null
|
||||
exit 0;;
|
||||
--target-dir-for=*)
|
||||
gs_target=`echo "$1" | sed -e 's/--target-dir-for=//'`
|
||||
@GNUMAKE@ --no-print-directory -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-target-dir target="$gs_target" quiet=yes 2>/dev/null
|
||||
exit 0;;
|
||||
--target-ldir-for=*)
|
||||
gs_target=`echo "$1" | sed -e 's/--target-ldir-for=//'`
|
||||
@GNUMAKE@ --no-print-directory -s -f "$GNUSTEP_MAKEFILES/empty.make" print-gnustep-make-target-ldir target="$gs_target" quiet=yes 2>/dev/null
|
||||
exit 0;;
|
||||
esac
|
||||
|
||||
#
|
||||
|
|
|
@ -269,7 +269,7 @@ if [ "$GNUSTEP_IS_FLATTENED" = "no" ]; then
|
|||
|
||||
case "$LIBRARY_COMBO" in
|
||||
apple-*) openapp_app_executable="$openapp_full_appname/Contents/MacOS/$openapp_appname";;
|
||||
*) openapp_app_executable="$openapp_full_appname/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS/$LIBRARY_COMBO/$openapp_appname";;
|
||||
*) openapp_app_executable="$openapp_full_appname/$GNUSTEP_HOST_CPU-$GNUSTEP_HOST_OS/$LIBRARY_COMBO/$openapp_appname";;
|
||||
esac
|
||||
|
||||
else
|
||||
|
|
|
@ -153,16 +153,16 @@ case "$tool" in
|
|||
# GNUSTEP_NETWORK_TOOLS
|
||||
# GNUSTEP_SYSTEM_TOOLS
|
||||
#
|
||||
# We look in the GNUSTEP_HOST_CPU/GNUSTEP_HOST_OS/LIBRARY_COMBO
|
||||
# subdirectory first, then the GNUSTEP_HOST_CPU/GNUSTEP_HOST_OS
|
||||
# We look in the GNUSTEP_HOST_CPU-GNUSTEP_HOST_OS/LIBRARY_COMBO
|
||||
# subdirectory first, then the GNUSTEP_HOST_CPU-GNUSTEP_HOST_OS
|
||||
# subdirectory, then the top-level directory.
|
||||
# (For flattened systems we skip the first two options.
|
||||
#
|
||||
# TODO: Also search Admin Tools directories if appropriate
|
||||
for dir in "$GNUSTEP_USER_TOOLS" "$GNUSTEP_LOCAL_TOOLS" "$GNUSTEP_NETWORK_TOOLS" "$GNUSTEP_SYSTEM_TOOLS" ; do
|
||||
if [ "$GNUSTEP_IS_FLATTENED" = "no" ]; then
|
||||
tmpgnudir="$dir/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS"
|
||||
tmplibdir="$dir/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS/$LIBRARY_COMBO"
|
||||
tmpgnudir="$dir/$GNUSTEP_HOST_CPU-$GNUSTEP_HOST_OS"
|
||||
tmplibdir="$dir/$GNUSTEP_HOST_CPU-$GNUSTEP_HOST_OS/$LIBRARY_COMBO"
|
||||
# echo "$tmplibdir/$tool";
|
||||
if [ -x "$tmplibdir/$tool" ]; then
|
||||
# echo "Found: $tmplibdir/$tool";
|
||||
|
|
28
rules.make
28
rules.make
|
@ -674,18 +674,6 @@ endif
|
|||
|
||||
$(GNUSTEP_MAKEFILES)/*.make: ;
|
||||
|
||||
ifeq ($(GNUSTEP_IS_FLATTENED), no)
|
||||
# If this file can't be found, we can't load the config for that
|
||||
# library combo / target, so we can't do anything. We print an
|
||||
# error and exit.
|
||||
$(GNUSTEP_MAKEFILES)/$(GNUSTEP_TARGET_DIR)/$(LIBRARY_COMBO)/config.make:
|
||||
$(ECHO_NOTHING)\
|
||||
echo "Error - can not find configuration for '$(GNUSTEP_TARGET_DIR)/$(LIBRARY_COMBO)'"; \
|
||||
echo "Please configure, make and make install gnustep-make again using"; \
|
||||
echo "./configure --with-library-combo=$(LIBRARY_COMBO)"; \
|
||||
exit 1$(END_ECHO)
|
||||
endif
|
||||
|
||||
$(GNUSTEP_MAKEFILES)/Additional/*.make: ;
|
||||
|
||||
$(GNUSTEP_MAKEFILES)/Master/*.make: ;
|
||||
|
@ -720,6 +708,10 @@ endif
|
|||
print-gnustep-make-base-libs \
|
||||
print-gnustep-make-gui-libs \
|
||||
print-gnustep-make-installation-domain \
|
||||
print-gnustep-make-host-dir \
|
||||
print-gnustep-make-host-ldir \
|
||||
print-gnustep-make-target-dir \
|
||||
print-gnustep-make-target-ldir \
|
||||
print-gnustep-install-headers \
|
||||
print-gnustep-install-libraries
|
||||
|
||||
|
@ -761,6 +753,18 @@ print-gnustep-make-gui-libs:
|
|||
print-gnustep-make-installation-domain:
|
||||
@(echo $(GNUSTEP_INSTALLATION_DOMAIN))
|
||||
|
||||
print-gnustep-make-host-dir:
|
||||
@(echo $(GNUSTEP_HOST_DIR))
|
||||
|
||||
print-gnustep-make-target-ldir:
|
||||
@(echo $(GNUSTEP_TARGET_LDIR))
|
||||
|
||||
print-gnustep-make-target-dir:
|
||||
@(echo $(GNUSTEP_TARGET_DIR))
|
||||
|
||||
print-gnustep-make-host-ldir:
|
||||
@(echo $(GNUSTEP_HOST_LDIR))
|
||||
|
||||
# These targets are used if gnustep-config can't be found but GNUSTEP_MAKEFILES
|
||||
# is defined ... they let you get libraries and their headers (eg libobjc2)
|
||||
# installed in the right place.
|
||||
|
|
Loading…
Reference in a new issue