Lines Matching +full:pre +full:- +full:set
23 INSTALL.noexec = $(INSTALL) -m 0644
55 # Input filename for tcl::tm-style module
57 # Target filename for tcl::tm-style installation
58 tx.tm.tgt = $(tx.name.pkg)-$(tx.version).tm
74 # Autotools-conventional vars. We don't actually use these in this
115 # CFLAGS.configure = CFLAGS as known at configure-time.
118 # [teaish-cflags-add] should preceed CFLAGS and CPPFLAGS (which
119 # typically come from the ./configure command-line invocation).
122 #CFLAGS.configure += -DUSE_TCL_STUBS=1
125 # LDFLAGS.configure = LDFLAGS as known at configure-time.
128 # [teaish-ldflags-add] should precede LDFLAGS (which typically
129 # comes from the ./configure command-line invocation).
146 # sources passed to [teaish-src-add], but may also be appended to by
152 # tx.CFLAGS is typically set by teaish.make, whereas TEAISH_CFLAGS
153 # gets set up via the configure script.
158 # tx.LDFLAGS is typically set by teaish.make, whereas TEAISH_LDFLAGS
159 # gets set up via the configure script.
165 # It can also be set up from teaish.tcl using [teaish-dist-add]
166 # and/or [teaish-src-add -dist ...].
170 # List of deps which may trigger an auto-reconfigure.
193 # no POSIX Make-portable way to do that. GNU Make can.
208 # CC variant for compiling Tcl-using sources.
211 $(CC) -o $@ $(CFLAGS.configure) $(CFLAGS) $(tx.CFLAGS)
215 # $(tx.src) must come before $(LDFLAGS...) for linking to third-party
245 .PHONY: test-pre test-prepre test-core test test-post test-extension
246 test-extension: # this name is reserved for use by teaish.make[.in]
248 test-prepre: $(tx.dll)
251 test-core.args = @TEAISH_TESTER_TCL@
253 test-core.args += '$(tx.dll)' '$(tx.loadPrefix)'
255 test-core.args += '' ''
257 test-core.args += @TEAISH_TESTUTIL_TCL@
258 test-core: test-pre
259 $(TCLSH) $(test-core.args)
260 test-prepre: @TEAISH_TESTER_TCL@
262 test-prepre:
264 test-pre: test-prepre
265 test-core: test-pre
266 test-post: test-core
267 test: test-post
272 #.PHONY: clean-pre clean-core clean-post clean-extension
274 clean-pre:
275 clean-core: clean-pre
276 rm -f $(tx.dll8) $(tx.dll9) tclsh
277 clean-post: clean-core
278 clean: clean-post
280 .PHONY: distclean-pre distclean-core distclean-post clean-extension
281 distclean-pre: clean
282 distclean-core: distclean-pre
283 rm -f Makefile
284 rm -f config.log config.defines.txt
287 rm -f @TEAISH_MAKEFILE@
291 rm -f @TEAISH_TESTER_TCL@
294 rm -f @TEAISH_PKGINDEX_TCL@
297 rm -f @TEAISH_PKGINIT_TCL@
300 rm -f @TEAISH_TEST_TCL@
302 distclean-post: distclean-core
303 distclean: distclean-post
305 # The (dist)clean-extension targets are reserved for use by
306 # client-side teaish.make.
309 # adding their cleanup target (e.g. clean-extension) as a dependency
312 # clean: distclean-extension
313 # distclean: distclean-extension
315 distclean-extension:
316 clean-extension:
322 .PHONY: install-pre install-core install-post install-test install-prepre install-extension
323 install-extension: # this name is reserved for use by teaish.make
326 install-prepre: $(tx.dll)
328 install-prepre:
332 install-core.tmdir = $(DESTDIR)@TEAISH_TCL_TM_DIR@
335 install-pre: install-prepre
336 install-core: install-pre
337 @if [ ! -d "$(DESTDIR)$(TCLLIBDIR)" ]; then \
338 set -x; $(INSTALL) -d "$(DESTDIR)$(TCLLIBDIR)"; \
340 # ^^^^ on some platforms, install -d fails if the target already exists.
351 @if [ ! -d "$(install-core.tmdir)" ]; then \
352 set -x; $(INSTALL) -d "$(install-core.tmdir)"; \
354 $(INSTALL.noexec) "@TEAISH_TM_TCL@" "$(install-core.tmdir)/$(tx.tm.tgt)"
356 install-test: install-core
357 @echo "Post-install test of [package require $(tx.name.pkg) $(tx.version)]..."; \
359 'set c 0; ' \
369 install-post: install-test
370 install: install-post
375 .PHONY: uninstall uninstall-pre uninstall-core uninstall-post uninstall-extension
376 uninstall-extension: # this name is reserved for use by teaish.make
377 uninstall-pre:
378 uninstall-core: uninstall-pre
380 rm -fr "$(DESTDIR)$(TCLLIBDIR)"
383 rm -f "$(DESTDIR)$(install-core.tmdir)/$(tx.tm.tgt)"
386 uninstall-post: uninstall-core
388 uninstall: uninstall-post
405 # must not pass on any extension-specific flags, as those won't be
406 # recognized when running in --teaish-install mode, causing
407 # the sub-configure to fail.
408 dist.flags = --with-tclsh=$(TCLSH)
417 dist.basename = $(tx.name.dist)-$(tx.version)
419 .PHONY: dist.zip dist.zip-core dist.zip-post
420 #dist.zip-pre:
421 # We apparently can't add a pre-hook here, else "make dist" rebuilds
424 @rm -fr $(teaish__dist.tmp.zip)
425 @mkdir -p $(teaish__dist.tmp.zip)/$(dist.basename)
427 @tar xf $(teaish__dist.tmp.zip)/tmp.tar -C $(teaish__dist.tmp.zip)/$(dist.basename)
430 --teaish-install=$(teaish__dist.tmp.zip)/$(dist.basename) \
431 --t-e-d=$(teaish__dist.tmp.zip)/$(dist.basename) >/dev/null
433 @rm -f $(dist.basename)/tmp.tar $(dist.zip)
434 @cd $(teaish__dist.tmp.zip) && zip -q -r ../$(dist.zip) $(dist.basename)
435 @rm -fr $(teaish__dist.tmp.zip)
436 @ls -la $(dist.zip)
437 dist.zip-core: $(dist.zip)
438 dist.zip-post: dist.zip-core
439 dist.zip: dist.zip-post
441 undist-zip:
442 rm -f $(dist.zip)
443 undist: undist-zip
451 .PHONY: dist.tgz dist.tgz-core dist.tgz-post
452 # dist.tgz-pre:
455 @rm -fr $(teaish__dist.tmp.tgz)
456 @mkdir -p $(teaish__dist.tmp.tgz)/$(dist.basename)
458 @tar xf $(teaish__dist.tmp.tgz)/tmp.tar -C $(teaish__dist.tmp.tgz)/$(dist.basename)
460 @rm -f $(teaish__dist.tmp.tgz)/$(dist.basename)/pkgIndex.tcl.in; # kludge
462 --teaish-install=$(teaish__dist.tmp.tgz)/$(dist.basename) \
463 --t-e-d=$(teaish__dist.tmp.zip)/$(dist.basename) >/dev/null
465 @rm -f $(dist.basename)/tmp.tar $(dist.tgz)
467 @rm -fr $(teaish__dist.tmp.tgz)
468 @ls -la $(dist.tgz)
469 dist.tgz-core: $(dist.tgz)
470 dist.tgz-post: dist.tgz-core
471 dist.tgz: dist.tgz-post
473 undist-tgz:
474 rm -f $(dist.tgz)
475 undist: undist-tgz
495 # ...] or use [teaish-make-add] to incrementally build up this
505 # TEAISH_MAKEFILE[_IN] defines any extension-specific state this file
508 # It must set the following vars if they're not already accounted for
511 # - tx.src = list of the extension's source files, being sure to
513 # extension) so that out-of-tree builds can find them. Optionally,
514 # [define] TEAISH_EXT_SRC or pass them to [teaish-src-add].
516 # It may optionally set the following vars:
518 # - tx.CFLAGS = CFLAGS/CPPFLAGS. Optionally, [define] TEAISH_CFLAGS
519 # or pass them to [teaish-cflags-add].
521 # - tx.LDFLAGS = LDFLAGS. Optionally, [define] TEAISH_LDFLAGS or
522 # pass them to [teaish-ldflags-add].
527 # Interestingly, we don't have to pre-filter teaish.makefile.in - we
528 # can just @include it here. That skips its teaish-specific validation