Magellan Linux

Annotation of /smage/trunk/core/ncurses/ncurses-5.8-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1363 - (hide annotations) (download)
Tue Mar 1 12:09:24 2011 UTC (13 years, 3 months ago) by niro
File size: 5087 byte(s)
auto added: ver bump to 5.8-r1
1 niro 1363 # $Id$
2    
3     PNAME="ncurses"
4     PVER="5.8"
5     PBUILD="r1"
6    
7     PCATEGORIE="sys-libs"
8     STATE="unstable"
9    
10     DESCRIPTION="Linux console display library."
11     HOMEPAGE="http://www.gnu.org/software/ncurses/ncurses.html"
12    
13     DEPEND=">= virtual/glibc"
14    
15     SRCFILE="${PNAME}-${PVER}.tar.gz"
16     SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
17    
18     MCORE_ONLY_KEEP="$(mlibdir)/*.so
19     $(mlibdir)/*.so.*
20     usr/$(mlibdir)/*.so
21     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    
30     sminclude mtools multilib mcore-split
31    
32     SRC_URI=(
33     gnu://${PNAME}/${SRCFILE}
34     mirror://${PNAME}/${SRCFILE}
35     mirror://${PNAME}/${PNAME}-${PVER}-branch-update-20081213.patch
36     )
37    
38     UP2DATE="updatecmd_gnu ${PNAME} gz"
39    
40     src_prepare()
41     {
42     # non widec
43     munpack ${SRCFILE} || die
44     for abi in ${MULTILIB_ABIS}
45     do
46     mv ${SRCDIR}{,-non-widec}-${abi} || die
47     done
48     SRCDIR="${SRCDIR}-non-widec" mpatch ${PNAME}-${PVER}-branch-update-20081213.patch || die
49    
50     # widec
51     munpack ${SRCFILE} || die
52     mpatch ${PNAME}-${PVER}-branch-update-20081213.patch || 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-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-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     mcore_generic_src_install()
76     {
77     # needed directories
78     minstalldir /$(mlibdir) || die
79    
80     minstall_destdir || die
81    
82     mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die
83     mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die
84     mv ${BINDIR}/usr/$(mlibdir)/libncursesw.so.5* ${BINDIR}/$(mlibdir) || die
85     mlink ../../$(mlibdir)/libncursesw.so.5 /usr/$(mlibdir)/libncursesw.so || die
86     mlink libncursesw.so /usr/$(mlibdir)/libcursesw.so || die
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     # curses-config too
100     mlink ncursesw5-config /usr/bin/ncurses5-config || die
101    
102     # move the -m32 libs also to the right place (multilib)
103     if [[ $(mlibdir) != lib ]]
104     then
105     minstalldir /lib || die
106     mchmod 755 /usr/lib/\*.${PVER} || die
107     mchmod 644 /usr/lib/libncurses++w.a || die
108     mv ${BINDIR}/usr/lib/libncursesw.so.5* ${BINDIR}/lib || die
109     mlink ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so || die
110     mlink libncursesw.so /usr/lib/libcursesw.so || die
111    
112     # non-widec compat
113     for lib in curses ncurses form panel menu
114     do
115     echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/lib/lib${lib}.so || die
116     mlink lib${lib}w.a /usr/lib/lib${lib}.a || die
117     done
118     mlink libcurses.so /usr/lib/libcursesw.so || die
119     mlink libncurses.so /usr/lib/libcurses.so || die
120     mlink libncursesw.a /usr/lib/libcursesw.a || die
121     mlink libncurses.a /usr/lib/libcurses.a || die
122     mlink libncurses++w.a /usr/lib/libncurses++.a || die
123     fi
124    
125     # install non-widec runtime compat library (do not use minstalllib,
126     # we need libcnurses.so with loader hint for libncursesw and not a plain symlink!
127     all-abis minstallexec ${SRCDIR}-non-widec-'$abi'/lib/libncurses.so.${PVER} /usr/'$(mlibdir)' || die
128     all-abis mlink libncurses.so.${PVER} /usr/'$(mlibdir)'/libncurses.so.${PVER%%.*} || die
129    
130     # fixes a small man issue
131     if [ -e ${BINDIR}/usr/share/man/tack.1 ]
132     then
133     mv ${BINDIR}/usr/share/man/tack.1 \
134     ${BINDIR}/usr/share/man/man1 || die
135     fi
136    
137     # fix to enable colors in the default xterm
138     mv ${BINDIR}/usr/share/terminfo/x/xterm \
139     ${BINDIR}/usr/share/terminfo/x/xterm.orig || die
140     mlink xterm-color /usr/share/terminfo/x/xterm || die
141    
142     minstalldocs ANNOUNCE MANIFEST NEWS README* TO-DO || die
143     }
144    
145     preinstall()
146     {
147     if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so ]
148     then
149     rm ${MROOT}/usr/$(mlibdir)/libncurses.so || die
150     fi
151    
152     if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.5 ]
153     then
154     rm ${MROOT}/usr/$(mlibdir)/libncurses.so.5 || die
155     fi
156    
157     if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.5 ]
158     then
159     rm ${MROOT}/usr/$(mlibdir)/libcurses.so.5 || die
160     fi
161    
162     if [[ $(mlibdir) != lib ]]
163     then
164     if [ -L ${MROOT}/usr/lib/libncurses.so ]
165     then
166     rm ${MROOT}/usr/lib/libncurses.so || die
167     fi
168    
169     if [ -L ${MROOT}/usr/lib/libncurses.so.5 ]
170     then
171     rm ${MROOT}/usr/lib/libncurses.so.5 || die
172     fi
173    
174     if [ -L ${MROOT}/usr/lib/libcurses.so.5 ]
175     then
176     rm ${MROOT}/usr/lib/libcurses.so.5 || die
177     fi
178     fi
179     }
180    
181     postinstall()
182     {
183     # force ldconfig here
184     if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]]
185     then
186     /sbin/ldconfig
187     fi
188     }