Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch buildtools Excluding Merge-Ins
This is equivalent to a diff from 0b0783b9 to 4567b082
2019-05-16
| ||
09:18 | Merge 8.6 check-in: faf08b52 user: jan.nijtmans tags: trunk | |
2019-05-15
| ||
09:10 | Merge trunk check-in: 8610cbc5 user: jan.nijtmans tags: revised_text, tip-466 | |
08:15 | Continue "buildtools" branch for Pour Yorick. At least, the script should be re-written for Tcl 8.5, see [94eeb111fb96676c]. Closed-Leaf check-in: 4567b082 user: jan.nijtmans tags: buildtools | |
07:52 | sync rules.vc and tcl.m4 (both win and unix) with Tcl version check-in: 0b0783b9 user: jan.nijtmans tags: trunk | |
07:16 | Fix [94eeb111fb]: macos, linux: configuration: unable to build using trunk. For now by reverting [a9c9a75b5ba1f4a6]. check-in: b33f01c8 user: jan.nijtmans tags: trunk | |
Changes to unix/Makefile.in.
︙ | ︙ | |||
96 97 98 99 100 101 102 | # Directory in which to install the demo files: DEMO_INSTALL_DIR = $(INSTALL_ROOT)@DEMO_DIR@ # The directory containing the Tcl sources and headers appropriate # for this version of Tk ("srcdir" will be replaced or has already # been replaced by the configure script): | | | | 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | # Directory in which to install the demo files: DEMO_INSTALL_DIR = $(INSTALL_ROOT)@DEMO_DIR@ # The directory containing the Tcl sources and headers appropriate # for this version of Tk ("srcdir" will be replaced or has already # been replaced by the configure script): TCL_GENERIC_DIR = @TCL_ACTUAL_SRC_DIR@/generic # The directory containing the platform specific Tcl sources and headers # appropriate for this version of Tk: TCL_PLATFORM_DIR = @TCL_ACTUAL_SRC_DIR@/unix # The directory containing the Tcl library archive file appropriate # for this version of Tk: TCL_BIN_DIR = @TCL_BIN_DIR@ # The linker flags needed to link in the Tcl library (ex: -ltcl8.2) TCL_LIB_FLAG = @TCL_LIB_FLAG@ |
︙ | ︙ | |||
306 307 308 309 310 311 312 | RANLIB = @RANLIB@ SRC_DIR = @srcdir@ TOP_DIR = $(SRC_DIR)/.. GENERIC_DIR = $(TOP_DIR)/generic TTK_DIR = $(GENERIC_DIR)/ttk UNIX_DIR = $(TOP_DIR)/unix BMAP_DIR = $(TOP_DIR)/bitmaps | | | 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 | RANLIB = @RANLIB@ SRC_DIR = @srcdir@ TOP_DIR = $(SRC_DIR)/.. GENERIC_DIR = $(TOP_DIR)/generic TTK_DIR = $(GENERIC_DIR)/ttk UNIX_DIR = $(TOP_DIR)/unix BMAP_DIR = $(TOP_DIR)/bitmaps TOOL_DIR = @TCL_ACTUAL_SRC_DIR@/tools TEST_DIR = $(TOP_DIR)/tests MAC_OSX_DIR = $(TOP_DIR)/macosx XLIB_DIR = $(TOP_DIR)/xlib #---------------------------------------------------------------- # The information below should be usable as is. The configure # script won't modify it and you shouldn't need to modify it |
︙ | ︙ | |||
565 566 567 568 569 570 571 | $(TTK_HDRS) $(@TK_WINDOWINGSYSTEM@_PRIVATE_HDRS) DEMOPROGS = browse hello ixset rmt rolodex square tcolor timer widget SHELL_ENV = \ @LD_LIBRARY_PATH_VAR@="`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}"; \ export @LD_LIBRARY_PATH_VAR@; \ | | | | 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 | $(TTK_HDRS) $(@TK_WINDOWINGSYSTEM@_PRIVATE_HDRS) DEMOPROGS = browse hello ixset rmt rolodex square tcolor timer widget SHELL_ENV = \ @LD_LIBRARY_PATH_VAR@="`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}"; \ export @LD_LIBRARY_PATH_VAR@; \ TCL_LIBRARY=@TCL_ACTUAL_SRC_DIR@/library; export TCL_LIBRARY; \ TK_LIBRARY=@TK_SRC_DIR@/library; export TK_LIBRARY; all: binaries libraries doc binaries: ${LIB_FILE} ${WISH_EXE} libraries: $(TOP_DIR)/doc/man.macros: $(INSTALL_DATA) $(TCLDIR)/doc/man.macros $(TOP_DIR)/doc/man.macros doc: $(TOP_DIR)/doc/man.macros # The following target is configured by autoconf to generate either # a shared library or non-shared library for Tk. ${LIB_FILE}: ${STUB_LIB_FILE} @LIB_RSRC_FILE@ ${OBJS} rm -f $@ |
︙ | ︙ | |||
681 682 683 684 685 686 687 | demo: $(SHELL_ENV) ./${WISH_EXE} $(TOP_DIR)/library/demos/widget # This target can be used to run wish inside either gdb or insight gdb: ${WISH_EXE} @echo "set env @LD_LIBRARY_PATH_VAR@=\"`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run | | | 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 | demo: $(SHELL_ENV) ./${WISH_EXE} $(TOP_DIR)/library/demos/widget # This target can be used to run wish inside either gdb or insight gdb: ${WISH_EXE} @echo "set env @LD_LIBRARY_PATH_VAR@=\"`pwd`:${TCL_BIN_DIR}:$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run @echo "set env TCL_LIBRARY=@TCL_ACTUAL_SRC_DIR@/library" >> gdb.run @echo "set env TK_LIBRARY=@TK_SRC_DIR@/library" >> gdb.run gdb ./${WISH_EXE} --command=gdb.run rm gdb.run VALGRINDARGS=--tool=memcheck --num-callers=8 --leak-resolution=high --leak-check=yes --show-reachable=yes -v valgrind: $(TKTEST_EXE) |
︙ | ︙ | |||
1562 1563 1564 1565 1566 1567 1568 | # to put the distribution. DISTDIR must be an absolute path name. # DISTROOT = /tmp/dist DISTNAME = tk${VERSION}${PATCH_LEVEL} ZIPNAME = tk${MAJOR_VERSION}${MINOR_VERSION}${PATCH_LEVEL}-src.zip DISTDIR = $(DISTROOT)/$(DISTNAME) | | | 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 | # to put the distribution. DISTDIR must be an absolute path name. # DISTROOT = /tmp/dist DISTNAME = tk${VERSION}${PATCH_LEVEL} ZIPNAME = tk${MAJOR_VERSION}${MINOR_VERSION}${PATCH_LEVEL}-src.zip DISTDIR = $(DISTROOT)/$(DISTNAME) TCLDIR = @TCL_ACTUAL_SRC_DIR@ DIST_INSTALL_DATA = CPPROG='cp -p' $(INSTALL) -m 644 DIST_INSTALL_SCRIPT = CPPROG='cp -p' $(INSTALL) -m 755 $(UNIX_DIR)/configure: $(UNIX_DIR)/configure.ac $(UNIX_DIR)/tcl.m4 \ $(UNIX_DIR)/aclocal.m4 cd $(UNIX_DIR); autoconf $(MAC_OSX_DIR)/configure: $(MAC_OSX_DIR)/configure.ac $(UNIX_DIR)/configure |
︙ | ︙ | |||
1719 1720 1721 1722 1723 1724 1725 | @EXTRA_BUILD_HTML@ BUILD_HTML = \ @if test -f "$(BUILD_TCLSH)"; then \ $(SHELL_ENV) TCLSH="$(BUILD_TCLSH)"; else \ TCLSH="$(TCL_EXE)"; fi ;\ "$${TCLSH}" $(TOOL_DIR)/tcltk-man2html.tcl --htmldir="$(HTML_INSTALL_DIR)" \ | | | 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 | @EXTRA_BUILD_HTML@ BUILD_HTML = \ @if test -f "$(BUILD_TCLSH)"; then \ $(SHELL_ENV) TCLSH="$(BUILD_TCLSH)"; else \ TCLSH="$(TCL_EXE)"; fi ;\ "$${TCLSH}" $(TOOL_DIR)/tcltk-man2html.tcl --htmldir="$(HTML_INSTALL_DIR)" \ --tk --srcdir=$(TOP_DIR) $(BUILD_HTML_FLAGS) # # The list of all the targets that do not correspond to real files. This stops # 'make' from getting confused when someone makes an error in a rule. # .PHONY: all binaries libraries objs doc html html-tcl html-tk test runtest |
︙ | ︙ |
Changes to unix/configure.
︙ | ︙ | |||
705 706 707 708 709 710 711 | EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC MAN_FLAGS | < < > > > > > | 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 | EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC MAN_FLAGS TCL_STUB_LIB_SPEC TCL_STUB_LIB_FLAG TCL_STUB_LIB_FILE TCL_LIB_SPEC TCL_LIB_FLAG TCL_LIB_FILE TCL_SRC_DIR TCL_BIN_DIR TCL_PATCH_LEVEL TCL_VERSION TCL_ACTUAL_SRC_DIR TCL_SOURCE_MINOR_VERSION TCL_SOURCE_MAJOR_VERSION BUILD_TCLSH TCLSH_PROG target_alias host_alias build_alias LIBS ECHO_T ECHO_N ECHO_C |
︙ | ︙ | |||
2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 | VERSION=${TK_VERSION} LOCALES="cs da de el en en_gb eo es fr hu it nl pl pt ru sv" #-------------------------------------------------------------------- # Find and load the tclConfig.sh file #-------------------------------------------------------------------- # # Ok, lets find the tcl configuration # First, look for one uninstalled. # the alternative search directory is invoked by --with-tcl # | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 | VERSION=${TK_VERSION} LOCALES="cs da de el en en_gb eo es fr hu it nl pl pt ru sv" #-------------------------------------------------------------------- # Find and load the tclConfig.sh file #-------------------------------------------------------------------- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tclsh" >&5 $as_echo_n "checking for tclsh... " >&6; } if ${ac_cv_path_tclsh+:} false; then : $as_echo_n "(cached) " >&6 else search_path=`echo ${PATH} | sed -e 's/:/ /g'` for dir in $search_path ; do for j in `ls -r $dir/tclsh[8-9]* 2> /dev/null` \ `ls -r $dir/tclsh* 2> /dev/null` ; do if test x"$ac_cv_path_tclsh" = x ; then if test -f "$j" ; then ac_cv_path_tclsh=$j break fi fi done done fi if test -f "$ac_cv_path_tclsh" ; then TCLSH_PROG="$ac_cv_path_tclsh" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TCLSH_PROG" >&5 $as_echo "$TCLSH_PROG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: No tclsh avaliable" >&5 $as_echo "No tclsh avaliable" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tclsh in Tcl build directory" >&5 $as_echo_n "checking for tclsh in Tcl build directory... " >&6; } BUILD_TCLSH="${TCL_BIN_DIR}"/tclsh { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BUILD_TCLSH" >&5 $as_echo "$BUILD_TCLSH" >&6; } # # Ok, lets find the tcl configuration # First, look for one uninstalled. # the alternative search directory is invoked by --with-tcl # |
︙ | ︙ | |||
2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 | # eval is required to do the TCL_DBGX substitution eval "TCL_LIB_FLAG=\"${TCL_LIB_FLAG}\"" eval "TCL_LIB_SPEC=\"${TCL_LIB_SPEC}\"" eval "TCL_STUB_LIB_FLAG=\"${TCL_STUB_LIB_FLAG}\"" eval "TCL_STUB_LIB_SPEC=\"${TCL_STUB_LIB_SPEC}\"" | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 | # eval is required to do the TCL_DBGX substitution eval "TCL_LIB_FLAG=\"${TCL_LIB_FLAG}\"" eval "TCL_LIB_SPEC=\"${TCL_LIB_SPEC}\"" eval "TCL_STUB_LIB_FLAG=\"${TCL_STUB_LIB_FLAG}\"" eval "TCL_STUB_LIB_SPEC=\"${TCL_STUB_LIB_SPEC}\"" TCL_ACTUAL_SRC_DIR=` <<-'EOF' "$TCLSH_PROG" - "$srcdir" "$TCL_SRC_DIR" \ "$TCL_MAJOR_VERSION" "$TCL_MINOR_VERSION" proc cat fname { set chan [open $fname] try { read $chan } finally { close $chan } } proc main {argv0 argv} { try { lassign $argv -> srcdir tcl_src_dir majortarget minortarget lappend candidates $tcl_src_dir set srcdir [file dirname [file normalize $srcdir/...]] set topsrcdir [file dirname $srcdir] set sources [file dirname $topsrcdir] foreach dirname [glob -nocomplain -directory $sources *] { if {$dirname ni $candidates} { lappend candidates $dirname } } foreach candidate $candidates { set res [check $candidate $majortarget $minortarget] if {$res eq {}} continue else { puts -nonewline $res break } } set status 0 } on error {tres topts} { puts stderr [dict get $topts -errorinfo] set status 1 } exit $status } proc check {candidate majortarget minortarget} { set tclh $candidate/generic/tcl.h if {![file exists $tclh]} { return {} } set version [tclhversion [cat $tclh]] if {[llength $version]} { lassign $version major minor if {[package vcompare $major.$minor \ $majortarget.$minortarget] >= 0} { return [list $candidate $major $minor] } } return {} } proc tclhversion data { if {[regexp -line {^#define\s+_TCL} $data]} { if {[ regexp -line {^#define\s+TCL_VERSION\s+\"([^.])+\.([^.\"]+)} \ $data -> major minor ]} { return [list $major $minor] } } return {} } main $argv0 $argv EOF ` if test "x${TCL_ACTUAL_SRC_DIR}" = x; then as_fn_error $? "could not find Tcl sources" "$LINENO" 5 else TCL_SOURCE_MAJOR_VERSION=` <<-'EOF' "$TCLSH_PROG" - "$TCL_ACTUAL_SRC_DIR " "1" proc main {argv0 argv} { try { lassign $argv -> list index puts -nonewline [lindex $list $index] set status 0 } on error {tres topts} { puts stderr [dict get $topts -errorinfo] set status 1 } exit $status } main $argv0 $argv EOF ` TCL_SOURCE_MINOR_VERSION=` <<-'EOF' "$TCLSH_PROG" - "$TCL_ACTUAL_SRC_DIR " "2" proc main {argv0 argv} { try { lassign $argv -> list index puts -nonewline [lindex $list $index] set status 0 } on error {tres topts} { puts stderr [dict get $topts -errorinfo] set status 1 } exit $status } main $argv0 $argv EOF ` TCL_ACTUAL_SRC_DIR=` <<-'EOF' "$TCLSH_PROG" - "$TCL_ACTUAL_SRC_DIR " "0" proc main {argv0 argv} { try { lassign $argv -> list index puts -nonewline [lindex $list $index] set status 0 } on error {tres topts} { puts stderr [dict get $topts -errorinfo] set status 1 } exit $status } main $argv0 $argv EOF ` fi |
︙ | ︙ | |||
2505 2506 2507 2508 2509 2510 2511 | Found config for Tcl ${TCL_VERSION}" "$LINENO" 5 fi if test "${TCL_MINOR_VERSION}" -lt 6 ; then as_fn_error $? "${PACKAGE_NAME} ${PACKAGE_VERSION} requires Tcl 8.6+ Found config for Tcl ${TCL_VERSION}" "$LINENO" 5 fi fi | < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < | 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 | Found config for Tcl ${TCL_VERSION}" "$LINENO" 5 fi if test "${TCL_MINOR_VERSION}" -lt 6 ; then as_fn_error $? "${PACKAGE_NAME} ${PACKAGE_VERSION} requires Tcl 8.6+ Found config for Tcl ${TCL_VERSION}" "$LINENO" 5 fi fi #------------------------------------------------------------------------ # Handle the --prefix=... option #------------------------------------------------------------------------ if test "${prefix}" = "NONE"; then |
︙ | ︙ |
Changes to unix/configure.ac.
︙ | ︙ | |||
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | TK_PATCH_LEVEL="a2" VERSION=${TK_VERSION} LOCALES="cs da de el en en_gb eo es fr hu it nl pl pt ru sv" #-------------------------------------------------------------------- # Find and load the tclConfig.sh file #-------------------------------------------------------------------- SC_PATH_TCLCONFIG SC_LOAD_TCLCONFIG if test "${TCL_MAJOR_VERSION}" -lt 9 ; then if test "${TCL_MAJOR_VERSION}" -ne 8 ; then AC_MSG_ERROR([${PACKAGE_NAME} ${PACKAGE_VERSION} requires Tcl 8.6+ Found config for Tcl ${TCL_VERSION}]) fi if test "${TCL_MINOR_VERSION}" -lt 6 ; then AC_MSG_ERROR([${PACKAGE_NAME} ${PACKAGE_VERSION} requires Tcl 8.6+ Found config for Tcl ${TCL_VERSION}]) fi fi | > > < < | 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | TK_PATCH_LEVEL="a2" VERSION=${TK_VERSION} LOCALES="cs da de el en en_gb eo es fr hu it nl pl pt ru sv" #-------------------------------------------------------------------- # Find and load the tclConfig.sh file #-------------------------------------------------------------------- SC_PROG_TCLSH SC_BUILD_TCLSH SC_PATH_TCLCONFIG SC_LOAD_TCLCONFIG if test "${TCL_MAJOR_VERSION}" -lt 9 ; then if test "${TCL_MAJOR_VERSION}" -ne 8 ; then AC_MSG_ERROR([${PACKAGE_NAME} ${PACKAGE_VERSION} requires Tcl 8.6+ Found config for Tcl ${TCL_VERSION}]) fi if test "${TCL_MINOR_VERSION}" -lt 6 ; then AC_MSG_ERROR([${PACKAGE_NAME} ${PACKAGE_VERSION} requires Tcl 8.6+ Found config for Tcl ${TCL_VERSION}]) fi fi #------------------------------------------------------------------------ # Handle the --prefix=... option #------------------------------------------------------------------------ if test "${prefix}" = "NONE"; then prefix="$TCL_PREFIX" |
︙ | ︙ |
Changes to unix/tcl.m4.
︙ | ︙ | |||
331 332 333 334 335 336 337 338 339 340 341 342 343 344 | fi # eval is required to do the TCL_DBGX substitution eval "TCL_LIB_FLAG=\"${TCL_LIB_FLAG}\"" eval "TCL_LIB_SPEC=\"${TCL_LIB_SPEC}\"" eval "TCL_STUB_LIB_FLAG=\"${TCL_STUB_LIB_FLAG}\"" eval "TCL_STUB_LIB_SPEC=\"${TCL_STUB_LIB_SPEC}\"" AC_SUBST(TCL_VERSION) AC_SUBST(TCL_PATCH_LEVEL) AC_SUBST(TCL_BIN_DIR) AC_SUBST(TCL_SRC_DIR) AC_SUBST(TCL_LIB_FILE) | > > | 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 | fi # eval is required to do the TCL_DBGX substitution eval "TCL_LIB_FLAG=\"${TCL_LIB_FLAG}\"" eval "TCL_LIB_SPEC=\"${TCL_LIB_SPEC}\"" eval "TCL_STUB_LIB_FLAG=\"${TCL_STUB_LIB_FLAG}\"" eval "TCL_STUB_LIB_SPEC=\"${TCL_STUB_LIB_SPEC}\"" SC_TCL_FIND_SOURCES() AC_SUBST(TCL_VERSION) AC_SUBST(TCL_PATCH_LEVEL) AC_SUBST(TCL_BIN_DIR) AC_SUBST(TCL_SRC_DIR) AC_SUBST(TCL_LIB_FILE) |
︙ | ︙ | |||
428 429 430 431 432 433 434 435 436 437 438 439 440 441 | AC_SUBST(TK_LIB_SPEC) AC_SUBST(TK_STUB_LIB_FILE) AC_SUBST(TK_STUB_LIB_FLAG) AC_SUBST(TK_STUB_LIB_SPEC) ]) #------------------------------------------------------------------------ # SC_PROG_TCLSH # Locate a tclsh shell installed on the system path. This macro # will only find a Tcl shell that already exists on the system. # It will not find a Tcl shell in the Tcl build directory or # a Tcl shell that has been installed from the Tcl build directory. # If a Tcl shell can't be located on the PATH, then TCLSH_PROG will | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 | AC_SUBST(TK_LIB_SPEC) AC_SUBST(TK_STUB_LIB_FILE) AC_SUBST(TK_STUB_LIB_FLAG) AC_SUBST(TK_STUB_LIB_SPEC) ]) #------------------------------------------------------------------------ # SC_TCL_FIND_SOURCES # Find a directory containing Tcl sources that match the version required by # tclConfig.sh. The sources indicated by tclConfig.sh are preferred. # # Arguments: # none # # Results: # Substitutes the following vars: # TCL_SOURCE_MAJOR_VERSION # TCL_SOURCE_MINOR_VERSION # TCL_ACTUAL_SRC_DIR #------------------------------------------------------------------------ AC_DEFUN([SC_TCL_FIND_SOURCES],[ [TCL_ACTUAL_SRC_DIR=` <<-'EOF' "$TCLSH_PROG" - "$srcdir" "$TCL_SRC_DIR" \ "$TCL_MAJOR_VERSION" "$TCL_MINOR_VERSION" proc cat fname { set chan [open $fname] try { read $chan } finally { close $chan } } proc main {argv0 argv} { try { lassign $argv -> srcdir tcl_src_dir majortarget minortarget lappend candidates $tcl_src_dir set srcdir [file dirname [file normalize $srcdir/...]] set topsrcdir [file dirname $srcdir] set sources [file dirname $topsrcdir] foreach dirname [glob -nocomplain -directory $sources *] { if {$dirname ni $candidates} { lappend candidates $dirname } } foreach candidate $candidates { set res [check $candidate $majortarget $minortarget] if {$res eq {}} continue else { puts -nonewline $res break } } set status 0 } on error {tres topts} { puts stderr [dict get $topts -errorinfo] set status 1 } exit $status } proc check {candidate majortarget minortarget} { set tclh $candidate/generic/tcl.h if {![file exists $tclh]} { return {} } set version [tclhversion [cat $tclh]] if {[llength $version]} { lassign $version major minor if {[package vcompare $major.$minor \ $majortarget.$minortarget] >= 0} { return [list $candidate $major $minor] } } return {} } proc tclhversion data { if {[regexp -line {^#define\s+_TCL} $data]} { if {[ regexp -line {^#define\s+TCL_VERSION\s+\"([^.])+\.([^.\"]+)} \ $data -> major minor ]} { return [list $major $minor] } } return {} } main $argv0 $argv EOF ] ` if test "x${TCL_ACTUAL_SRC_DIR}" = x; then AC_MSG_ERROR([could not find Tcl sources]) else TCL_SOURCE_MAJOR_VERSION=SC_TCL_LINDEX([$TCL_ACTUAL_SRC_DIR] ,1) AC_SUBST(TCL_SOURCE_MAJOR_VERSION) TCL_SOURCE_MINOR_VERSION=SC_TCL_LINDEX([$TCL_ACTUAL_SRC_DIR] ,2) AC_SUBST(TCL_SOURCE_MINOR_VERSION) TCL_ACTUAL_SRC_DIR=SC_TCL_LINDEX([$TCL_ACTUAL_SRC_DIR] ,0) AC_SUBST(TCL_ACTUAL_SRC_DIR) fi ]) #------------------------------------------------------------------------ # SC_TCL_LINDEX #------------------------------------------------------------------------ AC_DEFUN([SC_TCL_LINDEX], [[` <<-'EOF' "$TCLSH_PROG" - "$1" "$2" proc main {argv0 argv} { try { lassign $argv -> list index puts -nonewline [lindex $list $index] set status 0 } on error {tres topts} { puts stderr [dict get $topts -errorinfo] set status 1 } exit $status } main $argv0 $argv EOF ` ]] ) #------------------------------------------------------------------------ # SC_PROG_TCLSH # Locate a tclsh shell installed on the system path. This macro # will only find a Tcl shell that already exists on the system. # It will not find a Tcl shell in the Tcl build directory or # a Tcl shell that has been installed from the Tcl build directory. # If a Tcl shell can't be located on the PATH, then TCLSH_PROG will |
︙ | ︙ | |||
469 470 471 472 473 474 475 | done ]) if test -f "$ac_cv_path_tclsh" ; then TCLSH_PROG="$ac_cv_path_tclsh" AC_MSG_RESULT([$TCLSH_PROG]) else | < < | | 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 | done ]) if test -f "$ac_cv_path_tclsh" ; then TCLSH_PROG="$ac_cv_path_tclsh" AC_MSG_RESULT([$TCLSH_PROG]) else AC_MSG_RESULT([No tclsh avaliable]) fi AC_SUBST(TCLSH_PROG) ]) #------------------------------------------------------------------------ # SC_BUILD_TCLSH # Determine the fully qualified path name of the tclsh executable |
︙ | ︙ |