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