Annotation of /trunk/core/ncurses/ncurses-6.1-r1.smage2
Parent Directory | Revision Log
Revision 30601 -
(hide annotations)
(download)
Mon Feb 5 10:49:05 2018 UTC (6 years, 7 months ago) by niro
File size: 6875 byte(s)
Mon Feb 5 10:49:05 2018 UTC (6 years, 7 months ago) by niro
File size: 6875 byte(s)
auto added: ver bump to 6.1-r1
1 | niro | 30601 | # $Id$ |
2 | |||
3 | PNAME="ncurses" | ||
4 | PVER="6.1" | ||
5 | PBUILD="r1" | ||
6 | |||
7 | SPLIT_PACKAGES="ncurses ncurses-term" | ||
8 | |||
9 | PCAT="sys-libs" | ||
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 | NCURSES_DEPEND="$(marchdepend) | ||
16 | >= virtual/glibc" | ||
17 | SDEPEND="${NCURSES_DEPEND}" | ||
18 | |||
19 | SRCFILE="${PNAME}-${PVER}.tar.gz" | ||
20 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" | ||
21 | |||
22 | sminclude mtools multilib cleanutils | ||
23 | msetfeature "!check" | ||
24 | |||
25 | SRC_URI=( | ||
26 | gnu://${PNAME}/${SRCFILE} | ||
27 | mirror://${PNAME}/${SRCFILE} | ||
28 | ) | ||
29 | |||
30 | UP2DATE="updatecmd_gnu ${PNAME} gz" | ||
31 | |||
32 | split_info_ncurses() | ||
33 | { | ||
34 | DESCRIPTION="Linux console display library." | ||
35 | DEPEND="${NCURSES_DEPEND}" | ||
36 | } | ||
37 | |||
38 | split_info_ncurses-term() | ||
39 | { | ||
40 | DESCRIPTION="Additional terminal descriptions for ncurses." | ||
41 | DEPEND="== sys-libs/ncurses-${PVER}" | ||
42 | } | ||
43 | |||
44 | src_prepare() | ||
45 | { | ||
46 | # non widec | ||
47 | munpack ${SRCFILE} || die | ||
48 | |||
49 | cd ${BUILDDIR} | ||
50 | for abi in ${MULTILIB_ABIS} | ||
51 | do | ||
52 | mv ${SRCDIR}{,-non-widec}-${abi} || die | ||
53 | done | ||
54 | |||
55 | # widec | ||
56 | munpack ${SRCFILE} || die | ||
57 | } | ||
58 | |||
59 | src_compile() | ||
60 | { | ||
61 | # fixes build issues on multilib; do not export any ABI_LDFLAGS | ||
62 | EXPORT_ABI_LDFLAGS=false | ||
63 | |||
64 | # widec | ||
65 | # -hashed-db needs Berkeley DB | ||
66 | mconfigure --with-shared --without-debug --without-ada --without-hashed-db --enable-widec || die | ||
67 | # fix parallel make builds | ||
68 | mmake -j1 sources || die | ||
69 | mmake || die | ||
70 | |||
71 | # non-widec | ||
72 | # -hashed-db needs Berkeley DB | ||
73 | SRCDIR="${SRCDIR}-non-widec" mconfigure --with-shared --without-debug --without-ada --without-hashed-db || die | ||
74 | # fix parallel make builds | ||
75 | SRCDIR="${SRCDIR}-non-widec" mmake -j1 sources || die | ||
76 | SRCDIR="${SRCDIR}-non-widec" mmake || die | ||
77 | } | ||
78 | |||
79 | src_install_ncurses() | ||
80 | { | ||
81 | mmake DESTDIR=${BINDIR} install || die | ||
82 | |||
83 | mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die | ||
84 | mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die | ||
85 | |||
86 | # install multlib-lib compat curses/curses-widec config | ||
87 | if [[ $(mlibdir) != lib ]] | ||
88 | then | ||
89 | all-abis minstallexec misc/ncurses-config /usr/bin/ncursesw${PVER%%.*}-config-$(mabi) || die | ||
90 | all-abis mlink ncursesw${PVER%%.*}-config-$(mabi) /usr/bin/ncurses${PVER%%.*}-config-$(mabi) || die | ||
91 | mlink multiarch-wrapper /usr/bin/ncursesw${PVER%%.*}-config || die | ||
92 | mlink ncursesw${PVER%%.*}-config /usr/bin/ncurses${PVER%%.*}-config || die | ||
93 | fi | ||
94 | |||
95 | # non-widec compat | ||
96 | for lib in curses ncurses form panel menu | ||
97 | do | ||
98 | echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/$(mlibdir)/lib${lib}.so || die | ||
99 | mlink lib${lib}w.a /usr/$(mlibdir)/lib${lib}.a || die | ||
100 | done | ||
101 | mlink libcurses.so /usr/$(mlibdir)/libcursesw.so || die | ||
102 | mlink libncurses.so /usr/$(mlibdir)/libcurses.so || die | ||
103 | mlink libncursesw.a /usr/$(mlibdir)/libcursesw.a || die | ||
104 | mlink libncurses.a /usr/$(mlibdir)/libcurses.a || die | ||
105 | mlink libncurses++w.a /usr/$(mlibdir)/libncurses++.a || die | ||
106 | minstalldir /usr/include/ncursesw || die | ||
107 | mlink ../curses.h /usr/include/ncursesw/curses.h || die | ||
108 | mlink ../ncurses.h /usr/include/ncursesw/ncurses.h || die | ||
109 | |||
110 | # move the -m32 libs also to the right place (multilib) | ||
111 | if [[ $(mlibdir) != lib ]] | ||
112 | then | ||
113 | mchmod 755 /usr/lib/\*.${PVER} || die | ||
114 | mchmod 644 /usr/lib/libncurses++w.a || die | ||
115 | |||
116 | # non-widec compat | ||
117 | for lib in curses ncurses form panel menu | ||
118 | do | ||
119 | echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/lib/lib${lib}.so || die | ||
120 | mlink lib${lib}w.a /usr/lib/lib${lib}.a || die | ||
121 | done | ||
122 | mlink libcurses.so /usr/lib/libcursesw.so || die | ||
123 | mlink libncurses.so /usr/lib/libcurses.so || die | ||
124 | mlink libncursesw.a /usr/lib/libcursesw.a || die | ||
125 | mlink libncurses.a /usr/lib/libcurses.a || die | ||
126 | mlink libncurses++w.a /usr/lib/libncurses++.a || die | ||
127 | fi | ||
128 | |||
129 | # install non-widec runtime compat library (do not use minstalllib, | ||
130 | # we need libcnurses.so with loader hint for libncursesw and not a plain symlink! | ||
131 | all-abis minstallexec ${SRCDIR}-non-widec-'$abi'/lib/libncurses.so.${PVER} /usr/'$(mlibdir)' || die | ||
132 | all-abis mlink libncurses.so.${PVER} /usr/'$(mlibdir)'/libncurses.so.${PVER%%.*} || die | ||
133 | |||
134 | # fixes a small man issue | ||
135 | if [ -e ${BINDIR}/usr/share/man/tack.1 ] | ||
136 | then | ||
137 | mv ${BINDIR}/usr/share/man/tack.1 \ | ||
138 | ${BINDIR}/usr/share/man/man1 || die | ||
139 | fi | ||
140 | |||
141 | # fix to enable colors in the default xterm | ||
142 | mv ${BINDIR}/usr/share/terminfo/x/xterm \ | ||
143 | ${BINDIR}/usr/share/terminfo/x/xterm.orig || die | ||
144 | mlink xterm-color /usr/share/terminfo/x/xterm || die | ||
145 | |||
146 | # zapmost uncommon terminfo | ||
147 | zapmost ${BINDIR}/usr/share/terminfo \ | ||
148 | E/Eterm\* a/aterm a/ansi b/bterm c/cons25 c/cygwin d/dumb e/eterm\* g/gnome g/gnome-256color \ | ||
149 | h/hurd j/jfbterm k/konsole k/konsole-256color l/linux\* m/mach\* m/mlterm m/mrxvt n/nsterm \ | ||
150 | p/putty\* p/pcansi r/rxvt r/rxvt-\* s/screen s/screen-\*color s/screen.\* s/sun t/teraterm t/teraterm2.3 \ | ||
151 | v/vt100 v/vt100-nav v/vt102 v/vt220 v/vt52 v/vte v/vte-256color v/vwmterm w/wsvt25\* \ | ||
152 | x/xfce x/xterm x/xterm-\* \ | ||
153 | || die | ||
154 | |||
155 | minstalldocs ANNOUNCE MANIFEST NEWS README* TO-DO || die | ||
156 | } | ||
157 | |||
158 | src_install_ncurses-term() | ||
159 | { | ||
160 | mmake DESTDIR=${BINDIR} install || die | ||
161 | |||
162 | # fix to enable colors in the default xterm | ||
163 | mv ${BINDIR}/usr/share/terminfo/x/xterm \ | ||
164 | ${BINDIR}/usr/share/terminfo/x/xterm.orig || die | ||
165 | mlink xterm-color /usr/share/terminfo/x/xterm || die | ||
166 | |||
167 | # zap all but terminfo dir | ||
168 | zapmost ${BINDIR} usr/share/terminfo || die | ||
169 | # search terminals which are included in other packages | ||
170 | local i | ||
171 | for i in E/Eterm\* a/aterm a/ansi b/bterm c/cons25 c/cygwin d/dumb e/eterm\* g/gnome g/gnome-256color \ | ||
172 | h/hurd j/jfbterm k/konsole k/konsole-256color l/linux\* m/mach\* m/mlterm m/mrxvt n/nsterm \ | ||
173 | p/putty\* p/pcansi r/rxvt r/rxvt-\* s/screen s/screen-\*color s/screen.\* s/sun t/teraterm t/teraterm2.3 \ | ||
174 | v/vt100 v/vt100-nav v/vt102 v/vt220 v/vt52 v/vte v/vte-256color v/vwmterm w/wsvt25\* \ | ||
175 | x/xfce x/xterm x/xterm-\* | ||
176 | do | ||
177 | rm ${BINDIR}/usr/share/terminfo/${i} || die "${i}" | ||
178 | done | ||
179 | } | ||
180 | |||
181 | preinstall_ncurses() | ||
182 | { | ||
183 | if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so ] | ||
184 | then | ||
185 | rm ${MROOT}/usr/$(mlibdir)/libncurses.so || die | ||
186 | fi | ||
187 | |||
188 | if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.5 ] | ||
189 | then | ||
190 | rm ${MROOT}/usr/$(mlibdir)/libncurses.so.5 || die | ||
191 | fi | ||
192 | |||
193 | if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.5 ] | ||
194 | then | ||
195 | rm ${MROOT}/usr/$(mlibdir)/libcurses.so.5 || die | ||
196 | fi | ||
197 | |||
198 | if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.6 ] | ||
199 | then | ||
200 | rm ${MROOT}/usr/$(mlibdir)/libncurses.so.6 || die | ||
201 | fi | ||
202 | |||
203 | if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.6 ] | ||
204 | then | ||
205 | rm ${MROOT}/usr/$(mlibdir)/libcurses.so.6 || die | ||
206 | fi | ||
207 | |||
208 | if [[ $(mlibdir) != lib ]] | ||
209 | then | ||
210 | if [ -L ${MROOT}/usr/lib/libncurses.so ] | ||
211 | then | ||
212 | rm ${MROOT}/usr/lib/libncurses.so || die | ||
213 | fi | ||
214 | |||
215 | if [ -L ${MROOT}/usr/lib/libncurses.so.5 ] | ||
216 | then | ||
217 | rm ${MROOT}/usr/lib/libncurses.so.5 || die | ||
218 | fi | ||
219 | |||
220 | if [ -L ${MROOT}/usr/lib/libcurses.so.5 ] | ||
221 | then | ||
222 | rm ${MROOT}/usr/lib/libcurses.so.5 || die | ||
223 | fi | ||
224 | |||
225 | if [ -L ${MROOT}/usr/lib/libncurses.so.6 ] | ||
226 | then | ||
227 | rm ${MROOT}/usr/lib/libncurses.so.6 || die | ||
228 | fi | ||
229 | |||
230 | if [ -L ${MROOT}/usr/lib/libcurses.so.6 ] | ||
231 | then | ||
232 | rm ${MROOT}/usr/lib/libcurses.so.6 || die | ||
233 | fi | ||
234 | fi | ||
235 | } | ||
236 | |||
237 | postinstall_ncurses() | ||
238 | { | ||
239 | # force ldconfig here | ||
240 | if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]] | ||
241 | then | ||
242 | /sbin/ldconfig | ||
243 | fi | ||
244 | } |