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