]> git.ipfire.org Git - people/arne_f/ipfire-3.x.git/blob - ncurses/ncurses.nm
Add a -debuginfo for every package that is not noarch.
[people/arne_f/ipfire-3.x.git] / ncurses / ncurses.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = ncurses
7 version = 5.9
8 release = 5
9
10 groups = System/Base
11 url = http://invisible-island.net/ncurses/ncurses.html
12 license = MIT
13 summary = Ncurses support utilities.
14
15 description
16 The curses library routines are a terminal-independent method of
17 updating character screens with reasonable optimization. The ncurses
18 (new curses) library is a freely distributable replacement for the
19 discontinued 4.4 BSD classic curses library.
20 end
21
22 source_dl =
23
24 build
25 requires
26 gcc-c++
27 end
28
29 configure_options += \
30 --mandir=/usr/share/man \
31 --with-shared \
32 --without-debug \
33 --without-ada \
34 --with-ospeed=unsigned \
35 --with-chtype=long \
36 --enable-hard-tabs \
37 --enable-xmc-glitch \
38 --enable-colorfgbg \
39 --with-terminfo-dirs=/etc/terminfo:/usr/share/terminfo:/lib/terminfo \
40 --enable-overwrite \
41 --enable-pc-files \
42 --with-termlib=tinfo
43
44 export PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig
45
46 build
47 mkdir -pv narrowc widec
48
49 # Build narrowc version.
50 cd narrowc
51 ln -svf ../configure .
52 ./configure %{configure_options} --with-ticlib
53 make %{PARALLELISMFLAGS} libs
54 make %{PARALLELISMFLAGS} -C progs
55
56 # Build widec version.
57 cd ../widec
58 ln -svf ../configure .
59 ./configure %{configure_options} --enable-widec --without-progs
60 make %{PARALLELISMFLAGS} libs
61 cd ..
62 end
63
64 install
65 make -C narrowc DESTDIR=%{BUILDROOT} install.{libs,progs,data}
66 rm -rvf %{BUILDROOT}/usr/lib/libtinfo.*
67 make -C widec DESTDIR=%{BUILDROOT} install.{libs,includes,man}
68
69 chmod -v 755 %{BUILDROOT}/usr/lib/lib*.so.*.*
70
71 # move lib{ncurses{,w},tinfo}.so.* to /lib*
72 mkdir -pv %{BUILDROOT}/lib
73 mv -v %{BUILDROOT}/usr/lib/lib{ncurses{,w},tinfo}.so.* %{BUILDROOT}/lib
74 for l in %{BUILDROOT}/usr/lib/lib{ncurses{,w},tinfo}.so; do
75 ln -sf $(echo /usr/lib | \
76 sed 's,\(^/\|\)[^/][^/]*,..,g')/lib/$(readlink $l) $l
77 done
78 mkdir -pv %{BUILDROOT}/{etc,lib}/terminfo
79
80 # move few basic terminfo entries to /lib
81 baseterms=
82 for termname in \
83 ansi dumb linux vt100 vt100-nav vt102 vt220 vt52; do
84 for t in $(find %{BUILDROOT}/usr/share/terminfo \
85 -samefile %{BUILDROOT}/usr/share/terminfo/${termname::1}/$termname); do
86 baseterms="$baseterms $(basename $t)"
87 done
88 done
89 for termname in ${baseterms}; do
90 termpath=terminfo/${termname::1}/${termname}
91 mkdir -pv %{BUILDROOT}/lib/terminfo/${termname::1}
92 mv -v %{BUILDROOT}/usr/share/${termpath} %{BUILDROOT}/lib/${termpath}
93 ln -svf $(dirname /usr/share/${termpath} | \
94 sed 's,\(^/\|\)[^/][^/]*,..,g')/lib/${termpath} \
95 %{BUILDROOT}/usr/share//${termpath}
96 done
97
98 # can't replace directory with symlink, symlink all headers
99 #mkdir %{BUILDROOT}/usr/include/ncurses{,w}
100 #for l in %{BUILDROOT}/usr/include/*.h; do
101 # ln -s ../$(basename $l) %{BUILDROOT}/usr/include/ncurses
102 # ln -s ../$(basename $l) %{BUILDROOT}/usr/include/ncursesw
103 #done
104
105 # don't require -ltinfo when linking with --no-add-needed
106 for l in %{BUILDROOT}/usr/lib/libncurses{,w}.so; do
107 soname=$(basename $(readlink $l))
108 rm -f $l
109 echo "INPUT($soname -ltinfo)" > $l
110 done
111
112 rm -f %{BUILDROOT}/usr/lib/libcurses{,w}.so
113 echo "INPUT(-lncurses)" > %{BUILDROOT}/usr/lib/libcurses.so
114 echo "INPUT(-lncursesw)" > %{BUILDROOT}/usr/lib/libcursesw.so
115 echo "INPUT(-ltinfo)" > %{BUILDROOT}/usr/lib/libtermcap.so
116
117 rm -vf %{BUILDROOT}/usr/lib/terminfo
118 rm -vf %{BUILDROOT}/usr/lib/pkgconfig/{*_g,ncurses++*}.pc
119 end
120 end
121
122 packages
123 package %{name}
124
125 package %{name}-libs
126 template LIBS
127
128 requires
129 %{name}-base=%{thisver}
130 end
131 end
132
133 package %{name}-devel
134 template DEVEL
135 end
136
137 package %{name}-term
138 summary = Terminal descriptions for ncurses.
139 description
140 This package contains additional terminal descriptions not found in
141 the ncurses-base package.
142 end
143
144 provides += /usr/share/terminfo
145
146 files
147 /usr/share/terminfo
148 end
149 end
150
151 package %{name}-base
152 summary = Terminal descriptions.
153 description
154 This package contains descriptions of common terminals. Other terminal
155 descriptions are included in the ncurses-term package.
156 end
157
158 conflicts = ncurses<=5.9-1
159
160 files
161 /lib/terminfo
162 /usr/share/terminfo/*/Eterm*
163 /usr/share/terminfo/*/aterm
164 /usr/share/terminfo/*/bterm
165 /usr/share/terminfo/*/cons25
166 /usr/share/terminfo/*/cygwin
167 /usr/share/terminfo/*/eterm*
168 /usr/share/terminfo/*/gnome
169 /usr/share/terminfo/*/gnome-256color
170 /usr/share/terminfo/*/hurd
171 /usr/share/terminfo/*/jfbterm
172 /usr/share/terminfo/*/konsole
173 /usr/share/terminfo/*/konsole-256color
174 /usr/share/terminfo/*/mach*
175 /usr/share/terminfo/*/mlterm
176 /usr/share/terminfo/*/mrxvt
177 /usr/share/terminfo/*/nsterm
178 /usr/share/terminfo/*/putty*
179 /usr/share/terminfo/*/pcansi
180 /usr/share/terminfo/*/rxvt
181 /usr/share/terminfo/*/rxvt-*
182 /usr/share/terminfo/*/screen
183 /usr/share/terminfo/*/screen-*color
184 /usr/share/terminfo/*/screen.*
185 /usr/share/terminfo/*/sun
186 /usr/share/terminfo/*/teraterm
187 /usr/share/terminfo/*/teraterm2.3
188 /usr/share/terminfo/*/vte
189 /usr/share/terminfo/*/vte-256color
190 /usr/share/terminfo/*/vwmterm
191 /usr/share/terminfo/*/wsvt25*
192 /usr/share/terminfo/*/xfce
193 /usr/share/terminfo/*/xterm xterm-*
194 end
195 end
196
197 package %{name}-debuginfo
198 template DEBUGINFO
199 end
200 end