Artifact
77a0a274fa36dfebd88dbd3aff22c66140b2e813cfca1a66b94b6d2c3671e48e:
0000: 23 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d #---------------
0010: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0020: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
0030: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 2d -------------- -
0040: 2a 2d 20 6d 61 6b 65 66 69 6c 65 20 2d 2a 2d 0d *- makefile -*-.
0050: 0a 23 20 74 61 72 67 65 74 73 2e 76 63 20 2d 2d .# targets.vc --
0060: 0d 0a 23 0d 0a 23 20 50 61 72 74 20 6f 66 20 74 ..#..# Part of t
0070: 68 65 20 6e 6d 61 6b 65 20 62 61 73 65 64 20 62 he nmake based b
0080: 75 69 6c 64 20 73 79 73 74 65 6d 20 66 6f 72 20 uild system for
0090: 54 63 6c 20 61 6e 64 20 69 74 73 20 65 78 74 65 Tcl and its exte
00a0: 6e 73 69 6f 6e 73 2e 0d 0a 23 20 54 68 69 73 20 nsions...# This
00b0: 66 69 6c 65 20 64 65 66 69 6e 65 73 20 73 6f 6d file defines som
00c0: 65 20 73 74 61 6e 64 61 72 64 20 74 61 72 67 65 e standard targe
00d0: 74 73 20 66 6f 72 20 74 68 65 20 63 6f 6e 76 65 ts for the conve
00e0: 6e 69 65 6e 63 65 20 6f 66 20 65 78 74 65 6e 73 nience of extens
00f0: 69 6f 6e 73 0d 0a 23 20 61 6e 64 20 63 61 6e 20 ions..# and can
0100: 62 65 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 69 6e be optionally in
0110: 63 6c 75 64 65 64 20 62 79 20 74 68 65 20 65 78 cluded by the ex
0120: 74 65 6e 73 69 6f 6e 20 6d 61 6b 65 66 69 6c 65 tension makefile
0130: 2e 0d 0a 23 20 53 65 65 20 54 49 50 20 34 37 37 ...# See TIP 477
0140: 20 28 68 74 74 70 73 3a 2f 2f 63 6f 72 65 2e 74 (https://core.t
0150: 63 6c 2d 6c 61 6e 67 2e 6f 72 67 2f 74 69 70 73 cl-lang.org/tips
0160: 2f 64 6f 63 2f 74 72 75 6e 6b 2f 74 69 70 2f 34 /doc/trunk/tip/4
0170: 37 37 2e 6d 64 29 20 66 6f 72 20 64 6f 63 73 2e 77.md) for docs.
0180: 0d 0a 0d 0a 24 28 50 52 4f 4a 45 43 54 29 3a 20 ....$(PROJECT):
0190: 73 65 74 75 70 20 70 6b 67 69 6e 64 65 78 20 24 setup pkgindex $
01a0: 28 50 52 4a 4c 49 42 29 0d 0a 0d 0a 21 69 66 64 (PRJLIB)....!ifd
01b0: 65 66 20 50 52 4a 5f 53 54 55 42 4f 42 4a 53 0d ef PRJ_STUBOBJS.
01c0: 0a 24 28 50 52 4f 4a 45 43 54 29 3a 20 24 28 50 .$(PROJECT): $(P
01d0: 52 4a 53 54 55 42 4c 49 42 29 0d 0a 24 28 50 52 RJSTUBLIB)..$(PR
01e0: 4a 53 54 55 42 4c 49 42 29 3a 20 24 28 50 52 4a JSTUBLIB): $(PRJ
01f0: 5f 53 54 55 42 4f 42 4a 53 29 0d 0a 09 24 28 4c _STUBOBJS)...$(L
0200: 49 42 43 4d 44 29 20 24 2a 2a 0d 0a 0d 0a 24 28 IBCMD) $**....$(
0210: 50 52 4a 5f 53 54 55 42 4f 42 4a 53 29 3a 0d 0a PRJ_STUBOBJS):..
0220: 09 24 28 43 43 53 54 55 42 53 43 4d 44 29 20 25 .$(CCSTUBSCMD) %
0230: 73 0d 0a 21 65 6e 64 69 66 20 23 20 50 52 4a 5f s..!endif # PRJ_
0240: 53 54 55 42 4f 42 4a 53 0d 0a 0d 0a 21 69 66 64 STUBOBJS....!ifd
0250: 65 66 20 50 52 4a 5f 4d 41 4e 49 46 45 53 54 0d ef PRJ_MANIFEST.
0260: 0a 24 28 50 52 4f 4a 45 43 54 29 3a 20 24 28 50 .$(PROJECT): $(P
0270: 52 4a 4c 49 42 29 2e 6d 61 6e 69 66 65 73 74 0d RJLIB).manifest.
0280: 0a 24 28 50 52 4a 4c 49 42 29 2e 6d 61 6e 69 66 .$(PRJLIB).manif
0290: 65 73 74 3a 20 24 28 50 52 4a 5f 4d 41 4e 49 46 est: $(PRJ_MANIF
02a0: 45 53 54 29 0d 0a 09 40 6e 6d 61 6b 65 68 6c 70 EST)...@nmakehlp
02b0: 20 2d 73 20 3c 3c 20 24 2a 2a 20 3e 24 40 0d 0a -s << $** >$@..
02c0: 40 4d 41 43 48 49 4e 45 40 09 20 20 24 28 4d 41 @MACHINE@. $(MA
02d0: 43 48 49 4e 45 3a 49 58 38 36 3d 58 38 36 29 0d CHINE:IX86=X86).
02e0: 0a 3c 3c 0d 0a 21 65 6e 64 69 66 0d 0a 0d 0a 21 .<<..!endif....!
02f0: 69 66 20 22 24 28 50 52 4f 4a 45 43 54 29 22 20 if "$(PROJECT)"
0300: 21 3d 20 22 74 63 6c 22 20 26 26 20 22 24 28 50 != "tcl" && "$(P
0310: 52 4f 4a 45 43 54 29 22 20 21 3d 20 22 74 6b 22 ROJECT)" != "tk"
0320: 0d 0a 24 28 50 52 4a 4c 49 42 29 3a 20 24 28 50 ..$(PRJLIB): $(P
0330: 52 4a 5f 4f 42 4a 53 29 20 24 28 52 45 53 46 49 RJ_OBJS) $(RESFI
0340: 4c 45 29 0d 0a 21 69 66 20 24 28 53 54 41 54 49 LE)..!if $(STATI
0350: 43 5f 42 55 49 4c 44 29 0d 0a 20 20 20 20 20 20 C_BUILD)..
0360: 20 24 28 4c 49 42 43 4d 44 29 20 24 2a 2a 0d 0a $(LIBCMD) $**..
0370: 21 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 24 28 !else.. $(
0380: 44 4c 4c 43 4d 44 29 20 24 2a 2a 0d 0a 20 20 20 DLLCMD) $**..
0390: 20 20 20 20 24 28 5f 56 43 5f 4d 41 4e 49 46 45 $(_VC_MANIFE
03a0: 53 54 5f 45 4d 42 45 44 5f 44 4c 4c 29 0d 0a 21 ST_EMBED_DLL)..!
03b0: 65 6e 64 69 66 0d 0a 20 20 20 20 20 20 20 2d 40 endif.. -@
03c0: 64 65 6c 20 24 2a 2e 65 78 70 0d 0a 21 65 6e 64 del $*.exp..!end
03d0: 69 66 0d 0a 0d 0a 21 69 66 20 22 24 28 50 52 4a if....!if "$(PRJ
03e0: 5f 48 45 41 44 45 52 53 29 22 20 21 3d 20 22 22 _HEADERS)" != ""
03f0: 20 26 26 20 22 24 28 50 52 4a 5f 4f 42 4a 53 29 && "$(PRJ_OBJS)
0400: 22 20 21 3d 20 22 22 0d 0a 24 28 50 52 4a 5f 4f " != ""..$(PRJ_O
0410: 42 4a 53 29 3a 20 24 28 50 52 4a 5f 48 45 41 44 BJS): $(PRJ_HEAD
0420: 45 52 53 29 0d 0a 21 65 6e 64 69 66 0d 0a 0d 0a ERS)..!endif....
0430: 23 20 49 66 20 70 61 72 65 6e 74 20 6d 61 6b 65 # If parent make
0440: 66 69 6c 65 20 68 61 73 20 64 65 66 69 6e 65 64 file has defined
0450: 20 73 74 75 62 20 6f 62 6a 65 63 74 73 2c 20 61 stub objects, a
0460: 64 64 20 74 68 65 69 72 20 69 6e 73 74 61 6c 6c dd their install
0470: 61 74 69 6f 6e 0d 0a 23 20 74 6f 20 74 68 65 20 ation..# to the
0480: 64 65 66 61 75 6c 74 20 69 6e 73 74 61 6c 6c 0d default install.
0490: 0a 21 69 66 20 22 24 28 50 52 4a 5f 53 54 55 42 .!if "$(PRJ_STUB
04a0: 4f 42 4a 53 29 22 20 21 3d 20 22 22 0d 0a 64 65 OBJS)" != ""..de
04b0: 66 61 75 6c 74 2d 69 6e 73 74 61 6c 6c 3a 20 64 fault-install: d
04c0: 65 66 61 75 6c 74 2d 69 6e 73 74 61 6c 6c 2d 73 efault-install-s
04d0: 74 75 62 73 0d 0a 21 65 6e 64 69 66 0d 0a 0d 0a tubs..!endif....
04e0: 23 20 55 6e 6c 69 6b 65 20 74 68 65 20 6f 74 68 # Unlike the oth
04f0: 65 72 20 64 65 66 61 75 6c 74 20 74 61 72 67 65 er default targe
0500: 74 73 2c 20 74 68 65 73 65 20 63 61 6e 6e 6f 74 ts, these cannot
0510: 20 62 65 20 69 6e 20 72 75 6c 65 73 2e 76 63 20 be in rules.vc
0520: 62 65 63 61 75 73 65 0d 0a 23 20 74 68 65 20 65 because..# the e
0530: 78 65 63 75 74 65 64 20 63 6f 6d 6d 61 6e 64 20 xecuted command
0540: 64 65 70 65 6e 64 73 20 6f 6e 20 65 78 69 73 74 depends on exist
0550: 65 6e 63 65 20 6f 66 20 6d 61 63 72 6f 20 50 52 ence of macro PR
0560: 4a 5f 48 45 41 44 45 52 53 5f 50 55 42 4c 49 43 J_HEADERS_PUBLIC
0570: 0d 0a 23 20 74 68 61 74 20 74 68 65 20 70 61 72 ..# that the par
0580: 65 6e 74 20 6d 61 6b 65 66 69 6c 65 20 77 69 6c ent makefile wil
0590: 6c 20 6e 6f 74 20 64 65 66 69 6e 65 20 75 6e 74 l not define unt
05a0: 69 6c 20 61 66 74 65 72 20 69 6e 63 6c 75 64 69 il after includi
05b0: 6e 67 20 72 75 6c 65 73 2d 65 78 74 2e 76 63 0d ng rules-ext.vc.
05c0: 0a 21 69 66 20 22 24 28 50 52 4a 5f 48 45 41 44 .!if "$(PRJ_HEAD
05d0: 45 52 53 5f 50 55 42 4c 49 43 29 22 20 21 3d 20 ERS_PUBLIC)" !=
05e0: 22 22 0d 0a 64 65 66 61 75 6c 74 2d 69 6e 73 74 ""..default-inst
05f0: 61 6c 6c 3a 20 64 65 66 61 75 6c 74 2d 69 6e 73 all: default-ins
0600: 74 61 6c 6c 2d 68 65 61 64 65 72 73 0d 0a 64 65 tall-headers..de
0610: 66 61 75 6c 74 2d 69 6e 73 74 61 6c 6c 2d 68 65 fault-install-he
0620: 61 64 65 72 73 3a 0d 0a 09 40 65 63 68 6f 20 49 aders:...@echo I
0630: 6e 73 74 61 6c 6c 69 6e 67 20 68 65 61 64 65 72 nstalling header
0640: 73 20 74 6f 20 27 24 28 49 4e 43 4c 55 44 45 5f s to '$(INCLUDE_
0650: 49 4e 53 54 41 4c 4c 5f 44 49 52 29 27 0d 0a 09 INSTALL_DIR)'...
0660: 40 66 6f 72 20 25 66 20 69 6e 20 28 24 28 50 52 @for %f in ($(PR
0670: 4a 5f 48 45 41 44 45 52 53 5f 50 55 42 4c 49 43 J_HEADERS_PUBLIC
0680: 29 29 20 64 6f 20 40 24 28 43 4f 50 59 29 20 25 )) do @$(COPY) %
0690: 66 20 22 24 28 49 4e 43 4c 55 44 45 5f 49 4e 53 f "$(INCLUDE_INS
06a0: 54 41 4c 4c 5f 44 49 52 29 22 0d 0a 21 65 6e 64 TALL_DIR)"..!end
06b0: 69 66 0d 0a 0d 0a 21 69 66 20 22 24 28 44 49 53 if....!if "$(DIS
06c0: 41 42 4c 45 5f 53 54 41 4e 44 41 52 44 5f 54 41 ABLE_STANDARD_TA
06d0: 52 47 45 54 53 29 22 20 3d 3d 20 22 22 0d 0a 44 RGETS)" == ""..D
06e0: 49 53 41 42 4c 45 5f 53 54 41 4e 44 41 52 44 5f ISABLE_STANDARD_
06f0: 54 41 52 47 45 54 53 20 3d 20 30 0d 0a 21 65 6e TARGETS = 0..!en
0700: 64 69 66 0d 0a 0d 0a 21 69 66 20 22 24 28 44 49 dif....!if "$(DI
0710: 53 41 42 4c 45 5f 54 41 52 47 45 54 5f 73 65 74 SABLE_TARGET_set
0720: 75 70 29 22 20 3d 3d 20 22 22 0d 0a 44 49 53 41 up)" == ""..DISA
0730: 42 4c 45 5f 54 41 52 47 45 54 5f 73 65 74 75 70 BLE_TARGET_setup
0740: 20 3d 20 30 0d 0a 21 65 6e 64 69 66 0d 0a 21 69 = 0..!endif..!i
0750: 66 20 22 24 28 44 49 53 41 42 4c 45 5f 54 41 52 f "$(DISABLE_TAR
0760: 47 45 54 5f 69 6e 73 74 61 6c 6c 29 22 20 3d 3d GET_install)" ==
0770: 20 22 22 0d 0a 44 49 53 41 42 4c 45 5f 54 41 52 ""..DISABLE_TAR
0780: 47 45 54 5f 69 6e 73 74 61 6c 6c 20 3d 20 30 0d GET_install = 0.
0790: 0a 21 65 6e 64 69 66 0d 0a 21 69 66 20 22 24 28 .!endif..!if "$(
07a0: 44 49 53 41 42 4c 45 5f 54 41 52 47 45 54 5f 63 DISABLE_TARGET_c
07b0: 6c 65 61 6e 29 22 20 3d 3d 20 22 22 0d 0a 44 49 lean)" == ""..DI
07c0: 53 41 42 4c 45 5f 54 41 52 47 45 54 5f 63 6c 65 SABLE_TARGET_cle
07d0: 61 6e 20 3d 20 30 0d 0a 21 65 6e 64 69 66 0d 0a an = 0..!endif..
07e0: 21 69 66 20 22 24 28 44 49 53 41 42 4c 45 5f 54 !if "$(DISABLE_T
07f0: 41 52 47 45 54 5f 74 65 73 74 29 22 20 3d 3d 20 ARGET_test)" ==
0800: 22 22 0d 0a 44 49 53 41 42 4c 45 5f 54 41 52 47 ""..DISABLE_TARG
0810: 45 54 5f 74 65 73 74 20 3d 20 30 0d 0a 21 65 6e ET_test = 0..!en
0820: 64 69 66 0d 0a 21 69 66 20 22 24 28 44 49 53 41 dif..!if "$(DISA
0830: 42 4c 45 5f 54 41 52 47 45 54 5f 73 68 65 6c 6c BLE_TARGET_shell
0840: 29 22 20 3d 3d 20 22 22 0d 0a 44 49 53 41 42 4c )" == ""..DISABL
0850: 45 5f 54 41 52 47 45 54 5f 73 68 65 6c 6c 20 3d E_TARGET_shell =
0860: 20 30 0d 0a 21 65 6e 64 69 66 0d 0a 0d 0a 21 69 0..!endif....!i
0870: 66 20 21 24 28 44 49 53 41 42 4c 45 5f 53 54 41 f !$(DISABLE_STA
0880: 4e 44 41 52 44 5f 54 41 52 47 45 54 53 29 0d 0a NDARD_TARGETS)..
0890: 21 69 66 20 21 24 28 44 49 53 41 42 4c 45 5f 54 !if !$(DISABLE_T
08a0: 41 52 47 45 54 5f 73 65 74 75 70 29 0d 0a 73 65 ARGET_setup)..se
08b0: 74 75 70 3a 20 64 65 66 61 75 6c 74 2d 73 65 74 tup: default-set
08c0: 75 70 0d 0a 21 65 6e 64 69 66 0d 0a 21 69 66 20 up..!endif..!if
08d0: 21 24 28 44 49 53 41 42 4c 45 5f 54 41 52 47 45 !$(DISABLE_TARGE
08e0: 54 5f 69 6e 73 74 61 6c 6c 29 0d 0a 69 6e 73 74 T_install)..inst
08f0: 61 6c 6c 3a 20 64 65 66 61 75 6c 74 2d 69 6e 73 all: default-ins
0900: 74 61 6c 6c 0d 0a 21 65 6e 64 69 66 0d 0a 21 69 tall..!endif..!i
0910: 66 20 21 24 28 44 49 53 41 42 4c 45 5f 54 41 52 f !$(DISABLE_TAR
0920: 47 45 54 5f 63 6c 65 61 6e 29 0d 0a 63 6c 65 61 GET_clean)..clea
0930: 6e 3a 20 64 65 66 61 75 6c 74 2d 63 6c 65 61 6e n: default-clean
0940: 0d 0a 72 65 61 6c 63 6c 65 61 6e 3a 20 68 6f 73 ..realclean: hos
0950: 65 0d 0a 68 6f 73 65 3a 20 64 65 66 61 75 6c 74 e..hose: default
0960: 2d 68 6f 73 65 0d 0a 64 69 73 74 63 6c 65 61 6e -hose..distclean
0970: 3a 20 72 65 61 6c 63 6c 65 61 6e 20 64 65 66 61 : realclean defa
0980: 75 6c 74 2d 64 69 73 74 63 6c 65 61 6e 0d 0a 21 ult-distclean..!
0990: 65 6e 64 69 66 0d 0a 21 69 66 20 21 24 28 44 49 endif..!if !$(DI
09a0: 53 41 42 4c 45 5f 54 41 52 47 45 54 5f 74 65 73 SABLE_TARGET_tes
09b0: 74 29 0d 0a 74 65 73 74 3a 20 64 65 66 61 75 6c t)..test: defaul
09c0: 74 2d 74 65 73 74 0d 0a 21 65 6e 64 69 66 0d 0a t-test..!endif..
09d0: 21 69 66 20 21 24 28 44 49 53 41 42 4c 45 5f 54 !if !$(DISABLE_T
09e0: 41 52 47 45 54 5f 73 68 65 6c 6c 29 0d 0a 73 68 ARGET_shell)..sh
09f0: 65 6c 6c 3a 20 64 65 66 61 75 6c 74 2d 73 68 65 ell: default-she
0a00: 6c 6c 0d 0a 21 65 6e 64 69 66 0d 0a 21 65 6e 64 ll..!endif..!end
0a10: 69 66 20 23 20 44 49 53 41 42 4c 45 5f 53 54 41 if # DISABLE_STA
0a20: 4e 44 41 52 44 5f 54 41 52 47 45 54 53 0d 0a NDARD_TARGETS..