From 5849a5ba6b3d7a86d13b8bfba441e8d9fe95f7ea Mon Sep 17 00:00:00 2001 From: mi Date: Tue, 27 Jun 2006 22:27:22 +0000 Subject: Fix up a few issues: . add recognition of the BSD-specific SIGINFO signal (to be submitted to authors); . avoid even extracting the compat/ subdirectory for fear of picking up a wrong declaration for a function defined in a system library; . force to use the system strstr() instead of building TCL's own (from compat/strstr.c); . similarly, use the system memmove() instead of the (identical) bcopy; . run the vendor's tests as part of the build -- the test failures are not fatal, but may help investigate problems; . fix up the two failing tests so that none currently fail on my two test systems (FreeBSD-6.1-STABLE i386 and amd64) (fixes submitted to authors); . quiet down the noisy warning, triggered in the thread-case by the re-#define of inet_ntoa() in tclUnixPort.h. Bump PORTREVISION. --- lang/tcl84/Makefile | 8 +++++++- lang/tcl84/files/patch-siginfo | 18 ++++++++++++++++++ lang/tcl84/files/patch-test-clock | 30 ++++++++++++++++++++++++++++++ lang/tcl84/files/patch-test-fCmd | 21 +++++++++++++++++++++ lang/tcl84/files/patch-warnings | 12 ++++++++++++ lang/tcl84/pkg-plist | 2 +- 6 files changed, 89 insertions(+), 2 deletions(-) create mode 100644 lang/tcl84/files/patch-siginfo create mode 100644 lang/tcl84/files/patch-test-clock create mode 100644 lang/tcl84/files/patch-test-fCmd create mode 100644 lang/tcl84/files/patch-warnings (limited to 'lang') diff --git a/lang/tcl84/Makefile b/lang/tcl84/Makefile index c5b082033c75..d1981fef50a0 100644 --- a/lang/tcl84/Makefile +++ b/lang/tcl84/Makefile @@ -7,6 +7,7 @@ PORTNAME= tcl PORTVERSION= 8.4.13 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= lang tcl84 MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} @@ -19,16 +20,18 @@ COMMENT= Tool Command Language PATCH_DIST_ARGS= -d ${WRKDIR}/${DISTNAME} -E ${PATCH_DIST_STRIP} WRKSRC= ${WRKDIR}/${PORTNAME}${PORTVERSION}/unix +ALL_TARGET= all test INSTALLS_SHLIB= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-shared --includedir=${PREFIX}/include/tcl${TCL_VER} CONFIGURE_ENV= PORTSDIR=${PORTSDIR} -MAKE_ENV= SHORT_TCL_VER=84 +MAKE_ENV= SHORT_TCL_VER=84 LANG=C # LANG=C is required for some of UTF-using tests PKGINSTALL= ${PKGDIR}/pkg-install.tclsh PKGDEINSTALL= ${PKGDIR}/pkg-deinstall.tclsh TCL_VER= 8.4 NOPRECIOUSMAKEVARS= Too many _MLINKS for README.html PLIST_SUB= TCL_VER=${TCL_VER} SHORT_TCL_VER=84 +EXTRACT_AFTER_ARGS=|${TAR} -xpf - --exclude compat/ .if defined(TCL_WITH_THREADS) || defined(WITH_THREADS) THREADS_SUFFIX= -threads @@ -613,6 +616,9 @@ post-configure: ${REINPLACE_CMD} \ -e 's|${WRKDIRPREFIX}${.CURDIR}|$${WRKDIRPREFIX}${TCLBASE}|' \ ${WRKSRC}/tclConfig.sh + ${REINPLACE_CMD} \ + -e 's,-DNO_MEMMOVE=1,,' -e 's,-DNO_STRING_H=1,,' \ + -e 's,^COMPAT_OBJS.*,,' ${WRKSRC}/Makefile .if defined(WITHOUT_TCL84_MAN) ${REINPLACE_CMD} -e 's|^MAN_INSTALL_DIR.*$$|MAN_INSTALL_DIR = ${WRKDIR}|' \ ${WRKSRC}/Makefile diff --git a/lang/tcl84/files/patch-siginfo b/lang/tcl84/files/patch-siginfo new file mode 100644 index 000000000000..c295cab00c0f --- /dev/null +++ b/lang/tcl84/files/patch-siginfo @@ -0,0 +1,18 @@ +--- ../generic/tclPosixStr.c Mon May 27 06:14:21 2002 ++++ ../generic/tclPosixStr.c Tue Jun 27 13:14:57 2006 +@@ -1044,4 +1044,7 @@ Tcl_SignalId(sig) + case SIGXFSZ: return "SIGXFSZ"; + #endif ++#ifdef SIGINFO ++ case SIGINFO: return "SIGINFO"; ++#endif + } + return "unknown signal"; +@@ -1175,4 +1178,7 @@ Tcl_SignalMsg(sig) + #ifdef SIGXFSZ + case SIGXFSZ: return "exceeded file size limit"; ++#endif ++#ifdef SIGINFO ++ case SIGINFO: return "information/status request"; + #endif + } diff --git a/lang/tcl84/files/patch-test-clock b/lang/tcl84/files/patch-test-clock new file mode 100644 index 000000000000..bfe46da82f8c --- /dev/null +++ b/lang/tcl84/files/patch-test-clock @@ -0,0 +1,30 @@ +--- ../tests/clock.test Wed Sep 8 14:32:20 2004 ++++ ../tests/clock.test Tue Jun 27 13:42:45 2006 +@@ -64,5 +64,5 @@ + clock format $clockval -format {%a %b %d %I:%M:%S %p %Y} -gmt true + } {Sun Nov 04 03:02:46 AM 1990} +-test clock-3.2 {clock format tests} { ++test clock-3.2 {clock format tests} -body { + # TCL_USE_TIMEZONE_VAR + +@@ -74,5 +74,5 @@ + catch {unset env(TZ); set env(TZ) $oldtz} + set x +-} {GMTPST} ++} -match regexp -result {(GMT|UTC)PST} + test clock-3.3 {clock format tests} { + # tzset() under Borland doesn't seem to set up tzname[] for local +@@ -83,5 +83,5 @@ + set x {} + } {} +-test clock-3.4 {clock format tests} { ++test clock-3.4 {clock format tests} -body { + # tzset() under Borland doesn't seem to set up tzname[] for gmt timezone. + # tzset() under MSVC has the following weird observed behavior: +@@ -94,5 +94,5 @@ + append x [clock format 863800000 -format %Z -gmt 1] + append x [clock format 863800000 -format %Z -gmt 1] +-} {GMTGMT} ++} -match regexp -result {GMTGMT|UTCUTC} + test clock-3.5 {clock format tests} { + list [catch {clock format} msg] $msg diff --git a/lang/tcl84/files/patch-test-fCmd b/lang/tcl84/files/patch-test-fCmd new file mode 100644 index 000000000000..04adaf1b7e2d --- /dev/null +++ b/lang/tcl84/files/patch-test-fCmd @@ -0,0 +1,21 @@ +Don't fail, when the tester's home directory (or any sub-path +thereof) is a symbolic link... + + -mi + +--- ../tests/fCmd.test Sun Mar 19 17:47:30 2006 ++++ ../tests/fCmd.test Tue Jun 27 14:13:53 2006 +@@ -578,5 +578,5 @@ + } {1 {error copying "td2" to "~/td1/td2": permission denied}} + test fCmd-6.26 {CopyRenameOneFile: doesn't use original name} \ +- {unixOnly notRoot} { ++ -constraints {unixOnly notRoot} -match regexp -body { + cleanup + file mkdir ~/td1/td2 +@@ -587,5 +587,5 @@ + file delete -force ~/td1 + set msg +-} "1 {error copying \"~/td1\" to \"td1\": \"[file join [file dirname ~] [file tail ~] td1 td2]\": permission denied}" ++} -result "1 {error copying \"~/td1\" to \"td1\": \".*[file join td1 td2]\": permission denied}" + test fCmd-6.27 {CopyRenameOneFile: TclpCopyDirectory failed} \ + {unixOnly notRoot xdev} { diff --git a/lang/tcl84/files/patch-warnings b/lang/tcl84/files/patch-warnings new file mode 100644 index 000000000000..ee2cab063834 --- /dev/null +++ b/lang/tcl84/files/patch-warnings @@ -0,0 +1,12 @@ +Quiet the noisy "already defined" warning triggered, when building with TCL_THREADS. + +--- ../unix/tclUnixPort.h Tue Dec 6 04:01:07 2005 ++++ ../unix/tclUnixPort.h Tue Jun 27 15:16:21 2006 +@@ -607,4 +607,7 @@ + #endif + EXTERN char * TclpInetNtoa(struct in_addr); ++#ifdef inet_ntoa ++# undef inet_ntoa ++#endif + #define inet_ntoa(x) TclpInetNtoa(x) + #else diff --git a/lang/tcl84/pkg-plist b/lang/tcl84/pkg-plist index fec21e20316f..4ff921b8f69d 100644 --- a/lang/tcl84/pkg-plist +++ b/lang/tcl84/pkg-plist @@ -132,7 +132,7 @@ lib/tcl%%TCL_VER%%/word.tcl @dirrm lib/tcl%%TCL_VER%%/http2.5 @dirrm lib/tcl%%TCL_VER%%/http1.0 @dirrm lib/tcl%%TCL_VER%%/encoding -@dirrm lib/tcl%%TCL_VER%% +@dirrmtry lib/tcl%%TCL_VER%% @dirrm include/tcl%%TCL_VER%%/unix @dirrm include/tcl%%TCL_VER%%/generic @dirrm include/tcl%%TCL_VER%% -- cgit 2017-01-012-4/+4