Contents of /smage/trunk/core/ncurses/ncurses-5.9-r4.smage2
Parent Directory | Revision Log
Revision 4051 -
(show annotations)
(download)
Tue Nov 6 13:34:46 2012 UTC (11 years, 7 months ago) by niro
File size: 4957 byte(s)
Tue Nov 6 13:34:46 2012 UTC (11 years, 7 months ago) by niro
File size: 4957 byte(s)
-rebuild
1 | # $Id$ |
2 | |
3 | PNAME="ncurses" |
4 | PVER="5.9" |
5 | PBUILD="r4" |
6 | |
7 | PCAT="sys-libs" |
8 | |
9 | DESCRIPTION="Linux console display library." |
10 | HOMEPAGE="http://www.gnu.org/software/ncurses/ncurses.html" |
11 | |
12 | DEPEND_x86_64=">= sys-apps/multiarch-wrapper-1" |
13 | SPECIAL_VARS="DEPEND_x86_64" |
14 | |
15 | DEPEND="$(marchdepend) |
16 | >= virtual/glibc" |
17 | |
18 | SRCFILE="${PNAME}-${PVER}.tar.gz" |
19 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" |
20 | |
21 | ALX_PKG_KEEP="usr/bin/tput |
22 | usr/$(mlibdir)/*.so.* |
23 | usr/$(mlibdir)/terminfo |
24 | usr/share/tabset |
25 | usr/share/terminfo/l/linux |
26 | usr/share/terminfo/r/rxvt |
27 | usr/share/terminfo/v/vt100 |
28 | usr/share/terminfo/x/xterm |
29 | usr/share/terminfo/x/xterm-color" |
30 | sminclude mtools multilib alx-split |
31 | msetfeature "!check" |
32 | |
33 | SRC_URI=( |
34 | gnu://${PNAME}/${SRCFILE} |
35 | mirror://${PNAME}/${SRCFILE} |
36 | ) |
37 | |
38 | UP2DATE="updatecmd_gnu ${PNAME} gz" |
39 | |
40 | src_prepare() |
41 | { |
42 | # non widec |
43 | munpack ${SRCFILE} || die |
44 | for abi in ${MULTILIB_ABIS} |
45 | do |
46 | mv ${SRCDIR}{,-non-widec}-${abi} || die |
47 | done |
48 | |
49 | # widec |
50 | munpack ${SRCFILE} || die |
51 | } |
52 | |
53 | src_compile() |
54 | { |
55 | # fixes build issues on multilib; do not export any ABI_LDFLAGS |
56 | EXPORT_ABI_LDFLAGS=false |
57 | |
58 | # widec |
59 | # -hashed-db needs Berkeley DB |
60 | mconfigure --with-shared --without-debug --without-ada --without-hashed-db --enable-widec || die |
61 | # fix parallel make builds |
62 | mmake -j1 sources || die |
63 | mmake || die |
64 | |
65 | # non-widec |
66 | # -hashed-db needs Berkeley DB |
67 | SRCDIR="${SRCDIR}-non-widec" mconfigure --with-shared --without-debug --without-ada --without-hashed-db || die |
68 | # fix parallel make builds |
69 | SRCDIR="${SRCDIR}-non-widec" mmake -j1 sources || die |
70 | SRCDIR="${SRCDIR}-non-widec" mmake || die |
71 | } |
72 | |
73 | alx_generic_src_install() |
74 | { |
75 | mmake DESTDIR=${BINDIR} install || die |
76 | |
77 | mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die |
78 | mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die |
79 | |
80 | # install multlib-lib compat curses/curses-widec config |
81 | if [[ $(mlibdir) != lib ]] |
82 | then |
83 | all-abis minstallexec misc/ncurses-config /usr/bin/ncursesw5-config-$(mabi) || die |
84 | all-abis mlink ncursesw5-config-$(mabi) /usr/bin/ncurses5-config-$(mabi) || die |
85 | mlink multiarch-wrapper /usr/bin/ncursesw5-config || die |
86 | mlink ncursesw5-config /usr/bin/ncurses5-config || die |
87 | fi |
88 | |
89 | # non-widec compat |
90 | for lib in curses ncurses form panel menu |
91 | do |
92 | echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/$(mlibdir)/lib${lib}.so || die |
93 | mlink lib${lib}w.a /usr/$(mlibdir)/lib${lib}.a || die |
94 | done |
95 | mlink libcurses.so /usr/$(mlibdir)/libcursesw.so || die |
96 | mlink libncurses.so /usr/$(mlibdir)/libcurses.so || die |
97 | mlink libncursesw.a /usr/$(mlibdir)/libcursesw.a || die |
98 | mlink libncurses.a /usr/$(mlibdir)/libcurses.a || die |
99 | mlink libncurses++w.a /usr/$(mlibdir)/libncurses++.a || die |
100 | |
101 | # move the -m32 libs also to the right place (multilib) |
102 | if [[ $(mlibdir) != lib ]] |
103 | then |
104 | mchmod 755 /usr/lib/\*.${PVER} || die |
105 | mchmod 644 /usr/lib/libncurses++w.a || die |
106 | |
107 | # non-widec compat |
108 | for lib in curses ncurses form panel menu |
109 | do |
110 | echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/lib/lib${lib}.so || die |
111 | mlink lib${lib}w.a /usr/lib/lib${lib}.a || die |
112 | done |
113 | mlink libcurses.so /usr/lib/libcursesw.so || die |
114 | mlink libncurses.so /usr/lib/libcurses.so || die |
115 | mlink libncursesw.a /usr/lib/libcursesw.a || die |
116 | mlink libncurses.a /usr/lib/libcurses.a || die |
117 | mlink libncurses++w.a /usr/lib/libncurses++.a || die |
118 | fi |
119 | |
120 | # install non-widec runtime compat library (do not use minstalllib, |
121 | # we need libcnurses.so with loader hint for libncursesw and not a plain symlink! |
122 | all-abis minstallexec ${SRCDIR}-non-widec-'$abi'/lib/libncurses.so.${PVER} /usr/'$(mlibdir)' || die |
123 | all-abis mlink libncurses.so.${PVER} /usr/'$(mlibdir)'/libncurses.so.${PVER%%.*} || die |
124 | |
125 | # fixes a small man issue |
126 | if [ -e ${BINDIR}/usr/share/man/tack.1 ] |
127 | then |
128 | mv ${BINDIR}/usr/share/man/tack.1 \ |
129 | ${BINDIR}/usr/share/man/man1 || die |
130 | fi |
131 | |
132 | # fix to enable colors in the default xterm |
133 | mv ${BINDIR}/usr/share/terminfo/x/xterm \ |
134 | ${BINDIR}/usr/share/terminfo/x/xterm.orig || die |
135 | mlink xterm-color /usr/share/terminfo/x/xterm || die |
136 | |
137 | minstalldocs ANNOUNCE MANIFEST NEWS README* TO-DO || die |
138 | |
139 | # do not collide with busybox |
140 | local app |
141 | for app in /usr/bin/clear /usr/bin/reset |
142 | do |
143 | if [[ -e ${BINDIR}${app} ]] |
144 | then |
145 | rm -f ${BINDIR}${app} || die ${app} |
146 | fi |
147 | done |
148 | } |
149 | |
150 | preinstall() |
151 | { |
152 | if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so ] |
153 | then |
154 | rm ${MROOT}/usr/$(mlibdir)/libncurses.so || die |
155 | fi |
156 | |
157 | if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.5 ] |
158 | then |
159 | rm ${MROOT}/usr/$(mlibdir)/libncurses.so.5 || die |
160 | fi |
161 | |
162 | if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.5 ] |
163 | then |
164 | rm ${MROOT}/usr/$(mlibdir)/libcurses.so.5 || die |
165 | fi |
166 | |
167 | if [[ $(mlibdir) != lib ]] |
168 | then |
169 | if [ -L ${MROOT}/usr/lib/libncurses.so ] |
170 | then |
171 | rm ${MROOT}/usr/lib/libncurses.so || die |
172 | fi |
173 | |
174 | if [ -L ${MROOT}/usr/lib/libncurses.so.5 ] |
175 | then |
176 | rm ${MROOT}/usr/lib/libncurses.so.5 || die |
177 | fi |
178 | |
179 | if [ -L ${MROOT}/usr/lib/libcurses.so.5 ] |
180 | then |
181 | rm ${MROOT}/usr/lib/libcurses.so.5 || die |
182 | fi |
183 | fi |
184 | } |
185 | |
186 | postinstall() |
187 | { |
188 | # force ldconfig here |
189 | if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]] |
190 | then |
191 | /sbin/ldconfig |
192 | fi |
193 | } |