# makefile for Gambit-C compiler.
# Copyright (C) 1994-2006 by Marc Feeley, All Rights Reserved.
herefromroot = gsc
rootfromhere = ..
escrootfromhere = ".."
SUBDIRS =
PACKAGE_SHORTNAME = gambc
PACKAGE_NAME = Gambit-C
PACKAGE_VERSION = 4.0b20
PACKAGE_STRING = Gambit-C 4.0b20
PACKAGE_BUGREPORT = gambit@iro.umontreal.ca
PACKAGE_TARNAME = gambc-4.0b20
PACKAGE_SUBDIR =
srcdir = .
srcdirpfx =
C_COMPILER = cc
C_PREPROC = cc -E
FLAGS_OBJ = -fno-common -O1
FLAGS_DYN = -O1 -shared
FLAGS_LIB = -shared
FLAGS_EXE =
DEFS = -DHAVE_CONFIG_H
LIBS =
GAMBCLIB = libgambc.a
INSTALL = $(rootfromhere)/install-sh -c
INSTALL_DATA = $(rootfromhere)/install-sh -c -m 644
INSTALL_LIB = $(rootfromhere)/install-sh -c -m 644
INSTALL_PROGRAM = $(rootfromhere)/install-sh -c -m 755
LN_S = ln -s
RANLIB = ranlib
prefix =
exec_prefix = ${prefix}
includedir = $(prefix)$(PACKAGE_SUBDIR)/include
libdir = $(prefix)$(PACKAGE_SUBDIR)/lib
bindir = $(prefix)$(PACKAGE_SUBDIR)/bin
docdir = $(prefix)$(PACKAGE_SUBDIR)/doc
infodir = $(prefix)$(PACKAGE_SUBDIR)/info
emacsdir = $(prefix)$(PACKAGE_SUBDIR)/share/emacs/site-lisp
.SUFFIXES:
.SUFFIXES: .scm .c .
.c.:
$(C_COMPILER) $(INCLUDES) $(FLAGS_OBJ) $(DEFS) -c $(srcdirpfx)$*.c
.scm.c:
$(rootfromhere)/gsc/gsc -:=$(srcdirpfx)$(escrootfromhere) -f -c -check $(srcdirpfx)$*.scm
INCLUDES = -I$(srcdirpfx)$(rootfromhere)/include
MODULES = _host _utils _source _parms \
_env _ptree1 _ptree2 _gvm _back _front _prims \
_t-c-1 _t-c-2 _t-c-3 _gsc
MODULES_SCM = _host.scm _utils.scm _source.scm _parms.scm \
_env.scm _ptree1.scm _ptree2.scm _gvm.scm _back.scm _front.scm \
_prims.scm _t-c-1.scm _t-c-2.scm _t-c-3.scm _gsc.scm
MODULES_C = _host.c _utils.c _source.c _parms.c \
_env.c _ptree1.c _ptree2.c _gvm.c _back.c _front.c \
_prims.c _t-c-1.c _t-c-2.c _t-c-3.c _gsc.c
MODULES_O = _host. _utils. _source. _parms. \
_env. _ptree1. _ptree2. _gvm. _back. _front. \
_prims. _t-c-1. _t-c-2. _t-c-3. _gsc.
MODULES_O_PLUS = +_host. +_utils. +_source. +_parms. \
+_env. +_ptree1. +_ptree2. +_gvm. +_back. +_front. \
+_prims. +_t-c-1. +_t-c-2. +_t-c-3. +_gsc.
MODULES_O_COMMA = _host.,_utils.,_source.,_parms.,\
_env.,_ptree1.,_ptree2.,_gvm.,_back.,_front.,\
_prims.,_t-c-1.,_t-c-2.,_t-c-3.,_gsc.
MODULES_O_IN_COMPILE_ORDER = _t-c-2. _ptree1. _ptree2. \
_front. _t-c-1. _gvm. _source. _t-c-3. _utils. \
_parms. _host. _env. _prims. _back. _gsc.
SOURCES = $(MODULES_C) _gsc_.c $(MODULES_SCM) _envadt.scm _gvmadt.scm _ptreeadt.scm _sourceadt.scm
EXECUTABLE = gsc
OBJECTS = $(MODULES_O) _gsc_.
OBJECTS_PLUS = $(MODULES_O_PLUS) +_gsc_.
OBJECTS_COMMA = $(MODULES_O_COMMA),_gsc_.
OBJECTS_IN_COMPILE_ORDER = $(MODULES_O_IN_COMPILE_ORDER) _gsc_.
DISTFILES = makefile.in fixnum.scm generic.scm igsc.scm $(SOURCES)
all: all-recursive all-local
all-local: gsc
gsc: $(OBJECTS_IN_COMPILE_ORDER) $(srcdirpfx)$(rootfromhere)/lib/$(GAMBCLIB)
$(C_COMPILER) $(FLAGS_EXE) $(OBJECTS) $(rootfromhere)/lib/$(GAMBCLIB) $(LIBS) -o $(EXECUTABLE)
_gsc_.c: $(MODULES_C) $(srcdirpfx)$(rootfromhere)/lib/_gambc.c
$(rootfromhere)/gsc/gsc -:=$(srcdirpfx)$(escrootfromhere) -f -link $(MODULES_C)
$(MODULES_C): $(srcdirpfx)fixnum.scm $(srcdirpfx)generic.scm \
$(srcdirpfx)$(rootfromhere)/lib/header.scm
install-local: all
$(srcdirpfx)$(rootfromhere)/mkidirs $(bindir)
:
$(INSTALL_PROGRAM) gsc $(bindir)/gsc
uninstall-local:
rm -f $(bindir)/gsc
mostlyclean-local:
rm -f $(OBJECTS)
clean-local: mostlyclean-local
rm -f $(MODULES_C) _gsc_.c *.da *.bb *.bbg *.gcov
distclean-local: clean-local
rm -f makefile
realclean-local: distclean-local
rm -f gsc
all-recursive install-recursive uninstall-recursive mostlyclean-recursive clean-recursive distclean-recursive realclean-recursive:
@if test -n "$(SUBDIRS)"; then \
for subdir in ""$(SUBDIRS); do \
target=`echo $@ | sed 's/-recursive//'`; \
echo making $$target in $$subdir; \
(cd $$subdir && $(MAKE) $$target) || exit 1; \
done \
fi
install: install-recursive install-local
uninstall: uninstall-recursive uninstall-local
mostlyclean: mostlyclean-recursive mostlyclean-local
clean: clean-recursive clean-local
distclean: distclean-recursive distclean-local
realclean: realclean-recursive realclean-local
dist:
@if test -n "$(SUBDIRS)"; then \
for subdir in ""$(SUBDIRS); do \
echo making $@ in $$subdir; \
mkdir $(rootfromhere)/$(PACKAGE_TARNAME)/$(herefromroot)/$$subdir; \
chmod 777 $(rootfromhere)/$(PACKAGE_TARNAME)/$(herefromroot)/$$subdir; \
(cd $$subdir && $(MAKE) $(MDEFINES) $@) || exit 1; \
done \
fi
@echo "Copying distribution files"
@for file in $(DISTFILES); do \
ln $(srcdirpfx)$$file $(rootfromhere)/$(PACKAGE_TARNAME)/$(herefromroot) 2> /dev/null \
|| cp -p $(srcdirpfx)$$file $(rootfromhere)/$(PACKAGE_TARNAME)/$(herefromroot); \
done
makefile: makefile.in $(rootfromhere)/config.status
cd $(rootfromhere) && CONFIG_FILES=$(herefromroot)/$@ CONFIG_HEADERS= ./config.status
# Tell versions [3.59,3.63) of GNU make not to export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
syntax highlighted by Code2HTML, v. 0.9.1