+++ /dev/null
-diff -up tcl8.5.7/library/auto.tcl.old tcl8.5.7/library/auto.tcl
---- tcl8.5.7/library/auto.tcl.old 2006-11-03 01:34:52.000000000 +0100
-+++ tcl8.5.7/library/auto.tcl 2009-05-18 10:28:16.337102378 +0200
-@@ -85,6 +85,13 @@ proc tcl_findLibrary {basename version p
- lappend dirs $value
- }
-
-+ # 2a. As a sibling of Tcl's script directory
-+ if {[catch {
-+ ::tcl::pkgconfig get scriptdir,runtime
-+ } value] == 0} {
-+ lappend dirs [file join [file dirname $value] $basename$version]
-+ }
-+
- # 3. Relative to auto_path directories. This checks relative to the
- # Tcl library as well as allowing loading of libraries added to the
- # auto_path that is not relative to the core library or binary paths.
-diff -up tcl8.5.7/library/init.tcl.old tcl8.5.7/library/init.tcl
---- tcl8.5.7/library/init.tcl.old 2009-04-10 18:54:51.000000000 +0200
-+++ tcl8.5.7/library/init.tcl 2009-05-18 10:25:25.904853164 +0200
-@@ -48,16 +48,11 @@ if {![info exists auto_path]} {
- }
- namespace eval tcl {
- variable Dir
-- foreach Dir [list $::tcl_library [file dirname $::tcl_library]] {
-+ foreach Dir [list $::tcl_library] {
- if {$Dir ni $::auto_path} {
- lappend ::auto_path $Dir
- }
- }
-- set Dir [file join [file dirname [file dirname \
-- [info nameofexecutable]]] lib]
-- if {$Dir ni $::auto_path} {
-- lappend ::auto_path $Dir
-- }
- catch {
- foreach Dir $::tcl_pkgPath {
- if {$Dir ni $::auto_path} {
-diff -up tcl8.5.7/unix/configure.in.old tcl8.5.7/unix/configure.in
---- tcl8.5.7/unix/configure.in.old 2009-04-15 21:30:05.000000000 +0200
-+++ tcl8.5.7/unix/configure.in 2009-05-18 10:21:30.987855050 +0200
-@@ -833,9 +833,9 @@ if test "$FRAMEWORK_BUILD" = "1" ; then
- test -z "$TCL_MODULE_PATH" && \
- TCL_MODULE_PATH="~/Library/Tcl /Library/Tcl /System/Library/Tcl"
- elif test "$prefix/lib" != "$libdir"; then
-- TCL_PACKAGE_PATH="${libdir} ${prefix}/lib ${TCL_PACKAGE_PATH}"
-+ TCL_PACKAGE_PATH="${libdir}/tcl8.5 ${prefix}/share/tcl8.5 ${libdir}/tk8.5 ${prefix}/share/tk8.5 ${TCL_PACKAGE_PATH}"
- else
-- TCL_PACKAGE_PATH="${prefix}/lib ${TCL_PACKAGE_PATH}"
-+ TCL_PACKAGE_PATH="${libdir}/tcl8.5 ${prefix}/share/tcl8.5 ${libdir}/tk8.5 ${prefix}/share/tk8.5 ${TCL_PACKAGE_PATH}"
- fi
-
- #--------------------------------------------------------------------
+++ /dev/null
---- tcl8.5.0/unix/tcl.m4.conf 2007-12-20 10:48:05.000000000 +0100
-+++ tcl8.5.0/unix/tcl.m4 2007-12-20 10:48:52.000000000 +0100
-@@ -1427,12 +1427,12 @@ dnl AC_CHECK_TOOL(AR, ar)
- # get rid of the warnings.
- #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
-
-- SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
-+ SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS} -fPIC -Wl,-soname,${@}'
- DL_OBJS="tclLoadDl.o"
- DL_LIBS="-ldl"
- LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
- AS_IF([test $doRpath = yes], [
-- CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'])
-+ CC_SEARCH_FLAGS=''])
- LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
- AS_IF([test "`uname -m`" = "alpha"], [CFLAGS="$CFLAGS -mieee"])
- AS_IF([test $do64bit = yes], [
-@@ -1464,7 +1464,7 @@ dnl AC_CHECK_TOOL(AR, ar)
- SHLIB_CFLAGS="-fPIC"
- SHLIB_SUFFIX=".so"
-
-- SHLIB_LD='${CC} -shared'
-+ SHLIB_LD='${CC} ${CFLAGS} -shared -fPIC'
- DL_OBJS=""
- DL_LIBS="-ldl"
- LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
+++ /dev/null
-diff -up tcl8.5.6/generic/tclPort.h.old tcl8.5.6/generic/tclPort.h
---- tcl8.5.6/generic/tclPort.h.old 2009-02-09 16:40:08.000000000 +0100
-+++ tcl8.5.6/generic/tclPort.h 2009-02-09 16:40:26.000000000 +0100
-@@ -24,7 +24,7 @@
- #endif
- #include "tcl.h"
- #if !defined(_WIN32)
--# include "tclUnixPort.h"
-+# include "../unix/tclUnixPort.h"
- #endif
-
- #if defined(__CYGWIN__)
-diff -up tcl8.5.6/generic/tclInt.h.bbb tcl8.5.6/generic/tclInt.h
---- tcl8.5.6/generic/tclInt.h.bbb 2008-11-14 01:22:39.000000000 +0100
-+++ tcl8.5.6/generic/tclInt.h 2009-02-11 13:05:13.000000000 +0100
-@@ -2773,7 +2773,7 @@ MODULE_SCOPE void TclClockInit(Tcl_Inter
- MODULE_SCOPE int TclClockOldscanObjCmd(
- ClientData clientData, Tcl_Interp *interp,
- int objc, Tcl_Obj *const objv[]);
--MODULE_SCOPE int Tcl_CloseObjCmd(ClientData clientData,
-+extern int Tcl_CloseObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
- Tcl_Obj *const objv[]);
- MODULE_SCOPE int Tcl_ConcatObjCmd(ClientData clientData,
-@@ -2934,7 +2934,7 @@ MODULE_SCOPE int Tcl_RegsubObjCmd(Client
- MODULE_SCOPE int Tcl_RenameObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
- Tcl_Obj *const objv[]);
--MODULE_SCOPE int Tcl_ReturnObjCmd(ClientData clientData,
-+extern int Tcl_ReturnObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
- Tcl_Obj *const objv[]);
- MODULE_SCOPE int Tcl_ScanObjCmd(ClientData clientData,
###############################################################################
name = tcl
-major_ver = 8.5
-version = %{major_ver}.11
-release = 2
+major_ver = 8.6
+version = %{major_ver}.13
+release = 1
thisapp = tcl%{version}
groups = Development/Languages
-url = http://tcl.sourceforge.net/
+url = https://tcl.sourceforge.net/
license = TCL
summary = Tool Command Language, pronounced tickle.
applications, protocols, devices, and frameworks.
end
-source_dl = http://downloads.sourceforge.net/project/%{name}/Tcl/%{version}/
+source_dl = https://downloads.sourceforge.net/project/%{name}/Tcl/%{version}/
sources = tcl%{version}-src.tar.gz
build
autoconf
automake
perl >= 5.14.2-9.ip3
+ zlib-devel
end
- CFLAGS += -DTCL_NO_STACK_CHECK=1
- make_extra = TCL_LIBRARY=%{datadir}/%{name}%{major_ver}
-
- configure_options += \
- --disable-threads \
- --enable-symbols \
- --enable-shared
+ # tcl fails to detect that it needs to link agains libm
+ LDFLAGS += -lm
prepare_cmds
- cd unix && autoconf
+ # Don't build SQLite3 support
+ rm -rf pkgs/sqlite3*
end
+ configure_options += \
+ --enable-threads \
+ --enable-64bit
+
build
- cd unix
- ./configure \
- %{configure_options}
+ cd unix && %{configure}
- make %{PARALLELISMFLAGS} %{make_extra}
+ make %{PARALLELISMFLAGS}
end
install
- cd unix
- make install %{make_extra} INSTALL_ROOT=%{BUILDROOT}
- cd ..
+ cd unix && make install install-private-headers INSTALL_ROOT=%{BUILDROOT}
ln -svf tclsh%{major_ver} %{BUILDROOT}/usr/bin/tclsh
mkdir -pv %{BUILDROOT}%{libdir}/%{name}%{major_ver}
ln -svf ../%{name}Config.sh %{BUILDROOT}%{libdir}/%{name}%{major_ver}/%{name}Config.sh
- mkdir -pv %{BUILDROOT}%{includedir}/%{name}-private/{generic,unix}
- find generic unix -name "*.h" -exec cp -p '{}' %{BUILDROOT}%{includedir}/%{name}-private/'{}' ';'
- (
- cd %{BUILDROOT}%{includedir}
- for i in *.h; do
- [ -f %{BUILDROOT}%{includedir}/%{name}-private/generic/${i} ] && ln -sf ../../${i} \
- %{BUILDROOT}%{includedir}/%{name}-private/generic;
- done
- )
-
# remove buildroot traces
- sed -i -e "s|$PWD/unix|%{libdir}|; s|$PWD|%{includedir}/%{name}-private|" %{BUILDROOT}%{libdir}/%{name}Config.sh
- rm -rf %{BUILDROOT}%{datadir}/%{name}%{major_ver}/ldAix
-
- # Fix library permissions.
- chmod 755 %{BUILDROOT}%{libdir}/libtcl*.so*
- end
-
- # Keep libtclstub*.a.
- keep_libraries
- %{libdir}/lib%{name}stub%{major_ver}.a
+ #sed -i -e "s|$PWD/unix|%{libdir}|; s|$PWD|%{includedir}/%{name}-private|" %{BUILDROOT}%{libdir}/%{name}Config.sh
+ #rm -rf %{BUILDROOT}%{datadir}/%{name}%{major_ver}/ldAix
end
end