Prune x11/xpra
[dports.git] / lang / tcl87 / Makefile
1 # Created by: gahr
2 # $FreeBSD$
3
4 PORTNAME=       tcl
5 DISTVERSION=    8.7a1
6 PORTREVISION=   2
7 CATEGORIES=     lang
8 MASTER_SITES=   SF/tcl/Tcl/${DISTVERSION} \
9                 TCLTK/tcl8_7
10 PKGNAMESUFFIX=  ${PORTVERSION:R:S/.//}
11 DISTNAME=       ${PORTNAME}${DISTVERSION}-src
12
13 MAINTAINER=     tcltk@FreeBSD.org
14 COMMENT=        Tool Command Language
15
16 LICENSE=        TclTk
17 LICENSE_NAME=   Tcl/Tk License
18 LICENSE_FILE=   ${WRKSRC}/../license.terms
19 LICENSE_PERMS=  dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
20
21 OPTIONS_DEFINE= TCLMAN TZDATA DEBUG
22 OPTIONS_DEFINE_x86_64=  DTRACE
23 OPTIONS_DEFAULT_x86_64= DTRACE
24 TCLMAN_DESC=    Install Tcl function manpages
25 TZDATA_DESC=    Install Tcl timezone data
26 OPTIONS_SUB=    yes
27
28 USES=           pathfix
29
30 .if !exists(/usr/sbin/dtrace)
31 OPTIONS_EXCLUDE+=       DTRACE
32 .endif
33
34 OPTIONS_EXCLUDE_FreeBSD_10=     DTRACE
35
36 PATCH_WRKSRC=   ${WRKDIR}/${PORTNAME}${DISTVERSION}
37 WRKSRC=         ${PATCH_WRKSRC}/unix
38
39 ALL_TARGET=     binaries libraries doc
40 INSTALL_TARGET= install-strip
41 TEST_TARGET=    test-tcl
42
43 USE_LDCONFIG=   yes
44 GNU_CONFIGURE=  yes
45 CONFIGURE_ARGS= --enable-shared \
46                 --enable-man-suffix=.${MAN_SUFFIX} \
47                 --includedir=${PREFIX}/include/tcl${TCL_VER} \
48                 --enable-symbols
49
50 TCL_VER=        ${PORTVERSION:R}
51 MAN_SUFFIX=     ${PKGBASE}
52
53 MAKE_ENV=       SHORT_TCL_VER=${PKGNAMESUFFIX} \
54                 MAN_SUFFIX=.${MAN_SUFFIX} \
55
56 PLIST_SUB=      TCL_VER=${TCL_VER} \
57                 PKGNAMESUFFIX=${PKGNAMESUFFIX}
58
59 TCLMAN_INSTALL_TARGET=  install-doc
60 TZDATA_INSTALL_TARGET=  install-tzdata
61 DEBUG_CONFIGURE_ENABLE= symbols
62 DTRACE_CONFIGURE_ENABLE=        dtrace
63
64 .include <bsd.port.options.mk>
65
66 .if ${PORT_OPTIONS:MDTRACE}
67 PLIST_SUB+=     DTRACE=""
68 .else
69 PLIST_SUB+=     DTRACE="@comment "
70 .endif
71
72 post-patch:
73         ${REINPLACE_CMD} -e \
74             's|@TCL_BUILD_LIB_SPEC@|@TCL_LIB_SPEC@|; \
75              s|@TCL_BUILD_STUB_LIB_SPEC@|@TCL_STUB_LIB_SPEC@|; \
76              s|@TCL_BUILD_STUB_LIB_PATH@|@TCL_STUB_LIB_PATH@|; \
77              s|@TCL_SRC_DIR@|${PREFIX}/include/tcl${TCL_VER}|' \
78              ${PATCH_WRKSRC}/unix/tclConfig.sh.in
79
80 post-patch-TCLMAN-off:
81         @${FIND} ${PATCH_WRKSRC}/pkgs -name Makefile.in | ${XARGS} ${REINPLACE_CMD} \
82             -e '/^install:/s|install-doc||'
83
84 post-configure:
85         ${REINPLACE_CMD} \
86                 -e 's,-DNO_MEMMOVE=1,,' -e 's,-DNO_STRING_H=1,,' \
87                 -e 's,^COMPAT_OBJS.*,,' ${WRKSRC}/Makefile
88 post-install:
89         # Make sure users of USES=tcl:87 are able to look up the library
90         ${LN} -s libtcl${TCL_VER}.so ${STAGEDIR}${PREFIX}/lib/libtcl${PKGNAMESUFFIX}.so
91         ${LN} -s libtcl${PKGNAMESUFFIX}.so ${STAGEDIR}${PREFIX}/lib/libtcl${PKGNAMESUFFIX}.so.1
92         ${MKDIR} ${STAGEDIR}${PREFIX}/include/tcl${TCL_VER}/doc
93         ${INSTALL_DATA} ${WRKSRC}/../doc/man.macros ${STAGEDIR}${PREFIX}/include/tcl${TCL_VER}/doc/man.macros
94
95 .include <bsd.port.mk>