From 80feea0bb30bd2dbb0bedc105fb652ab1afeef52 Mon Sep 17 00:00:00 2001 From: Pietro Cerutti Date: Thu, 18 Apr 2013 08:20:59 +0000 Subject: [PATCH] - Fix a long standing problem in tclConfig.sh and tkConfig.sh, where paths were set based on WRKSRC instead of PREFIX. This mainly affected TEA-based extensions that source tclConfig.sh / tkConfig.sh to set important variables. An example is TCL_SRC_DIR, which is used to locate Tcl/Tk private header files such as tclUnixPort.h or tkUnixPort.h. This variable was previously set to WRKSRC, which caused ports to need additional tweaks to CFLAGS or CONFIGURE_ARGS. It should now be possible to build TEA-based extensions by specifying only the CONFIGURE_ARGS --with-tcl=${TCL_LIBDIR} / --with-tk=${TK_LIBDIR}. Feature safe: yes Approved by: bapt (portmgr) --- lang/tcl84/Makefile | 8 ++++++++ lang/tcl85/Makefile | 8 ++++++++ lang/tcl86/Makefile | 6 ++++++ x11-toolkits/tk84/Makefile | 6 ++++++ x11-toolkits/tk85/Makefile | 6 ++++++ x11-toolkits/tk86/Makefile | 8 ++++++++ 6 files changed, 42 insertions(+) diff --git a/lang/tcl84/Makefile b/lang/tcl84/Makefile index 8308b2e3c463..7a510a8d76c6 100644 --- a/lang/tcl84/Makefile +++ b/lang/tcl84/Makefile @@ -55,6 +55,14 @@ CONFIGURE_ARGS+= --enable-threads CONFIGURE_ARGS+= --disable-threads .endif +post-patch: + ${REINPLACE_CMD} -e \ + 's|@TCL_BUILD_LIB_SPEC@|@TCL_LIB_SPEC@|; \ + s|@TCL_BUILD_STUB_LIB_SPEC@|@TCL_STUB_LIB_SPEC@|; \ + s|@TCL_BUILD_STUB_LIB_PATH@|@TCL_STUB_LIB_PATH@|; \ + s|@TCL_SRC_DIR@|${PREFIX}/include/tcl${TCL_VER}|' \ + ${WRKSRC}/tclConfig.sh.in + post-configure: ${REINPLACE_CMD} \ -e 's,-DNO_MEMMOVE=1,,' -e 's,-DNO_STRING_H=1,,' \ diff --git a/lang/tcl85/Makefile b/lang/tcl85/Makefile index 6a3cefdddbed..a343305e5af3 100644 --- a/lang/tcl85/Makefile +++ b/lang/tcl85/Makefile @@ -70,6 +70,14 @@ PLIST_SUB+= TZDATA="@comment " CONFIGURE_ARGS+=--without-tzdata .endif +post-patch: + ${REINPLACE_CMD} -e \ + 's|@TCL_BUILD_LIB_SPEC@|@TCL_LIB_SPEC@|; \ + s|@TCL_BUILD_STUB_LIB_SPEC@|@TCL_STUB_LIB_SPEC@|; \ + s|@TCL_BUILD_STUB_LIB_PATH@|@TCL_STUB_LIB_PATH@|; \ + s|@TCL_SRC_DIR@|${PREFIX}/include/tcl${TCL_VER}|' \ + ${WRKSRC}/tclConfig.sh.in + post-configure: ${REINPLACE_CMD} \ -e 's,-DNO_MEMMOVE=1,,' -e 's,-DNO_STRING_H=1,,' \ diff --git a/lang/tcl86/Makefile b/lang/tcl86/Makefile index c2bd5281f580..ffb1b01901dd 100644 --- a/lang/tcl86/Makefile +++ b/lang/tcl86/Makefile @@ -77,6 +77,12 @@ BROKEN= Does not build on arm .endif post-patch: + ${REINPLACE_CMD} -e \ + 's|@TCL_BUILD_LIB_SPEC@|@TCL_LIB_SPEC@|; \ + s|@TCL_BUILD_STUB_LIB_SPEC@|@TCL_STUB_LIB_SPEC@|; \ + s|@TCL_BUILD_STUB_LIB_PATH@|@TCL_STUB_LIB_PATH@|; \ + s|@TCL_SRC_DIR@|${PREFIX}/include/tcl${TCL_VER}|' \ + ${WRKSRC}/tclConfig.sh.in .if !${PORT_OPTIONS:MTCLMAN} @${FIND} ${WRKSRC}/../pkgs -name Makefile.in | ${XARGS} ${REINPLACE_CMD} \ -e '/^install:/s|install-doc||' diff --git a/x11-toolkits/tk84/Makefile b/x11-toolkits/tk84/Makefile index 4daeafe03087..ef144f01c49e 100644 --- a/x11-toolkits/tk84/Makefile +++ b/x11-toolkits/tk84/Makefile @@ -63,6 +63,12 @@ CONFIGURE_ARGS+= --disable-threads .endif post-patch: + ${REINPLACE_CMD} -e \ + 's|@TK_BUILD_LIB_SPEC@|@TK_LIB_SPEC@|; \ + s|@TK_BUILD_STUB_LIB_SPEC@|@TK_STUB_LIB_SPEC@|; \ + s|@TK_BUILD_STUB_LIB_PATH@|@TK_STUB_LIB_PATH@|; \ + s|@TK_SRC_DIR@|${PREFIX}/include/tk${TK_VER}|' \ + ${WRKSRC}/tkConfig.sh.in @(cd ${WRKSRC}/..; ${PATCH} -p0 < ${PATCHDIR}/extra-lastevent-patch) @${REINPLACE_CMD} -e 's|X11/Intrinsic.h|X11/Xlib.h|g' ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|@TK_SHARED_BUILD@|#@TK_SHARED_BUILD@|g' ${WRKSRC}/Makefile.in diff --git a/x11-toolkits/tk85/Makefile b/x11-toolkits/tk85/Makefile index 6b1583e2c030..e5bec76ca41f 100644 --- a/x11-toolkits/tk85/Makefile +++ b/x11-toolkits/tk85/Makefile @@ -82,6 +82,12 @@ INSTALL_TARGET+=install-doc TKBASE?= ${PORTSDIR}/${PKGCATEGORY}/${LATEST_LINK} post-patch: + ${REINPLACE_CMD} -e \ + 's|@TK_BUILD_LIB_SPEC@|@TK_LIB_SPEC@|; \ + s|@TK_BUILD_STUB_LIB_SPEC@|@TK_STUB_LIB_SPEC@|; \ + s|@TK_BUILD_STUB_LIB_PATH@|@TK_STUB_LIB_PATH@|; \ + s|@TK_SRC_DIR@|${PREFIX}/include/tk${TK_VER}|' \ + ${WRKSRC}/tkConfig.sh.in @${REINPLACE_CMD} -e 's|X11/Intrinsic.h|X11/Xlib.h|g' ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|@TK_SHARED_BUILD@|#@TK_SHARED_BUILD@|g; s|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/Makefile.in diff --git a/x11-toolkits/tk86/Makefile b/x11-toolkits/tk86/Makefile index c1cf69ebd735..6abd657fd4df 100644 --- a/x11-toolkits/tk86/Makefile +++ b/x11-toolkits/tk86/Makefile @@ -76,6 +76,14 @@ CONFIGURE_ARGS+=--enable-threads CONFIGURE_ARGS+=--disable-threads .endif +post-patch: + ${REINPLACE_CMD} -e \ + 's|@TK_BUILD_LIB_SPEC@|@TK_LIB_SPEC@|; \ + s|@TK_BUILD_STUB_LIB_SPEC@|@TK_STUB_LIB_SPEC@|; \ + s|@TK_BUILD_STUB_LIB_PATH@|@TK_STUB_LIB_PATH@|; \ + s|@TK_SRC_DIR@|${PREFIX}/include/tk${TK_VER}|' \ + ${WRKSRC}/tkConfig.sh.in + regression-test: build cd ${WRKSRC}; ${MAKE} test ${ECHO_CMD} "package require Tk" | tclsh${TK_VER}