1 # makefile for the C-level run-time support for SBCL
3 # This software is part of the SBCL system. See the README file for
6 # This software is derived from the CMU CL system, which was
7 # written at Carnegie Mellon University and released into the
8 # public domain. The software is in the public domain and is
9 # provided with absolutely no warranty. See the COPYING and CREDITS
10 # files for more information.
15 # defaults which might be overridden or modified by values in the
18 # FIXME: The -fno-strength-reduce flag comes from before the fork
19 # from CMU CL. It's presumably to work around some optimizer bug in gcc,
20 # but the fork was a long time ago, and the optimizer could easily
21 # have been fixed since then. Try doing without it.
22 CFLAGS = -g -Wall -O2 -fno-strength-reduce -DGENCGC
27 # The Config file is the preferred place for tweaking options which
28 # are appropriate for particular setups (OS, CPU, whatever). Make a
29 # Config-foo file for setup foo, then arrange for Config to be a
30 # symlink to Config-foo.
33 # Some of these things might be Config-dependent in future versions,
34 # but they're not right now, i.e., they happen to be the same for
35 # all supported systems.
42 SRCS = alloc.c backtrace.c breakpoint.c coreparse.c \
43 dynbind.c globals.c interr.c interrupt.c \
44 monitor.c parse.c print.c purify.c \
45 regnames.c run-program.c runtime.c save.c search.c \
46 time.c validate.c vars.c \
47 ${ARCH_SRC} ${ASSEM_SRC} ${OS_SRC} ${GC_SRC}
49 OBJS = $(patsubst %.c,%.o,$(patsubst %.S,%.o,$(patsubst %.s,%.o,$(SRCS))))
52 $(NM) sbcl | grep -v " F \| U " > ,$@
56 $(CC) ${LINKFLAGS} ${OS_LINK_FLAGS} -o $@ ${OBJS} ${OS_LIBS} -lm
60 rm -f depend *.o sbcl sbcl.nm core *.tmp ; true
62 depend: ${SRCS} sbcl.h
63 $(CC) -MM -E ${DEPEND_FLAGS} ${CFLAGS} ${CPPFLAGS} $? > depend.tmp
64 mv -f depend.tmp depend