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