]> git.ipfire.org Git - ipfire-3.x.git/blame - ncurses/ncurses.nm
json-c: Update to version 0.17-20230812
[ipfire-3.x.git] / ncurses / ncurses.nm
CommitLineData
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 6name = ncurses
0e73212e 7version = 6.4
e6b6abcc 8release = 2
d58493c8 9thisapp = %{name}-%{version}
166a6c21 10
802ea3af 11groups = System/Base
0e73212e 12url = https://invisible-island.net/ncurses/ncurses.html
802ea3af
MT
13license = MIT
14summary = Ncurses support utilities.
166a6c21 15
802ea3af
MT
16description
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
21end
22
d58493c8 23source_dl = https://github.com/mirror/%{name}/archive/v%{version}.tar.gz#/
802ea3af
MT
24
25build
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
98end
99
100packages
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 186end