]> git.pld-linux.org Git - packages/popt.git/blob - popt.spec
- up to 1.19
[packages/popt.git] / popt.spec
1 #
2 # Conditional build:
3 %bcond_with     dietlibc        # static dietlibc library
4
5 Summary:        C library for parsing command line parameters
6 Summary(de.UTF-8):      C-Library zum Parsen von Befehlszeilenparametern
7 Summary(fr.UTF-8):      Bibliothèque C pour analyser les paramètres de la ligne de commande
8 Summary(pl.UTF-8):      Biblioteka C do przetwarzania parametrów przekazywanych do programów w linii poleceń
9 Summary(ru.UTF-8):      Библиотека C для разбора параметров командной строки
10 Summary(tr.UTF-8):      Komut satırı parametrelerini ayrıştırımak için C arşivi
11 Summary(uk.UTF-8):      Бібліотека C для розбору параметрів командної стрічки
12 Name:           popt
13 Version:        1.19
14 Release:        1
15 License:        X Consortium (MIT-like)
16 Group:          Libraries
17 Source0:        http://ftp.rpm.org/popt/releases/popt-1.x/%{name}-%{version}.tar.gz
18 # Source0-md5:  eaa2135fddb6eb03f2c87ee1823e5a78
19 Patch0:         %{name}-diet.patch
20 URL:            https://rpm.org/
21 BuildRequires:  autoconf >= 2.57
22 BuildRequires:  automake >= 1.4
23 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.31-5}
24 BuildRequires:  gettext-tools >= 0.11.5
25 BuildRequires:  libtool >= 2:2.2
26 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27
28 # for some reason known only to rpm there must be "\\|" not "\|" here
29 %define         dietarch        %(echo %{_target_cpu} | sed -e 's/i.86\\|pentium.\\|athlon/i386/;s/amd64/x86_64/;s/armv.*/arm/')
30 %define         dietlibdir      %{_prefix}/lib/dietlibc/lib-%{dietarch}
31
32 %description
33 Popt is a C library for passing command line parameters. It was
34 heavily influenced by the getopt() and getopt_long() functions, but it
35 allows more powerful argument expansion. It can parse arbitrary argv[]
36 style arrays and automatically set variables based on command line
37 arguments. It also allows command line arguments to be aliased via
38 configuration files and includes utility functions for parsing
39 arbitrary strings into argv[] arrays using shell-like rules.
40
41 %description -l de.UTF-8
42 Popt ist eine C-Library zum Parsen von Befehlszeilenparametern, stark
43 beeinflußt von den getopt() und getopt_long()-Funktionen, aber mit
44 sehr viel besserer Argumenterweiterung. Es können beliebige
45 argv[]-Argument- Arrays geparst und Variablen auf der Basis von
46 Befehlszeilenargumenten automatisch gesetzt werden. Ferner können
47 Befehlszeilenargumente über Konfigurationsdateien ge-aliast werden,
48 und die Library enthält Utility- funktionen zum Parsen beliebiger
49 Strings in argv[]-Arrays anhand von Shell-ähnlichen Regeln.
50
51 %description -l fr.UTF-8
52 Popt est une bibliothèque C pour analyser les paramêtres de la ligne
53 de commande. Elle a été beaucoup influencée par les fonctions getopt()
54 et getopt_long() mais permet une expansion plus puissante des
55 arguments. Elle peut analyser des tableaux arbitraires du style argv[]
56 et configure les variables automatiquement selon les arguments de la
57 ligne de commande. Elle permet aussi à ces arguments d'être des alias
58 via des fichiers de configuration et inclut des fonctions utilitaires
59 pour analyser des chaînes arbitraires dans les tableaux argv[] en
60 utilisant des règles à la shell
61
62 %description -l pl.UTF-8
63 Popt jest biblioteką C służącą przetwarzaniu parametrów wywołania.
64 Duży wpływ miały na nią getopt() i getopt_long(), ale ma od nich
65 znacznie większe możliwości. Może przetwarzać bezpośrednio tablice
66 typu argv[] i automatycznie ustawiać zmienne w oparciu i parametry
67 wywołania. Pozwala także na tworzenie związków pomiędzy argumentami
68 wywołania a plikami konfiguracyjnymi oraz pozwala zamieniać ciągi
69 znaków na tablice typu argv[] z wykorzystaniem zasad znanych z powłok
70 (shelli).
71
72 %description -l ru.UTF-8
73 Popt - это библиотека C для разбора параметров командной строки. Она
74 построена по образу и подобию функций getopt() и getopt_long(), но в
75 отличие от последних позволяет более мощное расширение аргументов. Она
76 может разбирать произвольные массивы в стиле argv[] и автоматически
77 устанавливать переменные в зависимости от аргументов командной строки.
78 Также она позволяет создавать алиасы через конфигурационные файлы и
79 включает функции для разбора произвольных строк в массивах argv[] с
80 использованием шелл-подобных правил.
81
82 %description -l tr.UTF-8
83 Popt, komut satırı parametrelerini ayrıştıran bir C arşividir.
84 Gelişigüzel argv[] tarzı dizileri ayrıştırabilir ve otomatik olarak
85 komut satırı değişkenlerine dayalı değişkenleri atayabilir.
86
87 %description -l uk.UTF-8
88 Popt - це бібліотека C для розбору параметрів командної стрічки. Вона
89 побудована на кшталт функцій getopt() та getopt_long(), але на відміну
90 від останніх дозволяє більш потужне розширення аргументів. Вона може
91 розбирати довільні масиви в стилі argv[] та автоматично встановлювати
92 змінні в залежності від аргументів командної стрічки. Також вона
93 дозволяє створювати аліаси через конфігураційні файли та містить
94 функції для розбору довільних стрічок в масивах argv[] з використанням
95 шелл-подібних правил.
96
97 %package devel
98 Summary:        Header file and documentation for popt development
99 Summary(pl.UTF-8):      Pliki nagłówkowe i dokumentacja dla popt
100 Summary(ru.UTF-8):      Хедеры и библиотека, необходимые для программирования с popt
101 Summary(uk.UTF-8):      Хедери та бібліотека, необхідні для програмування з popt
102 Group:          Development/Libraries
103 Requires:       %{name} = %{version}-%{release}
104
105 %description devel
106 Header file and documentation for popt development.
107
108 %description devel -l pl.UTF-8
109 Pliki nagłówkowe i dokumentacja dla popt.
110
111 %description devel -l ru.UTF-8
112 Этот пакет содержит библиотеку и хедеры, необходимые для разработки
113 программ, использующих popt.
114
115 %description devel -l uk.UTF-8
116 Цей пакет містить бібліотеку та хедери, необхідні для розробки
117 програм, що використовують popt.
118
119 %package static
120 Summary:        Static library for popt development
121 Summary(pl.UTF-8):      Biblioteka statyczna popt
122 Summary(ru.UTF-8):      Статические библиотеки popt
123 Summary(uk.UTF-8):      Статичні бібліотеки popt
124 Group:          Development/Libraries
125 Requires:       %{name}-devel = %{version}-%{release}
126
127 %description static
128 Static library for popt development.
129
130 %description static -l pl.UTF-8
131 Biblioteka statyczna popt.
132
133 %description static -l ru.UTF-8
134 Это отдельный пакет со статическими библиотеками, которые больше не
135 входят в popt-devel.
136
137 %description static -l uk.UTF-8
138 Це окремий пакет зі статичними бібліотеками, що більше не входять в
139 склад popt-devel.
140
141 %package dietlibc
142 Summary:        Static dietlibc library for popt development
143 Summary(pl.UTF-8):      Biblioteka statyczna dietlibc popt
144 Group:          Development/Libraries
145 Requires:       %{name}-devel = %{version}-%{release}
146
147 %description dietlibc
148 Static dietlibc library for popt development.
149
150 %description dietlibc -l pl.UTF-8
151 Biblioteka statyczna dietlibc popt.
152
153 %prep
154 %setup -q
155 %patch0 -p1
156
157 %{__sed} -i -e 's#po/Makefile.in intl/Makefile##g' configure.ac
158
159 %build
160 %{__gettextize}
161 %{__libtoolize}
162 %{__aclocal} -I m4
163 %{__autoconf}
164 %{__autoheader}
165 %{__automake} -i
166
167 %if %{with dietlibc}
168 __cc="%{__cc}"
169 %configure \
170         CC="diet ${__cc#ccache } %{rpmcflags} %{rpmldflags} -Os -static" \
171         ac_cv_func_stpcpy=yes \
172 %if "%{?configure_cache}" == "1"
173         --cache-file=%{?configure_cache_file}%{!?configure_cache_file:configure}-initrd.cache \
174 %endif
175         --disable-shared \
176         --disable-silent-rules \
177         --enable-static
178
179 # libpopt.la dependency on configmake.h missing
180 %{__make} configmake.h
181 %{__make} libpopt.la
182 %{__mv} .libs/libpopt.a diet-libpopt.a
183 %{__make} clean
184 %endif
185
186 %configure \
187         --disable-silent-rules
188
189 %{__make}
190
191 %install
192 rm -rf $RPM_BUILD_ROOT
193 install -d $RPM_BUILD_ROOT/%{_lib}
194 %{?with_dietlibc:install -d $RPM_BUILD_ROOT%{dietlibdir}}
195
196 %{__make} install \
197         pkgconfigdir=%{_pkgconfigdir} \
198         DESTDIR=$RPM_BUILD_ROOT
199
200 %{__mv} $RPM_BUILD_ROOT%{_libdir}/libpopt.so.* $RPM_BUILD_ROOT/%{_lib}
201 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libpopt.so.*.*.*) \
202         $RPM_BUILD_ROOT%{_libdir}/libpopt.so
203
204 %{?with_dietlibc:install diet-libpopt.a $RPM_BUILD_ROOT%{dietlibdir}/libpopt.a}
205
206 %find_lang %{name}
207
208 %clean
209 rm -rf $RPM_BUILD_ROOT
210
211 %post   -p /sbin/ldconfig
212 %postun -p /sbin/ldconfig
213
214 %files -f %{name}.lang
215 %defattr(644,root,root,755)
216 %doc COPYING README
217 %attr(755,root,root) /%{_lib}/libpopt.so.*.*.*
218 %attr(755,root,root) %ghost /%{_lib}/libpopt.so.0
219
220 %files devel
221 %defattr(644,root,root,755)
222 %attr(755,root,root) %{_libdir}/libpopt.so
223 %{_libdir}/libpopt.la
224 %{_includedir}/popt.h
225 %{_pkgconfigdir}/popt.pc
226 %{_mandir}/man3/popt.3*
227
228 %files static
229 %defattr(644,root,root,755)
230 %{_libdir}/libpopt.a
231
232 %if %{with dietlibc}
233 %files dietlibc
234 %defattr(644,root,root,755)
235 %{dietlibdir}/libpopt.a
236 %endif
This page took 0.087826 seconds and 4 git commands to generate.