# 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: