Magellan Linux

Contents of /smage/trunk/core/ncurses/ncurses-5.9-r6.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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