Contents of /branches/R11-unstable/core/ncurses/ncurses-5.9-r6.smage2
Parent Directory | Revision Log
Revision 25032 -
(show annotations)
(download)
Tue Nov 25 02:51:34 2014 UTC (9 years, 10 months ago) by niro
File size: 6309 byte(s)
Tue Nov 25 02:51:34 2014 UTC (9 years, 10 months ago) by niro
File size: 6309 byte(s)
-release branches/R11-unstable
1 | # $Id$ |
2 | |
3 | PNAME="ncurses" |
4 | PVER="5.9" |
5 | PBUILD="r6" |
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 | for abi in ${MULTILIB_ABIS} |
49 | do |
50 | mv ${SRCDIR}{,-non-widec}-${abi} || die |
51 | done |
52 | |
53 | # widec |
54 | munpack ${SRCFILE} || die |
55 | } |
56 | |
57 | src_compile() |
58 | { |
59 | # fixes build issues on multilib; do not export any ABI_LDFLAGS |
60 | EXPORT_ABI_LDFLAGS=false |
61 | |
62 | # widec |
63 | # -hashed-db needs Berkeley DB |
64 | mconfigure --with-shared --without-debug --without-ada --without-hashed-db --enable-widec || die |
65 | # fix parallel make builds |
66 | mmake -j1 sources || die |
67 | mmake || die |
68 | |
69 | # non-widec |
70 | # -hashed-db needs Berkeley DB |
71 | SRCDIR="${SRCDIR}-non-widec" mconfigure --with-shared --without-debug --without-ada --without-hashed-db || die |
72 | # fix parallel make builds |
73 | SRCDIR="${SRCDIR}-non-widec" mmake -j1 sources || die |
74 | SRCDIR="${SRCDIR}-non-widec" mmake || die |
75 | } |
76 | |
77 | src_install_ncurses() |
78 | { |
79 | mmake DESTDIR=${BINDIR} install || die |
80 | |
81 | mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die |
82 | mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die |
83 | |
84 | # install multlib-lib compat curses/curses-widec config |
85 | if [[ $(mlibdir) != lib ]] |
86 | then |
87 | all-abis minstallexec misc/ncurses-config /usr/bin/ncursesw5-config-$(mabi) || die |
88 | all-abis mlink ncursesw5-config-$(mabi) /usr/bin/ncurses5-config-$(mabi) || die |
89 | mlink multiarch-wrapper /usr/bin/ncursesw5-config || die |
90 | mlink ncursesw5-config /usr/bin/ncurses5-config || die |
91 | fi |
92 | |
93 | # non-widec compat |
94 | for lib in curses ncurses form panel menu |
95 | do |
96 | echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/$(mlibdir)/lib${lib}.so || die |
97 | mlink lib${lib}w.a /usr/$(mlibdir)/lib${lib}.a || die |
98 | done |
99 | mlink libcurses.so /usr/$(mlibdir)/libcursesw.so || die |
100 | mlink libncurses.so /usr/$(mlibdir)/libcurses.so || die |
101 | mlink libncursesw.a /usr/$(mlibdir)/libcursesw.a || die |
102 | mlink libncurses.a /usr/$(mlibdir)/libcurses.a || die |
103 | mlink libncurses++w.a /usr/$(mlibdir)/libncurses++.a || die |
104 | minstalldir /usr/include/ncursesw || die |
105 | mlink ../ncurses.h /usr/include/ncursesw/ncurses.h || die |
106 | |
107 | # move the -m32 libs also to the right place (multilib) |
108 | if [[ $(mlibdir) != lib ]] |
109 | then |
110 | mchmod 755 /usr/lib/\*.${PVER} || die |
111 | mchmod 644 /usr/lib/libncurses++w.a || die |
112 | |
113 | # non-widec compat |
114 | for lib in curses ncurses form panel menu |
115 | do |
116 | echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/lib/lib${lib}.so || die |
117 | mlink lib${lib}w.a /usr/lib/lib${lib}.a || die |
118 | done |
119 | mlink libcurses.so /usr/lib/libcursesw.so || die |
120 | mlink libncurses.so /usr/lib/libcurses.so || die |
121 | mlink libncursesw.a /usr/lib/libcursesw.a || die |
122 | mlink libncurses.a /usr/lib/libcurses.a || die |
123 | mlink libncurses++w.a /usr/lib/libncurses++.a || die |
124 | fi |
125 | |
126 | # install non-widec runtime compat library (do not use minstalllib, |
127 | # we need libcnurses.so with loader hint for libncursesw and not a plain symlink! |
128 | all-abis minstallexec ${SRCDIR}-non-widec-'$abi'/lib/libncurses.so.${PVER} /usr/'$(mlibdir)' || die |
129 | all-abis mlink libncurses.so.${PVER} /usr/'$(mlibdir)'/libncurses.so.${PVER%%.*} || die |
130 | |
131 | # fixes a small man issue |
132 | if [ -e ${BINDIR}/usr/share/man/tack.1 ] |
133 | then |
134 | mv ${BINDIR}/usr/share/man/tack.1 \ |
135 | ${BINDIR}/usr/share/man/man1 || die |
136 | fi |
137 | |
138 | # fix to enable colors in the default xterm |
139 | mv ${BINDIR}/usr/share/terminfo/x/xterm \ |
140 | ${BINDIR}/usr/share/terminfo/x/xterm.orig || die |
141 | mlink xterm-color /usr/share/terminfo/x/xterm || die |
142 | |
143 | # zapmost uncommon terminfo |
144 | zapmost ${BINDIR}/usr/share/terminfo \ |
145 | E/Eterm\* a/aterm a/ansi b/bterm c/cons25 c/cygwin d/dumb e/eterm\* g/gnome g/gnome-256color \ |
146 | h/hurd j/jfbterm k/konsole k/konsole-256color l/linux\* m/mach\* m/mlterm m/mrxvt n/nsterm \ |
147 | p/putty\* p/pcansi r/rxvt r/rxvt-\* s/screen s/screen-\*color s/screen.\* s/sun t/teraterm t/teraterm2.3 \ |
148 | v/vt100 v/vt100-nav v/vt102 v/vt220 v/vt52 v/vte v/vte-256color v/vwmterm w/wsvt25\* \ |
149 | x/xfce x/xterm x/xterm-\* \ |
150 | || die |
151 | |
152 | minstalldocs ANNOUNCE MANIFEST NEWS README* TO-DO || die |
153 | } |
154 | |
155 | src_install_ncurses-term() |
156 | { |
157 | mmake DESTDIR=${BINDIR} install || die |
158 | |
159 | # fix to enable colors in the default xterm |
160 | mv ${BINDIR}/usr/share/terminfo/x/xterm \ |
161 | ${BINDIR}/usr/share/terminfo/x/xterm.orig || die |
162 | mlink xterm-color /usr/share/terminfo/x/xterm || die |
163 | |
164 | # zap all but terminfo dir |
165 | zapmost ${BINDIR} usr/share/terminfo || die |
166 | # search terminals which are included in other packages |
167 | local i |
168 | for i in E/Eterm\* a/aterm a/ansi b/bterm c/cons25 c/cygwin d/dumb e/eterm\* g/gnome g/gnome-256color \ |
169 | h/hurd j/jfbterm k/konsole k/konsole-256color l/linux\* m/mach\* m/mlterm m/mrxvt n/nsterm \ |
170 | p/putty\* p/pcansi r/rxvt r/rxvt-\* s/screen s/screen-\*color s/screen.\* s/sun t/teraterm t/teraterm2.3 \ |
171 | v/vt100 v/vt100-nav v/vt102 v/vt220 v/vt52 v/vte v/vte-256color v/vwmterm w/wsvt25\* \ |
172 | x/xfce x/xterm x/xterm-\* |
173 | do |
174 | rm ${BINDIR}/usr/share/terminfo/${i} || die "${i}" |
175 | done |
176 | } |
177 | |
178 | preinstall_ncurses() |
179 | { |
180 | if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so ] |
181 | then |
182 | rm ${MROOT}/usr/$(mlibdir)/libncurses.so || die |
183 | fi |
184 | |
185 | if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.5 ] |
186 | then |
187 | rm ${MROOT}/usr/$(mlibdir)/libncurses.so.5 || die |
188 | fi |
189 | |
190 | if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.5 ] |
191 | then |
192 | rm ${MROOT}/usr/$(mlibdir)/libcurses.so.5 || die |
193 | fi |
194 | |
195 | if [[ $(mlibdir) != lib ]] |
196 | then |
197 | if [ -L ${MROOT}/usr/lib/libncurses.so ] |
198 | then |
199 | rm ${MROOT}/usr/lib/libncurses.so || die |
200 | fi |
201 | |
202 | if [ -L ${MROOT}/usr/lib/libncurses.so.5 ] |
203 | then |
204 | rm ${MROOT}/usr/lib/libncurses.so.5 || die |
205 | fi |
206 | |
207 | if [ -L ${MROOT}/usr/lib/libcurses.so.5 ] |
208 | then |
209 | rm ${MROOT}/usr/lib/libcurses.so.5 || die |
210 | fi |
211 | fi |
212 | } |
213 | |
214 | postinstall_ncurses() |
215 | { |
216 | # force ldconfig here |
217 | if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]] |
218 | then |
219 | /sbin/ldconfig |
220 | fi |
221 | } |