Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch stu-pkgIndex2 Excluding Merge-Ins
This is equivalent to a diff from c5f7bcffcb to 8d7e50c2f8
2018-01-05
| ||
05:52 | Merge stu-pkgIndex2. Implements a solution for when the shared object and the pkgIndex.tcl reside in different dirs during build/test. Fixes [625f0ee464]. check-in: 2386d26cfb user: stu tags: trunk | |
05:38 | Merge trunk. Closed-Leaf check-in: 8d7e50c2f8 user: stu tags: stu-pkgIndex2 | |
2018-01-04
| ||
08:39 | Use INSTALL_* and new DIST_INSTALL_* macros to make dist. Align with latest TEA. check-in: 8886c1d546 user: stu tags: trunk | |
2017-12-17
| ||
16:13 |
Another way:
Have pkgIndex.tcl make use of TDBC_LIBRARY. This is better than mangling the pkgIndex.tcl on install. check-in: daa7ace8b7 user: stu tags: stu-pkgIndex2 | |
2017-12-16
| ||
23:03 |
When testing (against) tdbc in the build dir,
tdbc.tcl is presumed found in $srcdir/library,
not in the same dir as the built shared object.
When testing against an installed tdbc, tdbc.tcl is presumed found in the same dir as the shared object. This makes the pkgIndex.tcl in the build dir unusable for testing. Makefile targets affected: test, shell, gdb, valgrind, etc. This can be a problem for other extensions as well. One solution has been to have a [package ifneeded script] generated and used by the Makefile. This is a bit messy and is needed for all affected targets. Extensions building against tdbc would also have to act accordingly, which can be argued is not their responsibility. This solution uses a pkgIndex.tcl that looks for tdbc.tcl in $srcdir/library. The $srcdir/library path is stripped-out when pkgIndex.tcl is installed. With this in place, [package require] simply works. It is, admittedly, a bit ugly but I think it's the better than: - Use two pkgIndex.tcl files: one to use when testing and one to install. - The original method: copy file(s) from the library dir into the build dir and remember to clean them up. The implementation on this branch also removes the extra copying and cleaning-up of tdbc.tcl, which is no longer necessary. This has been done in this branch for tdbc. The tdbc-* extensions building against tdbc would simply have to add $(TDBC_BIN_DIR) to the existing $(TCLLIBPATH) in their Makefiles to work with this new scheme. This has been done in this branch for tdbc-*. The remaining tdbc-* Makefile targets (shell, gdb, valgrind, etc.) remain broken but can be fixed as was done with tdbc. Closed-Leaf check-in: c5f7bcffcb user: stu tags: stu-pkgIndex | |
01:14 | Move tdbc.tcl to its own target. Add tdbc.tcl to BINARIES to ensure it gets copied once during build and removed with "make clean". Fixes [625f0ee464]. check-in: 239b87734b user: stu tags: trunk | |
Added .fossil-settings/crlf-glob.
> | 1 | win/*.vc |
Changes to Makefile.in.
︙ | ︙ | |||
304 305 306 307 308 309 310 311 312 313 314 315 | #======================================================================== #COMPRESS = tar cvf $(PKG_DIR).tar $(PKG_DIR); compress $(PKG_DIR).tar COMPRESS = tar zcvf $(PKG_DIR).tar.gz $(PKG_DIR) DIST_ROOT = /tmp/dist DIST_DIR = $(DIST_ROOT)/$(PKG_DIR) dist-clean: rm -rf $(DIST_DIR) $(DIST_ROOT)/$(PKG_DIR).tar.* dist: dist-clean $(INSTALL_DATA_DIR) $(DIST_DIR) | > > > > | | > | | | | | | < < | > | | | | | | | | | | | > | 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 | #======================================================================== #COMPRESS = tar cvf $(PKG_DIR).tar $(PKG_DIR); compress $(PKG_DIR).tar COMPRESS = tar zcvf $(PKG_DIR).tar.gz $(PKG_DIR) DIST_ROOT = /tmp/dist DIST_DIR = $(DIST_ROOT)/$(PKG_DIR) DIST_INSTALL_DATA = CPPROG='cp -p' $(INSTALL) -m 644 DIST_INSTALL_SCRIPT = CPPROG='cp -p' $(INSTALL) -m 755 dist-clean: rm -rf $(DIST_DIR) $(DIST_ROOT)/$(PKG_DIR).tar.* dist: dist-clean $(INSTALL_DATA_DIR) $(DIST_DIR) $(DIST_INSTALL_DATA) $(srcdir)/license.terms \ $(srcdir)/ChangeLog $(srcdir)/README \ $(srcdir)/aclocal.m4 $(srcdir)/configure.ac \ $(srcdir)/Makefile.in $(srcdir)/pkgIndex.tcl.in \ $(srcdir)/tdbcConfig.sh.in \ $(DIST_DIR)/ $(DIST_INSTALL_SCRIPT) $(srcdir)/configure $(DIST_DIR)/ for i in $(srcdir)/*.[ch]; do \ if [ -f $$i ]; then \ $(DIST_INSTALL_DATA) $$i $(DIST_DIR)/ ; \ fi; \ done; $(INSTALL_DATA_DIR) $(DIST_DIR)/tclconfig $(DIST_INSTALL_DATA) $(srcdir)/tclconfig/README.txt \ $(srcdir)/tclconfig/tcl.m4 $(srcdir)/tclconfig/install-sh \ $(DIST_DIR)/tclconfig/ $(INSTALL_DATA_DIR) $(DIST_DIR)/doc $(DIST_INSTALL_DATA) $(srcdir)/doc/tdbc.n \ $(srcdir)/doc/tdbc_connection.n \ $(srcdir)/doc/tdbc_resultset.n \ $(srcdir)/doc/tdbc_statement.n \ $(srcdir)/doc/tdbc_mapSqlState.n \ $(srcdir)/doc/tdbc_tokenize.n \ $(srcdir)/doc/Tdbc_Init.3 \ $(DIST_DIR)/doc/ $(INSTALL_DATA_DIR) $(DIST_DIR)/generic $(DIST_INSTALL_DATA) $(srcdir)/generic/tdbc.c $(srcdir)/generic/tdbc.decls \ $(srcdir)/generic/tdbc.h $(srcdir)/generic/tdbcDecls.h \ $(srcdir)/generic/tdbcInt.h $(srcdir)/generic/tdbcStubInit.c \ $(srcdir)/generic/tdbcStubLib.c \ $(srcdir)/generic/tdbcTokenize.c $(DIST_DIR)/generic/ $(INSTALL_DATA_DIR) $(DIST_DIR)/library $(DIST_INSTALL_DATA) $(srcdir)/library/tdbc.tcl $(DIST_DIR)/library/ $(INSTALL_DATA_DIR) $(DIST_DIR)/tests $(DIST_INSTALL_DATA) $(srcdir)/tests/all.tcl \ $(srcdir)/tests/tdbc.test \ $(srcdir)/tests/tokenize.test \ $(DIST_DIR)/tests/ $(INSTALL_DATA_DIR) $(DIST_DIR)/tools $(DIST_INSTALL_DATA) $(srcdir)/tools/genExtStubs.tcl \ $(srcdir)/tools/genStubs.tcl \ $(srcdir)/tools/tdbc-man2html.tcl \ $(DIST_DIR)/tools/ $(INSTALL_DATA_DIR) $(DIST_DIR)/win $(DIST_INSTALL_DATA) $(srcdir)/win/makefile.vc $(srcdir)/win/nmakehlp.c \ $(srcdir)/win/targets.vc $(srcdir)/win/rules-ext.vc \ $(srcdir)/win/rules.vc $(srcdir)/win/tdbc.rc \ $(DIST_DIR)/win/ (cd $(DIST_ROOT); $(COMPRESS);) #======================================================================== # How to rebuild the package's stub table. |
︙ | ︙ | |||
437 438 439 440 441 442 443 | destp=`basename $$p`; \ echo " Install $$destp $(DESTDIR)$(pkglibdir)/$$destp"; \ $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \ fi; \ done @if test "x$(SHARED_BUILD)" = "x1"; then \ echo " Install pkgIndex.tcl $(DESTDIR)$(pkglibdir)"; \ | < < < | | 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 | destp=`basename $$p`; \ echo " Install $$destp $(DESTDIR)$(pkglibdir)/$$destp"; \ $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \ fi; \ done @if test "x$(SHARED_BUILD)" = "x1"; then \ echo " Install pkgIndex.tcl $(DESTDIR)$(pkglibdir)"; \ $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir); \ fi @echo " Install tdbcConfig.sh $(DESTDIR)$(pkglibdir)"; \ $(INSTALL_DATA) tdbcConfig.sh $(DESTDIR)$(pkglibdir)/tdbcConfig.sh #======================================================================== # Install binary executables (e.g. .exe files and dependent .dll files) # This is for files that must go in the bin directory (located next to |
︙ | ︙ |
Changes to configure.
︙ | ︙ | |||
662 663 664 665 666 667 668 | PKG_OBJECTS PKG_SOURCES MATH_LIBS EGREP GREP RANLIB SET_MAKE | < < < < < < | 662 663 664 665 666 667 668 669 670 671 672 673 674 675 | PKG_OBJECTS PKG_SOURCES MATH_LIBS EGREP GREP RANLIB SET_MAKE CPP TCLOO_VERSION_REQ TCL_VERSION_DESIRED TCL_VERSION_REQ tcloo_STUB_LIB_PATH tcloo_STUB_LIB_SPEC tcloo_STUB_LIB_FILE |
︙ | ︙ | |||
712 713 714 715 716 717 718 719 720 721 722 723 724 725 | PKG_HEADERS PKG_TCL_SOURCES PKG_STUB_OBJECTS PKG_STUB_SOURCES PKG_STUB_LIB_FILE PKG_LIB_FILE EXEEXT CYGPATH target_alias host_alias build_alias LIBS ECHO_T ECHO_N | > > > > > > | 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 | PKG_HEADERS PKG_TCL_SOURCES PKG_STUB_OBJECTS PKG_STUB_SOURCES PKG_STUB_LIB_FILE PKG_LIB_FILE EXEEXT INSTALL_LIBRARY INSTALL_SCRIPT INSTALL_PROGRAM INSTALL_DATA INSTALL_DATA_DIR INSTALL CYGPATH target_alias host_alias build_alias LIBS ECHO_T ECHO_N |
︙ | ︙ | |||
2201 2202 2203 2204 2205 2206 2207 | #-------------------------------------------------------------------- # Call TEA_INIT as the first TEA_ macro to set up initial vars. # This will define a ${TEA_PLATFORM} variable == "unix" or "windows" # as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. #-------------------------------------------------------------------- | < < | | | < < < < < < < | < | 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 | #-------------------------------------------------------------------- # Call TEA_INIT as the first TEA_ macro to set up initial vars. # This will define a ${TEA_PLATFORM} variable == "unix" or "windows" # as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. #-------------------------------------------------------------------- TEA_VERSION="3.13" { $as_echo "$as_me:${as_lineno-$LINENO}: checking TEA configuration" >&5 $as_echo_n "checking TEA configuration... " >&6; } if test x"${PACKAGE_NAME}" = x ; then as_fn_error $? " The PACKAGE_NAME variable must be defined by your TEA configure.ac" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (TEA ${TEA_VERSION})" >&5 $as_echo "ok (TEA ${TEA_VERSION})" >&6; } # If the user did not set CFLAGS, set it now to keep macros # like AC_PROG_CC and AC_TRY_COMPILE from adding "-g -O2". if test "${CFLAGS+set}" != "set" ; then CFLAGS="" fi |
︙ | ︙ | |||
2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 | # Note when adjusted, so that TEA_PREFIX can correct for this. # This is needed for recursive configures, since autoconf propagates # $prefix, but not $exec_prefix (doh!). if test x$exec_prefix = xNONE ; then exec_prefix_default=yes exec_prefix=$prefix fi { $as_echo "$as_me:${as_lineno-$LINENO}: configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}" >&5 $as_echo "$as_me: configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}" >&6;} # This package name must be replaced statically for AC_SUBST to work # Substitute STUB_LIB_FILE in case package creates a stub library too. | > > > > > > > > > > > > > > | 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 | # Note when adjusted, so that TEA_PREFIX can correct for this. # This is needed for recursive configures, since autoconf propagates # $prefix, but not $exec_prefix (doh!). if test x$exec_prefix = xNONE ; then exec_prefix_default=yes exec_prefix=$prefix fi INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' INSTALL_DATA_DIR='${INSTALL} -d -m 755' INSTALL_DATA='${INSTALL} -m 644' INSTALL_PROGRAM='${INSTALL} -m 755' INSTALL_SCRIPT='${INSTALL} -m 755' INSTALL_LIBRARY='${INSTALL} -m 644' { $as_echo "$as_me:${as_lineno-$LINENO}: configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}" >&5 $as_echo "$as_me: configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}" >&6;} # This package name must be replaced statically for AC_SUBST to work # Substitute STUB_LIB_FILE in case package creates a stub library too. |
︙ | ︙ | |||
4452 4453 4454 4455 4456 4457 4458 | fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu | < < < < < < < < < < < < < < | 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 | fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu #-------------------------------------------------------------------- # Checks to see if the make program sets the $MAKE variable. #-------------------------------------------------------------------- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 |
︙ | ︙ |
Changes to configure.ac.
︙ | ︙ | |||
15 16 17 18 19 20 21 | #-------------------------------------------------------------------- # Call TEA_INIT as the first TEA_ macro to set up initial vars. # This will define a ${TEA_PLATFORM} variable == "unix" or "windows" # as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. #-------------------------------------------------------------------- | | | 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | #-------------------------------------------------------------------- # Call TEA_INIT as the first TEA_ macro to set up initial vars. # This will define a ${TEA_PLATFORM} variable == "unix" or "windows" # as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. #-------------------------------------------------------------------- TEA_INIT() AC_CONFIG_AUX_DIR(tclconfig) #-------------------------------------------------------------------- # Load the tclConfig.sh file #-------------------------------------------------------------------- |
︙ | ︙ |
Changes to pkgIndex.tcl.in.
|
| | > > > > > | | | | > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | # Index file to load the TDBC package. # Make sure that TDBC is running in a compatible version of Tcl, and # that TclOO is available. if {[catch {package present Tcl @TCL_VERSION_REQ@}]} { return } apply {{dir} { set libraryfile [file join $dir @[email protected]] if {![file exists $libraryfile] && [info exists ::env(TDBC_LIBRARY)]} { set libraryfile [file join $::env(TDBC_LIBRARY) @[email protected]] } package ifneeded @PACKAGE_NAME@ @PACKAGE_VERSION@ \ "package require TclOO @TCLOO_VERSION_REQ@-;\ [list load [file join $dir @PKG_LIB_FILE@] @PACKAGE_NAME@]\;\ [list source $libraryfile]" }} $dir |
Changes to win/makefile.vc.
︙ | ︙ |
Changes to win/rules-ext.vc.
︙ | ︙ |
Changes to win/rules.vc.
︙ | ︙ |
Changes to win/targets.vc.
︙ | ︙ |