Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


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