Contents of /trunk/extras/tcl/tcl-8.6.7-r1.smage2
Parent Directory | Revision Log
Revision 30132 -
(show annotations)
(download)
Mon Oct 30 06:55:39 2017 UTC (6 years, 10 months ago) by niro
File size: 2938 byte(s)
Mon Oct 30 06:55:39 2017 UTC (6 years, 10 months ago) by niro
File size: 2938 byte(s)
auto added: ver bump to 8.6.7-r1
1 | # $Id$ |
2 | |
3 | PNAME="tcl" |
4 | PVER="8.6.7" |
5 | PBUILD="r1" |
6 | |
7 | PCAT="dev-lang" |
8 | |
9 | DESCRIPTION="The Tcl package contains the Tool Command Language, a robust general-purpose scripting language." |
10 | HOMEPAGE="http://tcl.sourceforge.net/" |
11 | |
12 | DEPEND=">= virtual/glibc |
13 | >= sys-libs/zlib-1.2.8" |
14 | SDEPEND=">= virtual/sed" |
15 | |
16 | SRCFILE="${PNAME}${PVER}-src.tar.gz" |
17 | SRCDIR="${BUILDDIR}/${PNAME}${PVER}" |
18 | |
19 | sminclude mtools |
20 | |
21 | SRC_URI=( |
22 | sourceforge://${PNAME}/${SRCFILE} |
23 | mirror://${PNAME}/${SRCFILE} |
24 | mirror://${PNAME}/${PNAME}-8.5.5-libdir.patch |
25 | mirror://${PNAME}/${PNAME}-8.6.1-flags.patch |
26 | mirror://${PNAME}/${PNAME}-8.6.0-autopath.patch |
27 | ) |
28 | |
29 | UP2SEPERATOR="${PNAME}" |
30 | UP2SUBSTITUTE="-src" |
31 | UP2DATE="updatecmd -listonly http://www.tcl.tk/software/tcltk/download.html | grep '${PNAME}[0-9]' | highesttarball gz" |
32 | |
33 | src_prepare() |
34 | { |
35 | munpack ${SRCFILE} || die |
36 | cd ${SRCDIR} |
37 | |
38 | # support variable libdir |
39 | mpatch ${PNAME}-8.5.5-libdir.patch || die |
40 | |
41 | # fix rpath and pic issues |
42 | mpatch ${PNAME}-8.6.1-flags.patch || die |
43 | |
44 | # fix library runtime detection with disabled rpath from the patch above |
45 | mpatch ${PNAME}-8.6.0-autopath.patch || die |
46 | |
47 | # increase value from 500 to 5000 to fix dejagnu issues |
48 | # see: http://lists.freebsd.org/pipermail/freebsd-tcltk/2013-June/000068.html |
49 | # at least libffi testsuite needs this fix |
50 | sed -i 's:#define DUPTRAVERSE_MAX_DEPTH 500:&0:' generic/regc_nfa.c || die |
51 | |
52 | cd ${SRCDIR}/unix |
53 | mautoreconf || die |
54 | } |
55 | |
56 | src_compile() |
57 | { |
58 | cd ${SRCDIR}/unix |
59 | |
60 | mconfigure || die |
61 | mmake || die |
62 | } |
63 | |
64 | src_check() |
65 | { |
66 | cd ${SRCDIR}/unix |
67 | make test || die |
68 | } |
69 | |
70 | src_install() |
71 | { |
72 | cd ${SRCDIR}/unix |
73 | |
74 | local V="$(echo ${PVER} | cut -d "." -f 1,2)" |
75 | |
76 | # removes the reference to the build directory |
77 | # and replace them by saner system wide locations |
78 | sed -i "s:${SRCDIR}/unix:/usr/$(mlibdir):" tclConfig.sh || die |
79 | sed -i "s:${SRCDIR}:/usr/include/tcl${V}:" tclConfig.sh || die |
80 | sed -i "s,^TCL_LIB_FILE='libtcl${V}..TCL_DBGX..so',TCL_LIB_FILE=\"libtcl${V}\$\{TCL_DBGX\}.so\"," tclConfig.sh || die |
81 | |
82 | # installs tcl |
83 | mmake -j1 DESTDIR=${BINDIR} install || die |
84 | |
85 | # installs the internal headers into a system-wide location. |
86 | minstalldir /usr/include/tcl${V}/unix || die |
87 | minstallfile \*.h /usr/include/tcl${V}/unix/ || die |
88 | minstalldir /usr/include/tcl${V}/generic || die |
89 | minstallfile ../generic/\*.h /usr/include/tcl${V}/generic/ || die |
90 | mdelete /usr/include/tcl${V}/generic/tcl.h || die |
91 | mdelete /usr/include/tcl${V}/generic/tclDecls.h || die |
92 | mdelete /usr/include/tcl${V}/generic/tclPlatDecls.h || die |
93 | |
94 | # symlink unix private headers to generic (expect needs that) |
95 | mlink ../unix/tclUnixPort.h /usr/include/tcl${V}/generic || die |
96 | mlink ../unix/tclUnixThrd.h /usr/include/tcl${V}/generic || die |
97 | |
98 | # creates compatibility symbolic links for the libs |
99 | mlink ../../include/tcl${V} /usr/$(mlibdir)/tcl${V}/include || die |
100 | mlink libtcl${V}.so /usr/$(mlibdir)/libtcl.so || die |
101 | |
102 | mlink tclsh${V} /usr/bin/tclsh || die |
103 | |
104 | cd ${SRCDIR} |
105 | minstalldocs ChangeLog* changes license.terms README || die |
106 | } |