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