Jim Tcl
Hex Artifact Content
Not logged in

Artifact 845b3bb72889875463d9e1f9e5040b90dcd1d5d5:


0000: 23 20 54 6f 6f 6c 73 0a 43 43 20 3d 20 40 43 43  # Tools.CC = @CC
0010: 40 0a 43 52 4f 53 53 20 3f 3d 20 40 43 52 4f 53  @.CROSS ?= @CROS
0020: 53 40 0a 52 41 4e 4c 49 42 20 3f 3d 20 24 28 43  S@.RANLIB ?= $(C
0030: 52 4f 53 53 29 72 61 6e 6c 69 62 0a 41 52 20 3f  ROSS)ranlib.AR ?
0040: 3d 20 24 28 43 52 4f 53 53 29 61 72 0a 0a 23 20  = $(CROSS)ar..# 
0050: 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 0a 0a 6a  Configuration..j
0060: 69 6d 5f 6c 69 62 74 79 70 65 20 3a 3d 20 40 4a  im_libtype := @J
0070: 49 4d 5f 4c 49 42 54 59 50 45 40 0a 53 48 5f 43  IM_LIBTYPE@.SH_C
0080: 46 4c 41 47 53 20 3f 3d 20 40 53 48 5f 43 46 4c  FLAGS ?= @SH_CFL
0090: 41 47 53 40 20 0a 53 48 5f 4c 44 46 4c 41 47 53  AGS@ .SH_LDFLAGS
00a0: 20 3f 3d 20 40 53 48 5f 4c 44 46 4c 41 47 53 40   ?= @SH_LDFLAGS@
00b0: 20 0a 43 46 4c 41 47 53 20 3d 20 40 43 46 4c 41   .CFLAGS = @CFLA
00c0: 47 53 40 0a 4c 44 46 4c 41 47 53 20 3d 20 40 4c  GS@.LDFLAGS = @L
00d0: 44 46 4c 41 47 53 40 0a 44 45 53 54 44 49 52 20  DFLAGS@.DESTDIR 
00e0: 3f 3d 20 40 70 72 65 66 69 78 40 0a 0a 23 20 44  ?= @prefix@..# D
00f0: 65 66 69 6e 65 73 20 74 68 65 20 65 78 74 65 6e  efines the exten
0100: 73 69 6f 6e 73 20 74 6f 20 69 6e 63 6c 75 64 65  sions to include
0110: 0a 45 58 54 45 4e 53 49 4f 4e 53 20 3a 3d 20 40  .EXTENSIONS := @
0120: 4a 49 4d 5f 45 58 54 45 4e 53 49 4f 4e 53 40 0a  JIM_EXTENSIONS@.
0130: 0a 23 20 53 65 74 20 61 6e 20 69 6e 69 74 69 61  .# Set an initia
0140: 6c 2c 20 64 65 66 61 75 6c 74 20 6c 69 62 72 61  l, default libra
0150: 72 79 20 61 6e 64 20 61 75 74 6f 5f 70 61 74 68  ry and auto_path
0160: 0a 43 50 50 46 4c 41 47 53 20 2b 3d 20 2d 44 54  .CPPFLAGS += -DT
0170: 43 4c 5f 4c 49 42 52 41 52 59 3d 5c 22 2f 6c 69  CL_LIBRARY=\"/li
0180: 62 2f 6a 69 6d 5c 22 0a 0a 43 50 50 46 4c 41 47  b/jim\"..CPPFLAG
0190: 53 20 2b 3d 20 2d 44 4a 49 4d 5f 54 43 4c 5f 43  S += -DJIM_TCL_C
01a0: 4f 4d 50 41 54 20 2d 44 4a 49 4d 5f 52 45 46 45  OMPAT -DJIM_REFE
01b0: 52 45 4e 43 45 53 20 2d 44 5f 47 4e 55 5f 53 4f  RENCES -D_GNU_SO
01c0: 55 52 43 45 0a 0a 43 50 50 46 4c 41 47 53 20 2b  URCE..CPPFLAGS +
01d0: 3d 20 2d 57 61 6c 6c 20 2d 67 20 24 28 4f 50 54  = -Wall -g $(OPT
01e0: 49 4d 29 20 2d 49 40 53 52 43 44 49 52 40 20 2d  IM) -I@SRCDIR@ -
01f0: 49 2e 20 40 45 58 54 52 41 5f 43 46 4c 41 47 53  I. @EXTRA_CFLAGS
0200: 40 0a 56 50 41 54 48 20 3a 3d 20 40 53 52 43 44  @.VPATH := @SRCD
0210: 49 52 40 0a 0a 69 66 65 71 20 28 24 28 6a 69 6d  IR@..ifeq ($(jim
0220: 5f 6c 69 62 74 79 70 65 29 2c 73 74 61 74 69 63  _libtype),static
0230: 29 0a 09 4c 49 42 4a 49 4d 20 3a 3d 20 6c 69 62  )..LIBJIM := lib
0240: 6a 69 6d 2e 61 0a 65 6c 73 65 0a 09 4c 49 42 4a  jim.a.else..LIBJ
0250: 49 4d 20 3a 3d 20 6c 69 62 6a 69 6d 2e 73 6f 0a  IM := libjim.so.
0260: 09 43 50 50 46 4c 41 47 53 20 2b 3d 20 24 28 53  .CPPFLAGS += $(S
0270: 48 5f 43 46 4c 41 47 53 29 0a 65 6e 64 69 66 0a  H_CFLAGS).endif.
0280: 0a 2e 45 58 50 4f 52 54 5f 41 4c 4c 5f 56 41 52  ..EXPORT_ALL_VAR
0290: 49 41 42 4c 45 53 3a 0a 0a 4f 42 4a 53 20 3a 3d  IABLES:..OBJS :=
02a0: 20 6a 69 6d 2d 73 75 62 63 6d 64 2e 6f 20 6a 69   jim-subcmd.o ji
02b0: 6d 2d 69 6e 74 65 72 61 63 74 69 76 65 2e 6f 20  m-interactive.o 
02c0: 6a 69 6d 2e 6f 0a 0a 45 58 54 45 4e 53 49 4f 4e  jim.o..EXTENSION
02d0: 53 5f 4f 42 4a 53 20 3a 3d 20 24 28 70 61 74 73  S_OBJS := $(pats
02e0: 75 62 73 74 20 25 2c 6a 69 6d 2d 25 2e 6f 2c 24  ubst %,jim-%.o,$
02f0: 28 45 58 54 45 4e 53 49 4f 4e 53 29 29 0a 0a 2e  (EXTENSIONS))...
0300: 50 52 45 43 49 4f 55 53 3a 20 6a 69 6d 2d 25 2e  PRECIOUS: jim-%.
0310: 63 0a 0a 23 20 43 72 65 61 74 65 20 43 20 65 78  c..# Create C ex
0320: 74 65 6e 73 69 6f 6e 73 20 66 72 6f 6d 20 70 75  tensions from pu
0330: 72 65 20 54 63 6c 20 65 78 74 65 6e 73 69 6f 6e  re Tcl extension
0340: 73 0a 6a 69 6d 2d 25 2e 63 3a 20 25 2e 74 63 6c  s.jim-%.c: %.tcl
0350: 0a 09 65 63 68 6f 20 24 40 20 3e 3e 2e 63 6c 65  ..echo $@ >>.cle
0360: 61 6e 0a 09 73 68 20 40 53 52 43 44 49 52 40 2f  an..sh @SRCDIR@/
0370: 6d 61 6b 65 2d 63 2d 65 78 74 2e 73 68 20 24 3c  make-c-ext.sh $<
0380: 20 3e 24 40 0a 0a 4f 42 4a 53 20 2b 3d 20 6a 69   >$@..OBJS += ji
0390: 6d 2d 6c 6f 61 64 2d 73 74 61 74 69 63 2d 65 78  m-load-static-ex
03a0: 74 73 2e 6f 0a 0a 61 6c 6c 3a 20 6a 69 6d 73 68  ts.o..all: jimsh
03b0: 0a 0a 64 6f 63 73 3a 20 54 63 6c 2e 68 74 6d 6c  ..docs: Tcl.html
03c0: 0a 0a 6a 69 6d 73 68 3a 20 24 28 4c 49 42 4a 49  ..jimsh: $(LIBJI
03d0: 4d 29 20 6a 69 6d 73 68 2e 6f 0a 09 24 28 43 43  M) jimsh.o..$(CC
03e0: 29 20 24 28 43 46 4c 41 47 53 29 20 24 28 4c 44  ) $(CFLAGS) $(LD
03f0: 46 4c 41 47 53 29 20 2d 6f 20 24 40 20 6a 69 6d  FLAGS) -o $@ jim
0400: 73 68 2e 6f 20 24 28 4c 49 42 4a 49 4d 29 20 24  sh.o $(LIBJIM) $
0410: 28 4c 44 4c 49 42 53 29 20 40 4c 49 42 53 4f 43  (LDLIBS) @LIBSOC
0420: 4b 40 20 40 4c 49 42 44 4c 40 20 2d 6c 6d 0a 0a  K@ @LIBDL@ -lm..
0430: 69 6e 73 74 61 6c 6c 3a 20 61 6c 6c 20 64 6f 63  install: all doc
0440: 73 0a 09 69 6e 73 74 61 6c 6c 20 2d 64 20 24 28  s..install -d $(
0450: 44 45 53 54 44 49 52 29 2f 62 69 6e 0a 09 69 6e  DESTDIR)/bin..in
0460: 73 74 61 6c 6c 20 6a 69 6d 73 68 20 24 28 44 45  stall jimsh $(DE
0470: 53 54 44 49 52 29 2f 62 69 6e 0a 09 69 6e 73 74  STDIR)/bin..inst
0480: 61 6c 6c 20 2d 64 20 24 28 44 45 53 54 44 49 52  all -d $(DESTDIR
0490: 29 2f 6c 69 62 0a 09 69 6e 73 74 61 6c 6c 20 24  )/lib..install $
04a0: 28 4c 49 42 4a 49 4d 29 20 24 28 44 45 53 54 44  (LIBJIM) $(DESTD
04b0: 49 52 29 2f 6c 69 62 0a 09 69 6e 73 74 61 6c 6c  IR)/lib..install
04c0: 20 2d 64 20 24 28 44 45 53 54 44 49 52 29 2f 69   -d $(DESTDIR)/i
04d0: 6e 63 6c 75 64 65 0a 09 69 6e 73 74 61 6c 6c 20  nclude..install 
04e0: 40 53 52 43 44 49 52 40 2f 6a 69 6d 2d 2a 2e 68  @SRCDIR@/jim-*.h
04f0: 20 24 28 44 45 53 54 44 49 52 29 2f 69 6e 63 6c   $(DESTDIR)/incl
0500: 75 64 65 0a 09 69 6e 73 74 61 6c 6c 20 6a 69 6d  ude..install jim
0510: 61 75 74 6f 63 6f 6e 66 65 78 74 2e 68 20 24 28  autoconfext.h $(
0520: 44 45 53 54 44 49 52 29 2f 69 6e 63 6c 75 64 65  DESTDIR)/include
0530: 2f 6a 69 6d 61 75 74 6f 63 6f 6e 66 2e 68 0a 09  /jimautoconf.h..
0540: 69 6e 73 74 61 6c 6c 20 2d 64 20 24 28 44 45 53  install -d $(DES
0550: 54 44 49 52 29 2f 64 6f 63 2f 6a 69 6d 0a 09 69  TDIR)/doc/jim..i
0560: 6e 73 74 61 6c 6c 20 54 63 6c 2e 68 74 6d 6c 20  nstall Tcl.html 
0570: 24 28 44 45 53 54 44 49 52 29 2f 64 6f 63 2f 6a  $(DESTDIR)/doc/j
0580: 69 6d 0a 0a 74 65 73 74 3a 0a 09 24 28 4d 41 4b  im..test:..$(MAK
0590: 45 29 20 2d 43 20 74 65 73 74 73 0a 0a 69 66 65  E) -C tests..ife
05a0: 71 20 28 24 28 6a 69 6d 5f 6c 69 62 74 79 70 65  q ($(jim_libtype
05b0: 29 2c 73 74 61 74 69 63 29 0a 24 28 4c 49 42 4a  ),static).$(LIBJ
05c0: 49 4d 29 3a 20 24 28 4f 42 4a 53 29 20 24 28 45  IM): $(OBJS) $(E
05d0: 58 54 45 4e 53 49 4f 4e 53 5f 4f 42 4a 53 29 0a  XTENSIONS_OBJS).
05e0: 09 24 28 41 52 29 20 63 72 20 24 40 20 24 5e 0a  .$(AR) cr $@ $^.
05f0: 09 24 28 52 41 4e 4c 49 42 29 20 24 40 0a 65 6c  .$(RANLIB) $@.el
0600: 73 65 0a 24 28 4c 49 42 4a 49 4d 29 3a 20 24 28  se.$(LIBJIM): $(
0610: 4f 42 4a 53 29 20 24 28 45 58 54 45 4e 53 49 4f  OBJS) $(EXTENSIO
0620: 4e 53 5f 4f 42 4a 53 29 0a 09 24 28 43 43 29 20  NS_OBJS)..$(CC) 
0630: 24 28 43 46 4c 41 47 53 29 20 24 28 4c 44 46 4c  $(CFLAGS) $(LDFL
0640: 41 47 53 29 20 24 28 53 48 5f 4c 44 46 4c 41 47  AGS) $(SH_LDFLAG
0650: 53 29 20 2d 6f 20 24 40 20 24 5e 0a 65 6e 64 69  S) -o $@ $^.endi
0660: 66 0a 0a 54 63 6c 2e 68 74 6d 6c 3a 20 6a 69 6d  f..Tcl.html: jim
0670: 5f 74 63 6c 2e 74 78 74 0a 09 61 73 63 69 69 64  _tcl.txt..asciid
0680: 6f 63 20 2d 6f 20 24 40 20 2d 64 20 6d 61 6e 70  oc -o $@ -d manp
0690: 61 67 65 20 24 5e 20 7c 7c 20 63 70 20 40 53 52  age $^ || cp @SR
06a0: 43 44 49 52 40 2f 54 63 6c 5f 73 68 69 70 70 65  CDIR@/Tcl_shippe
06b0: 64 2e 68 74 6d 6c 20 54 63 6c 2e 68 74 6d 6c 0a  d.html Tcl.html.
06c0: 0a 63 6c 65 61 6e 3a 0a 09 72 6d 20 2d 66 20 2a  .clean:..rm -f *
06d0: 2e 6f 20 6c 69 62 2a 2e 61 20 6a 69 6d 73 68 20  .o lib*.a jimsh 
06e0: 54 63 6c 2e 68 74 6d 6c 0a 09 69 66 20 5b 20 2d  Tcl.html..if [ -
06f0: 66 20 2e 63 6c 65 61 6e 20 5d 3b 20 74 68 65 6e  f .clean ]; then
0700: 20 72 6d 20 2d 66 20 60 63 61 74 20 2e 63 6c 65   rm -f `cat .cle
0710: 61 6e 60 20 2e 63 6c 65 61 6e 3b 20 66 69 0a 0a  an` .clean; fi..
0720: 64 69 73 74 63 6c 65 61 6e 3a 20 63 6c 65 61 6e  distclean: clean
0730: 0a 09 72 6d 20 2d 66 20 6a 69 6d 61 75 74 6f 63  ..rm -f jimautoc
0740: 6f 6e 66 2e 68 20 6a 69 6d 61 75 74 6f 63 6f 6e  onf.h jimautocon
0750: 66 65 78 74 2e 68 20 4d 61 6b 65 66 69 6c 65 20  fext.h Makefile 
0760: 63 6f 6e 66 69 67 2e 73 74 61 74 75 73 20 63 6f  config.status co
0770: 6e 66 69 67 2e 6c 6f 67 0a 09 72 6d 20 2d 72 66  nfig.log..rm -rf
0780: 20 61 75 74 6f 6d 34 74 65 2e 63 61 63 68 65 0a   autom4te.cache.
0790: 0a 73 68 69 70 3a 0a 09 63 70 20 54 63 6c 2e 68  .ship:..cp Tcl.h
07a0: 74 6d 6c 20 54 63 6c 5f 73 68 69 70 70 65 64 2e  tml Tcl_shipped.
07b0: 68 74 6d 6c 0a 09 61 75 74 6f 63 6f 6e 66 20 26  html..autoconf &
07c0: 26 20 61 75 74 6f 68 65 61 64 65 72 0a           & autoheader.