2 # - prepare package with web-files from contrib and JNI (contrib/java, needs move to jdk)
5 %if "%{pld_release}" == "ac"
6 %bcond_with dotnet # don't build C# binding
7 %bcond_with java # don't build Java implementation
9 %bcond_without dotnet # don't build C# binding
10 %bcond_without java # don't build Java implementation
12 %bcond_without python # don't build python interface
14 %ifnarch %{ix86} %{x8664} alpha %{arm} hppa ppc s390 s390x sparc sparcv9 sparc64
20 Summary: Internationalized string processing library
21 Summary(pl.UTF-8): Biblioteka do przetwarzania umiędzynarodowionych łańcuchów
25 License: GPL v2+ or LGPL v3+ (library), GPL v3+ (utilities)
27 Source0: https://ftp.gnu.org/gnu/libidn/%{name}-%{version}.tar.gz
28 # Source0-md5: 813c7b268d1051ca02c3610986126f38
29 Patch0: %{name}-info.patch
30 Patch1: %{name}-python.patch
31 URL: http://www.gnu.org/software/libidn/
32 BuildRequires: autoconf >= 2.61
33 BuildRequires: automake >= 1:1.10
34 BuildRequires: gettext-tools >= 0.19.3
35 %{?with_java:BuildRequires: gjdoc}
36 BuildRequires: gtk-doc >= 1.1
37 BuildRequires: help2man
38 %{?with_java:BuildRequires: jdk}
39 BuildRequires: libtool >= 2:2
40 %{?with_dotnet:BuildRequires: mono}
41 %{?with_dotnet:BuildRequires: mono-csharp}
42 BuildRequires: perl-base
43 BuildRequires: pkgconfig
44 %{?with_python:BuildRequires: python-devel >= 1:2.3}
45 BuildRequires: rpm >= 4.4.9-56
46 %{?with_python:BuildRequires: rpm-pythonprov}
47 BuildRequires: rpmbuild(macros) >= 1.384
48 BuildRequires: texinfo >= 4.7
49 Requires(post,postun): /sbin/ldconfig
50 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53 %define _emacs_lispdir %{_datadir}/emacs/site-lisp
56 GNU Libidn is an implementation of the Stringprep, Punycode and IDNA
57 specifications defined by the IETF Internationalized Domain Names
58 (IDN) working group, used for internationalized domain names.
60 %description -l pl.UTF-8
61 GNU Libidn to implementacja specyfikacji Stringprep, Punycode i IDNA
62 zdefiniowanych przez grupę roboczą IETF Internationalized Domain Names
63 (IDN), zajmującą się umiędzynarodowionymi nazwami domen.
66 Summary: Header files for libidn library
67 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libidn
69 Group: Development/Libraries
70 Requires: %{name} = %{version}-%{release}
73 Header files for libidn library.
75 %description devel -l pl.UTF-8
76 Pliki nagłówkowe biblioteki libidn.
79 Summary: Static libidn library
80 Summary(pl.UTF-8): Statyczna biblioteka libidn
82 Group: Development/Libraries
83 Requires: %{name}-devel = %{version}-%{release}
86 Static libidn library.
88 %description static -l pl.UTF-8
89 Statyczna biblioteka libidn.
91 %package -n dotnet-libidn
92 Summary: C# binding for libidn
93 Summary(pl.UTF-8): Wiązanie C# dla libidn
96 Requires: %{name} = %{version}-%{release}
98 %description -n dotnet-libidn
99 C# binding for libidn.
101 %description -n dotnet-libidn -l pl.UTF-8
102 Wiązanie C# dla libidn.
104 %package -n emacs-libidn-pkg
105 Summary: IDN support files for emacs
106 Summary(pl.UTF-8): Obsługa IDN dla emacsa
108 Group: Applications/Editors/Emacs
109 Requires: %{name} = %{version}-%{release}
111 %description -n emacs-libidn-pkg
112 IDN support files for emacs.
114 %description -n emacs-libidn-pkg -l pl.UTF-8
115 Obsługa IDN dla emacsa.
117 %package -n java-libidn
118 Summary: Java implementation of libidn
119 Summary(pl.UTF-8): Implementacja libidn w Javie
124 %description -n java-libidn
125 Java implementation of libidn (internationalized domain names
128 %description -n java-libidn -l pl.UTF-8
129 Implementacja libidn (biblioteki umiędzynarodowionych nazw domen) w
132 %package -n python-idn
133 Summary: Python interface to libidn
134 Summary(pl.UTF-8): Pythonowy interfejs do libidn
136 Group: Libraries/Python
137 Requires: %{name} = %{version}-%{release}
138 %pyrequires_eq python-libs
140 %description -n python-idn
141 Python interface to libidn (internationalized domain names library).
143 %description -n python-idn -l pl.UTF-8
144 Pythonowy interfejs do libidn (biblioteki umiędzynarodowionych nazw
154 # avoid different builds having different timestamps
155 # see http://lists.pld-linux.org/mailman/pipermail/pld-devel-en/2008-August/020363.html
156 d='$Date: 2012-05-24 11:40:06 $'
157 d=${d#?Date: }; d=${d%%%% *}; d=$(date -d "$d" '+%d %B %Y')
158 %{__sed} -i -e "s,@value{UPDATED},$d,g" doc/libidn.texi
160 # remove it when "linking libtool libraries using a non-POSIX archiver ..." warning is gone
161 # (after libidn or libtool change)
162 %{__sed} -i -e '/AM_INIT_AUTOMAKE/s/-Werror//' configure.ac
167 %{__aclocal} -I m4 -I gl/m4 -I lib/gl/m4
172 --disable-silent-rules \
173 %{?with_dotnet:--enable-csharp=mono}%{!?with_dotnet:--disable-csharp} \
174 %{?with_java:--enable-java} \
175 --with-lispdir=%{_emacs_lispdir}
180 %{__make} -C contrib/idn-python \
181 INCLUDE="%{py_incdir} %{rpmcflags} -I../../lib -L../../lib/.libs"
182 %{__mv} contrib/idn-python/idn.so python-idn.so
186 rm -rf $RPM_BUILD_ROOT
189 DESTDIR=$RPM_BUILD_ROOT
192 install -D python-idn.so $RPM_BUILD_ROOT%{py_sitedir}/idn.so
197 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
200 rm -rf $RPM_BUILD_ROOT
204 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
208 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
210 %files -f %{name}.lang
211 %defattr(644,root,root,755)
212 %doc AUTHORS ChangeLog FAQ NEWS README* THANKS TODO doc/libidn.html contrib/web
213 %attr(755,root,root) %{_bindir}/idn
214 %attr(755,root,root) %{_libdir}/libidn.so.*.*.*
215 %attr(755,root,root) %ghost %{_libdir}/libidn.so.12
216 %{_mandir}/man1/idn.1*
217 %{_infodir}/libidn.info*
218 %{_infodir}/libidn-*.png
221 %defattr(644,root,root,755)
222 %attr(755,root,root) %{_libdir}/libidn.so
224 %{_includedir}/idn-*.h
225 %{_includedir}/idna.h
226 %{_includedir}/pr29.h
227 %{_includedir}/punycode.h
228 %{_includedir}/stringprep.h
230 %{_pkgconfigdir}/libidn.pc
231 %{_mandir}/man3/idn_*.3*
232 %{_mandir}/man3/idna_*.3*
233 %{_mandir}/man3/pr29_*.3*
234 %{_mandir}/man3/punycode_*.3*
235 %{_mandir}/man3/stringprep*.3*
236 %{_mandir}/man3/tld_*.3*
239 %defattr(644,root,root,755)
243 %files -n dotnet-libidn
244 %defattr(644,root,root,755)
245 # why not in gac? does it work here?
246 %{_libdir}/Libidn.dll
249 %files -n emacs-libidn-pkg
250 %defattr(644,root,root,755)
251 %{_emacs_lispdir}/*.el
254 %files -n java-libidn
255 %defattr(644,root,root,755)
256 %{_javadir}/libidn*.jar
261 %defattr(644,root,root,755)
262 %attr(755,root,root) %{py_sitedir}/idn.so