Contents of /smage/trunk/core/ncurses/ncurses-5.7-r5.smage2
Parent Directory | Revision Log
Revision 665 -
(show annotations)
(download)
Thu Oct 21 12:19:07 2010 UTC (13 years, 11 months ago) by niro
File size: 5142 byte(s)
Thu Oct 21 12:19:07 2010 UTC (13 years, 11 months ago) by niro
File size: 5142 byte(s)
-fixed missing teminfo symlink
1 | # $Id: ncurses-5.7-r4.smage2 5487 2010-06-30 00:01:42Z niro $ |
2 | |
3 | PNAME="ncurses" |
4 | PVER="5.7" |
5 | PBUILD="r5" |
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 | } |