Magellan Linux

Contents of /branches/R11-unstable/core/ncurses/ncurses-6.1-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 32130 - (show annotations) (download)
Mon Apr 29 11:42:27 2019 UTC (5 years ago) by niro
File size: 6875 byte(s)
-release branches/R11-unstable
1 # $Id$
2
3 PNAME="ncurses"
4 PVER="6.1"
5 PBUILD="r1"
6
7 SPLIT_PACKAGES="ncurses ncurses-term"
8
9 PCAT="sys-libs"
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 NCURSES_DEPEND="$(marchdepend)
16 >= virtual/glibc"
17 SDEPEND="${NCURSES_DEPEND}"
18
19 SRCFILE="${PNAME}-${PVER}.tar.gz"
20 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
21
22 sminclude mtools multilib cleanutils
23 msetfeature "!check"
24
25 SRC_URI=(
26 gnu://${PNAME}/${SRCFILE}
27 mirror://${PNAME}/${SRCFILE}
28 )
29
30 UP2DATE="updatecmd_gnu ${PNAME} gz"
31
32 split_info_ncurses()
33 {
34 DESCRIPTION="Linux console display library."
35 DEPEND="${NCURSES_DEPEND}"
36 }
37
38 split_info_ncurses-term()
39 {
40 DESCRIPTION="Additional terminal descriptions for ncurses."
41 DEPEND="== sys-libs/ncurses-${PVER}"
42 }
43
44 src_prepare()
45 {
46 # non widec
47 munpack ${SRCFILE} || die
48
49 cd ${BUILDDIR}
50 for abi in ${MULTILIB_ABIS}
51 do
52 mv ${SRCDIR}{,-non-widec}-${abi} || die
53 done
54
55 # widec
56 munpack ${SRCFILE} || die
57 }
58
59 src_compile()
60 {
61 # fixes build issues on multilib; do not export any ABI_LDFLAGS
62 EXPORT_ABI_LDFLAGS=false
63
64 # widec
65 # -hashed-db needs Berkeley DB
66 mconfigure --with-shared --without-debug --without-ada --without-hashed-db --enable-widec || die
67 # fix parallel make builds
68 mmake -j1 sources || die
69 mmake || die
70
71 # non-widec
72 # -hashed-db needs Berkeley DB
73 SRCDIR="${SRCDIR}-non-widec" mconfigure --with-shared --without-debug --without-ada --without-hashed-db || die
74 # fix parallel make builds
75 SRCDIR="${SRCDIR}-non-widec" mmake -j1 sources || die
76 SRCDIR="${SRCDIR}-non-widec" mmake || die
77 }
78
79 src_install_ncurses()
80 {
81 mmake DESTDIR=${BINDIR} install || die
82
83 mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die
84 mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die
85
86 # install multlib-lib compat curses/curses-widec config
87 if [[ $(mlibdir) != lib ]]
88 then
89 all-abis minstallexec misc/ncurses-config /usr/bin/ncursesw${PVER%%.*}-config-$(mabi) || die
90 all-abis mlink ncursesw${PVER%%.*}-config-$(mabi) /usr/bin/ncurses${PVER%%.*}-config-$(mabi) || die
91 mlink multiarch-wrapper /usr/bin/ncursesw${PVER%%.*}-config || die
92 mlink ncursesw${PVER%%.*}-config /usr/bin/ncurses${PVER%%.*}-config || die
93 fi
94
95 # non-widec compat
96 for lib in curses ncurses form panel menu
97 do
98 echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/$(mlibdir)/lib${lib}.so || die
99 mlink lib${lib}w.a /usr/$(mlibdir)/lib${lib}.a || die
100 done
101 mlink libcurses.so /usr/$(mlibdir)/libcursesw.so || die
102 mlink libncurses.so /usr/$(mlibdir)/libcurses.so || die
103 mlink libncursesw.a /usr/$(mlibdir)/libcursesw.a || die
104 mlink libncurses.a /usr/$(mlibdir)/libcurses.a || die
105 mlink libncurses++w.a /usr/$(mlibdir)/libncurses++.a || die
106 minstalldir /usr/include/ncursesw || die
107 mlink ../curses.h /usr/include/ncursesw/curses.h || die
108 mlink ../ncurses.h /usr/include/ncursesw/ncurses.h || die
109
110 # move the -m32 libs also to the right place (multilib)
111 if [[ $(mlibdir) != lib ]]
112 then
113 mchmod 755 /usr/lib/\*.${PVER} || die
114 mchmod 644 /usr/lib/libncurses++w.a || die
115
116 # non-widec compat
117 for lib in curses ncurses form panel menu
118 do
119 echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/lib/lib${lib}.so || die
120 mlink lib${lib}w.a /usr/lib/lib${lib}.a || die
121 done
122 mlink libcurses.so /usr/lib/libcursesw.so || die
123 mlink libncurses.so /usr/lib/libcurses.so || die
124 mlink libncursesw.a /usr/lib/libcursesw.a || die
125 mlink libncurses.a /usr/lib/libcurses.a || die
126 mlink libncurses++w.a /usr/lib/libncurses++.a || die
127 fi
128
129 # install non-widec runtime compat library (do not use minstalllib,
130 # we need libcnurses.so with loader hint for libncursesw and not a plain symlink!
131 all-abis minstallexec ${SRCDIR}-non-widec-'$abi'/lib/libncurses.so.${PVER} /usr/'$(mlibdir)' || die
132 all-abis mlink libncurses.so.${PVER} /usr/'$(mlibdir)'/libncurses.so.${PVER%%.*} || die
133
134 # fixes a small man issue
135 if [ -e ${BINDIR}/usr/share/man/tack.1 ]
136 then
137 mv ${BINDIR}/usr/share/man/tack.1 \
138 ${BINDIR}/usr/share/man/man1 || die
139 fi
140
141 # fix to enable colors in the default xterm
142 mv ${BINDIR}/usr/share/terminfo/x/xterm \
143 ${BINDIR}/usr/share/terminfo/x/xterm.orig || die
144 mlink xterm-color /usr/share/terminfo/x/xterm || die
145
146 # zapmost uncommon terminfo
147 zapmost ${BINDIR}/usr/share/terminfo \
148 E/Eterm\* a/aterm a/ansi b/bterm c/cons25 c/cygwin d/dumb e/eterm\* g/gnome g/gnome-256color \
149 h/hurd j/jfbterm k/konsole k/konsole-256color l/linux\* m/mach\* m/mlterm m/mrxvt n/nsterm \
150 p/putty\* p/pcansi r/rxvt r/rxvt-\* s/screen s/screen-\*color s/screen.\* s/sun t/teraterm t/teraterm2.3 \
151 v/vt100 v/vt100-nav v/vt102 v/vt220 v/vt52 v/vte v/vte-256color v/vwmterm w/wsvt25\* \
152 x/xfce x/xterm x/xterm-\* \
153 || die
154
155 minstalldocs ANNOUNCE MANIFEST NEWS README* TO-DO || die
156 }
157
158 src_install_ncurses-term()
159 {
160 mmake DESTDIR=${BINDIR} install || die
161
162 # fix to enable colors in the default xterm
163 mv ${BINDIR}/usr/share/terminfo/x/xterm \
164 ${BINDIR}/usr/share/terminfo/x/xterm.orig || die
165 mlink xterm-color /usr/share/terminfo/x/xterm || die
166
167 # zap all but terminfo dir
168 zapmost ${BINDIR} usr/share/terminfo || die
169 # search terminals which are included in other packages
170 local i
171 for i in E/Eterm\* a/aterm a/ansi b/bterm c/cons25 c/cygwin d/dumb e/eterm\* g/gnome g/gnome-256color \
172 h/hurd j/jfbterm k/konsole k/konsole-256color l/linux\* m/mach\* m/mlterm m/mrxvt n/nsterm \
173 p/putty\* p/pcansi r/rxvt r/rxvt-\* s/screen s/screen-\*color s/screen.\* s/sun t/teraterm t/teraterm2.3 \
174 v/vt100 v/vt100-nav v/vt102 v/vt220 v/vt52 v/vte v/vte-256color v/vwmterm w/wsvt25\* \
175 x/xfce x/xterm x/xterm-\*
176 do
177 rm ${BINDIR}/usr/share/terminfo/${i} || die "${i}"
178 done
179 }
180
181 preinstall_ncurses()
182 {
183 if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so ]
184 then
185 rm ${MROOT}/usr/$(mlibdir)/libncurses.so || die
186 fi
187
188 if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.5 ]
189 then
190 rm ${MROOT}/usr/$(mlibdir)/libncurses.so.5 || die
191 fi
192
193 if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.5 ]
194 then
195 rm ${MROOT}/usr/$(mlibdir)/libcurses.so.5 || die
196 fi
197
198 if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.6 ]
199 then
200 rm ${MROOT}/usr/$(mlibdir)/libncurses.so.6 || die
201 fi
202
203 if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.6 ]
204 then
205 rm ${MROOT}/usr/$(mlibdir)/libcurses.so.6 || die
206 fi
207
208 if [[ $(mlibdir) != lib ]]
209 then
210 if [ -L ${MROOT}/usr/lib/libncurses.so ]
211 then
212 rm ${MROOT}/usr/lib/libncurses.so || die
213 fi
214
215 if [ -L ${MROOT}/usr/lib/libncurses.so.5 ]
216 then
217 rm ${MROOT}/usr/lib/libncurses.so.5 || die
218 fi
219
220 if [ -L ${MROOT}/usr/lib/libcurses.so.5 ]
221 then
222 rm ${MROOT}/usr/lib/libcurses.so.5 || die
223 fi
224
225 if [ -L ${MROOT}/usr/lib/libncurses.so.6 ]
226 then
227 rm ${MROOT}/usr/lib/libncurses.so.6 || die
228 fi
229
230 if [ -L ${MROOT}/usr/lib/libcurses.so.6 ]
231 then
232 rm ${MROOT}/usr/lib/libcurses.so.6 || die
233 fi
234 fi
235 }
236
237 postinstall_ncurses()
238 {
239 # force ldconfig here
240 if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
241 then
242 /sbin/ldconfig
243 fi
244 }