aboutsummaryrefslogtreecommitdiff
path: root/Makefile.in
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2011-05-30 12:36:30 +1000
committerSteve Bennett <steveb@workware.net.au>2011-06-10 14:00:34 +1000
commit382a35e21340439b0c2557cc125fb12ac5d135e3 (patch)
tree236ceb935f3f7805243dcce4dca4304000524220 /Makefile.in
parentdbe7729d6b03470bf91de94a998b1c2e56b4ee3b (diff)
downloadjimtcl-382a35e21340439b0c2557cc125fb12ac5d135e3.zip
jimtcl-382a35e21340439b0c2557cc125fb12ac5d135e3.tar.gz
jimtcl-382a35e21340439b0c2557cc125fb12ac5d135e3.tar.bz2
Create static extension loader dynamically
Makes it easier when adding new extensions Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'Makefile.in')
-rw-r--r--Makefile.in13
1 files changed, 7 insertions, 6 deletions
diff --git a/Makefile.in b/Makefile.in
index 4978864..256dbee 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -34,7 +34,7 @@ endif
.EXPORT_ALL_VARIABLES:
-OBJS := jim-subcmd.o jim-interactive.o jim-format.o jim.o utf8.o jimregexp.o @EXTRA_OBJS@
+OBJS := load-static-exts.o jim-subcmd.o jim-interactive.o jim-format.o jim.o utf8.o jimregexp.o @EXTRA_OBJS@
JIMSH := jimsh@EXEEXT@
@@ -46,9 +46,7 @@ EXTENSION_TCL := $(patsubst %,%.tcl,@JIM_TCL_EXTENSIONS@)
# Create C extensions from pure Tcl extensions
jim-%.c: %.tcl
- @tclsh@ @srcdir@/make-c-ext.tcl $< >$@
-
-OBJS += jim-load-static-exts.o
+ @tclsh@ @srcdir@/make-c-ext.tcl $< >$@ || ( rm $@; exit 1)
all: $(JIMSH) $(EXTENSION_MODS)
@@ -82,9 +80,12 @@ ifneq (@JIM_UTF8@,)
utf8.o: unicode_mapping.c
unicode_mapping.c: @srcdir@/UnicodeData.txt @srcdir@/parse-unidata.tcl
- @tclsh@ @srcdir@/parse-unidata.tcl @srcdir@/UnicodeData.txt >$@
+ @tclsh@ @srcdir@/parse-unidata.tcl @srcdir@/UnicodeData.txt >$@ || ( rm $@; exit 1)
endif
+load-static-exts.c: @srcdir@/make-load-static-exts.tcl Makefile
+ @tclsh@ @srcdir@/make-load-static-exts.tcl @JIM_EXTENSIONS@ >$@ || ( rm $@; exit 1)
+
ifeq ($(jim_libtype),static)
$(LIBJIM): $(OBJS) $(EXTENSION_OBJS)
$(AR) cr $@ $^
@@ -102,7 +103,7 @@ Tcl.html: jim_tcl.txt
@tclsh@ @srcdir@/make-index $^ | asciidoc -o $@ -d manpage - || cp @srcdir@/Tcl_shipped.html Tcl.html
clean:
- rm -f *.o *.so lib*.a $(JIMSH) Tcl.html unicode_mapping.c @GENERATED_SRCS@
+ rm -f *.o *.so lib*.a $(JIMSH) Tcl.html unicode_mapping.c load-static-exts.c @GENERATED_SRCS@
distclean: clean
rm -f jimautoconf.h jim-config.h Makefile config.log