~ chicken-core (chicken-5) 039fedf4f52eb96e5adef960ea8e33796b02612e
commit 039fedf4f52eb96e5adef960ea8e33796b02612e
Author: Evan Hanson <evhan@foldling.org>
AuthorDate: Tue Mar 6 17:26:42 2018 +1300
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Tue Mar 6 18:33:29 2018 +0100
Revert eval-modules changes so unit isn't included in dynamic libchicken
This fixes commits 4f39a4d0 and d35a74ce, which erroneously included the
eval-modules unit in the dynamic library (i.e. libchicken.so) as well as
the static one (libchicken.a).
The eval-modules-static.o artifact *should* be included in the list of
LIBCHICKEN_STATIC_OBJECTS, but not in LIBCHICKEN_SCHEME_OBJECTS_1 since
that will also put it in LIBCHICKEN_SHARED_OBJECTS where it doesn't
belong (eval-modules is for static compilation only).
Signed-off-by: felix <felix@call-with-current-continuation.org>
diff --git a/rules.make b/rules.make
index 5f37343a..ee85aa33 100644
--- a/rules.make
+++ b/rules.make
@@ -37,10 +37,11 @@ LIBCHICKEN_SCHEME_OBJECTS_1 = \
library eval read-syntax repl data-structures pathname port file \
extras lolevel tcp srfi-4 continuation $(POSIXFILE) internal \
irregex scheduler debugger-client profiler stub expand modules \
- chicken-syntax chicken-ffi-syntax build-version eval-modules
+ chicken-syntax chicken-ffi-syntax build-version
LIBCHICKEN_OBJECTS_1 = $(LIBCHICKEN_SCHEME_OBJECTS_1) runtime
LIBCHICKEN_SHARED_OBJECTS = $(LIBCHICKEN_OBJECTS_1:=$(O))
-LIBCHICKEN_STATIC_OBJECTS = $(LIBCHICKEN_OBJECTS_1:=-static$(O))
+LIBCHICKEN_STATIC_OBJECTS = $(LIBCHICKEN_OBJECTS_1:=-static$(O)) \
+ eval-modules-static$(O)
COMPILER_OBJECTS_1 = \
chicken batch-driver core optimizer lfa2 compiler-syntax scrutinizer support \
@@ -125,6 +126,8 @@ declare-static-libchicken-object = $(declare-static-library-object)
$(foreach obj, $(LIBCHICKEN_OBJECTS_1),\
$(eval $(call declare-static-libchicken-object,$(obj))))
+$(eval $(call declare-static-libchicken-object,eval-modules))
+
# import library objects
define declare-import-lib-object
Trap