Skip to content

Commit

Permalink
Changes needed to build tcllauncher with Tcl 8.6
Browse files Browse the repository at this point in the history
* Call through Tcl_Init stub

* Invoke Tcllauncher_Init

* Update TEA to latest

* Add generic dir to include search path to find launcher.h

* Link with package objects and Tcl stub library
  • Loading branch information
lehenbauer committed Sep 2, 2014
1 parent 3380f35 commit 8aef646
Show file tree
Hide file tree
Showing 8 changed files with 1,135 additions and 374 deletions.
7 changes: 4 additions & 3 deletions Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -452,11 +452,12 @@ tclAppInit.o: unix/tclAppInit.c

TCLSH_OBJS = tclAppInit.o

tcllauncher: ${TCLSH_OBJS} ${TCL_LIB_FILE}
${CC} ${CFLAGS} ${LDFLAGS} ${TCLSH_OBJS} ${LIBS} \
${CC_SEARCH_FLAGS} ${TCL_LIB_SPEC} -o tcllauncher
tcllauncher: $(TCLSH_OBJS) $(TCL_LIB_FILE)
$(CC) -o $@ $(TCLSH_OBJS) $(CFLAGS) $(LDFLAGS_DEFAULT) $(PKG_OBJECTS) \
$(LIBS) $(TCL_LIB_SPEC) $(TCL_STUB_LIB_SPEC)

TCL_LIB_SPEC=@TCL_LIB_SPEC@
TCL_STUB_LIB_SPEC=@TCL_STUB_LIB_SPEC@
LIB_RUNTIME_DIR=$(libdir)
LD_SEARCH_FLAGS=@LD_SEARCH_FLAGS@
CC_SEARCH_FLAGS=@CC_SEARCH_FLAGS@
Expand Down
4 changes: 2 additions & 2 deletions README.FreeBSD
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# configure arguments for FreeBSD machines with standard, ports-installed tcl85
# configure arguments for FreeBSD machines with standard, ports-installed tcl86
#

./configure --with-tcl=/usr/local/lib/tcl8.5 --mandir=/usr/local/man
./configure --with-tcl=/usr/local/lib/tcl8.6 --mandir=/usr/local/man --enable-symbols --disable-threads
4 changes: 2 additions & 2 deletions configure.in
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ AC_INIT([Tcllauncher], [1.4])
# as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE.
#--------------------------------------------------------------------

TEA_INIT([3.8])
TEA_INIT([3.9])

AC_CONFIG_AUX_DIR(tclconfig)

Expand Down Expand Up @@ -73,7 +73,7 @@ TEA_SETUP_COMPILER

TEA_ADD_SOURCES([launcher.c tcllauncher.c])
TEA_ADD_HEADERS([])
TEA_ADD_INCLUDES([])
TEA_ADD_INCLUDES([-I${srcdir}/generic])
TEA_ADD_LIBS([])
TEA_ADD_CFLAGS([])
TEA_ADD_STUB_SOURCES([])
Expand Down
2 changes: 1 addition & 1 deletion generic/launcher.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,6 @@
* Only the _Init function is exported.
*/

EXTERN int Sample_Init(Tcl_Interp * interp);
EXTERN int Tcllauncher_Init(Tcl_Interp * interp);

#endif /* _TCLLAUNCHER */
181 changes: 179 additions & 2 deletions tclconfig/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,12 +1,189 @@
2010-08-11 Jeff Hobbs <[email protected]>
2013-10-08 Jan Nijtmans <[email protected]>

* unix/tcl.m4: Bug [172223e008]: Wrong filename in
--disable-shared compile on MinGW

2013-10-04 Jan Nijtmans <[email protected]>

* unix/tcl.m4: stub library is no longer linked with msvcrt??.dll.

2013-10-01 Jan Nijtmans <[email protected]>

* unix/tcl.m4: Workaround for MinGW bug #2065: "gcc --shared" links
with libgcc_s_dw2-1.dll when using 64-bit division in C

2013-07-04 Jan Nijtmans <[email protected]>

* unix/tcl.m4: Bug [3324676]: AC_PROG_INSTALL incompat,
Bug [3606445]: Unneeded -DHAVE_NO_SEH=1 when not building on Windows

2013-07-02 Jan Nijtmans <[email protected]>

* unix/tcl.m4: Bug [32afa6e256]: dirent64 check is incorrect in tcl.m4
(thanks to Brian Griffin)

2013-06-20 Jan Nijtmans <[email protected]>

* unix/tcl.m4: Use X11/Xlib.h for checking where X11 can be found
in stead of X11/XIntrinsic.h. Suggested by Pietro Cerutti.

2013-06-04 Jan Nijtmans <[email protected]>

* unix/tcl.m4: Eliminate NO_VIZ macro as current
zlib uses HAVE_HIDDEN in stead. One more last-moment
fix for FreeBSD by Pietro Cerutti

2013-05-19 Jan Nijtmans <[email protected]>

* unix/tcl.m4: Fix for FreeBSD, and remove support for old
FreeBSD versions. Patch by Pietro Cerutti

2013-03-12 Jan Nijtmans <[email protected]>

* unix/tcl.m4: Patch by Andrew Shadura, providing better support for
* three architectures they have in Debian.

2012-08-07 Stuart Cassoff <[email protected]>

* tcl.m4: Added "-DNDEBUG" to CFLAGS_DEFAULT
when building with --disable-symbols.

2012-08-07 Stuart Cassoff <[email protected]>

* tcl.m4: [Bug 3555058]: Checkin [30736d63f0] broke
CFLAGS_DEFAULT, LDFLAGS_DEFAULT

2012-08-07 Stuart Cassoff <[email protected]>

* tcl.m4: [Bug 3511806]: Checkin [30736d63f0] broke CFLAGS

2012-08-07 Jan Nijtmans <[email protected]>

* tcl.m4: [Bug 3511806]: Checkin [30736d63f0] broke CFLAGS

2012-07-25 Jan Nijtmans <[email protected]>

* tcl.m4: My previous commit (2012-04-03) broke the ActiveTcl
build for AMD64, because of the quotes in "C:/<path>/AMD64/cl.exe".
It turns out that the AC_TRY_COMPILE macro cannot handle that.

2012-07-22 Stuart Cassoff <[email protected]>

* tcl.m4: Tidy: consistency, spelling, phrasing, whitespace.
No functional change.

2012-04-03 Jan Nijtmans <[email protected]>

* tcl.m4: [Bug 3511806] Compiler checks too early
This change allows to build the cygwin and mingw32 ports of
Tcl/Tk extensions to build out-of-the-box using a native or
cross-compiler, e.g. on Cygwin, Linux or Darwin.

2011-04-02 Jan Nijtmans <[email protected]>

* install-sh: Fix issue with library stripping in install-sh
(backported from kevin_walzer's patch from Tcl 8.6 trunk)

2011-04-05 Andreas Kupries <[email protected]>

* tcl.m4: Applied patch by Jeff Lawson. Nicer error message when
tclConfig.sh was not found.

2010-12-15 Stuart Cassoff <[email protected]>

* install-sh: Upgrade to newer install-sh and use it.
* tcl.m4:

2010-12-14 Stuart Cassoff <[email protected]>

* tcl.m4: Better building on OpenBSD.

2010-12-14 Jan Nijtmans <[email protected]>

* tcl.m4: when using gcc, don't try to determine Win64 SDK

2010-12-12 Jan Nijtmans <[email protected]>

* tcl.m4: Determine correctly a cross-compiler-windres

2010-11-23 Jan Nijtmans <[email protected]>

* tcl.m4: add some cross-compile support, borrowed from Tcl 8.6

2010-09-16 Jeff Hobbs <[email protected]>

* tcl.m4: correct HP-UX LDFLAGS (only used when building big shell)

2010-09-14 Jeff Hobbs <[email protected]>

* tcl.m4: add extra if check for .manifest file generation
Add notice about package name and version being built.

2010-09-09 Jan Nijtmans <[email protected]>

* tcl.m4: [FREQ #3058486] TEA_LOAD_CONFIG doesn't set all BUILD_ vars
Slightly related: defining BUILD_$1 on all platforms - not only win -
allows the -fvisibility feature to be used in extensions as well, at
least if you compile against tcl >= 8.5.

2010-08-26 Jeff Hobbs <[email protected]>

* tcl.m4: ensure safe quoting for autoheader usage

2010-08-19 Jeff Hobbs <[email protected]>

* tcl.m4: add TEA_ADD_CLEANFILES macro to make adding cleanfiles
easier, and add *.exp to CLEANFILES Windows default.
(TEA_MAKE_LIB): Enhanced to check for MSVC that requires manifests
and auto-embed it into proj DLL via MAKE_SHARED_LIB. Also define
VC_MANIFEST_EMBED_DLL and VC_MANIFEST_EMBED_EXE that do the same
magic in case it is needed for extended TEA projects.

2010-08-16 Jeff Hobbs <[email protected]>

*** Bump to TEA_VERSION 3.9 ***
If upgrading from TEA_VERSION 3.8, copy over tcl.m4, change
TEA_INIT to use 3.9 and reconfigure (ac-2.59+).
BUILD_${PACKAGE_NAME} will be auto-defined on Windows for
correct setting of TCL_STORAGE_CLASS.
TEA_LOAD_CONFIG users should remove the SHLIB_LD_LIBS setting done
in configure.in (LIBS will be automagically populated by
TEA_LOAD_CONFIG).
TEA_EXPORT_CONFIG has been added for ${pkg}Config.sh creators
SHLIB_LD_FLAGS was deprecated a while ago, remove it if it is
still in your Makefile.in.

* tcl.m4: add /usr/lib64 to set of auto-search dirs. [Bug 1230554]
Auto-define BUILD_$PACKAGE_NAME so users don't need to. This
needs to correspond with $pkg.h define magic for TCL_STORAGE_CLASS.
Auto-define CLEANFILES. Users can expand it.
(SHLIB_LD_LIBS): define to '${LIBS}' default and change it only if
necessary. Platforms not using this may simply not work or have
very funky linkers.
(TEA_LOAD_CONFIG): When loading config for another extension,
auto-add stub libraries found with TEA_ADD_LIBS. Eases
configure.in for modules like itk and img::*.
(TEA_EXPORT_CONFIG): Add standardized function for exporting a
${pkg}Config.sh. See use by img::* and itcl.

2010-08-12 Jeff Hobbs <[email protected]>

*** Bump to TEA_VERSION 3.8 ***
If upgrading from TEA_VERSION 3.7, copy over tcl.m4, change
TEA_INIT to use 3.8 and reconfigure (ac-2.59+).
No other changes should be necessary.

* tcl.m4: remove more vestigial bits from removed platforms.
Add back SCO_SV-3.2*.
Remove use of DL_LIBS and DL_OBJS and related baggage - these are
only needed by the core to support 'load'.
Allow for macosx in TEA_ADD_SOURCES.
Correct check for found_xincludes=no in TEA_PATH_UNIX_X.

2010-08-11 Jeff Hobbs <[email protected]>

* tcl.m4: remove the following old platform configurations:
UNIX_SV*|UnixWare-5*, SunOS-4.*, SINIX*5.4*, SCO_SV-3.2*,
UNIX_SV*|UnixWare-5*, SunOS-4.*, SINIX*5.4*, SCO_SV-3.2*<readded>,
OSF1-1.*, NEXTSTEP-*, NetBSD-1.*|FreeBSD-[[1-2]].*, MP-RAS-*,
IRIX-5.*, HP-UX-*.08.*|HP-UX-*.09.*|HP-UX-*.10.*, dgux*,
BSD/OS-2.1*|BSD/OS-3*
Expand Down
Loading

0 comments on commit 8aef646

Please sign in to comment.