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