1 # makefile for Gambit-C interpreter.
3 # Copyright (c) 1994-2009 by Marc Feeley, All Rights Reserved.
9 PACKAGE_SHORTNAME
= @PACKAGE_SHORTNAME@
10 PACKAGE_NAME
= @PACKAGE_NAME@
11 PACKAGE_VERSION
= @PACKAGE_VERSION@
12 PACKAGE_STRING
= @PACKAGE_STRING@
13 PACKAGE_BUGREPORT
= @PACKAGE_BUGREPORT@
14 PACKAGE_TARNAME
= @PACKAGE_TARNAME@
20 srcdirpfx
= @srcdirpfx@
22 C_COMPILER
= @C_COMPILER_MF@
23 C_PREPROC
= @C_PREPROC_MF@
24 FLAGS_OBJ
= @FLAGS_OBJ_MF@
25 FLAGS_DYN
= @FLAGS_DYN_MF@
26 FLAGS_LIB
= @FLAGS_LIB_MF@
27 FLAGS_EXE
= @FLAGS_EXE_MF@
31 GAMBCLIB_DEFS
= @GAMBCLIB_DEFS_MF@
32 LIB_PREFIX
= @LIB_PREFIX@
33 LIB_EXTENSION
= @LIB_EXTENSION@
35 GAMBCGSCLIB
= @GAMBCGSCLIB@
36 GAMBCGSILIB
= @GAMBCGSILIB@
38 INSTALL_DATA
= @INSTALL_DATA@
39 INSTALL_LIB
= @INSTALL_LIB@
40 INSTALL_PROGRAM
= @INSTALL_PROGRAM@
48 exec_prefix = @
exec_prefix@
49 includedir = @
includedir@
55 libexecdir
= @libexecdir@
56 datarootdir
= @datarootdir@
62 localedir
= @localedir@
66 .SUFFIXES
: .scm .c @obj@
70 LIBRARY
= $(LIB_PREFIX
)$(GAMBCGSILIB
)$(LIB_EXTENSION
)
75 LIBRARY_NORMAL_O_PLUS
=
76 LIBRARY_NORMAL_O_COMMA
=
77 LIBRARY_NORMAL_SOURCES
= $(LIBRARY_NORMAL_C
) $(LIBRARY_NORMAL_CPP
) \
79 LIBRARY_MODULES
= _gsilib
80 LIBRARY_MODULES_SCM
= _gsilib.scm
81 LIBRARY_MODULES_C
= _gsilib.c
82 LIBRARY_MODULES_O
= _gsilib@obj@
83 LIBRARY_MODULES_O_PLUS
= +_gsilib@obj@
84 LIBRARY_MODULES_O_COMMA
= _gsilib@obj@
85 LIBRARY_MODULES_O_IN_COMPILE_ORDER
= _gsilib@obj@
86 LIBRARY_OBJECTS
= $(LIBRARY_NORMAL_O
) \
87 $(LIBRARY_MODULES_O
) _
$(GAMBCGSILIB
)@obj@
88 LIBRARY_OBJECTS_PLUS
= $(LIBRARY_NORMAL_O_PLUS
) \
89 $(LIBRARY_MODULES_O_PLUS
) +_
$(GAMBCGSILIB
)@obj@
90 LIBRARY_OBJECTS_COMMA
= $(LIBRARY_NORMAL_O_COMMA
),\
91 $(LIBRARY_MODULES_O_COMMA
),_
$(GAMBCGSILIB
)@obj@
92 LIBRARY_OBJECTS_IN_COMPILE_ORDER
= $(LIBRARY_MODULES_O_IN_COMPILE_ORDER
) \
93 $(LIBRARY_NORMAL_O_IN_COMPILE_ORDER
) _
$(GAMBCGSILIB
)@obj@
95 MAKE_LIBRARY_LIBS
= $(rootfromhere
)/lib
/$(LIB_PREFIX
)$(GAMBCLIB
)$(LIB_EXTENSION
)
96 MAKE_LIBRARY_FOR_INSTALL_LIBS
= @MAKE_LIBRARY_FOR_INSTALL_LIBS@
99 EXECUTABLE_INSTALLED
= @ENABLE_INTERPRETER_NAME@@exe@
100 EXECUTABLE_NORMAL_C
=
101 EXECUTABLE_NORMAL_CPP
=
102 EXECUTABLE_NORMAL_H
=
103 EXECUTABLE_NORMAL_O
=
104 EXECUTABLE_NORMAL_O_PLUS
=
105 EXECUTABLE_NORMAL_O_COMMA
=
106 EXECUTABLE_NORMAL_SOURCES
= $(EXECUTABLE_NORMAL_C
) $(EXECUTABLE_NORMAL_CPP
) \
107 $(EXECUTABLE_NORMAL_H
)
108 EXECUTABLE_MODULES
= _gsi
109 EXECUTABLE_MODULES_SCM
= _gsi.scm
110 EXECUTABLE_MODULES_C
= _gsi.c
111 EXECUTABLE_MODULES_O
= _gsi@obj@
112 EXECUTABLE_MODULES_O_PLUS
= +_gsi@obj@
113 EXECUTABLE_MODULES_O_COMMA
= _gsi@obj@
114 EXECUTABLE_MODULES_O_IN_COMPILE_ORDER
= _gsi@obj@
115 EXECUTABLE_OBJECTS
= $(EXECUTABLE_NORMAL_O
) \
116 $(EXECUTABLE_MODULES_O
) _gsi_@obj@
117 EXECUTABLE_OBJECTS_PLUS
= $(EXECUTABLE_NORMAL_O_PLUS
) \
118 $(EXECUTABLE_MODULES_O_PLUS
) +_gsi_@obj@
119 EXECUTABLE_OBJECTS_COMMA
= $(EXECUTABLE_NORMAL_O_COMMA
),\
120 $(EXECUTABLE_MODULES_O_COMMA
),_gsi_@obj@
121 EXECUTABLE_OBJECTS_IN_COMPILE_ORDER
= $(EXECUTABLE_MODULES_O_IN_COMPILE_ORDER
) \
122 $(EXECUTABLE_NORMAL_O_IN_COMPILE_ORDER
) _gsi_@obj@
124 LINK_LIBS
= $(LIBRARY
) $(rootfromhere
)/lib
/$(LIB_PREFIX
)$(GAMBCLIB
)$(LIB_EXTENSION
)
125 LINK_FOR_INSTALL_LIBS
= @LINK_FOR_INSTALL_GSI_LIBS@
127 MODULES_SCM
= $(LIBRARY_MODULES_SCM
) $(EXECUTABLE_MODULES_SCM
)
128 MODULES_C
= $(LIBRARY_MODULES_C
) $(EXECUTABLE_MODULES_C
)
129 OBJECTS
= $(LIBRARY_OBJECTS
) $(EXECUTABLE_OBJECTS
)
131 RCFILES
= makefile.in main.scm
$(MODULES_SCM
)
133 GENDISTFILES
= $(MODULES_C
) _
$(GAMBCGSILIB
).c _gsi_.c
135 DISTFILES
= $(RCFILES
) $(GENDISTFILES
)
137 GAMBCDIR_INCLUDE
= $(srcdirpfx
)$(rootfromhere
)/include
138 GAMBCDIR_LIB
= $(srcdirpfx
)$(rootfromhere
)/lib
139 GAMBCDIR_LIB_GSI
= $(srcdirpfx
)$(rootfromhere
)/gsi
140 GAMBCDIR_LIB_GSC
= $(srcdirpfx
)$(rootfromhere
)/gsc
142 BUILD_OBJ_OUTPUT_FILENAME
= $*@obj@
143 BUILD_OBJ_CC_OPTIONS
= -I
$(srcdir) $(DEFS
)
144 BUILD_OBJ_INPUT_FILENAMES
= $(srcdirpfx
)$*.c
146 BUILD_EXE_OUTPUT_FILENAME
= $(EXECUTABLE
)
147 BUILD_EXE_CC_OPTIONS
=
148 BUILD_EXE_LD_OPTIONS_PRELUDE
=
149 BUILD_EXE_INPUT_FILENAMES
= $(EXECUTABLE_OBJECTS
)
150 BUILD_EXE_LD_OPTIONS
= $(LIBRARY
)
156 all-post
: $(LIBRARY
) $(EXECUTABLE
)
158 $(LIBRARY
): $(LIBRARY_OBJECTS_IN_COMPILE_ORDER
)
162 _
$(GAMBCGSILIB
).c
: $(LIBRARY_MODULES_C
) $(rootfromhere
)/lib
/_gambc.c
163 @SETDLPATH@
$(rootfromhere
)/gsc-comp
-:~~bin
=$(srcdirpfx
)$(rootfromhere
)/bin
,~~lib
=$(srcdirpfx
)$(rootfromhere
)/lib
,~~
include=$(srcdirpfx
)$(rootfromhere
)/include -f
-link
-l
$(srcdirpfx
)$(rootfromhere
)/lib
/_gambc
-o
$@
$(LIBRARY_MODULES_C
)
165 $(EXECUTABLE
): $(EXECUTABLE_OBJECTS_IN_COMPILE_ORDER
) $(LINK_LIBS
)
168 _gsi_.c
: $(EXECUTABLE_MODULES_C
) _
$(GAMBCGSILIB
).c
169 @SETDLPATH@
$(rootfromhere
)/gsc-comp
-:~~bin
=$(srcdirpfx
)$(rootfromhere
)/bin
,~~lib
=$(srcdirpfx
)$(rootfromhere
)/lib
,~~
include=$(srcdirpfx
)$(rootfromhere
)/include -f
-link
-l _
$(GAMBCGSILIB
) -o
$@
$(EXECUTABLE_MODULES_C
)
178 @BUILD_OBJ@
-D___LIBRARY
181 @SETDLPATH@
$(rootfromhere
)/gsc-comp
-:~~bin
=$(srcdirpfx
)$(rootfromhere
)/bin
,~~lib
=$(srcdirpfx
)$(rootfromhere
)/lib
,~~
include=$(srcdirpfx
)$(rootfromhere
)/include -f
-c
-check $(srcdirpfx
)$*.scm
183 _gsi.c
: $(srcdirpfx
)$(rootfromhere
)/gsi
/main.scm
185 $(MODULES_C
): $(srcdirpfx
)$(rootfromhere
)/lib
/header.scm \
186 $(srcdirpfx
)$(rootfromhere
)/lib
/gambit\
#.scm \
187 $(srcdirpfx
)$(rootfromhere
)/lib
/_gambit\
#.scm
189 $(MODULES_O
): $(srcdirpfx
)$(rootfromhere
)/include/gambit.h
194 c_bindir
=$(DESTDIR
)$(prefix)/bin
; \
195 i_bindir
=$(DESTDIR
)$(bindir); \
196 t_bindir
=$$i_bindir; \
197 c_libdir
=$(DESTDIR
)$(prefix)/lib
; \
198 i_libdir
=$(DESTDIR
)$(libdir); \
199 t_libdir
=$$i_libdir; \
200 $(srcdirpfx
)$(rootfromhere
)/mkidirs
$$i_bindir $$i_libdir; \
201 if
test "@ENABLE_SYMLINKS@" = "yes"; then \
202 $(srcdirpfx
)$(rootfromhere
)/mkidirs
$$c_bindir $$c_libdir; \
203 t_bindir
=$$c_bindir; \
204 t_libdir
=$$c_libdir; \
206 $(INSTALL_DATA
) $(srcdirpfx
)_
$(GAMBCGSILIB
).c
$$t_libdir/_
$(GAMBCGSILIB
).c
; \
207 @MAKE_LIBRARY_FOR_INSTALL@
; \
208 $(INSTALL_LIB
) $(LIBRARY
) $$t_libdir/$(LIBRARY
); \
209 @FIXLIB@
$$t_libdir/$(LIBRARY
); \
210 @LINK_FOR_INSTALL@
; \
211 $(INSTALL_PROGRAM
) $(EXECUTABLE
) $$t_bindir/$(EXECUTABLE_INSTALLED
); \
212 if
test "$$t_libdir" != "$$i_libdir"; then \
213 r_libdir
=`$(rootfromhere)/relpath "$$t_libdir" "$$i_libdir" @ENABLE_MULTIPLE_VERSIONS@`; \
214 for file in _
$(GAMBCGSILIB
).c
$(LIBRARY
); do \
215 (cd
$$i_libdir && $(LN_S
) $$r_libdir$$file $$file); \
218 if
test "$$t_bindir" != "$$i_bindir"; then \
219 r_bindir
=`$(rootfromhere)/relpath "$$t_bindir" "$$i_bindir" @ENABLE_MULTIPLE_VERSIONS@`; \
220 for file in
$(EXECUTABLE_INSTALLED
); do \
221 (cd
$$i_bindir && $(LN_S
) $$r_bindir$$file $$file); \
228 c_bindir
=$(DESTDIR
)$(prefix)/bin
; \
229 i_bindir
=$(DESTDIR
)$(bindir); \
230 t_bindir
=$$i_bindir; \
231 c_libdir
=$(DESTDIR
)$(prefix)/lib
; \
232 i_libdir
=$(DESTDIR
)$(libdir); \
233 t_libdir
=$$i_libdir; \
234 if
test "@ENABLE_SYMLINKS@" = "yes"; then \
235 t_bindir
=$$c_bindir; \
236 t_libdir
=$$c_libdir; \
238 rm -f
$$t_libdir/_
$(GAMBCGSILIB
).c \
239 $$t_libdir/$(LIBRARY
) \
240 $$t_bindir/$(EXECUTABLE_INSTALLED
); \
241 if
test "$$t_libdir" != "$$i_libdir"; then \
242 for file in _
$(GAMBCGSILIB
).c
$(LIBRARY
); do \
243 rm -f
$$i_libdir/$$file; \
246 if
test "$$t_bindir" != "$$i_bindir"; then \
247 for file in
$(EXECUTABLE_INSTALLED
); do \
248 rm -f
$$i_bindir/$$file; \
251 rmdir
$$t_libdir 2> /dev
/null
; \
252 if
test "$$t_libdir" != "$$i_libdir"; then \
253 rmdir
$$i_libdir 2> /dev
/null
; \
255 rmdir
$$t_bindir 2> /dev
/null
; \
256 if
test "$$t_bindir" != "$$i_bindir"; then \
257 rmdir
$$i_bindir 2> /dev
/null
; \
263 rm -f
$(OBJECTS
) $(LIBRARY
) $(EXECUTABLE
)
265 clean-pre
: mostlyclean-pre
267 clean-post
: mostlyclean-post
268 rm -f
*.da
*.bb
*.bbg
*.gcov
*.gcno
*.gcda
270 distclean-pre
: clean-pre
272 distclean-post
: clean-post
274 bootclean-pre
: distclean-pre
276 bootclean-post
: distclean-post
277 rm -f
$(MODULES_C
) _
$(GAMBCGSILIB
).c _gsi_.c
279 realclean-pre
: bootclean-pre
281 realclean-post
: bootclean-post
289 dist-pre dist-devel-pre
:
290 mkdir
$(rootfromhere
)/$(PACKAGE_TARNAME
)/$(herefromroot
)
291 chmod
777 $(rootfromhere
)/$(PACKAGE_TARNAME
)/$(herefromroot
)
292 @echo
" Copying distribution files:"
293 @for file in
$(DISTFILES
); do \
294 echo
" $(herefromroot)/$$file"; \
295 ln
$(srcdirpfx
)$$file $(rootfromhere
)/$(PACKAGE_TARNAME
)/$(herefromroot
) 2> /dev
/null \
296 || cp
-p
$(srcdirpfx
)$$file $(rootfromhere
)/$(PACKAGE_TARNAME
)/$(herefromroot
); \
299 dist-post dist-devel-post
:
301 all-recursive install-recursive uninstall-recursive mostlyclean-recursive clean-recursive distclean-recursive bootclean-recursive realclean-recursive rc-setup-recursive dist-recursive dist-devel-recursive
:
302 @if
test -n
"$(SUBDIRS)"; then \
303 for subdir in
""$(SUBDIRS
); do \
304 target
=`echo $@ | sed 's/-recursive//'`; \
305 echo making
$$target in
$$subdir; \
306 (cd
$$subdir && $(MAKE
) $$target) || exit
1; \
312 all-post
: all-recursive
314 all-recursive
: all-pre
316 install: install-post
318 install-post
: install-recursive
320 install-recursive
: install-pre
322 uninstall: uninstall-post
324 uninstall-post
: uninstall-recursive
326 uninstall-recursive
: uninstall-pre
328 mostlyclean: mostlyclean-post
330 mostlyclean-post
: mostlyclean-recursive
332 mostlyclean-recursive
: mostlyclean-pre
336 clean-post
: clean-recursive
338 clean-recursive
: clean-pre
340 distclean: distclean-post
342 distclean-post
: distclean-recursive
344 distclean-recursive
: distclean-pre
346 bootclean
: bootclean-post
348 bootclean-post
: bootclean-recursive
350 bootclean-recursive
: bootclean-pre
352 realclean: realclean-post
354 realclean-post
: realclean-recursive
356 realclean-recursive
: realclean-pre
358 rc-setup
: rc-setup-post
360 rc-setup-post
: rc-setup-recursive
362 rc-setup-recursive
: rc-setup-pre
366 dist-post
: dist-recursive
368 dist-recursive
: dist-pre
370 dist-devel
: dist-devel-post
372 dist-devel-post
: dist-devel-recursive
374 dist-devel-recursive
: dist-devel-pre
376 makefile
: makefile.in
$(rootfromhere
)/config.status
377 cd
$(rootfromhere
) && CONFIG_FILES
=$(herefromroot
)/$@ CONFIG_HEADERS
= .
/config.status
379 # Tell versions [3.59,3.63) of GNU make not to export all variables.
380 # Otherwise a system limit (for SysV at least) may be exceeded.