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