Magellan Linux

Annotation of /branches/R11-stable/core/ncurses/ncurses-5.9-r6.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 17780 - (hide annotations) (download)
Wed Jun 26 12:30:37 2013 UTC (10 years, 11 months ago) by niro
File size: 6309 byte(s)
-release branches/R11-stable
1 niro 17187 # $Id$
2    
3     PNAME="ncurses"
4     PVER="5.9"
5     PBUILD="r6"
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     for abi in ${MULTILIB_ABIS}
49     do
50     mv ${SRCDIR}{,-non-widec}-${abi} || die
51     done
52    
53     # widec
54     munpack ${SRCFILE} || die
55     }
56    
57     src_compile()
58     {
59     # fixes build issues on multilib; do not export any ABI_LDFLAGS
60     EXPORT_ABI_LDFLAGS=false
61    
62     # widec
63     # -hashed-db needs Berkeley DB
64 niro 17188 mconfigure --with-shared --without-debug --without-ada --without-hashed-db --enable-widec || die
65 niro 17187 # fix parallel make builds
66     mmake -j1 sources || die
67     mmake || die
68    
69     # non-widec
70     # -hashed-db needs Berkeley DB
71     SRCDIR="${SRCDIR}-non-widec" mconfigure --with-shared --without-debug --without-ada --without-hashed-db || die
72     # fix parallel make builds
73     SRCDIR="${SRCDIR}-non-widec" mmake -j1 sources || die
74     SRCDIR="${SRCDIR}-non-widec" mmake || die
75     }
76    
77     src_install_ncurses()
78     {
79     mmake DESTDIR=${BINDIR} install || die
80    
81     mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die
82     mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die
83    
84     # install multlib-lib compat curses/curses-widec config
85     if [[ $(mlibdir) != lib ]]
86     then
87     all-abis minstallexec misc/ncurses-config /usr/bin/ncursesw5-config-$(mabi) || die
88     all-abis mlink ncursesw5-config-$(mabi) /usr/bin/ncurses5-config-$(mabi) || die
89     mlink multiarch-wrapper /usr/bin/ncursesw5-config || die
90     mlink ncursesw5-config /usr/bin/ncurses5-config || die
91     fi
92    
93     # non-widec compat
94     for lib in curses ncurses form panel menu
95     do
96     echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/$(mlibdir)/lib${lib}.so || die
97     mlink lib${lib}w.a /usr/$(mlibdir)/lib${lib}.a || die
98     done
99     mlink libcurses.so /usr/$(mlibdir)/libcursesw.so || die
100     mlink libncurses.so /usr/$(mlibdir)/libcurses.so || die
101     mlink libncursesw.a /usr/$(mlibdir)/libcursesw.a || die
102     mlink libncurses.a /usr/$(mlibdir)/libcurses.a || die
103     mlink libncurses++w.a /usr/$(mlibdir)/libncurses++.a || die
104 niro 17188 minstalldir /usr/include/ncursesw || die
105     mlink ../ncurses.h /usr/include/ncursesw/ncurses.h || die
106 niro 17187
107     # move the -m32 libs also to the right place (multilib)
108     if [[ $(mlibdir) != lib ]]
109     then
110     mchmod 755 /usr/lib/\*.${PVER} || die
111     mchmod 644 /usr/lib/libncurses++w.a || die
112    
113     # non-widec compat
114     for lib in curses ncurses form panel menu
115     do
116     echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/lib/lib${lib}.so || die
117     mlink lib${lib}w.a /usr/lib/lib${lib}.a || die
118     done
119     mlink libcurses.so /usr/lib/libcursesw.so || die
120     mlink libncurses.so /usr/lib/libcurses.so || die
121     mlink libncursesw.a /usr/lib/libcursesw.a || die
122     mlink libncurses.a /usr/lib/libcurses.a || die
123     mlink libncurses++w.a /usr/lib/libncurses++.a || die
124     fi
125    
126     # install non-widec runtime compat library (do not use minstalllib,
127     # we need libcnurses.so with loader hint for libncursesw and not a plain symlink!
128     all-abis minstallexec ${SRCDIR}-non-widec-'$abi'/lib/libncurses.so.${PVER} /usr/'$(mlibdir)' || die
129     all-abis mlink libncurses.so.${PVER} /usr/'$(mlibdir)'/libncurses.so.${PVER%%.*} || die
130    
131     # fixes a small man issue
132     if [ -e ${BINDIR}/usr/share/man/tack.1 ]
133     then
134     mv ${BINDIR}/usr/share/man/tack.1 \
135     ${BINDIR}/usr/share/man/man1 || die
136     fi
137    
138     # fix to enable colors in the default xterm
139     mv ${BINDIR}/usr/share/terminfo/x/xterm \
140     ${BINDIR}/usr/share/terminfo/x/xterm.orig || die
141     mlink xterm-color /usr/share/terminfo/x/xterm || die
142    
143     # zapmost uncommon terminfo
144     zapmost ${BINDIR}/usr/share/terminfo \
145     E/Eterm\* a/aterm a/ansi b/bterm c/cons25 c/cygwin d/dumb e/eterm\* g/gnome g/gnome-256color \
146     h/hurd j/jfbterm k/konsole k/konsole-256color l/linux\* m/mach\* m/mlterm m/mrxvt n/nsterm \
147     p/putty\* p/pcansi r/rxvt r/rxvt-\* s/screen s/screen-\*color s/screen.\* s/sun t/teraterm t/teraterm2.3 \
148     v/vt100 v/vt100-nav v/vt102 v/vt220 v/vt52 v/vte v/vte-256color v/vwmterm w/wsvt25\* \
149     x/xfce x/xterm x/xterm-\* \
150     || die
151    
152     minstalldocs ANNOUNCE MANIFEST NEWS README* TO-DO || die
153     }
154    
155     src_install_ncurses-term()
156     {
157     mmake DESTDIR=${BINDIR} install || die
158    
159     # fix to enable colors in the default xterm
160     mv ${BINDIR}/usr/share/terminfo/x/xterm \
161     ${BINDIR}/usr/share/terminfo/x/xterm.orig || die
162     mlink xterm-color /usr/share/terminfo/x/xterm || die
163    
164     # zap all but terminfo dir
165     zapmost ${BINDIR} usr/share/terminfo || die
166     # search terminals which are included in other packages
167     local i
168     for i in E/Eterm\* a/aterm a/ansi b/bterm c/cons25 c/cygwin d/dumb e/eterm\* g/gnome g/gnome-256color \
169     h/hurd j/jfbterm k/konsole k/konsole-256color l/linux\* m/mach\* m/mlterm m/mrxvt n/nsterm \
170     p/putty\* p/pcansi r/rxvt r/rxvt-\* s/screen s/screen-\*color s/screen.\* s/sun t/teraterm t/teraterm2.3 \
171     v/vt100 v/vt100-nav v/vt102 v/vt220 v/vt52 v/vte v/vte-256color v/vwmterm w/wsvt25\* \
172     x/xfce x/xterm x/xterm-\*
173     do
174     rm ${BINDIR}/usr/share/terminfo/${i} || die "${i}"
175     done
176     }
177    
178     preinstall_ncurses()
179     {
180     if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so ]
181     then
182     rm ${MROOT}/usr/$(mlibdir)/libncurses.so || die
183     fi
184    
185     if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.5 ]
186     then
187     rm ${MROOT}/usr/$(mlibdir)/libncurses.so.5 || die
188     fi
189    
190     if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.5 ]
191     then
192     rm ${MROOT}/usr/$(mlibdir)/libcurses.so.5 || die
193     fi
194    
195     if [[ $(mlibdir) != lib ]]
196     then
197     if [ -L ${MROOT}/usr/lib/libncurses.so ]
198     then
199     rm ${MROOT}/usr/lib/libncurses.so || die
200     fi
201    
202     if [ -L ${MROOT}/usr/lib/libncurses.so.5 ]
203     then
204     rm ${MROOT}/usr/lib/libncurses.so.5 || die
205     fi
206    
207     if [ -L ${MROOT}/usr/lib/libcurses.so.5 ]
208     then
209     rm ${MROOT}/usr/lib/libcurses.so.5 || die
210     fi
211     fi
212     }
213    
214     postinstall_ncurses()
215     {
216     # force ldconfig here
217     if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
218     then
219     /sbin/ldconfig
220     fi
221     }