Contents of /smage/branches/alx07x-unstable/core/ncurses/ncurses-6.1-r1.smage2
Parent Directory | Revision Log
Revision 12245 -
(show annotations)
(download)
Fri Aug 31 11:07:07 2018 UTC (6 years ago) by niro
File size: 5717 byte(s)
Fri Aug 31 11:07:07 2018 UTC (6 years ago) by niro
File size: 5717 byte(s)
-release branches/alx07x-unstable
1 | # $Id$ |
2 | |
3 | PNAME="ncurses" |
4 | PVER="6.1" |
5 | PBUILD="r1" |
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 | } |