Magellan Linux

Contents of /smage/trunk/core/ncurses/ncurses-5.9-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2860 - (show annotations) (download)
Tue Sep 6 07:44:34 2011 UTC (12 years, 9 months ago) by niro
File size: 5047 byte(s)
auto added: ver bump to 5.9-r1
1 # $Id$
2
3 PNAME="ncurses"
4 PVER="5.9"
5 PBUILD="r1"
6
7 PCATEGORIE="sys-libs"
8
9 DESCRIPTION="Linux console display library."
10 HOMEPAGE="http://www.gnu.org/software/ncurses/ncurses.html"
11
12 DEPEND=">= virtual/glibc"
13
14 SRCFILE="${PNAME}-${PVER}.tar.gz"
15 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
16
17 ALX_ONLY_KEEP="$(mlibdir)/*.so
18 $(mlibdir)/*.so.*
19 usr/$(mlibdir)/*.so
20 usr/$(mlibdir)/*.so.*
21 usr/$(mlibdir)/terminfo
22 usr/share/tabset
23 usr/share/terminfo/l/linux
24 usr/share/terminfo/r/rxvt
25 usr/share/terminfo/v/vt100
26 usr/share/terminfo/x/xterm
27 usr/share/terminfo/x/xterm-color"
28 sminclude mtools multilib alx-split
29
30 SRC_URI=(
31 gnu://${PNAME}/${SRCFILE}
32 mirror://${PNAME}/${SRCFILE}
33 )
34
35 UP2DATE="updatecmd_gnu ${PNAME} gz"
36
37 src_prepare()
38 {
39 # non widec
40 munpack ${SRCFILE} || die
41 for abi in ${MULTILIB_ABIS}
42 do
43 mv ${SRCDIR}{,-non-widec}-${abi} || die
44 done
45
46 # widec
47 munpack ${SRCFILE} || die
48 }
49
50 src_compile()
51 {
52 # fixes build issues on multilib; do not export any ABI_LDFLAGS
53 EXPORT_ABI_LDFLAGS=false
54
55 # widec
56 # -hashed-db needs Berkeley DB
57 mconfigure --with-shared --without-debug --without-hashed-db --enable-widec || die
58 # fix parallel make builds
59 mmake -j1 sources || die
60 mmake || die
61
62 # non-widec
63 # -hashed-db needs Berkeley DB
64 SRCDIR="${SRCDIR}-non-widec" mconfigure --with-shared --without-debug --without-hashed-db || die
65 # fix parallel make builds
66 SRCDIR="${SRCDIR}-non-widec" mmake -j1 sources || die
67 SRCDIR="${SRCDIR}-non-widec" mmake || die
68 }
69
70 alx_generic_src_install()
71 {
72 # needed directories
73 minstalldir /$(mlibdir) || die
74
75 minstall_destdir || die
76
77 mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die
78 mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die
79 mv ${BINDIR}/usr/$(mlibdir)/libncursesw.so.5* ${BINDIR}/$(mlibdir) || die
80 mlink ../../$(mlibdir)/libncursesw.so.5 /usr/$(mlibdir)/libncursesw.so || die
81 mlink libncursesw.so /usr/$(mlibdir)/libcursesw.so || die
82
83 # non-widec compat
84 for lib in curses ncurses form panel menu
85 do
86 echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/$(mlibdir)/lib${lib}.so || die
87 mlink lib${lib}w.a /usr/$(mlibdir)/lib${lib}.a || die
88 done
89 mlink libcurses.so /usr/$(mlibdir)/libcursesw.so || die
90 mlink libncurses.so /usr/$(mlibdir)/libcurses.so || die
91 mlink libncursesw.a /usr/$(mlibdir)/libcursesw.a || die
92 mlink libncurses.a /usr/$(mlibdir)/libcurses.a || die
93 mlink libncurses++w.a /usr/$(mlibdir)/libncurses++.a || die
94 # curses-config too
95 mlink ncursesw5-config /usr/bin/ncurses5-config || die
96
97 # move the -m32 libs also to the right place (multilib)
98 if [[ $(mlibdir) != lib ]]
99 then
100 minstalldir /lib || die
101 mchmod 755 /usr/lib/\*.${PVER} || die
102 mchmod 644 /usr/lib/libncurses++w.a || die
103 mv ${BINDIR}/usr/lib/libncursesw.so.5* ${BINDIR}/lib || die
104 mlink ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so || die
105 mlink libncursesw.so /usr/lib/libcursesw.so || 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
194 alx-split_postinstall
195 }