~ chicken-core (chicken-5) 0298ea57a02f859fdba4bbb66a573b719e6e0b8c
commit 0298ea57a02f859fdba4bbb66a573b719e6e0b8c
Author: Peter Bex <Peter.Bex@xs4all.nl>
AuthorDate: Sun Sep 5 16:52:45 2010 +0200
Commit: Peter Bex <Peter.Bex@xs4all.nl>
CommitDate: Sun Sep 5 16:52:45 2010 +0200
Restore setup-api import lib creation and remove Make's builtin rules for C programs (this aids debugging. Explicit listing of dependencies is better for Chicken)
diff --git a/rules.make b/rules.make
index 60340bda..886e2a9d 100644
--- a/rules.make
+++ b/rules.make
@@ -26,6 +26,10 @@
VPATH=$(SRCDIR)
+# Clear Make's default rules for C programs
+%.o : %.c
+%: %.o
+
# object files
IMPORT_LIB_OBJECTS_1 = \
@@ -34,6 +38,9 @@ IMPORT_LIB_OBJECTS_1 = \
regex irregex srfi-14 tcp foreign scheme \
csi srfi-18 utils
+SETUP_API_IMPORT_LIB_OBJECTS_1 = \
+ setup-api setup-download
+
LIBCHICKEN_OBJECTS_1 = \
library eval data-structures ports files extras lolevel utils tcp srfi-1 srfi-4 srfi-13 \
srfi-14 srfi-18 srfi-69 $(POSIXFILE) regex scheduler \
@@ -96,6 +103,9 @@ setup-download$(O): setup-download.c chicken.h $(CHICKEN_CONFIG_H)
$(HOST_C_COMPILER_COMPILE_OPTION) $(HOST_C_COMPILER_OPTIMIZATION_OPTIONS) $(HOST_C_COMPILER_SHARED_OPTIONS) \
$(HOST_C_COMPILER_BUILD_RUNTIME_OPTIONS) $< $(HOST_C_COMPILER_OUTPUT)
+$(foreach obj,$(SETUP_API_IMPORT_LIB_OBJECTS_1),\
+ $(eval $(call declare-import-lib-object,$(obj))))
+
# compiler objects
define declare-compiler-object
Trap