Magellan Linux

Contents of /smage/branches/alx-0_6_0/core/ncurses/ncurses-5.8-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1986 - (show annotations) (download)
Sat May 7 11:32:48 2011 UTC (13 years, 1 month ago) by niro
File size: 5091 byte(s)
-alxify
1 # $Id$
2
3 PNAME="ncurses"
4 PVER="5.8"
5 PBUILD="r1"
6
7 PCATEGORIE="sys-libs"
8 STATE="unstable"
9
10 DESCRIPTION="Linux console display library."
11 HOMEPAGE="http://www.gnu.org/software/ncurses/ncurses.html"
12
13 DEPEND=">= virtual/glibc"
14
15 SRCFILE="${PNAME}-${PVER}.tar.gz"
16 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
17
18 REMOVE_DEPRECATED_MAGE_TARGETS=1
19 ALX_ONLY_KEEP="$(mlibdir)/*.so
20 $(mlibdir)/*.so.*
21 usr/$(mlibdir)/*.so
22 usr/$(mlibdir)/*.so.*
23 usr/$(mlibdir)/terminfo
24 usr/share/tabset
25 usr/share/terminfo/l/linux
26 usr/share/terminfo/r/rxvt
27 usr/share/terminfo/v/vt100
28 usr/share/terminfo/x/xterm
29 usr/share/terminfo/x/xterm-color"
30 sminclude mtools multilib alx-split
31
32 SRC_URI=(
33 gnu://${PNAME}/${SRCFILE}
34 mirror://${PNAME}/${SRCFILE}
35 )
36
37 UP2DATE="updatecmd_gnu ${PNAME} gz"
38
39 src_prepare()
40 {
41 # non widec
42 munpack ${SRCFILE} || die
43 for abi in ${MULTILIB_ABIS}
44 do
45 mv ${SRCDIR}{,-non-widec}-${abi} || die
46 done
47
48 # widec
49 munpack ${SRCFILE} || die
50 }
51
52 src_compile()
53 {
54 # fixes build issues on multilib; do not export any ABI_LDFLAGS
55 EXPORT_ABI_LDFLAGS=false
56
57 # widec
58 # -hashed-db needs Berkeley DB
59 mconfigure --with-shared --without-debug --without-hashed-db --enable-widec || die
60 # fix parallel make builds
61 mmake -j1 sources || die
62 mmake || die
63
64 # non-widec
65 # -hashed-db needs Berkeley DB
66 SRCDIR="${SRCDIR}-non-widec" mconfigure --with-shared --without-debug --without-hashed-db || die
67 # fix parallel make builds
68 SRCDIR="${SRCDIR}-non-widec" mmake -j1 sources || die
69 SRCDIR="${SRCDIR}-non-widec" mmake || die
70 }
71
72 alx_generic_src_install()
73 {
74 # needed directories
75 minstalldir /$(mlibdir) || die
76
77 minstall_destdir || die
78
79 mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die
80 mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die
81 mv ${BINDIR}/usr/$(mlibdir)/libncursesw.so.5* ${BINDIR}/$(mlibdir) || die
82 mlink ../../$(mlibdir)/libncursesw.so.5 /usr/$(mlibdir)/libncursesw.so || die
83 mlink libncursesw.so /usr/$(mlibdir)/libcursesw.so || die
84
85 # non-widec compat
86 for lib in curses ncurses form panel menu
87 do
88 echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/$(mlibdir)/lib${lib}.so || die
89 mlink lib${lib}w.a /usr/$(mlibdir)/lib${lib}.a || die
90 done
91 mlink libcurses.so /usr/$(mlibdir)/libcursesw.so || die
92 mlink libncurses.so /usr/$(mlibdir)/libcurses.so || die
93 mlink libncursesw.a /usr/$(mlibdir)/libcursesw.a || die
94 mlink libncurses.a /usr/$(mlibdir)/libcurses.a || die
95 mlink libncurses++w.a /usr/$(mlibdir)/libncurses++.a || die
96 # curses-config too
97 mlink ncursesw5-config /usr/bin/ncurses5-config || die
98
99 # move the -m32 libs also to the right place (multilib)
100 if [[ $(mlibdir) != lib ]]
101 then
102 minstalldir /lib || die
103 mchmod 755 /usr/lib/\*.${PVER} || die
104 mchmod 644 /usr/lib/libncurses++w.a || die
105 mv ${BINDIR}/usr/lib/libncursesw.so.5* ${BINDIR}/lib || die
106 mlink ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so || die
107 mlink libncursesw.so /usr/lib/libcursesw.so || die
108
109 # non-widec compat
110 for lib in curses ncurses form panel menu
111 do
112 echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/lib/lib${lib}.so || die
113 mlink lib${lib}w.a /usr/lib/lib${lib}.a || die
114 done
115 mlink libcurses.so /usr/lib/libcursesw.so || die
116 mlink libncurses.so /usr/lib/libcurses.so || die
117 mlink libncursesw.a /usr/lib/libcursesw.a || die
118 mlink libncurses.a /usr/lib/libcurses.a || die
119 mlink libncurses++w.a /usr/lib/libncurses++.a || die
120 fi
121
122 # install non-widec runtime compat library (do not use minstalllib,
123 # we need libcnurses.so with loader hint for libncursesw and not a plain symlink!
124 all-abis minstallexec ${SRCDIR}-non-widec-'$abi'/lib/libncurses.so.${PVER} /usr/'$(mlibdir)' || die
125 all-abis mlink libncurses.so.${PVER} /usr/'$(mlibdir)'/libncurses.so.${PVER%%.*} || die
126
127 # fixes a small man issue
128 if [ -e ${BINDIR}/usr/share/man/tack.1 ]
129 then
130 mv ${BINDIR}/usr/share/man/tack.1 \
131 ${BINDIR}/usr/share/man/man1 || die
132 fi
133
134 # fix to enable colors in the default xterm
135 mv ${BINDIR}/usr/share/terminfo/x/xterm \
136 ${BINDIR}/usr/share/terminfo/x/xterm.orig || die
137 mlink xterm-color /usr/share/terminfo/x/xterm || die
138
139 minstalldocs ANNOUNCE MANIFEST NEWS README* TO-DO || die
140
141 # do not collide with busybox
142 local app
143 for app in /usr/bin/clear /usr/bin/reset
144 do
145 if [[ -e ${BINDIR}${app} ]]
146 then
147 rm -f ${BINDIR}${app} || die ${app}
148 fi
149 done
150 }
151
152 preinstall()
153 {
154 if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so ]
155 then
156 rm ${MROOT}/usr/$(mlibdir)/libncurses.so || die
157 fi
158
159 if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.5 ]
160 then
161 rm ${MROOT}/usr/$(mlibdir)/libncurses.so.5 || die
162 fi
163
164 if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.5 ]
165 then
166 rm ${MROOT}/usr/$(mlibdir)/libcurses.so.5 || die
167 fi
168
169 if [[ $(mlibdir) != lib ]]
170 then
171 if [ -L ${MROOT}/usr/lib/libncurses.so ]
172 then
173 rm ${MROOT}/usr/lib/libncurses.so || die
174 fi
175
176 if [ -L ${MROOT}/usr/lib/libncurses.so.5 ]
177 then
178 rm ${MROOT}/usr/lib/libncurses.so.5 || die
179 fi
180
181 if [ -L ${MROOT}/usr/lib/libcurses.so.5 ]
182 then
183 rm ${MROOT}/usr/lib/libcurses.so.5 || die
184 fi
185 fi
186 }
187
188 postinstall()
189 {
190 # force ldconfig here
191 if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
192 then
193 /sbin/ldconfig
194 fi
195
196 alx_postinstall
197 }