freebsd-ports/lang/tcl84/Makefile
Tijl Coosemans 02f27a83b4 The output of tools like awk, date, sort, tr,... depends on the current
locale set by the user.  Add LANG=C and LC_ALL=C at the beginning of
bsd.port.mk and export them so all commands are executed with the C locale.
LC_ALL=C overrides all other LC_* variables.  LANG is used by setlocale(3)
as default value for LC_* variables, so normally it isn't used when LC_ALL
is set, but there's code out there that looks at LANG directly so it's safer
to set it as well.  The only commands not captured by this are !=
assignments before any inclusion of bsd.port.*mk.

Introduce USE_LOCALE=<locale> that adds LANG=<locale> and LC_ALL=<locale> to
CONFIGURE_ENV and MAKE_ENV so upstream build systems can be executed with a
different locale (e.g. USE_LOCALE=en_US.UTF-8).

PR:		215882
Exp-run by:	antoine
Approved by:	portmgr (antoine)
2017-01-18 13:20:31 +00:00

81 lines
1.9 KiB
Makefile

# Created by: jkh
# $FreeBSD$
PORTNAME= tcl
PORTVERSION= 8.4.20
PORTREVISION= 2
PORTEPOCH= 1
CATEGORIES= lang tcl
MASTER_SITES= TCLTK/tcl8_4 \
SF/tcl/Tcl/${PORTVERSION}
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 THREADS
OPTIONS_DEFAULT=THREADS
TCLMAN_DESC= Install Tcl function manpages
WRKSRC= ${WRKDIR}/${PORTNAME}${PORTVERSION}/unix
ALL_TARGET= all
INSTALL_TARGET= install install-libraries
TEST_TARGET= test
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= 8.4
SHORT_TCL_VER= ${TCL_VER:S/8./8/}
MAN_SUFFIX= ${PKGBASE}
MAKE_ENV= SHORT_TCL_VER="${SHORT_TCL_VER}" \
MAN_SUFFIX=.${MAN_SUFFIX}
PLIST_SUB= TCL_VER=${TCL_VER} \
SHORT_TCL_VER=${SHORT_TCL_VER}
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MTCLMAN}
INSTALL_TARGET+=install-doc
PLIST_SUB+= MAN=""
.else
PLIST_SUB+= MAN="@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
post-configure:
${REINPLACE_CMD} \
-e 's,-DNO_MEMMOVE=1,,' -e 's,-DNO_STRING_H=1,,' \
-e 's,^COMPAT_OBJS.*,,' ${WRKSRC}/Makefile
post-install:
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/tclsh${TCL_VER}
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libtcl${SHORT_TCL_VER}.so.1
.include <bsd.port.mk>