Magellan Linux

Contents of /branches/magellan-next/core/ncurses/ncurses-5.9-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 7924 - (show annotations) (download)
Sat Jun 4 11:38:35 2011 UTC (12 years, 11 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 }