~ 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