>From 5329d35549bfd8ba0f522e4a5aed6399b718967e Mon Sep 17 00:00:00 2001 From: Jani Hakala Date: Wed, 8 Jan 2020 23:21:58 +0200 Subject: [PATCH] Add missing build dependencies to targets in makefile Add dependencies between * scheme source files, * chicken shared library and module import libraries, * chicken-do and C headers. Signed-off-by: Evan Hanson --- rules.make | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git rules.make rules.make index c461458e..fe582b61 100644 --- rules.make +++ rules.make @@ -208,8 +208,8 @@ lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(A): $(LIBCHICKEN_STATIC_OBJECTS) # import libraries and extensions -%.so: %.o - $(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_SHARED_DLOADABLE_OPTIONS) $^ $(LINKER_OUTPUT_OPTION) $@ \ +%.so: %.o $(LIBCHICKEN_SO_FILE) + $(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_SHARED_DLOADABLE_OPTIONS) $< $(LINKER_OUTPUT_OPTION) $@ \ $(LINKER_LIBRARY_PREFIX)$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(LINKER_LIBRARY_SUFFIX) \ $(LIBRARIES) @@ -252,7 +252,7 @@ $(eval $(call declare-program-from-object,$(CSI_STATIC_EXECUTABLE),csi)) # "chicken-do" -$(CHICKEN_DO_PROGRAM)$(EXE): $(SRCDIR)chicken-do.c +$(CHICKEN_DO_PROGRAM)$(EXE): $(SRCDIR)chicken-do.c chicken.h $(CHICKEN_CONFIG_H) $(C_COMPILER) $(C_COMPILER_OPTIONS) $(C_COMPILER_OPTIMIZATION_OPTIONS) $< -o $@ # scripts @@ -559,6 +559,8 @@ core.c: core.scm mini-srfi-1.scm \ chicken.compiler.scrutinizer.import.scm \ chicken.compiler.support.import.scm \ chicken.eval.import.scm \ + chicken.file.import.scm \ + chicken.fixnum.import.scm \ chicken.format.import.scm \ chicken.io.import.scm \ chicken.keyword.import.scm \ @@ -567,14 +569,17 @@ core.c: core.scm mini-srfi-1.scm \ chicken.string.import.scm optimizer.c: optimizer.scm mini-srfi-1.scm \ chicken.compiler.support.import.scm \ + chicken.fixnum.import.scm \ chicken.internal.import.scm \ chicken.sort.import.scm \ chicken.string.import.scm scheduler.c: scheduler.scm \ + chicken.fixnum.import.scm \ chicken.format.import.scm \ chicken.condition.import.scm scrutinizer.c: scrutinizer.scm mini-srfi-1.scm \ chicken.compiler.support.import.scm \ + chicken.fixnum.import.scm \ chicken.format.import.scm \ chicken.internal.import.scm \ chicken.io.import.scm \ @@ -589,6 +594,7 @@ lfa2.c: lfa2.scm mini-srfi-1.scm \ compiler-syntax.c: compiler-syntax.scm mini-srfi-1.scm \ chicken.compiler.support.import.scm \ chicken.compiler.core.import.scm \ + chicken.fixnum.import.scm \ chicken.format.import.scm chicken-ffi-syntax.c: chicken-ffi-syntax.scm \ chicken.format.import.scm \ @@ -599,6 +605,7 @@ support.c: support.scm mini-srfi-1.scm \ chicken.blob.import.scm \ chicken.condition.import.scm \ chicken.file.import.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm \ chicken.format.import.scm \ chicken.internal.import.scm \ @@ -631,6 +638,7 @@ csc.c: csc.scm \ chicken.string.import.scm csi.c: csi.scm \ chicken.condition.import.scm \ + chicken.file.import.scm \ chicken.foreign.import.scm \ chicken.format.import.scm \ chicken.gc.import.scm \ @@ -641,19 +649,23 @@ csi.c: csi.scm \ chicken.platform.import.scm \ chicken.port.import.scm \ chicken.pretty-print.import.scm \ + chicken.process.import.scm \ chicken.process-context.import.scm \ chicken.repl.import.scm \ chicken.sort.import.scm \ chicken.string.import.scm chicken-profile.c: chicken-profile.scm \ chicken.internal.import.scm \ + chicken.file.import.scm \ chicken.file.posix.import.scm \ + chicken.fixnum.import.scm \ chicken.process-context.import.scm \ chicken.sort.import.scm \ chicken.string.import.scm chicken-status.c: chicken-status.scm \ chicken.file.import.scm \ chicken.file.posix.import.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm \ chicken.format.import.scm \ chicken.irregex.import.scm \ @@ -667,8 +679,10 @@ chicken-install.c: chicken-install.scm \ chicken.condition.import.scm \ chicken.file.import.scm \ chicken.file.posix.import.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm \ chicken.format.import.scm \ + chicken.internal.import.scm \ chicken.io.import.scm \ chicken.irregex.import.scm \ chicken.pathname.import.scm \ @@ -681,6 +695,7 @@ chicken-install.c: chicken-install.scm \ chicken.tcp.import.scm chicken-uninstall.c: chicken-uninstall.scm \ chicken.file.import.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm \ chicken.format.import.scm \ chicken.irregex.import.scm \ @@ -690,10 +705,12 @@ chicken-uninstall.c: chicken-uninstall.scm \ chicken.process-context.import.scm \ chicken.string.import.scm chicken-syntax.c: chicken-syntax.scm \ + chicken.fixnum.import.scm \ chicken.platform.import.scm \ chicken.internal.import.scm srfi-4.c: srfi-4.scm \ chicken.bitwise.import.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm \ chicken.gc.import.scm \ chicken.platform.import.scm @@ -720,19 +737,23 @@ posixwin.c: posixwin.scm \ chicken.time.import.scm data-structures.c: data-structures.scm \ chicken.condition.import.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm expand.c: expand.scm \ chicken.blob.import.scm \ chicken.condition.import.scm \ + chicken.fixnum.import.scm \ chicken.keyword.import.scm \ chicken.platform.import.scm \ chicken.internal.import.scm extras.c: extras.scm \ + chicken.fixnum.import.scm \ chicken.string.import.scm \ chicken.time.import.scm eval.c: eval.scm \ chicken.blob.import.scm \ chicken.condition.import.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm \ chicken.internal.import.scm \ chicken.keyword.import.scm \ @@ -741,29 +762,45 @@ repl.c: repl.scm \ chicken.eval.import.scm file.c: file.scm \ chicken.condition.import.scm \ + chicken.fixnum.import.scm \ chicken.io.import.scm \ chicken.irregex.import.scm \ chicken.foreign.import.scm \ chicken.pathname.import.scm \ chicken.process-context.import.scm lolevel.c: lolevel.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm pathname.c: pathname.scm \ + chicken.fixnum.import.scm \ chicken.irregex.import.scm \ chicken.platform.import.scm \ chicken.string.import.scm port.c: port.scm \ + chicken.fixnum.import.scm \ chicken.io.import.scm read-syntax.c: read-syntax.scm \ chicken.internal.import.scm \ chicken.platform.import.scm tcp.c: tcp.scm \ + chicken.fixnum.import.scm \ chicken.foreign.import.scm \ chicken.port.import.scm \ chicken.time.import.scm eval-modules.c: eval-modules.scm $(DYNAMIC_IMPORT_LIBRARIES:=.import.scm) \ $(foreach lib,$(DYNAMIC_CHICKEN_IMPORT_LIBRARIES),chicken.$(lib).import.scm) \ $(foreach lib,$(DYNAMIC_CHICKEN_UNIT_IMPORT_LIBRARIES),$(lib).c) +continuation.c: continuation.scm \ + chicken.fixnum.import.scm +internal.c: internal.scm \ + chicken.fixnum.import.scm +irregex.c: irregex.scm \ + chicken.fixnum.import.scm \ + chicken.syntax.import.scm +profiler.c: profiler.scm \ + chicken.fixnum.import.scm +stub.c: stub.scm \ + chicken.platform.import.scm define profile-flags -- 2.25.1