Fix cut-to-width in the presence of bad constants in dead code.
[sbcl.git] / src / runtime / GNUmakefile
index fa764d4..3d75800 100644 (file)
@@ -11,7 +11,7 @@
 
 .PHONY: all clean TAGS tags targets
 
-all: targets
+all: targets tags
 TARGET=sbcl
 
 # Defaults which might be overridden or modified by values in the
@@ -23,9 +23,14 @@ NM = nm -gp
 DEPEND_FLAGS = -MM
 GREP = grep
 
-CFLAGS = -g -Wall -O3
+include ../../output/prefix.def
+
+CFLAGS = -g -Wall -Wsign-compare -O3
 ASFLAGS = $(CFLAGS)
-CPPFLAGS = -I.
+CPPFLAGS = -I. -DSBCL_PREFIX=\"$(SBCL_PREFIX)\"
+
+# Give make access to the target Lisp features.
+include genesis/Makefile.features
 
 # The Config file is the preferred place for tweaking options which
 # are appropriate for particular setups (OS, ARCH, whatever). Make a
@@ -35,12 +40,12 @@ CPPFLAGS = -I.
 # OS_SRC, OS_LIBS, OS_OBJS, OS_CLEAN_FILES
 include Config
 
-
 COMMON_SRC = alloc.c backtrace.c breakpoint.c coreparse.c \
-       dynbind.c gc-common.c globals.c interr.c interrupt.c largefile.c \
-       monitor.c os-common.c parse.c print.c purify.c pthread-lutex.c \
-       regnames.c run-program.c runtime.c save.c search.c \
-       thread.c time.c util.c validate.c vars.c wrap.c 
+       dynbind.c funcall.c gc-common.c globals.c interr.c interrupt.c \
+       largefile.c monitor.c os-common.c parse.c print.c purify.c \
+       pthread-futex.c \
+       regnames.c run-program.c runtime.c safepoint.c save.c search.c \
+       thread.c time.c util.c validate.c vars.c wrap.c
 
 C_SRC = $(COMMON_SRC) ${ARCH_SRC} ${OS_SRC} ${GC_SRC}
 
@@ -56,24 +61,20 @@ $(TARGET): $(OBJS)
        $(CC) ${LINKFLAGS} -o $@ $^ $(LIBS)
 
 sbcl.nm: $(TARGET)
-       $(NM) $(TARGET) | $(GREP) -v " F \| U " > ,$@
+       $(NM) $(TARGET) | $(GREP) -v " [FUw] " > ,$@
        mv -f ,$@ $@
 
 sbcl.h: $(wildcard genesis/*.h)
        echo '#include "genesis/config.h"' >sbcl.h
        echo '#include "genesis/constants.h"' >>sbcl.h
 
+# || true because we don't want the build to break if etags isn't there.
+# ...but it's still nice to have it done by default.
 TAGS tags: $(SRCS)
-       etags $(SRCS)
+       etags $(SRCS) || true
 
 clean:
        -rm -f *.[do] $(TARGET) sbcl.nm sbcl.h core *.tmp $(OS_CLEAN_FILES)
-       # the depend file is obsolete
-       -rm -f depend
-
-# depend target for backward compatibility
-.PHONY: depend
-depend:
 
 %.d: %.c sbcl.h
        @$(CC) $(DEPEND_FLAGS) $(CPPFLAGS) $< > $@.tmp; \