RANLIB ?= ranlib SIZE ?= size # Configuration jim_libtype := @JIM_LIBTYPE@ SH_CFLAGS ?= @SH_CFLAGS@ SH_LDFLAGS ?= @SH_LDFLAGS@ # Defines the extensions to include EXTENSIONS := @JIM_EXTENSIONS@ # Set an initial, default library and auto_path CFLAGS += -DTCL_LIBRARY=\"/lib/tcl6\" CFLAGS += -DJIM_TCL_COMPAT -DJIM_REFERENCES CFLAGS += -Wall -g $(OPTIM) -I@SRCDIR@ -I. @EXTRA_CFLAGS@ VPATH := @SRCDIR@ ifeq ($(jim_libtype),static) # Emulate tinytcl LIBJIM := libtcl6.a else #LIBJIM := libjim_shared.so LIBJIM := libtcl6.so #CFLAGS += -fPIC CFLAGS += $(SH_CFLAGS) endif .EXPORT_ALL_VARIABLES: OBJS := jim-subcmd.o jim-interactive.o jim.o SDKHDRS := jim.h jim-subcmd.h EXTENSIONS_OBJS := $(patsubst %,jim-%.o,$(EXTENSIONS)) .PRECIOUS: jim-%.c # Create C extensions from pure Tcl extensions jim-%.c: %.tcl echo $@ >>.clean sh @SRCDIR@/make-c-ext.sh $@ $< OBJS += load_extensions.o TARGETS += $(LIBJIM) jimsh all: $(TARGETS) if [ -d doc ]; then $(MAKE) -C doc all; fi jimsh: $(LIBJIM) jimsh.o $(CC) $(LDFLAGS) -o $@ jimsh.o $(LIBJIM) $(LDLIBS) @LIBDL@ -lm $(SIZE) $@ ifeq ($(jim_libtype),static) $(LIBJIM): $(OBJS) $(EXTENSIONS_OBJS) $(AR) cr $@ $^ $(RANLIB) $@ else $(LIBJIM): $(OBJS) $(EXTENSIONS_OBJS) $(CC) $(LDFLAGS) $(SH_LDFLAGS) -o $@ $^ endif load_extensions.c: @SRCDIR@/make-jim-load-extensions.sh sh @SRCDIR@/make-jim-load-extensions.sh $@ $(EXTENSIONS) install: clean: rm -f *.o lib*.a $(TARGETS) load_extensions.c doc/Tcl.html if [ -f .clean ]; then rm -f `cat .clean` .clean; fi distclean: clean rm -f jim.h Makefile config.status config.log rm -rf autom4te.cache