]> err.no Git - sope/blob - gnustep-make/config.make.in
gnu runtime bugfix
[sope] / gnustep-make / config.make.in
1 #
2 #   config.make.in
3 #
4 #   All of the settings required by the makefile package
5 #   that are determined by configure.
6 #
7 #   Copyright (C) 1997-2005 Free Software Foundation, Inc.
8 #
9 #   Author:  Scott Christley <scottc@net-community.com>
10 #   Author:  Ovidiu Predescu <ovidiu@net-community.com>
11 #   Author:  Nicola Pero <n.pero@mi.flashnet.it>
12 #
13 #   This file is part of the GNUstep Makefile Package.
14 #
15 #   This library is free software; you can redistribute it and/or
16 #   modify it under the terms of the GNU General Public License
17 #   as published by the Free Software Foundation; either version 2
18 #   of the License, or (at your option) any later version.
19 #   
20 #   You should have received a copy of the GNU General Public
21 #   License along with this library; see the file COPYING.LIB.
22 #   If not, write to the Free Software Foundation,
23 #   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
24
25 #
26 # The GNUstep Make Package Version
27 #
28 GNUSTEP_MAKE_MAJOR_VERSION=@GNUSTEP_MAKE_MAJOR_VERSION@
29 GNUSTEP_MAKE_MINOR_VERSION=@GNUSTEP_MAKE_MINOR_VERSION@
30 GNUSTEP_MAKE_SUBMINOR_VERSION=@GNUSTEP_MAKE_SUBMINOR_VERSION@
31 GNUSTEP_MAKE_VERSION=@GNUSTEP_MAKE_VERSION@
32
33 #
34 # Binary and compile tools
35 #
36 CC       = @CC@
37 OPTFLAG  = @CFLAGS@
38 OBJCFLAGS= @OBJCFLAGS@
39 CPPFLAGS = @CPPFLAGS@
40 CPP      = @CPP@
41
42 EXEEXT = @EXEEXT@
43 OEXT   = .@OBJEXT@
44 LIBEXT = .a
45
46 LN_S = @LN_S@
47
48 # This is the best we can do given the current autoconf, which only
49 # returns LN_S
50 ifeq ($(LN_S), ln -s)
51   HAS_LN_S = yes
52 else
53   HAS_LN_S = no
54 endif
55
56 # Special case - on mingw32, autoconf sets LN_S to 'ln -s', but then
57 # that does a recursive copy (ie, cp -r).
58 ifeq (@target_os@,mingw32)
59   HAS_LN_S = no
60 endif
61 # Special case - on cygwin, autoconf sets LN_S to 'ln -s', but then
62 # that does a recursive copy (ie, cp -r).
63 ifeq (@target_os@,cygwin)
64   HAS_LN_S = no
65 endif 
66
67
68
69 # This is used to remove an existing symlink before creating a new
70 # one.  We don't trust 'ln -s -f' as it's unportable so we remove
71 # manually the existing symlink (if any) before creating a new one.
72 # If symlinks are supported on the platform, RM_LN_S is just 'rm -f';
73 # if they are not, we assume they are copies (like cp -r) and we go
74 # heavy-handed with 'rm -Rf'.  Note - this code might need rechecking
75 # for the case where LN_S = 'ln', if that ever happens on some
76 # platforms.
77 ifeq ($(HAS_LN_S), yes)
78   RM_LN_S = rm -f
79   FRAMEWORK_VERSION_SUPPORT = yes
80 else
81   RM_LN_S = rm -Rf
82   FRAMEWORK_VERSION_SUPPORT = no
83 endif
84
85 LD = $(CC)
86 LDOUT =
87 LDFLAGS = @LDFLAGS@ 
88
89 AR      = @AR@
90 AROUT   =
91 ARFLAGS = rc
92 RANLIB  = @RANLIB@
93
94 DLLTOOL = @DLLTOOL@
95
96 # NB: These variables are defined here only so that they can be
97 # overridden on the command line (so you can type 'AWK=mawk make' to
98 # use a different awk for that particular run of make).  We should
99 # *NOT* set them to the full path of these tools at configure time,
100 # because otherwise when you change/update the tools you would need to
101 # reconfigure and reinstall gnustep-make!  We can normally assume that
102 # typing 'awk' and 'sed' on the command line cause the preferred awk
103 # and sed programs on the system to be used.  Hardcoding the full path
104 # (or the name) of the specific awk or sed program on this sytem here
105 # would make it lot more inflexible.  In other words, the following
106 # definitions should remain like in 'AWK = awk' on all systems.
107 AWK             = awk
108 SED             = sed
109 YACC            = yacc
110 BISON           = bison
111 FLEX            = flex
112 LEX             = lex
113 CHOWN           = chown
114 STRIP           = strip
115
116 INSTALL         = @HOST_INSTALL@
117 INSTALL_PROGRAM = @INSTALL_PROGRAM@
118 INSTALL_DATA    = @INSTALL_DATA@
119 TAR             = @TAR@
120 MKDIRS          = $(GNUSTEP_MAKEFILES)/mkinstalldirs
121
122 # Darwin specific flags
123 CC_CPPPRECOMP  = @cc_cppprecomp@
124 CC_BUNDLE      = @cc_bundle@
125
126 # The default library combination
127 default_library_combo = @ac_cv_library_combo@
128
129 # Backend bundle
130 BACKEND_BUNDLE=@BACKEND_BUNDLE@
131
132 #
133 # Do threading stuff.
134 #
135 # Warning - the base library's configure.in will extract the thread
136 # flags from the following line using grep/sed - so if you change the
137 # following lines you *need* to update the base library configure.in
138 # too.
139 #
140 ifndef objc_threaded
141   objc_threaded:=@objc_threaded@
142 endif
143
144 # Any user specified libs
145 CONFIG_SYSTEM_INCL=@INCLUDES@
146 CONFIG_SYSTEM_LIBS = @LIBS@
147 CONFIG_SYSTEM_LIB_DIR = @LIB_DIR@
148
149 #
150 # Whether the C/ObjC/C++ compiler supports auto-dependencies
151 # (generating dependencies of the object files from the include files
152 # used to compile them) via -MMD -MP flags
153 #
154 AUTO_DEPENDENCIES = @AUTO_DEPENDENCIES@
155
156 #
157 # Whether the ObjC compiler supports precompiling headers.
158 #
159 PRECOMPILED_HEADERS = @PRECOMPILED_HEADERS@
160
161 #
162 # Whether the ObjC compiler supports native ObjC exceptions via
163 # @try/@catch/@finally/@throw.
164 #
165 USE_OBJC_EXCEPTIONS = @USE_OBJC_EXCEPTIONS@
166
167 #
168 # Location of GNUstep's config file for this installation
169 #
170 # Warning - the base library's configure.in will extract the GNUstep
171 # config file location from the following line using grep/sed - so if
172 # you change the following lines you *need* to update the base library
173 # configure.in too.
174 #
175 # PS: At run-time, this can be overridden on the command-line, or
176 # via an environment variable.
177 ifeq ($(GNUSTEP_CONFIG_FILE),)
178 GNUSTEP_CONFIG_FILE = @GNUSTEP_CONFIG_FILE@
179 endif
180
181 #
182 # Now we set up the environment and everything by reading the GNUstep
183 # configuration file(s).
184 #
185
186 # These are the defaults value ... they will be used only if they are
187 # not set in the config files (or on the command-line or in
188 # environment).
189 GNUSTEP_SYSTEM_ROOT = @GNUSTEP_SYSTEM_ROOT@
190 GNUSTEP_LOCAL_ROOT = @GNUSTEP_LOCAL_ROOT@
191 GNUSTEP_NETWORK_ROOT = @GNUSTEP_NETWORK_ROOT@
192 GNUSTEP_USER_DIR = @GNUSTEP_USER_DIR@
193
194 # This includes the GNUstep configuration file, but only if it exists
195 -include $(GNUSTEP_CONFIG_FILE)
196
197 # FIXME: determining GNUSTEP_HOME
198 GNUSTEP_HOME = $(HOME)
199
200 # Read the user configuration file ... unless it is disabled (ie, set
201 # to an empty string)
202 ifneq ($(GNUSTEP_USER_CONFIG_FILE),)
203
204  # FIXME - Checking for relative vs. absolute paths!
205  ifneq ($(filter /%, $(GNUSTEP_USER_CONFIG_FILE)),)
206   # Path starts with '/', consider it absolute
207   -include $(GNUSTEP_USER_CONFIG_FILE)
208  else
209   # Path does no start with '/', try it as relative
210   -include $(GNUSTEP_HOME)/$(GNUSTEP_USER_CONFIG_FILE)
211  endif 
212
213 endif
214
215 GNUSTEP_FLATTENED = @GNUSTEP_FLATTENED@
216
217 #
218 # Set GNUSTEP_USER_ROOT from GNUSTEP_USER_DIR; GNUSTEP_USER_ROOT is
219 # the variable used in practice
220 #
221 ifneq ($(filter /%, $(GNUSTEP_USER_DIR)),)
222  # Path starts with '/', consider it absolute
223  GNUSTEP_USER_ROOT = $(GNUSTEP_USER_DIR)
224 else
225  # Path does no start with '/', try it as relative
226  GNUSTEP_USER_ROOT = $(GNUSTEP_HOME)/$(GNUSTEP_USER_DIR)
227 endif 
228
229 # If multi-platform support is disabled, just use the hardcoded cpu,
230 # vendor and os determined when gnustep-make was configured.  The
231 # reason using the hardcoded ones might be better is that config.guess
232 # and similar scripts might even require compiling test files to
233 # determine the platform - which is horribly slow (that is done in
234 # names.make if GNUSTEP_HOST is not yet set at that stage).  To
235 # prevent this problem, unless we were configured to determine the
236 # platform at run time, by default we use the hardcoded values of
237 # GNUSTEP_HOST*.
238
239 ifeq ("@GNUSTEP_MULTI_PLATFORM@","")
240   GNUSTEP_HOST = @target@
241   GNUSTEP_HOST_CPU = @clean_target_cpu@
242   GNUSTEP_HOST_VENDOR = @clean_target_vendor@
243   GNUSTEP_HOST_OS = @clean_target_os@
244 endif