2004-04-02 07:28:02 +00:00
|
|
|
# -*-makefile-*-
|
1997-09-16 01:07:48 +00:00
|
|
|
# common.make
|
|
|
|
#
|
|
|
|
# Set all of the common environment variables.
|
|
|
|
#
|
2001-11-22 14:26:45 +00:00
|
|
|
# Copyright (C) 1997, 2001 Free Software Foundation, Inc.
|
1997-09-16 01:07:48 +00:00
|
|
|
#
|
|
|
|
# Author: Scott Christley <scottc@net-community.com>
|
1997-10-06 03:58:06 +00:00
|
|
|
# Author: Ovidiu Predescu <ovidiu@net-community.com>
|
2001-11-22 14:26:45 +00:00
|
|
|
# Author: Nicola Pero <n.pero@mi.flashnet.it>
|
1997-09-16 01:07:48 +00:00
|
|
|
#
|
|
|
|
# This file is part of the GNUstep Makefile Package.
|
|
|
|
#
|
|
|
|
# This library is free software; you can redistribute it and/or
|
|
|
|
# modify it under the terms of the GNU General Public License
|
2007-10-30 14:18:41 +00:00
|
|
|
# as published by the Free Software Foundation; either version 3
|
1997-09-16 01:07:48 +00:00
|
|
|
# of the License, or (at your option) any later version.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public
|
2007-07-13 10:11:48 +00:00
|
|
|
# License along with this library; see the file COPYING.
|
1997-09-16 01:07:48 +00:00
|
|
|
# If not, write to the Free Software Foundation,
|
2005-05-22 03:20:14 +00:00
|
|
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
1997-09-16 01:07:48 +00:00
|
|
|
|
2009-01-22 14:10:07 +00:00
|
|
|
# TODO: It would be nice to check here that the 'make' command being
|
|
|
|
# used is indeed GNU make, and exit with a user-friendly error message
|
|
|
|
# if not. We could, for example, check that the variable MAKE_VERSION
|
|
|
|
# (which is defined by GNU make but not other makes) is defined.
|
|
|
|
# Unfortunately, there doesn't exist a shared make syntax for checking
|
|
|
|
# that a variable is defined across different versiosn of make; BSD
|
|
|
|
# make would use '.ifdef' which doesn't work with GNU make, and the
|
|
|
|
# GNU make syntax (eg, ifneq ($(MAKE_VERSION),)) wouldn't work with
|
|
|
|
# BSD make.
|
|
|
|
|
2001-07-10 14:30:08 +00:00
|
|
|
ifeq ($(COMMON_MAKE_LOADED),)
|
|
|
|
COMMON_MAKE_LOADED = yes
|
|
|
|
|
1997-09-25 19:34:14 +00:00
|
|
|
SHELL = /bin/sh
|
|
|
|
|
2007-02-12 17:23:10 +00:00
|
|
|
# We have been located by using GNUSTEP_MAKEFILES. This variable
|
2007-02-12 17:24:00 +00:00
|
|
|
# might actually have been determined in the user makefile by using
|
|
|
|
# gnustep-config, so we want to export it to avoid sub-GNUmakefiles
|
|
|
|
# from having to recompute it!
|
2007-02-12 17:23:10 +00:00
|
|
|
export GNUSTEP_MAKEFILES
|
|
|
|
|
Implemented parallel building of multiple instances of apps, bundles, libraries, ctools, clibraries, test-tools, test-apps, test-libraries, services, palettes, gswbundles, gswapps
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@29577 72102866-910b-0410-8b05-ffd578937521
2010-02-12 10:46:32 +00:00
|
|
|
# The fact that this make invocation is building its targets in
|
|
|
|
# parallel does not mean that submakes should do it too. We control
|
|
|
|
# exactly which make invocation runs in parallel, and which does not.
|
|
|
|
# So, we do not want to export _GNUSTEP_MAKE_PARALLEL to submakes,
|
|
|
|
# unless passed on the command line. FIXME: This does not work, so as
|
|
|
|
# a quick hack I added _GNUSTEP_MAKE_PARALLEL=no to all submake
|
|
|
|
# invocations. That works fine, but might be troublesome for custom
|
|
|
|
# GNUmakefiles that run submakes. Need to think.
|
|
|
|
#unexport _GNUSTEP_MAKE_PARALLEL
|
|
|
|
|
2006-09-18 20:29:28 +00:00
|
|
|
#
|
|
|
|
# Get the global config information. This includes
|
2006-10-02 15:54:56 +00:00
|
|
|
# GNUSTEP_SYSTEM_ROOT, GNUSTEP_MAKE_VERSION, GNUSTEP_IS_FLATTENED,
|
2006-09-18 20:29:28 +00:00
|
|
|
# default_library_combo, and, if multi-platform support is disabled,
|
|
|
|
# it will also load GNUSTEP_HOST, GNUSTEP_HOST_CPU, etc.
|
|
|
|
#
|
|
|
|
include $(GNUSTEP_MAKEFILES)/config-noarch.make
|
|
|
|
|
|
|
|
#
|
|
|
|
# Scripts to run for parsing canonical names
|
|
|
|
#
|
|
|
|
CONFIG_GUESS_SCRIPT = $(GNUSTEP_MAKEFILES)/config.guess
|
|
|
|
CONFIG_SUB_SCRIPT = $(GNUSTEP_MAKEFILES)/config.sub
|
|
|
|
CONFIG_CPU_SCRIPT = $(GNUSTEP_MAKEFILES)/cpu.sh
|
|
|
|
CONFIG_VENDOR_SCRIPT = $(GNUSTEP_MAKEFILES)/vendor.sh
|
|
|
|
CONFIG_OS_SCRIPT = $(GNUSTEP_MAKEFILES)/os.sh
|
|
|
|
CLEAN_CPU_SCRIPT = $(GNUSTEP_MAKEFILES)/clean_cpu.sh
|
|
|
|
CLEAN_VENDOR_SCRIPT = $(GNUSTEP_MAKEFILES)/clean_vendor.sh
|
|
|
|
CLEAN_OS_SCRIPT = $(GNUSTEP_MAKEFILES)/clean_os.sh
|
|
|
|
REL_PATH_SCRIPT = $(GNUSTEP_MAKEFILES)/relative_path.sh
|
2006-09-09 12:46:36 +00:00
|
|
|
|
2005-10-23 16:44:28 +00:00
|
|
|
#
|
2006-06-14 08:45:51 +00:00
|
|
|
# Determine the compilation host and target
|
|
|
|
#
|
|
|
|
include $(GNUSTEP_MAKEFILES)/names.make
|
|
|
|
|
2006-10-02 15:54:56 +00:00
|
|
|
ifeq ($(GNUSTEP_IS_FLATTENED), no)
|
2006-06-14 08:45:51 +00:00
|
|
|
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
|
|
|
|
GNUSTEP_HOST_DIR = .
|
|
|
|
GNUSTEP_TARGET_DIR = .
|
|
|
|
GNUSTEP_HOST_LDIR = .
|
|
|
|
GNUSTEP_TARGET_LDIR = .
|
|
|
|
endif
|
|
|
|
|
2006-09-18 20:29:28 +00:00
|
|
|
# Then, work out precisely library combos etc
|
|
|
|
include $(GNUSTEP_MAKEFILES)/library-combo.make
|
|
|
|
|
2006-06-14 08:45:51 +00:00
|
|
|
#
|
2006-09-18 20:29:28 +00:00
|
|
|
# Get the config information (host/target/library-combo specific),
|
2011-04-10 14:24:08 +00:00
|
|
|
# this includes CC, OPTFLAG etc.
|
2005-10-23 16:44:28 +00:00
|
|
|
#
|
2006-07-05 17:23:22 +00:00
|
|
|
include $(GNUSTEP_MAKEFILES)/$(GNUSTEP_TARGET_LDIR)/config.make
|
2005-10-23 16:44:28 +00:00
|
|
|
|
2003-10-13 23:22:20 +00:00
|
|
|
# GNUSTEP_BUILD_DIR is the directory in which anything generated
|
|
|
|
# during the build will be placed. '.' means it's the same as the
|
|
|
|
# source directory; this case is the default/common and we optimize
|
|
|
|
# for it whenever possible.
|
|
|
|
ifeq ($(GNUSTEP_BUILD_DIR),)
|
|
|
|
GNUSTEP_BUILD_DIR = .
|
|
|
|
endif
|
|
|
|
|
2002-06-13 16:11:52 +00:00
|
|
|
#
|
|
|
|
# Get standard messages
|
|
|
|
#
|
|
|
|
include $(GNUSTEP_MAKEFILES)/messages.make
|
1997-09-18 01:36:07 +00:00
|
|
|
|
2008-10-21 15:07:11 +00:00
|
|
|
ifneq ($(messages),yes)
|
|
|
|
# This flag is passed to make so we do not print the directories that
|
|
|
|
# we recurse into unless messages=yes is used.
|
|
|
|
GNUSTEP_MAKE_NO_PRINT_DIRECTORY_FLAG = --no-print-directory
|
|
|
|
else
|
|
|
|
# If messages=yes is used, let make print out each directory it
|
|
|
|
# recurses into.
|
|
|
|
GNUSTEP_MAKE_NO_PRINT_DIRECTORY_FLAG =
|
|
|
|
endif
|
|
|
|
|
1997-09-16 01:07:48 +00:00
|
|
|
#
|
2001-01-29 19:33:07 +00:00
|
|
|
# Get flags/config options for core libraries
|
1997-09-16 01:07:48 +00:00
|
|
|
#
|
2001-01-29 19:33:07 +00:00
|
|
|
|
|
|
|
# Then include custom makefiles with flags/config options
|
|
|
|
# This is meant to be used by the core libraries to override loading
|
|
|
|
# of the system makefiles from $(GNUSTEP_MAKEFILES)/Additional/*.make
|
2001-12-03 11:22:11 +00:00
|
|
|
# with their local copy (presumably more up-to-date)
|
2001-01-29 19:33:07 +00:00
|
|
|
ifneq ($(GNUSTEP_LOCAL_ADDITIONAL_MAKEFILES),)
|
|
|
|
include $(GNUSTEP_LOCAL_ADDITIONAL_MAKEFILES)
|
|
|
|
endif
|
|
|
|
# Then include makefiles with flags/config options installed by the
|
|
|
|
# libraries themselves
|
|
|
|
-include $(GNUSTEP_MAKEFILES)/Additional/*.make
|
1997-09-16 01:07:48 +00:00
|
|
|
|
1997-10-14 22:54:35 +00:00
|
|
|
#
|
1997-10-17 00:55:41 +00:00
|
|
|
# Determine target specific settings
|
1997-10-14 22:54:35 +00:00
|
|
|
#
|
1998-02-06 19:15:05 +00:00
|
|
|
include $(GNUSTEP_MAKEFILES)/target.make
|
1997-10-14 22:54:35 +00:00
|
|
|
|
2007-02-13 05:19:49 +00:00
|
|
|
#
|
|
|
|
# Now load the filesystem locations.
|
|
|
|
#
|
|
|
|
include $(GNUSTEP_MAKEFILES)/filesystem.make
|
|
|
|
|
1997-10-28 02:34:11 +00:00
|
|
|
#
|
2006-10-10 12:49:39 +00:00
|
|
|
# GNUSTEP_INSTALLATION_DOMAIN is the domain where all things go. This
|
|
|
|
# is the variable you should use to specify where you want things to
|
|
|
|
# be installed. Valid values are SYSTEM, LOCAL, NETWORK and USER,
|
|
|
|
# corresponding to the various domains. If you don't specify it, it
|
|
|
|
# defaults to LOCAL.
|
1997-10-28 02:34:11 +00:00
|
|
|
#
|
2006-10-10 12:49:39 +00:00
|
|
|
ifeq ($(GNUSTEP_INSTALLATION_DOMAIN), )
|
|
|
|
GNUSTEP_INSTALLATION_DOMAIN = LOCAL
|
2008-12-18 18:37:09 +00:00
|
|
|
|
2008-12-19 12:48:59 +00:00
|
|
|
# Try to read install.conf, if one exists. This file can be used
|
|
|
|
# when compiling from source to specify default installation location
|
|
|
|
# for certain packages. The location of install.conf can be specified
|
|
|
|
# using the GNUSTEP_INSTALLATION_DOMAINS_CONF_FILE variable; if that variable
|
|
|
|
# is not set, we look for a file called install.conf in the same directory as
|
|
|
|
# the GNUSTEP_CONFIG_FILE.
|
|
|
|
ifeq ($(GNUSTEP_INSTALLATION_DOMAINS_CONF_FILE), )
|
|
|
|
GNUSTEP_INSTALLATION_DOMAINS_CONF_FILE = $(dir $(GNUSTEP_CONFIG_FILE))installation-domains.conf
|
2008-12-18 18:37:09 +00:00
|
|
|
endif
|
2008-12-19 12:48:59 +00:00
|
|
|
|
|
|
|
-include $(GNUSTEP_INSTALLATION_DOMAINS_CONF_FILE)
|
|
|
|
|
|
|
|
ifneq ($(filter $(PACKAGE_NAME), $(GNUSTEP_PACKAGES_TO_INSTALL_INTO_SYSTEM_BY_DEFAULT)), )
|
|
|
|
GNUSTEP_INSTALLATION_DOMAIN = SYSTEM
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(filter $(PACKAGE_NAME), $(GNUSTEP_PACKAGES_TO_INSTALL_INTO_LOCAL_BY_DEFAULT)), )
|
|
|
|
GNUSTEP_INSTALLATION_DOMAIN = LOCAL
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(filter $(PACKAGE_NAME), $(GNUSTEP_PACKAGES_TO_INSTALL_INTO_NETWORK_BY_DEFAULT)), )
|
|
|
|
GNUSTEP_INSTALLATION_DOMAIN = NETWORK
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(filter $(PACKAGE_NAME), $(GNUSTEP_PACKAGES_TO_INSTALL_INTO_USER_BY_DEFAULT)), )
|
|
|
|
GNUSTEP_INSTALLATION_DOMAIN = USER
|
|
|
|
endif
|
|
|
|
|
2008-12-18 18:37:09 +00:00
|
|
|
endif
|
2006-10-10 12:49:39 +00:00
|
|
|
|
|
|
|
# Safety check. Very annoying when you mistype and you end up
|
|
|
|
# installing into /. ;-)
|
|
|
|
ifneq ($(GNUSTEP_INSTALLATION_DOMAIN), SYSTEM)
|
|
|
|
ifneq ($(GNUSTEP_INSTALLATION_DOMAIN), LOCAL)
|
|
|
|
ifneq ($(GNUSTEP_INSTALLATION_DOMAIN), NETWORK)
|
|
|
|
ifneq ($(GNUSTEP_INSTALLATION_DOMAIN), USER)
|
|
|
|
$(error "Invalid value '$(GNUSTEP_INSTALLATION_DOMAIN)' for GNUSTEP_INSTALLATION_DOMAIN. Valid values are SYSTEM, LOCAL, NETWORK and USER")
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
#
|
2007-02-13 05:19:49 +00:00
|
|
|
# GNUSTEP_INSTALLATION_DIR is an older/different mechanism for
|
|
|
|
# specifying where things should be installed. It is expected to be a
|
2006-10-10 12:49:39 +00:00
|
|
|
# fixed absolute path rather than a logical domain. You shouldn't
|
2007-02-13 05:19:49 +00:00
|
|
|
# normally use it, but might be handy if you need to force things
|
|
|
|
# and you're using the GNUstep filesystem structure.
|
2006-10-10 12:49:39 +00:00
|
|
|
#
|
|
|
|
# If GNUSTEP_INSTALLATION_DIR is set, we automatically install
|
|
|
|
# everything in the GNUstep filesystem domain structure in the
|
|
|
|
# specified directory. If the GNUstep filesystem structure is used,
|
|
|
|
# then GNUSTEP_INSTALLATION_DOMAIN = SYSTEM is the same as
|
|
|
|
# GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT).
|
|
|
|
#
|
|
|
|
# Please note that GNUSTEP_INSTALLATION_DIR overrides
|
2007-02-13 05:19:49 +00:00
|
|
|
# GNUSTEP_INSTALLATION_DOMAIN, so if you want to use
|
|
|
|
# GNUSTEP_INSTALLATION_DOMAIN, make sure you're not setting
|
|
|
|
# GNUSTEP_INSTALLATION_DIR.
|
2006-10-10 12:49:39 +00:00
|
|
|
#
|
|
|
|
|
|
|
|
# GNUSTEP_INSTALLATION_DIR overrides GNUSTEP_INSTALLATION_DOMAIN
|
2007-02-13 05:19:49 +00:00
|
|
|
ifneq ($(GNUSTEP_INSTALLATION_DIR),)
|
|
|
|
|
|
|
|
# This is the case where we install things using a standard
|
|
|
|
# GNUstep filesystem rooted in GNUSTEP_INSTALLATION_DIR.
|
|
|
|
# This is not recommended since it does not work with custom
|
|
|
|
# filesystem configurations.
|
2008-01-14 15:22:14 +00:00
|
|
|
ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
|
|
|
|
$(error GNUSTEP_INSTALLATION_DIR is deprecated. Please use GNUSTEP_INSTALLATION_DOMAIN instead)
|
|
|
|
else
|
|
|
|
$(warning GNUSTEP_INSTALLATION_DIR is deprecated. Please use GNUSTEP_INSTALLATION_DOMAIN instead)
|
|
|
|
endif
|
2007-02-13 05:19:49 +00:00
|
|
|
|
|
|
|
#
|
|
|
|
# DESTDIR allows you to relocate the entire installation somewhere else
|
|
|
|
# (as per GNU Coding Standards).
|
|
|
|
#
|
|
|
|
# Add DESTDIR as a prefix to GNUSTEP_INSTALLATION_DIR, but only if we're
|
|
|
|
# at the first top-level invocation. Else we risk adding it multiple
|
|
|
|
# times ;-)
|
|
|
|
#
|
|
|
|
ifeq ($(_GNUSTEP_TOP_INVOCATION_DONE),)
|
|
|
|
ifneq ($(DESTDIR),)
|
|
|
|
override GNUSTEP_INSTALLATION_DIR := $(DESTDIR)/$(GNUSTEP_INSTALLATION_DIR)
|
|
|
|
endif
|
2006-10-10 12:49:39 +00:00
|
|
|
endif
|
|
|
|
|
2007-02-13 05:19:49 +00:00
|
|
|
# Make it public and available to all submakes invocations
|
|
|
|
export GNUSTEP_INSTALLATION_DIR
|
|
|
|
|
|
|
|
# Use GNUSTEP_INSTALLATION_DIR to set the installation dirs
|
|
|
|
GNUSTEP_APPS = $(GNUSTEP_INSTALLATION_DIR)/Applications
|
2007-02-16 20:14:44 +00:00
|
|
|
GNUSTEP_ADMIN_APPS = $(GNUSTEP_INSTALLATION_DIR)/Applications/Admin
|
2007-03-05 16:49:54 +00:00
|
|
|
GNUSTEP_WEB_APPS = $(GNUSTEP_INSTALLATION_DIR)/Library/WebApplications
|
2007-02-13 05:19:49 +00:00
|
|
|
GNUSTEP_TOOLS = $(GNUSTEP_INSTALLATION_DIR)/Tools
|
2007-02-16 20:14:44 +00:00
|
|
|
GNUSTEP_ADMIN_TOOLS = $(GNUSTEP_INSTALLATION_DIR)/Tools/Admin
|
2007-02-13 05:19:49 +00:00
|
|
|
GNUSTEP_LIBRARY = $(GNUSTEP_INSTALLATION_DIR)/Library
|
|
|
|
GNUSTEP_SERVICES = $(GNUSTEP_LIBRARY)/Services
|
|
|
|
ifeq ($(GNUSTEP_IS_FLATTENED),yes)
|
|
|
|
GNUSTEP_HEADERS = $(GNUSTEP_INSTALLATION_DIR)/Library/Headers
|
|
|
|
else
|
|
|
|
GNUSTEP_HEADERS = $(GNUSTEP_INSTALLATION_DIR)/Library/Headers/$(LIBRARY_COMBO)
|
2006-10-10 12:49:39 +00:00
|
|
|
endif
|
2007-02-13 05:19:49 +00:00
|
|
|
GNUSTEP_APPLICATION_SUPPORT = $(GNUSTEP_LIBRARY)/ApplicationSupport
|
|
|
|
GNUSTEP_BUNDLES = $(GNUSTEP_LIBRARY)/Bundles
|
|
|
|
GNUSTEP_FRAMEWORKS = $(GNUSTEP_LIBRARY)/Frameworks
|
|
|
|
GNUSTEP_PALETTES = $(GNUSTEP_LIBRARY)/ApplicationSupport/Palettes
|
|
|
|
GNUSTEP_LIBRARIES = $(GNUSTEP_INSTALLATION_DIR)/Library/Libraries
|
|
|
|
GNUSTEP_RESOURCES = $(GNUSTEP_LIBRARY)/Libraries/Resources
|
|
|
|
GNUSTEP_JAVA = $(GNUSTEP_LIBRARY)/Libraries/Java
|
2007-02-26 15:20:05 +00:00
|
|
|
GNUSTEP_DOC = $(GNUSTEP_LIBRARY)/Documentation
|
|
|
|
GNUSTEP_DOC_MAN = $(GNUSTEP_DOC)/man
|
|
|
|
GNUSTEP_DOC_INFO = $(GNUSTEP_DOC)/info
|
2007-02-13 05:19:49 +00:00
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
# This is the case where we install things in GNUSTEP_INSTALLATION_DOMAIN
|
|
|
|
# according to the (potentially custom) filesystem configuration of
|
|
|
|
# that domain. This is the recommended way.
|
|
|
|
|
|
|
|
# Make it public and available to all submakes invocations
|
|
|
|
export GNUSTEP_INSTALLATION_DOMAIN
|
|
|
|
|
|
|
|
# Use DESTDIR + GNUSTEP_INSTALLATION_DOMAIN to set the installation dirs
|
|
|
|
ifeq ($(DESTDIR),)
|
|
|
|
MAYBE_DESTDIR=
|
|
|
|
else
|
|
|
|
MAYBE_DESTDIR=$(DESTDIR)/
|
2006-10-10 12:49:39 +00:00
|
|
|
endif
|
|
|
|
|
2007-02-13 05:19:49 +00:00
|
|
|
GNUSTEP_APPS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_APPS)
|
2007-02-16 20:14:44 +00:00
|
|
|
GNUSTEP_ADMIN_APPS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_ADMIN_APPS)
|
2007-03-05 16:49:54 +00:00
|
|
|
GNUSTEP_WEB_APPS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_WEB_APPS)
|
2007-02-13 05:19:49 +00:00
|
|
|
GNUSTEP_TOOLS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_TOOLS)
|
2007-02-16 20:14:44 +00:00
|
|
|
GNUSTEP_ADMIN_TOOLS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_ADMIN_TOOLS)
|
2007-02-13 05:19:49 +00:00
|
|
|
GNUSTEP_LIBRARY = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_LIBRARY)
|
|
|
|
GNUSTEP_SERVICES = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_SERVICES)
|
2007-02-15 00:51:26 +00:00
|
|
|
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)
|
|
|
|
endif
|
2007-02-13 05:19:49 +00:00
|
|
|
GNUSTEP_APPLICATION_SUPPORT = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_APPLICATION_SUPPORT)
|
|
|
|
GNUSTEP_BUNDLES = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_BUNDLES)
|
|
|
|
GNUSTEP_FRAMEWORKS = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_FRAMEWORKS)
|
|
|
|
GNUSTEP_PALETTES = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_PALETTES)
|
|
|
|
GNUSTEP_LIBRARIES = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_LIBRARIES)
|
|
|
|
GNUSTEP_RESOURCES = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_RESOURCES)
|
|
|
|
GNUSTEP_JAVA = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_JAVA)
|
2007-02-26 15:20:05 +00:00
|
|
|
GNUSTEP_DOC = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_DOC)
|
|
|
|
GNUSTEP_DOC_MAN = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_DOC_MAN)
|
|
|
|
GNUSTEP_DOC_INFO = $(MAYBE_DESTDIR)$(GNUSTEP_$(GNUSTEP_INSTALLATION_DOMAIN)_DOC_INFO)
|
1997-10-28 02:34:11 +00:00
|
|
|
|
2006-10-06 08:06:19 +00:00
|
|
|
endif
|
|
|
|
|
2002-10-17 16:44:26 +00:00
|
|
|
|
2007-02-26 15:20:05 +00:00
|
|
|
#
|
|
|
|
# Backwards-compatible long name variant of GNUSTEP_DOC*.
|
|
|
|
#
|
|
|
|
# The long variables names were too long for shells (eg, tcsh 6.12 has
|
|
|
|
# a 30-char variable name limit, and GNUSTEP_SYSTEM_DOCUMENTATION_MAN
|
|
|
|
# is 32 chars), so we replaced them with the shorter variant. For
|
|
|
|
# consistency, we'd like the shorter variant to be used everywhere,
|
|
|
|
# both in shell and make code.
|
|
|
|
#
|
|
|
|
# But for backwards compatibility, you can still use the long name
|
|
|
|
# variants in makefiles though ... we'll keep this backwards
|
|
|
|
# compatibility hack in place for about 4 years from now, so until
|
|
|
|
# Feb 2011.
|
|
|
|
#
|
2008-01-14 15:22:14 +00:00
|
|
|
ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
|
|
|
|
# FIXME - these would be nice but needs careful testing
|
|
|
|
# GNUSTEP_DOCUMENTATION = $(error GNUSTEP_DOCUMENTATION is deprecated)
|
|
|
|
# GNUSTEP_DOCUMENTATION_MAN = $(error GNUSTEP_DOCUMENTATION_MAN is deprecated)
|
|
|
|
# GNUSTEP_DOCUMENTATION_INFO = $(error GNUSTEP_DOCUMENTATION_INF is deprecated)
|
|
|
|
else
|
|
|
|
GNUSTEP_DOCUMENTATION = $(GNUSTEP_DOC)
|
|
|
|
GNUSTEP_DOCUMENTATION_MAN = $(GNUSTEP_DOC_MAN)
|
|
|
|
GNUSTEP_DOCUMENTATION_INFO = $(GNUSTEP_DOC_INFO)
|
|
|
|
endif
|
2007-02-26 15:20:05 +00:00
|
|
|
|
2006-11-15 16:12:12 +00:00
|
|
|
#
|
|
|
|
# INSTALL_ROOT_DIR is the obsolete way of relocating stuff. It used
|
|
|
|
# to only affect stuff that is not installed using
|
|
|
|
# GNUSTEP_INSTALLATION_DIR (DESTDIR instead also affects stuff
|
|
|
|
# installed using GNUSTEP_INSTALLATION_DIR). We prefer DESTDIR
|
|
|
|
# because it is a widely accepted GNU standard, and makes packaging
|
|
|
|
# easier.
|
|
|
|
#
|
|
|
|
# So all instances of INSTALL_ROOT_DIR in user's makefiles should be
|
|
|
|
# replaced with DESTDIR.
|
|
|
|
#
|
|
|
|
# Anyway, until all makefiles have been updated, we set INSTALL_ROOT_DIR for backwards
|
|
|
|
# compatibility.
|
|
|
|
#
|
2008-01-14 15:22:14 +00:00
|
|
|
ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
|
|
|
|
ifneq ($(INSTALL_ROOT_DIR),)
|
|
|
|
$(error INSTALL_ROOT_DIR is deprecated in gnustep-make v2, please replace any instance of INSTALL_ROOT_DIR with DESTDIR)
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2006-11-15 16:12:12 +00:00
|
|
|
ifneq ($(DESTDIR),)
|
|
|
|
ifeq ($(INSTALL_ROOT_DIR),)
|
|
|
|
INSTALL_ROOT_DIR = $(DESTDIR)
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2008-01-14 15:22:14 +00:00
|
|
|
ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
|
|
|
|
# FIXME: Test that using 'error' here works reliably.
|
|
|
|
# INSTALL_ROOT_DIR += $(error INSTALL_ROOT_DIR is deprecated, please replace any instance of INSTALL_ROOT_DIR with DESTDIR)
|
|
|
|
INSTALL_ROOT_DIR += $(warning INSTALL_ROOT_DIR is deprecated, please replace any instance of INSTALL_ROOT_DIR with DESTDIR)
|
|
|
|
else
|
|
|
|
INSTALL_ROOT_DIR += $(warning INSTALL_ROOT_DIR is deprecated, please replace any instance of INSTALL_ROOT_DIR with DESTDIR)
|
|
|
|
endif
|
2007-02-18 05:29:41 +00:00
|
|
|
|
1998-01-09 22:05:03 +00:00
|
|
|
# The default name of the makefile to be used in recursive invocations of make
|
|
|
|
ifeq ($(MAKEFILE_NAME),)
|
|
|
|
MAKEFILE_NAME = GNUmakefile
|
|
|
|
endif
|
|
|
|
|
2002-03-18 17:07:02 +00:00
|
|
|
# Now prepare the library and header flags - we first prepare the list
|
2004-03-09 17:38:18 +00:00
|
|
|
# of directories (trying to avoid duplicates in the list), then
|
|
|
|
# optionally remove the empty ones, then prepend -I / -L to them.
|
2006-10-02 15:54:56 +00:00
|
|
|
ifeq ($(GNUSTEP_IS_FLATTENED), no)
|
2001-09-30 23:48:22 +00:00
|
|
|
|
2007-02-13 05:37:56 +00:00
|
|
|
# The following variables have to be evaluated after setting domain to
|
|
|
|
# something, such as USER. When you evaluate them in that situation,
|
|
|
|
# they will generate paths according to the following definition.
|
|
|
|
# Later, we'll systematically replace domain with USER, the LOCAL,
|
|
|
|
# then NETWORK, then SYSTEM.
|
2004-03-09 17:38:18 +00:00
|
|
|
GS_HEADER_PATH = \
|
2007-05-11 15:47:41 +00:00
|
|
|
$(GNUSTEP_$(domain)_HEADERS)/$(LIBRARY_COMBO)/$(GNUSTEP_TARGET_DIR) \
|
2007-03-01 14:25:31 +00:00
|
|
|
$(GNUSTEP_$(domain)_HEADERS)/$(LIBRARY_COMBO) \
|
2007-02-13 05:37:56 +00:00
|
|
|
$(GNUSTEP_$(domain)_HEADERS)
|
2000-12-05 16:11:55 +00:00
|
|
|
|
2004-03-09 17:38:18 +00:00
|
|
|
GS_LIBRARY_PATH = \
|
2007-02-13 05:37:56 +00:00
|
|
|
$(GNUSTEP_$(domain)_LIBRARIES)/$(GNUSTEP_TARGET_LDIR) \
|
|
|
|
$(GNUSTEP_$(domain)_LIBRARIES)/$(GNUSTEP_TARGET_DIR)
|
2004-03-09 17:38:18 +00:00
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
# In the flattened case, the paths to generate are considerably simpler.
|
|
|
|
|
2007-02-13 05:37:56 +00:00
|
|
|
GS_HEADER_PATH = $(GNUSTEP_$(domain)_HEADERS)
|
|
|
|
GS_LIBRARY_PATH = $(GNUSTEP_$(domain)_LIBRARIES)
|
2004-03-09 17:38:18 +00:00
|
|
|
|
|
|
|
endif
|
|
|
|
|
2004-04-02 07:28:02 +00:00
|
|
|
ifeq ($(FOUNDATION_LIB), apple)
|
2007-02-13 05:37:56 +00:00
|
|
|
GS_FRAMEWORK_PATH = $(GNUSTEP_$(domain)_FRAMEWORKS)
|
2004-04-02 07:28:02 +00:00
|
|
|
else
|
|
|
|
GS_FRAMEWORK_PATH =
|
|
|
|
endif
|
|
|
|
|
2007-02-13 05:37:56 +00:00
|
|
|
# First, we add paths based in the USER domain.
|
2004-03-09 17:38:18 +00:00
|
|
|
|
|
|
|
# Please note that the following causes GS_HEADER_PATH to be evaluated
|
2007-02-13 05:37:56 +00:00
|
|
|
# with the variable domain equal to USER, which gives the effect we
|
|
|
|
# wanted.
|
|
|
|
GNUSTEP_HEADERS_DIRS = $(foreach domain,USER,$(GS_HEADER_PATH))
|
|
|
|
GNUSTEP_LIBRARIES_DIRS = $(foreach domain,USER,$(GS_LIBRARY_PATH))
|
|
|
|
GNUSTEP_FRAMEWORKS_DIRS = $(foreach domain,USER,$(GS_FRAMEWORK_PATH))
|
|
|
|
|
|
|
|
# Second, if LOCAL flags are different from USER flags (which have
|
|
|
|
# already been added), we add the LOCAL flags too.
|
|
|
|
ifneq ($(GNUSTEP_LOCAL_HEADERS), $(GNUSTEP_USER_HEADERS))
|
|
|
|
GNUSTEP_HEADERS_DIRS += $(foreach domain,LOCAL,$(GS_HEADER_PATH))
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(GNUSTEP_LOCAL_LIBRARIES), $(GNUSTEP_USER_LIBRARIES))
|
|
|
|
GNUSTEP_LIBRARIES_DIRS += $(foreach domain,LOCAL,$(GS_LIBRARY_PATH))
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(GNUSTEP_LOCAL_FRAMEWORKS), $(GNUSTEP_USER_FRAMEWORKS))
|
|
|
|
GNUSTEP_FRAMEWORKS_DIRS += $(foreach domain,LOCAL,$(GS_FRAMEWORK_PATH))
|
|
|
|
endif
|
2004-03-09 17:38:18 +00:00
|
|
|
|
2007-02-13 05:37:56 +00:00
|
|
|
# Third, if NETWORK flags are different from USER and LOCAL flags (which
|
|
|
|
# have already been added), we add those too.
|
|
|
|
ifneq ($(GNUSTEP_NETWORK_HEADERS), $(GNUSTEP_USER_HEADERS))
|
|
|
|
ifneq ($(GNUSTEP_NETWORK_HEADERS), $(GNUSTEP_LOCAL_HEADERS))
|
|
|
|
GNUSTEP_HEADERS_DIRS += $(foreach domain,NETWORK,$(GS_HEADER_PATH))
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(GNUSTEP_NETWORK_LIBRARIES), $(GNUSTEP_USER_LIBRARIES))
|
|
|
|
ifneq ($(GNUSTEP_NETWORK_LIBRARIES), $(GNUSTEP_LOCAL_LIBRARIES))
|
|
|
|
GNUSTEP_LIBRARIES_DIRS += $(foreach domain,NETWORK,$(GS_LIBRARY_PATH))
|
|
|
|
endif
|
2004-03-09 17:38:18 +00:00
|
|
|
endif
|
|
|
|
|
2007-02-13 05:37:56 +00:00
|
|
|
ifneq ($(GNUSTEP_NETWORK_FRAMEWORKS), $(GNUSTEP_USER_FRAMEWORKS))
|
|
|
|
ifneq ($(GNUSTEP_NETWORK_FRAMEWORKS), $(GNUSTEP_LOCAL_FRAMEWORKS))
|
|
|
|
GNUSTEP_FRAMEWORKS_DIRS += $(foreach domain,NETWORK,$(GS_FRAMEWORK_PATH))
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
# Last, if SYSTEM flags are different from USER, LOCAL and NETWORK
|
|
|
|
# flags (which have already been added), we add the ones based on
|
|
|
|
# SYSTEM too.
|
|
|
|
ifneq ($(GNUSTEP_SYSTEM_HEADERS), $(GNUSTEP_USER_HEADERS))
|
|
|
|
ifneq ($(GNUSTEP_SYSTEM_HEADERS), $(GNUSTEP_LOCAL_HEADERS))
|
|
|
|
ifneq ($(GNUSTEP_SYSTEM_HEADERS), $(GNUSTEP_NETWORK_HEADERS))
|
|
|
|
GNUSTEP_HEADERS_DIRS += $(foreach domain,SYSTEM,$(GS_HEADER_PATH))
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifneq ($(GNUSTEP_SYSTEM_LIBRARIES), $(GNUSTEP_USER_LIBRARIES))
|
|
|
|
ifneq ($(GNUSTEP_SYSTEM_LIBRARIES), $(GNUSTEP_LOCAL_LIBRARIES))
|
|
|
|
ifneq ($(GNUSTEP_SYSTEM_LIBRARIES), $(GNUSTEP_NETWORK_LIBRARIES))
|
|
|
|
GNUSTEP_LIBRARIES_DIRS += $(foreach domain,SYSTEM,$(GS_LIBRARY_PATH))
|
|
|
|
endif
|
2004-03-09 17:38:18 +00:00
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2007-02-13 05:37:56 +00:00
|
|
|
ifneq ($(GNUSTEP_SYSTEM_FRAMEWORKS), $(GNUSTEP_USER_FRAMEWORKS))
|
|
|
|
ifneq ($(GNUSTEP_SYSTEM_FRAMEWORKS), $(GNUSTEP_LOCAL_FRAMEWORKS))
|
|
|
|
ifneq ($(GNUSTEP_SYSTEM_FRAMEWORKS), $(GNUSTEP_NETWORK_FRAMEWORKS))
|
|
|
|
GNUSTEP_FRAMEWORKS_DIRS += $(foreach domain,SYSTEM,$(GS_FRAMEWORK_PATH))
|
2004-03-09 17:38:18 +00:00
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
2003-01-09 18:05:41 +00:00
|
|
|
|
2002-03-18 17:07:02 +00:00
|
|
|
ifeq ($(REMOVE_EMPTY_DIRS),yes)
|
|
|
|
# This variable, when evaluated, gives $(dir) if dir is non-empty, and
|
|
|
|
# nothing if dir is empty.
|
|
|
|
remove_if_empty = $(dir $(word 1,$(wildcard $(dir)/*)))
|
|
|
|
|
|
|
|
# Build the GNUSTEP_HEADER_FLAGS by removing the empty dirs from
|
|
|
|
# GNUSTEP_HEADER_DIRS, then prepending -I to each of them
|
|
|
|
#
|
|
|
|
# Important - because this variable is defined with = and not :=, it
|
|
|
|
# is only evaluated when it is used. Which is good - it means we don't
|
|
|
|
# scan the directories and try to remove the empty one on each make
|
|
|
|
# invocation (eg, on 'make clean') - we only scan the dirs when we are using
|
|
|
|
# GNUSTEP_HEADERS_FLAGS to compile. Please make sure to keep this
|
|
|
|
# behaviour otherwise scanning the directories each time a makefile is
|
|
|
|
# read might slow down the package unnecessarily for operations like
|
|
|
|
# make clean, make distclean etc.
|
|
|
|
#
|
|
|
|
# Doing this filtering still gives a 5% to 10% slowdown in compilation times
|
|
|
|
# due to directory scanning, which is why is normally turned off by
|
|
|
|
# default - by default we put all directories in compilation commands.
|
|
|
|
GNUSTEP_HEADERS_FLAGS = \
|
|
|
|
$(addprefix -I,$(foreach dir,$(GNUSTEP_HEADERS_DIRS),$(remove_if_empty)))
|
|
|
|
GNUSTEP_LIBRARIES_FLAGS = \
|
|
|
|
$(addprefix -L,$(foreach dir,$(GNUSTEP_LIBRARIES_DIRS),$(remove_if_empty)))
|
2004-04-02 07:28:02 +00:00
|
|
|
GNUSTEP_FRAMEWORKS_FLAGS = \
|
2004-04-13 02:40:25 +00:00
|
|
|
$(addprefix -F,$(foreach dir,$(GNUSTEP_FRAMEWORKS_DIRS),$(remove_if_empty)))
|
2002-03-18 17:07:02 +00:00
|
|
|
else
|
|
|
|
# Default case, just add -I / -L
|
|
|
|
GNUSTEP_HEADERS_FLAGS = $(addprefix -I,$(GNUSTEP_HEADERS_DIRS))
|
|
|
|
GNUSTEP_LIBRARIES_FLAGS = $(addprefix -L,$(GNUSTEP_LIBRARIES_DIRS))
|
2004-04-02 07:28:02 +00:00
|
|
|
GNUSTEP_FRAMEWORKS_FLAGS = $(addprefix -F,$(GNUSTEP_FRAMEWORKS_DIRS))
|
2002-03-18 17:07:02 +00:00
|
|
|
endif
|
|
|
|
|
1997-10-30 19:06:58 +00:00
|
|
|
ifeq ($(FOUNDATION_LIB), fd)
|
2002-12-30 16:30:51 +00:00
|
|
|
|
|
|
|
# Map OBJC_RUNTIME_LIB values to OBJC_RUNTIME values as used by
|
|
|
|
# libFoundation. TODO/FIXME: Drop all this stuff and have
|
|
|
|
# libFoundation use OBJC_RUNTIME_LIB directly.
|
2003-07-29 11:56:20 +00:00
|
|
|
|
|
|
|
# TODO: Remove all this cruft. Standardize.
|
2002-12-30 16:30:51 +00:00
|
|
|
ifeq ($(OBJC_RUNTIME_LIB), nx)
|
|
|
|
OBJC_RUNTIME = NeXT
|
|
|
|
endif
|
|
|
|
ifeq ($(OBJC_RUNTIME_LIB), sun)
|
|
|
|
OBJC_RUNTIME = Sun
|
|
|
|
endif
|
|
|
|
ifeq ($(OBJC_RUNTIME_LIB), apple)
|
|
|
|
OBJC_RUNTIME = apple
|
|
|
|
endif
|
|
|
|
ifeq ($(OBJC_RUNTIME_LIB), gnu)
|
|
|
|
OBJC_RUNTIME = GNU
|
|
|
|
endif
|
|
|
|
ifeq ($(OBJC_RUNTIME_LIB), gnugc)
|
|
|
|
OBJC_RUNTIME = GNU
|
|
|
|
endif
|
2004-03-09 17:29:38 +00:00
|
|
|
|
|
|
|
# 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 ?
|
2006-10-02 15:54:56 +00:00
|
|
|
ifeq ($(GNUSTEP_IS_FLATTENED),yes)
|
2004-03-09 17:29:38 +00:00
|
|
|
GNUSTEP_HEADERS_FND_DIRS = \
|
2007-02-13 05:37:56 +00:00
|
|
|
$(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)
|
2004-03-09 17:29:38 +00:00
|
|
|
else
|
|
|
|
GNUSTEP_HEADERS_FND_DIRS = \
|
2007-02-13 05:37:56 +00:00
|
|
|
$(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)
|
2002-03-18 17:07:02 +00:00
|
|
|
endif
|
|
|
|
|
2002-12-30 16:30:51 +00:00
|
|
|
ifeq ($(REMOVE_EMPTY_DIRS), yes)
|
2002-03-18 17:07:02 +00:00
|
|
|
# Build the GNUSTEP_HEADERS_FND_FLAG by removing the empty dirs
|
|
|
|
# from GNUSTEP_HEADERS_FND_DIRS, then prepending -I to each of them
|
|
|
|
GNUSTEP_HEADERS_FND_FLAG = \
|
|
|
|
$(addprefix -I,$(foreach dir,$(GNUSTEP_HEADERS_FND_DIRS),$(remove_if_empty)))
|
|
|
|
else
|
|
|
|
# default case - simply prepend -I
|
|
|
|
GNUSTEP_HEADERS_FND_FLAG = $(addprefix -I,$(GNUSTEP_HEADERS_FND_DIRS))
|
1997-10-30 19:06:58 +00:00
|
|
|
endif
|
1997-10-28 19:00:28 +00:00
|
|
|
|
2004-03-09 17:29:38 +00:00
|
|
|
# Just add the result of all this to the standard header flags.
|
|
|
|
GNUSTEP_HEADERS_FLAGS += $(GNUSTEP_HEADERS_FND_FLAG)
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
1997-09-18 01:36:07 +00:00
|
|
|
#
|
|
|
|
# Overridable compilation flags
|
|
|
|
#
|
2003-07-29 11:56:20 +00:00
|
|
|
# FIXME: We use -fno-strict-aliasing to prevent annoying gcc3.3
|
|
|
|
# compiler warnings. But we really need to investigate why the
|
|
|
|
# warning appear in the first place, if they are serious or not, and
|
|
|
|
# what can be done about it.
|
2010-07-16 15:26:16 +00:00
|
|
|
INTERNAL_OBJCFLAGS = -fno-strict-aliasing
|
|
|
|
|
2015-12-09 19:27:58 +00:00
|
|
|
# Linux CentOS 6.5 i386 clang...
|
|
|
|
# Clang inserts move aligned packed instructions (i.e. movaps,etc) assembly
|
|
|
|
# code however stack is not aligned causing fault crashes...
|
|
|
|
ifeq ($(CC),clang)
|
2015-12-10 22:02:32 +00:00
|
|
|
ifneq ($(wildcard /etc/redhat-release),"")
|
2015-12-12 04:35:26 +00:00
|
|
|
RH_RELEASE := $(shell cat 2>/dev/null /etc/redhat-release)
|
2015-12-10 17:47:30 +00:00
|
|
|
ifeq ($(findstring CentOS,$(RH_RELEASE)),CentOS)
|
|
|
|
ifeq ($(findstring 6.5,$(RH_RELEASE)),6.5)
|
2015-12-09 19:27:58 +00:00
|
|
|
LINUXVER := $(subst ., ,$(subst -, ,$(shell uname -r)))
|
|
|
|
LINUXREV := $(word 4,$(LINUXVER))
|
|
|
|
ifeq ($(shell (test $(LINUXREV) -le 431 && echo 0)), 0)
|
2015-12-10 17:47:30 +00:00
|
|
|
INTERNAL_OBJCFLAGS += -mno-sse
|
2015-12-09 19:27:58 +00:00
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
1997-09-26 01:16:38 +00:00
|
|
|
CFLAGS =
|
1997-09-18 01:36:07 +00:00
|
|
|
|
2015-12-09 19:27:58 +00:00
|
|
|
INTERNAL_LDFLAGS +=
|
|
|
|
|
2004-06-22 23:56:41 +00:00
|
|
|
# If the compiler supports native ObjC exceptions and the user wants us to
|
|
|
|
# use them, turn them on!
|
|
|
|
ifeq ($(USE_OBJC_EXCEPTIONS), yes)
|
2010-07-16 15:26:16 +00:00
|
|
|
INTERNAL_OBJCFLAGS += -fexceptions -fobjc-exceptions -D_NATIVE_OBJC_EXCEPTIONS
|
2013-03-04 11:21:55 +00:00
|
|
|
INTERNAL_LDFLAGS += -fexceptions
|
2004-06-19 11:09:53 +00:00
|
|
|
endif
|
|
|
|
|
2010-03-13 19:41:20 +00:00
|
|
|
# If the compiler supports nonfragile ABI and the user wants us to
|
|
|
|
# use them, turn them on!
|
|
|
|
ifeq ($(USE_NONFRAGILE_ABI), yes)
|
2010-07-16 15:26:16 +00:00
|
|
|
INTERNAL_OBJCFLAGS += -fobjc-nonfragile-abi -D_NONFRAGILE_ABI
|
2010-03-13 19:41:20 +00:00
|
|
|
INTERNAL_LDFLAGS += -fobjc-nonfragile-abi
|
|
|
|
endif
|
|
|
|
|
2009-01-11 08:41:17 +00:00
|
|
|
# If we are using garbage collection we set a define to say so.
|
|
|
|
ifeq ($(OBJC_WITH_GC), yes)
|
2010-07-16 15:26:16 +00:00
|
|
|
INTERNAL_OBJCFLAGS += -DGS_WITH_GC=1
|
2009-01-11 08:41:17 +00:00
|
|
|
endif
|
|
|
|
|
2002-09-12 13:59:04 +00:00
|
|
|
#
|
|
|
|
# Now decide whether to build shared objects or not. Nothing depending
|
|
|
|
# on the value of the shared variable is allowed before this point!
|
|
|
|
#
|
|
|
|
|
|
|
|
#
|
|
|
|
# Fixup bundles to be always built as shared even when shared=no is given
|
|
|
|
#
|
|
|
|
ifeq ($(shared), no)
|
|
|
|
ifeq ($(GNUSTEP_TYPE), bundle)
|
|
|
|
$(warning "Static bundles are meaningless! I am using shared=yes!")
|
|
|
|
override shared = yes
|
|
|
|
export shared
|
|
|
|
endif
|
2004-01-12 12:46:40 +00:00
|
|
|
ifeq ($(GNUSTEP_TYPE), framework)
|
|
|
|
$(warning "Static frameworks are meaningless! I am using shared=yes!")
|
|
|
|
override shared = yes
|
|
|
|
export shared
|
|
|
|
endif
|
2002-09-12 13:59:04 +00:00
|
|
|
endif
|
|
|
|
|
1997-09-26 01:16:38 +00:00
|
|
|
# Enable building shared libraries by default. If the user wants to build a
|
|
|
|
# static library, he/she has to specify shared=no explicitly.
|
|
|
|
ifeq ($(HAVE_SHARED_LIBS), yes)
|
2002-09-12 13:59:04 +00:00
|
|
|
# Unless shared=no has been purposedly set ...
|
|
|
|
ifneq ($(shared), no)
|
|
|
|
# ... set shared = yes
|
|
|
|
shared = yes
|
1997-09-26 01:16:38 +00:00
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(shared), yes)
|
2000-06-13 15:14:23 +00:00
|
|
|
LIB_LINK_CMD = $(SHARED_LIB_LINK_CMD)
|
|
|
|
INTERNAL_OBJCFLAGS += $(SHARED_CFLAGS)
|
|
|
|
INTERNAL_CFLAGS += $(SHARED_CFLAGS)
|
2002-10-30 12:42:22 +00:00
|
|
|
AFTER_INSTALL_LIBRARY_CMD = $(AFTER_INSTALL_SHARED_LIB_CMD)
|
1997-09-26 01:16:38 +00:00
|
|
|
else
|
2000-06-13 15:14:23 +00:00
|
|
|
LIB_LINK_CMD = $(STATIC_LIB_LINK_CMD)
|
2002-10-30 12:42:22 +00:00
|
|
|
AFTER_INSTALL_LIBRARY_CMD = $(AFTER_INSTALL_STATIC_LIB_CMD)
|
1997-09-26 01:16:38 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(profile), yes)
|
2000-12-05 16:11:55 +00:00
|
|
|
ADDITIONAL_FLAGS += -pg
|
|
|
|
ifeq ($(LD), $(CC))
|
2003-09-29 16:46:50 +00:00
|
|
|
INTERNAL_LDFLAGS += -pg
|
2000-12-05 16:11:55 +00:00
|
|
|
endif
|
1997-09-26 01:16:38 +00:00
|
|
|
endif
|
|
|
|
|
2009-09-20 10:34:39 +00:00
|
|
|
# The default set of compilation flags are set in config.make in the
|
2011-04-10 14:24:08 +00:00
|
|
|
# OPTFLAG variable. They should default to -g -O2. These should be
|
2009-09-20 10:34:39 +00:00
|
|
|
# an "average" set of flags, midway between debugging and performance;
|
|
|
|
# they are used, unchanged, when we build with debug=no (the default
|
|
|
|
# unless --enable-debug-by-default was used when configuring
|
|
|
|
# gnustep-make). Using the set of GCC flags -g -O2 as default is
|
|
|
|
# recommended by the GNU Coding Standards and is common practice. If
|
|
|
|
# you specify debug=yes, you want to do a debug build, so we remove
|
|
|
|
# the optimization flag that makes it harder to debug. If you specify
|
|
|
|
# strip=yes, you do not want debugging symbols, so we strip all
|
|
|
|
# executables before installing them. This gives you three main
|
|
|
|
# options to use in a default setup:
|
|
|
|
#
|
|
|
|
# make (some optimization, and some debugging symbols are used)
|
|
|
|
# make debug=yes (removes optimization flags)
|
|
|
|
# make strip=yes (removes debugging symbols)
|
|
|
|
#
|
|
|
|
|
|
|
|
# By default we build using debug=no (unless --enable-debug-by-default
|
|
|
|
# was specified when configuring gnustep-make) - so that the default
|
|
|
|
# compilation flags should be -g -O2. This is according to the GNU
|
|
|
|
# Coding Standards.
|
|
|
|
ifeq ($(debug),)
|
|
|
|
debug = $(GNUSTEP_DEFAULT_DEBUG)
|
2006-09-20 04:12:08 +00:00
|
|
|
endif
|
|
|
|
|
1997-09-26 01:16:38 +00:00
|
|
|
ifeq ($(debug), yes)
|
2009-09-20 10:34:39 +00:00
|
|
|
# Optimization flags are filtered out as they make debugging harder.
|
|
|
|
OPTFLAG := $(filter-out -O%, $(OPTFLAG))
|
|
|
|
# If OPTFLAG does not already include -g, add it here.
|
|
|
|
ifneq ($(filter -g, $(OPTFLAG)), -g)
|
|
|
|
ADDITIONAL_FLAGS += -g
|
|
|
|
endif
|
|
|
|
# Add standard debug compiler flags.
|
2010-03-12 19:45:40 +00:00
|
|
|
ADDITIONAL_FLAGS += -DDEBUG -fno-omit-frame-pointer
|
2009-09-20 10:34:39 +00:00
|
|
|
|
|
|
|
# The following is for Java.
|
2010-03-12 19:45:40 +00:00
|
|
|
INTERNAL_JAVACFLAGS += -g
|
2001-11-21 15:37:55 +00:00
|
|
|
else
|
2009-09-20 10:34:39 +00:00
|
|
|
# The default OPTFLAG set in config.make are used to compile.
|
|
|
|
|
|
|
|
# The following is for Java.
|
2001-11-21 15:37:55 +00:00
|
|
|
INTERNAL_JAVACFLAGS += -O
|
1997-09-26 01:16:38 +00:00
|
|
|
endif
|
|
|
|
|
1999-11-07 14:37:45 +00:00
|
|
|
ifeq ($(warn), no)
|
2000-12-05 16:11:55 +00:00
|
|
|
ADDITIONAL_FLAGS += -UGSWARN
|
1999-11-07 14:37:45 +00:00
|
|
|
else
|
2010-03-12 19:45:40 +00:00
|
|
|
ADDITIONAL_FLAGS += -Wall -DGSWARN
|
|
|
|
INTERNAL_JAVACFLAGS += -deprecation
|
1999-11-07 14:37:45 +00:00
|
|
|
endif
|
1997-09-26 01:16:38 +00:00
|
|
|
|
2001-12-13 04:10:48 +00:00
|
|
|
ifeq ($(diagnose), no)
|
|
|
|
ADDITIONAL_FLAGS += -UGSDIAGNOSE
|
|
|
|
else
|
|
|
|
ADDITIONAL_FLAGS += -DGSDIAGNOSE
|
|
|
|
endif
|
|
|
|
|
2006-10-31 13:01:34 +00:00
|
|
|
# The use of #import is no longer deprecated in gcc, and is supposed
|
|
|
|
# to be recommended from now on ... so we disable the warnings for
|
|
|
|
# older compilers.
|
|
|
|
ADDITIONAL_FLAGS += -Wno-import
|
|
|
|
|
2001-04-13 19:49:16 +00:00
|
|
|
AUXILIARY_CPPFLAGS += $(GNUSTEP_DEFINE) \
|
2001-11-22 14:26:45 +00:00
|
|
|
$(FND_DEFINE) $(GUI_DEFINE) $(BACKEND_DEFINE) \
|
2002-05-10 08:47:58 +00:00
|
|
|
$(RUNTIME_DEFINE) $(FOUNDATION_LIBRARY_DEFINE)
|
1999-03-02 08:58:30 +00:00
|
|
|
|
1997-09-26 01:16:38 +00:00
|
|
|
INTERNAL_OBJCFLAGS += $(ADDITIONAL_FLAGS) $(OPTFLAG) $(OBJCFLAGS) \
|
|
|
|
$(RUNTIME_FLAG)
|
2014-07-29 10:12:46 +00:00
|
|
|
INTERNAL_CFLAGS += $(ADDITIONAL_FLAGS) $(OPTFLAG) $(CFLAGS)
|
1997-09-26 01:16:38 +00:00
|
|
|
|
1997-10-28 02:34:11 +00:00
|
|
|
#
|
|
|
|
# Support building of Multiple Architecture Binaries (MAB). The object files
|
2006-09-08 17:45:16 +00:00
|
|
|
# directory will be something like obj/ix86_m68k_sun/
|
1997-10-28 02:34:11 +00:00
|
|
|
#
|
|
|
|
ifeq ($(arch),)
|
2000-12-05 16:11:55 +00:00
|
|
|
ARCH_OBJ_DIR = $(GNUSTEP_TARGET_DIR)
|
1997-10-28 02:34:11 +00:00
|
|
|
else
|
2000-12-05 16:11:55 +00:00
|
|
|
ARCH_OBJ_DIR = \
|
1997-10-28 02:34:11 +00:00
|
|
|
$(shell echo $(CLEANED_ARCH) | sed -e 's/ /_/g')/$(GNUSTEP_TARGET_OS)
|
|
|
|
endif
|
|
|
|
|
2006-10-02 15:54:56 +00:00
|
|
|
ifeq ($(GNUSTEP_IS_FLATTENED), no)
|
2006-09-08 17:45:16 +00:00
|
|
|
GNUSTEP_OBJ_DIR_NAME = obj/$(ARCH_OBJ_DIR)/$(LIBRARY_COMBO)
|
2000-12-05 16:11:55 +00:00
|
|
|
else
|
2006-09-08 17:45:16 +00:00
|
|
|
GNUSTEP_OBJ_DIR_NAME = obj
|
2000-12-05 16:11:55 +00:00
|
|
|
endif
|
1998-04-06 03:01:59 +00:00
|
|
|
|
2003-10-13 23:22:20 +00:00
|
|
|
GNUSTEP_OBJ_DIR = $(GNUSTEP_BUILD_DIR)/$(GNUSTEP_OBJ_DIR_NAME)
|
|
|
|
|
2010-02-12 09:19:25 +00:00
|
|
|
ifneq ($(GNUSTEP_INSTANCE),)
|
|
|
|
GNUSTEP_OBJ_INSTANCE_DIR_NAME = $(GNUSTEP_OBJ_DIR_NAME)/$(GNUSTEP_INSTANCE).obj
|
|
|
|
GNUSTEP_OBJ_INSTANCE_DIR = $(GNUSTEP_BUILD_DIR)/$(GNUSTEP_OBJ_INSTANCE_DIR_NAME)
|
|
|
|
else
|
|
|
|
GNUSTEP_OBJ_INSTANCE_DIR_NAME = $(warn "Makefile bug ... GNUSTEP_OBJ_INSTANCE_DIR_NAME used in Master invocation!")
|
|
|
|
GNUSTEP_OBJ_INSTANCE_DIR = $(warn "Makefile bug ... GNUSTEP_OBJ_INSTANCE_DIR used in Master invocation!")
|
|
|
|
endif
|
|
|
|
|
1999-02-19 21:47:15 +00:00
|
|
|
#
|
|
|
|
# Common variables for subprojects
|
2000-06-13 15:14:23 +00:00
|
|
|
#
|
1999-02-19 21:47:15 +00:00
|
|
|
SUBPROJECT_PRODUCT = subproject$(OEXT)
|
1998-05-28 06:56:11 +00:00
|
|
|
|
2000-06-21 11:25:41 +00:00
|
|
|
#
|
2000-08-07 22:06:04 +00:00
|
|
|
# Set JAVA_HOME if not set.
|
|
|
|
#
|
|
|
|
ifeq ($(JAVA_HOME),)
|
|
|
|
# Else, try JDK_HOME
|
|
|
|
ifeq ($(JDK_HOME),)
|
2006-09-19 02:36:49 +00:00
|
|
|
# Else, try by finding the path of javac and removing 'bin/javac' from it.
|
|
|
|
# Please note that this is really inefficient, you should rather
|
|
|
|
# set JAVA_HOME!
|
2000-08-07 22:06:04 +00:00
|
|
|
ifeq ($(JAVAC),)
|
2000-09-25 16:44:59 +00:00
|
|
|
JAVA_HOME = $(shell which javac | sed "s/bin\/javac//g")
|
2006-09-19 02:36:49 +00:00
|
|
|
else # $(JAVAC) != ""
|
2000-08-07 22:06:04 +00:00
|
|
|
JAVA_HOME = $(shell which $(JAVAC) | sed "s/bin\/javac//g")
|
2006-09-19 02:36:49 +00:00
|
|
|
endif
|
2000-08-07 22:06:04 +00:00
|
|
|
else # $(JDK_HOME) != ""
|
2006-09-19 02:36:49 +00:00
|
|
|
JAVA_HOME = $(JDK_HOME)
|
2000-08-07 22:06:04 +00:00
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
#
|
2002-10-16 23:00:43 +00:00
|
|
|
# The java compiler.
|
2000-06-21 11:25:41 +00:00
|
|
|
#
|
|
|
|
ifeq ($(JAVAC),)
|
2000-08-07 22:06:04 +00:00
|
|
|
JAVAC = $(JAVA_HOME)/bin/javac
|
2000-06-21 11:25:41 +00:00
|
|
|
endif
|
1999-10-30 07:11:34 +00:00
|
|
|
|
2000-06-22 16:54:17 +00:00
|
|
|
#
|
2002-10-16 23:00:43 +00:00
|
|
|
# The java header compiler.
|
2000-06-22 16:54:17 +00:00
|
|
|
#
|
|
|
|
ifeq ($(JAVAH),)
|
2000-08-07 22:06:04 +00:00
|
|
|
JAVAH = $(JAVA_HOME)/bin/javah
|
2000-06-22 16:54:17 +00:00
|
|
|
endif
|
|
|
|
|
2002-01-30 19:51:21 +00:00
|
|
|
#
|
2014-12-21 07:16:04 +00:00
|
|
|
# The java jar tool.
|
|
|
|
#
|
|
|
|
ifeq ($(JAR),)
|
|
|
|
JAR = $(JAVA_HOME)/bin/jar
|
|
|
|
endif
|
|
|
|
|
2002-01-30 19:51:21 +00:00
|
|
|
# Common variables - default values
|
|
|
|
#
|
|
|
|
# Because this file is included at the beginning of the user's
|
|
|
|
# GNUmakefile, the user can override these variables by setting them
|
|
|
|
# in the GNUmakefile.
|
|
|
|
BUNDLE_EXTENSION = .bundle
|
2006-09-12 19:05:58 +00:00
|
|
|
APP_EXTENSION = app
|
2002-01-31 17:58:29 +00:00
|
|
|
|
2002-01-30 20:04:36 +00:00
|
|
|
# We want total control over GNUSTEP_INSTANCE.
|
|
|
|
# GNUSTEP_INSTANCE determines wheter it's a Master or an Instance
|
|
|
|
# invocation. Whenever we run a submake, we want it to be a Master
|
|
|
|
# invocation, unless we specifically set it to run as an Instance
|
|
|
|
# invocation by adding the GNUSTEP_INSTANCE=xxx flag. Tell make not
|
|
|
|
# to mess with our games by passing this variable to submakes himself
|
|
|
|
unexport GNUSTEP_INSTANCE
|
|
|
|
unexport GNUSTEP_TYPE
|
2002-01-30 17:50:46 +00:00
|
|
|
|
2007-02-14 04:44:35 +00:00
|
|
|
#
|
|
|
|
# Sanity checks - only performed at the first make invocation
|
|
|
|
#
|
|
|
|
|
|
|
|
# Please note that _GNUSTEP_TOP_INVOCATION_DONE is set by the first
|
|
|
|
# time Master/rules.make is read, and propagated to sub-makes. So
|
|
|
|
# this check will pass only the very first time we parse this file,
|
|
|
|
# and if Master/rules.make have not yet been parsed.
|
|
|
|
ifeq ($(_GNUSTEP_TOP_INVOCATION_DONE),)
|
|
|
|
|
|
|
|
# Print out a message with our version number and how to get help on
|
2009-02-25 12:47:15 +00:00
|
|
|
# targets and options. We use $(notdir $(MAKE)) to print the command
|
|
|
|
# that was used to invoke us; this is usually 'make' but it often is
|
|
|
|
# 'gmake' on *BSD systems.
|
2007-02-14 04:44:35 +00:00
|
|
|
ifeq ($(MAKE_WITH_INFO_FUNCTION),yes)
|
2007-02-17 00:12:16 +00:00
|
|
|
# Use 'make quiet=yes' to disable the message
|
|
|
|
ifneq ($(quiet),yes)
|
2009-02-25 12:47:15 +00:00
|
|
|
$(info This is gnustep-make $(GNUSTEP_MAKE_VERSION). Type '$(notdir $(MAKE)) print-gnustep-make-help' for help.)
|
2008-01-14 15:22:14 +00:00
|
|
|
ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
|
|
|
|
$(info Running in gnustep-make version 2 strict mode.)
|
|
|
|
endif
|
2007-02-17 00:12:16 +00:00
|
|
|
endif
|
2007-02-14 04:44:35 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
# Sanity check on $PATH - NB: if PATH is wrong, we can't do certain
|
|
|
|
# things because we can't run the tools (and we can't locate tools
|
|
|
|
# using opentool because we can't even run opentool if PATH is wrong)
|
|
|
|
# - this is particularly bad for gui stuff
|
|
|
|
|
|
|
|
# Skip the check if we are on an Apple system. I was told that you can't
|
|
|
|
# source GNUstep.sh before running Apple's PB and that the only
|
|
|
|
# friendly solution is to disable the check.
|
|
|
|
ifneq ($(FOUNDATION_LIB), apple)
|
|
|
|
# Under Win32 paths are so confused this warning is not worthwhile
|
|
|
|
ifneq ($(findstring mingw, $(GNUSTEP_HOST_OS)), mingw)
|
|
|
|
|
|
|
|
ifeq ($(findstring $(GNUSTEP_SYSTEM_TOOLS),$(PATH)),)
|
|
|
|
$(warning WARNING: Your PATH may not be set up correctly !)
|
2007-02-16 04:22:26 +00:00
|
|
|
$(warning Please try again after adding "$(GNUSTEP_SYSTEM_TOOLS)" to your path)
|
2007-02-14 04:44:35 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
endif
|
|
|
|
endif # code used when FOUNDATION_LIB != apple
|
|
|
|
|
|
|
|
endif # End of sanity checks run only at makelevel 0
|
|
|
|
|
2001-07-10 14:30:08 +00:00
|
|
|
endif # COMMON_MAKE_LOADED
|