Index: head/lang/tcl86/Makefile =================================================================== --- head/lang/tcl86/Makefile (revision 366875) +++ head/lang/tcl86/Makefile (revision 366876) @@ -1,99 +1,100 @@ # Created by: Martin Matuska # $FreeBSD$ PORTNAME= tcl PORTVERSION= 8.6.2 +PORTREVISION= 1 CATEGORIES= lang MASTER_SITES= SF/tcl/Tcl/${PORTVERSION} \ ${MASTER_SITE_TCLTK} MASTER_SITE_SUBDIR=tcl8_6 PKGNAMESUFFIX= ${PORTVERSION:R:S/.//} DISTNAME= ${PORTNAME}${PORTVERSION}-src MAINTAINER= tcltk@FreeBSD.org COMMENT= Tool Command Language LICENSE= TclTk LICENSE_NAME= Tcl/Tk License LICENSE_FILE= ${WRKSRC}/../license.terms LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept OPTIONS_DEFINE= TCLMAN TZDATA MODULES THREADS OPTIONS_DEFAULT=MODULES THREADS TCLMAN_DESC= Install Tcl function manpages TZDATA_DESC= Install Tcl timezone data MODULES_DESC= Install Tcl common modules WRKSRC= ${WRKDIR}/${PORTNAME}${PORTVERSION}/unix ALL_TARGET= all INSTALL_TARGET= install-strip install-libraries USE_LDCONFIG= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --enable-shared \ --enable-man-suffix=.${MAN_SUFFIX} \ --includedir=${PREFIX}/include/tcl${TCL_VER} \ CONFIGURE_ENV= PORTSDIR=${PORTSDIR} TCL_VER= ${PORTVERSION:R} SHORT_TCL_VER= ${TCL_VER:S/.//} MAN_SUFFIX= ${LATEST_LINK} MAKE_ENV= SHORT_TCL_VER=${SHORT_TCL_VER} \ MAN_SUFFIX=.${MAN_SUFFIX} \ LANG=C LC_ALL=C # LANG=C is required for some of UTF-using tests PLIST_SUB= TCL_VER=${TCL_VER} \ SHORT_TCL_VER=${SHORT_TCL_VER} .include .if ${PORT_OPTIONS:MTCLMAN} INSTALL_TARGET+=install-doc PLIST_SUB+= MAN="" .else PLIST_SUB+= MAN="@comment " .endif .if ${PORT_OPTIONS:MTZDATA} PLIST_SUB+= TZDATA="" INSTALL_TARGET+=install-tzdata .else PLIST_SUB+= TZDATA="@comment " .endif .if ${PORT_OPTIONS:MMODULES} PLIST_SUB+= MODULES="" INSTALL_TARGET+=install-modules .else PLIST_SUB+= MODULES="@comment " .endif .if ${PORT_OPTIONS:MTHREADS} CONFIGURE_ARGS+=--enable-threads .else 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 .if !${PORT_OPTIONS:MTCLMAN} @${FIND} ${WRKSRC}/../pkgs -name Makefile.in | ${XARGS} ${REINPLACE_CMD} \ -e '/^install:/s|install-doc||' .endif post-configure: ${REINPLACE_CMD} \ -e 's,-DNO_MEMMOVE=1,,' -e 's,-DNO_STRING_H=1,,' \ -e 's,^COMPAT_OBJS.*,,' ${WRKSRC}/Makefile regression-test: build cd ${WRKSRC} && LC_ALL=C ${MAKE} test .include Index: head/lang/tcl86/files/patch-unix-Makefile.in =================================================================== --- head/lang/tcl86/files/patch-unix-Makefile.in (revision 366875) +++ head/lang/tcl86/files/patch-unix-Makefile.in (revision 366876) @@ -1,186 +1,202 @@ --- Makefile.in.orig 2014-08-26 17:23:08.000000000 +0200 -+++ Makefile.in 2014-09-01 09:32:00.000000000 +0200 ++++ Makefile.in 2014-09-01 15:03:50.000000000 +0200 @@ -54,6 +54,8 @@ # Directory in which to install the include file tcl.h: INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(includedir) +GENERIC_INCLUDE_INSTALL_DIR = $(INCLUDE_INSTALL_DIR)/generic +UNIX_INCLUDE_INSTALL_DIR = $(INCLUDE_INSTALL_DIR)/unix # Path to the private tcl header dir: PRIVATE_INCLUDE_DIR = @PRIVATE_INCLUDE_DIR@ @@ -80,10 +82,10 @@ HTML_INSTALL_DIR = $(INSTALL_ROOT)$(HTML_DIR) # Directory in which to install the configuration file tclConfig.sh -CONFIG_INSTALL_DIR = $(INSTALL_ROOT)$(libdir) +CONFIG_INSTALL_DIR = $(SCRIPT_INSTALL_DIR) # Directory in which to install bundled packages: -PACKAGE_DIR = @PACKAGE_DIR@ +PACKAGE_DIR = $(SCRIPT_INSTALL_DIR) # Package search path. TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@ @@ -611,9 +613,9 @@ # Start of rules #-------------------------------------------------------------------------- -all: binaries libraries doc packages +all: binaries libraries doc -binaries: ${LIB_FILE} ${TCL_EXE} +binaries: ${LIB_FILE} ${TCL_EXE} libtcl${SHORT_TCL_VER}.a libraries: @@ -624,6 +626,12 @@ ${LIB_FILE}: ${STUB_LIB_FILE} ${OBJS} rm -f $@ @MAKE_LIB@ + @ln -sf ${LIB_FILE} ./libtcl${SHORT_TCL_VER}.so + +libtcl${SHORT_TCL_VER}.a: ${OBJS} + rm -f libtcl${SHORT_TCL_VER}.a + ar cr libtcl${SHORT_TCL_VER}.a ${OBJS} + ${RANLIB} libtcl${SHORT_TCL_VER}.a ${STUB_LIB_FILE}: ${STUB_LIB_OBJS} @if test "x${LIB_FILE}" = "xlibtcl${MAJOR_VERSION}.${MINOR_VERSION}.dll"; then \ @@ -767,13 +775,13 @@ # Installation rules #-------------------------------------------------------------------------- -INSTALL_BASE_TARGETS = install-binaries install-libraries install-msgs $(INSTALL_TZDATA) +INSTALL_BASE_TARGETS = install-binaries install-msgs $(INSTALL_TZDATA) INSTALL_DOC_TARGETS = install-doc INSTALL_PACKAGE_TARGETS = install-packages INSTALL_DEV_TARGETS = install-headers INSTALL_EXTRA_TARGETS = @EXTRA_INSTALL@ -INSTALL_TARGETS = $(INSTALL_BASE_TARGETS) $(INSTALL_DOC_TARGETS) $(INSTALL_DEV_TARGETS) \ - $(INSTALL_PACKAGE_TARGETS) $(INSTALL_EXTRA_TARGETS) +INSTALL_TARGETS = $(INSTALL_BASE_TARGETS) $(INSTALL_DEV_TARGETS) \ + $(INSTALL_EXTRA_TARGETS) install: $(INSTALL_TARGETS) @@ -799,6 +807,11 @@ @echo "Installing $(LIB_FILE) to $(DLL_INSTALL_DIR)/" @@INSTALL_LIB@ @chmod 555 "$(DLL_INSTALL_DIR)/$(LIB_FILE)" + @ln -sf $(LIB_FILE) "$(DLL_INSTALL_DIR)"/libtcl${SHORT_TCL_VER}.so + @echo "Installing libtcl${SHORT_TCL_VER}.a to $(DLL_INSTALL_DIR)" + @$(INSTALL_DATA) libtcl${SHORT_TCL_VER}.a "$(DLL_INSTALL_DIR)"/libtcl${SHORT_TCL_VER}.a + @(cd "$(DLL_INSTALL_DIR)" && ${RANLIB} libtcl${SHORT_TCL_VER}.a) + @chmod 555 "$(DLL_INSTALL_DIR)"/libtcl${SHORT_TCL_VER}.a @echo "Installing ${TCL_EXE} as $(BIN_INSTALL_DIR)/tclsh$(VERSION)${EXE_SUFFIX}" @$(INSTALL_PROGRAM) ${TCL_EXE} "$(BIN_INSTALL_DIR)/tclsh$(VERSION)${EXE_SUFFIX}" @echo "Installing tclConfig.sh to $(CONFIG_INSTALL_DIR)/" -@@ -811,12 +824,12 @@ +@@ -811,12 +824,20 @@ @INSTALL_STUB_LIB@ ; \ fi @EXTRA_INSTALL_BINARIES@ - @echo "Installing pkg-config file to $(LIB_INSTALL_DIR)/pkgconfig/" - @$(INSTALL_DATA_DIR) $(LIB_INSTALL_DIR)/pkgconfig - @$(INSTALL_DATA) tcl.pc $(LIB_INSTALL_DIR)/pkgconfig/tcl.pc + @echo "Installing pkg-config file to $(prefix)/libdata/pkgconfig" + @$(INSTALL_DATA_DIR) $(INSTALL_ROOT)$(prefix)/libdata/pkgconfig + @$(INSTALL_DATA) tcl.pc $(INSTALL_ROOT)$(prefix)/libdata/pkgconfig/tcl.pc ++ @for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex \ ++ $(UNIX_DIR)/tclAppInit.c @LDAIX_SRC@ @DTRACE_SRC@; \ ++ do \ ++ $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"; \ ++ done; ++ @echo "Customizing tcl module path"; \ ++ echo "::tcl::tm::path add {$(TCL_LIBRARY)}" >> \ ++ "$(SCRIPT_INSTALL_DIR)"/tm.tcl; install-libraries: libraries - @for i in "$(SCRIPT_INSTALL_DIR)"; \ + @for i in "$(SCRIPT_INSTALL_DIR)" "$(SCRIPT_INSTALL_DIR)"/encoding; \ do \ if [ ! -d "$$i" ] ; then \ echo "Making directory $$i"; \ -@@ -824,7 +837,13 @@ +@@ -824,7 +845,13 @@ else true; \ fi; \ done; - @for i in opt0.4 http1.0 encoding ../tcl8 ../tcl8/8.4 ../tcl8/8.4/platform ../tcl8/8.5 ../tcl8/8.6; \ + @echo "Installing encoding files to $(SCRIPT_INSTALL_DIR)/encoding"; + @for i in $(TOP_DIR)/library/encoding/*.enc ; do \ + $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/encoding; \ + done; + +install-modules: libraries + @for i in opt0.4 http1.0 platform; \ do \ if [ ! -d "$(SCRIPT_INSTALL_DIR)"/$$i ] ; then \ echo "Making directory $(SCRIPT_INSTALL_DIR)/$$i"; \ -@@ -844,31 +863,23 @@ +@@ -833,42 +860,26 @@ + fi; \ + done; + @echo "Installing library files to $(SCRIPT_INSTALL_DIR)/"; +- @for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex \ +- $(UNIX_DIR)/tclAppInit.c @LDAIX_SRC@ @DTRACE_SRC@; \ +- do \ +- $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"; \ +- done; + @echo "Installing package http1.0 files to $(SCRIPT_INSTALL_DIR)/http1.0/"; + @for i in $(TOP_DIR)/library/http1.0/*.tcl ; \ + do \ $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/http1.0; \ done; @echo "Installing package http 2.8.8 as a Tcl Module"; - @$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.6/http-2.8.8.tm; + @$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)"/http-2.8.8.tm; @echo "Installing package opt0.4 files to $(SCRIPT_INSTALL_DIR)/opt0.4/"; @for i in $(TOP_DIR)/library/opt/*.tcl ; \ do \ $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/opt0.4; \ done; @echo "Installing package msgcat 1.5.2 as a Tcl Module"; - @$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.5/msgcat-1.5.2.tm; + @$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl "$(SCRIPT_INSTALL_DIR)"/msgcat-1.5.2.tm; @echo "Installing package tcltest 2.3.8 as a Tcl Module"; - @$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.5/tcltest-2.3.8.tm; - + @$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(SCRIPT_INSTALL_DIR)"/tcltest-2.3.8.tm; @echo "Installing package platform 1.0.13 as a Tcl Module"; - @$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform-1.0.13.tm; + @$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(SCRIPT_INSTALL_DIR)"/platform-1.0.13.tm; @echo "Installing package platform::shell 1.1.4 as a Tcl Module"; - @$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform/shell-1.1.4.tm; - - @echo "Installing encoding files to $(SCRIPT_INSTALL_DIR)/encoding/"; - @for i in $(TOP_DIR)/library/encoding/*.enc ; do \ - $(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/encoding; \ - done; - @if [ -n "$(TCL_MODULE_PATH)" -a -f $(TOP_DIR)/library/tm.tcl ]; then \ - echo "Customizing tcl module path"; \ - echo "if {![interp issafe]} { ::tcl::tm::roots {$(TCL_MODULE_PATH)} }" >> \ - "$(SCRIPT_INSTALL_DIR)"/tm.tcl; \ - fi + @$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(SCRIPT_INSTALL_DIR)"/platform/shell-1.1.4.tm; -+ @echo "Customizing tcl module path"; \ -+ echo "::tcl::tm::path add {$(TCL_LIBRARY)}" >> \ -+ "$(SCRIPT_INSTALL_DIR)"/tm.tcl; install-tzdata: @for i in tzdata; \ @@ -943,7 +954,7 @@ done install-headers: - @for i in "$(INCLUDE_INSTALL_DIR)"; \ + @for i in "$(INCLUDE_INSTALL_DIR)" "$(GENERIC_INCLUDE_INSTALL_DIR)" "$(UNIX_INCLUDE_INSTALL_DIR)"; \ do \ if [ ! -d "$$i" ] ; then \ echo "Making directory $$i"; \ @@ -952,14 +963,19 @@ fi; \ done; @echo "Installing header files to $(INCLUDE_INSTALL_DIR)/"; - @for i in $(GENERIC_DIR)/tcl.h $(GENERIC_DIR)/tclDecls.h \ - $(GENERIC_DIR)/tclOO.h $(GENERIC_DIR)/tclOODecls.h \ - $(GENERIC_DIR)/tclPlatDecls.h \ - $(GENERIC_DIR)/tclTomMath.h \ - $(GENERIC_DIR)/tclTomMathDecls.h ; \ - do \ - $(INSTALL_DATA) $$i "$(INCLUDE_INSTALL_DIR)"; \ + @for i in $(GENERIC_DIR)/*.h; do \ + $(INSTALL_DATA) $$i "$(GENERIC_INCLUDE_INSTALL_DIR)"/; \ + done; + @for i in $(UNIX_DIR)/*.h; do \ + $(INSTALL_DATA) $$i "$(UNIX_INCLUDE_INSTALL_DIR)"/; \ done; + @ln -sf generic/tcl.h "$(INCLUDE_INSTALL_DIR)"/tcl.h + @ln -sf generic/tclDecls.h "$(INCLUDE_INSTALL_DIR)"/tclDecls.h + @ln -sf generic/tclPlatDecls.h "$(INCLUDE_INSTALL_DIR)"/tclPlatDecls.h + @ln -sf generic/tclOO.h "$(INCLUDE_INSTALL_DIR)"/tclOO.h + @ln -sf generic/tclOODecls.h "$(INCLUDE_INSTALL_DIR)"/tclOODecls.h + @ln -sf generic/tclTomMath.h "$(INCLUDE_INSTALL_DIR)"/tclTomMath.h + @ln -sf generic/tclTomMathDecls.h "$(INCLUDE_INSTALL_DIR)"/tclTomMathDecls.h # Optional target to install private headers install-private-headers: