Magellan Linux

Contents of /smage/branches/alx07x-stable/core/ncurses/ncurses-6.0-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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