1#
2#   config-noarch.make.in
3#
4#   The settings required by the makefile package that are determined
5#   by configure but that are independent of the platform that we
6#   are working on (keep in mind we can support multiple platforms
7#   being used at the same time!).
8#
9#   In practice, this file should containg global gnustep-make options
10#   (like GNUSTEP_IS_FLATTENED or GNUSTEP_SYSTEM_ROOT), as opposed to
11#   config info needed to build or compile or do things on a certain
12#   platform (like CC or OPTFLAG), which should go into config.make
13#
14#   Copyright (C) 1997-2006 Free Software Foundation, Inc.
15#
16#   Author:  Scott Christley <scottc@net-community.com>
17#   Author:  Ovidiu Predescu <ovidiu@net-community.com>
18#   Author:  Nicola Pero <n.pero@mi.flashnet.it>
19#
20#   This file is part of the GNUstep Makefile Package.
21#
22#   This library is free software; you can redistribute it and/or
23#   modify it under the terms of the GNU General Public License
24#   as published by the Free Software Foundation; either version 3
25#   of the License, or (at your option) any later version.
26#
27#   You should have received a copy of the GNU General Public
28#   License along with this library; see the file COPYING.
29#   If not, write to the Free Software Foundation,
30#   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
31
32#
33# The GNUstep Make Package Version
34#
35GNUSTEP_MAKE_MAJOR_VERSION=@GNUSTEP_MAKE_MAJOR_VERSION@
36GNUSTEP_MAKE_MINOR_VERSION=@GNUSTEP_MAKE_MINOR_VERSION@
37GNUSTEP_MAKE_SUBMINOR_VERSION=@GNUSTEP_MAKE_SUBMINOR_VERSION@
38GNUSTEP_MAKE_VERSION=@GNUSTEP_MAKE_VERSION@
39
40# Enable or disable strict gnustep-make v2 mode.  In strict
41# gnustep-make v2 mode, we actively try to be backwards-incompatible
42# with gnustep-make v1.  This dangerous option is useful in
43# test/development builds when you want to make sure your software has
44# been properly updated to gnustep-make v2.
45#
46# If this option is set to 'yes', we enable strict gnustep-make v2
47# mode.  Else, it's ignored.
48#
49GNUSTEP_MAKE_STRICT_V2_MODE=@GNUSTEP_MAKE_STRICT_V2_MODE@
50
51# The default library combination
52default_library_combo = @ac_cv_library_combo@
53
54#
55# Location of GNUstep's config file for this installation
56#
57# Warning - the base library's configure.in will extract the GNUstep
58# config file location from the following line using grep/sed - so if
59# you change the following lines you *need* to update the base library
60# configure.in too.
61#
62# PS: At run-time, this can be overridden on the command-line, or
63# via an environment variable.
64ifeq ($(GNUSTEP_CONFIG_FILE),)
65GNUSTEP_CONFIG_FILE = @GNUSTEP_CONFIG_FILE@
66endif
67
68#
69# Now we set up the environment and everything by reading the GNUstep
70# configuration file(s).
71#
72
73# These are the defaults value ... they will be used only if they are
74# not set in the config files (or on the command-line or in
75# environment).
76ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
77  GNUSTEP_SYSTEM_ROOT = $(error GNUSTEP_SYSTEM_ROOT is obsolete)
78  GNUSTEP_LOCAL_ROOT = $(error GNUSTEP_LOCAL_ROOT is obsolete)
79  GNUSTEP_NETWORK_ROOT = $(error GNUSTEP_NETWORK_ROOT is obsolete)
80  GNUSTEP_USER_DIR = $(error GNUSTEP_USER_DIR is obsolete)
81else
82  GNUSTEP_SYSTEM_ROOT = @GNUSTEP_SYSTEM_ROOT@
83  GNUSTEP_LOCAL_ROOT = @GNUSTEP_LOCAL_ROOT@
84  GNUSTEP_NETWORK_ROOT = @GNUSTEP_NETWORK_ROOT@
85  GNUSTEP_USER_DIR = @GNUSTEP_USER_DIR@
86endif
87
88# This includes the GNUstep configuration file, but only if it exists
89-include $(GNUSTEP_CONFIG_FILE)
90
91# FIXME: determining GNUSTEP_HOME
92GNUSTEP_HOME = $(HOME)
93
94# Read the user configuration file ... unless it is disabled (ie, set
95# to an empty string)
96ifneq ($(GNUSTEP_USER_CONFIG_FILE),)
97
98 # FIXME - Checking for relative vs. absolute paths!
99 ifneq ($(filter /%, $(GNUSTEP_USER_CONFIG_FILE)),)
100  # Path starts with '/', consider it absolute
101  -include $(GNUSTEP_USER_CONFIG_FILE)
102 else
103  # Path does no start with '/', try it as relative
104  -include $(GNUSTEP_HOME)/$(GNUSTEP_USER_CONFIG_FILE)
105 endif
106
107endif
108
109# GNUSTEP_FLATTENED is obsolete, please use GNUSTEP_IS_FLATTENED
110# instead
111ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
112  GNUSTEP_FLATTENED = $(error GNUSTEP_FLATTENED is obsolete)
113else
114  GNUSTEP_FLATTENED = @GNUSTEP_FLATTENED@
115endif
116GNUSTEP_IS_FLATTENED = @GNUSTEP_IS_FLATTENED@
117
118GNUSTEP_HAS_PKGCONFIG = @GNUSTEP_HAS_PKGCONFIG@
119
120ifeq ($(GNUSTEP_MAKE_STRICT_V2_MODE),yes)
121  GNUSTEP_USER_ROOT = $(error GNUSTEP_USER_ROOT is obsolete)
122else
123  #
124  # Set GNUSTEP_USER_ROOT from GNUSTEP_USER_DIR; GNUSTEP_USER_ROOT is
125  # the variable used in practice
126  #
127  ifneq ($(filter /%, $(GNUSTEP_USER_DIR)),)
128   # Path starts with '/', consider it absolute
129   GNUSTEP_USER_ROOT = $(GNUSTEP_USER_DIR)
130  else
131   # Path does no start with '/', try it as relative
132   GNUSTEP_USER_ROOT = $(GNUSTEP_HOME)/$(GNUSTEP_USER_DIR)
133  endif
134endif
135
136# FIXME: Shouldn't the following go into config.make ?  They are
137# arch-specific.
138
139# If multi-platform support is disabled, just use the hardcoded cpu,
140# vendor and os determined when gnustep-make was configured.  The
141# reason using the hardcoded ones might be better is that config.guess
142# and similar scripts might even require compiling test files to
143# determine the platform - which is horribly slow (that is done in
144# names.make if GNUSTEP_HOST is not yet set at that stage).  To
145# prevent this problem, unless we were configured to determine the
146# platform at run time, by default we use the hardcoded values of
147# GNUSTEP_HOST*.
148
149ifeq ("@GNUSTEP_MULTI_PLATFORM@","")
150  GNUSTEP_HOST = @target@
151  GNUSTEP_HOST_CPU = @clean_target_cpu@
152  GNUSTEP_HOST_VENDOR = @clean_target_vendor@
153  GNUSTEP_HOST_OS = @clean_target_os@
154endif
155
156# Enables of disables parallel building support.  When parallel
157# building support is disabled, the target .NOTPARALLEL: is used in
158# all make invocations of gnustep-make to make sure a traditional non
159# parallel build is always performed.  When parallel building support
160# is enabled, all make invocations are still .NOTPARALLEL except for
161# an additional make invocation which is performed when compiling an
162# executable or library; that invocation does not use .NOTPARALLEL and
163# will compile all the files of the executable or library in parallel.
164GNUSTEP_MAKE_PARALLEL_BUILDING = @GNUSTEP_MAKE_PARALLEL_BUILDING@
165