+#
+# Conditional build:
+%bcond_without static_libs # static library
+
Summary: XML 1.0 parser
-Summary(pl): Parser XML 1.0
-Summary(pt_BR): Biblioteca XML expat
-Summary(ru): ðÅÒÅÎÏÓÉÍÁÑ ÂÉÂÌÉÏÔÅËÁ ÒÁÚÂÏÒÁ XML (expat)
-Summary(uk): ðÅÒÅÎÏÓÉÍÁ ¦Â̦ÏÔÅËÁ ÒÏÚÂÏÒÕ XML (expat)
+Summary(es.UTF-8): Parser de XML 1.0
+Summary(pl.UTF-8): Analizator składni XML-a 1.0
+Summary(pt_BR.UTF-8): Biblioteca XML expat
+Summary(ru.UTF-8): Переносимая библиотека разбора XML (expat)
+Summary(uk.UTF-8): Переносима бібліотека розбору XML (expat)
Name: expat
-Version: 1.95.3
-Release: 3
-License: Thai Open Source Software Center Ltd (distributable)
+Version: 2.6.2
+Release: 1
+Epoch: 1
+License: MIT
Group: Applications/Publishing/XML
-Source0: ftp://ftp.sourceforge.net/pub/sourceforge/expat/%{name}-%{version}.tar.gz
-Patch0: %{name}-DESTDIR.patch
-URL: http://expat.sourceforge.net/
+Source0: https://downloads.sourceforge.net/expat/%{name}-%{version}.tar.xz
+# Source0-md5: 0cb75c8feb842c0794ba89666b762a2d
+URL: http://www.libexpat.org/
+BuildRequires: autoconf >= 2.69
+BuildRequires: automake
+BuildRequires: docbook2X
+BuildRequires: gcc >= 5:3.2
+BuildRequires: libtool >= 2:2.4
+BuildRequires: sed >= 4.0
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
+Obsoletes: libexpat1_95 < 2
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-Obsoletes: libexpat1_95
%description
Expat is an XML parser written in C. It aims to be fully conforming.
It is currently not a validating XML parser.
-%description -l pl
-Expat to parser XML napisany w jêzyku C.
+%description -l es.UTF-8
+Expat es un parser de XML escrito en C. Pretende conformarse
+totalmente al estándar. Actualmente no es un parser XML validante.
+
+%description -l pl.UTF-8
+Expat to napisany w języku C analizator składni XML-a. Dąży do pełnej
+zgodności ze specyfikacją. Aktualnie nie jest analizatorem, który
+potwiedzał by zgodność ze specyfikacją.
-%description -l pt_BR
-Esta é a biblioteca, em C, XML expat, de James Clark. É um analisador
-orientado a fluxo de informações que pede o uso de handlers para lidar
+%description -l pt_BR.UTF-8
+Esta é a biblioteca, em C, XML expat, de James Clark. É um analisador
+orientado a fluxo de informações que pede o uso de handlers para lidar
com a estrutura que o analisador encontrar no documento.
-%description -l ru
-Expat -- ÐÁÒÓÅÒ XML 1.0, ÎÁÐÉÓÁÎÎÙÊ ÎÁ C. ïÎ ÐÒÅÄÎÁÚÎÁÞÅÎ ÄÌÑ ÔÏÇÏ,
-ÞÔÏÂÙ ÂÙÔØ ÐÏÌÎÏÓÔØÀ ÓÏ×ÍÅÓÔÉÍÙÍ. ÷ ÎÁÓÔÏÑÝÅÅ ×ÒÅÍÑ ÜÔÏ ÎÅ ÐÒÏ×ÅÒÑÀÝÉÊ
-("not a validating") XML ÐÁÒÓÅÒ.
+%description -l ru.UTF-8
+Expat -- паÑ\80Ñ\81еÑ\80 XML 1.0, напиÑ\81аннÑ\8bй на C. Ð\9eн пÑ\80едназнаÑ\87ен длÑ\8f Ñ\82ого,
+чтобы быть полностью совместимым. В настоящее время это не проверяющий
+("not a validating") XML паÑ\80Ñ\81еÑ\80.
-%description -l uk
-Expat -- ÐÁÒÓÅÒ XML 1.0, ÎÁÐÉÓÁÎÉÊ ÎÁ C. òÏÚÒÁÈÏ×ÁÎÉÊ ÎÁ ÔÅ, ÝÏ ÂÕÔÉ
-ÐÏ×ΦÓÔÀ ÓÕͦÓÎÉÍ. îÁÒÁÚ¦ ÃÅ ÎÅ ÐÅÒÅצÒÑÀÞÉÊ ("not a validating") XML
-ÐÁÒÓÅÒ.
+%description -l uk.UTF-8
+Expat -- паÑ\80Ñ\81еÑ\80 XML 1.0, напиÑ\81аний на C. РозÑ\80аÑ\85ований на Ñ\82е, Ñ\89об бÑ\83Ñ\82и
+повнÑ\96Ñ\81Ñ\82Ñ\8e Ñ\81Ñ\83мÑ\96Ñ\81ним. Ð\9dаÑ\80азÑ\96 Ñ\86е не пеÑ\80евÑ\96Ñ\80Ñ\8fÑ\8eÑ\87ий ("not a validating") XML
+паÑ\80Ñ\81еÑ\80.
%package devel
Summary: Expat header files
-Summary(es): Archivos de inclusión del expat
-Summary(pl): Pliki nag³ówkowe do biblioteki expat
-Summary(pt_BR): Arquivos de inclusão do expat
-Summary(ru): èÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÁ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ Ó expat
-Summary(uk): èÅÄÅÒÉ ÔÁ ¦Â̦ÏÔÅËÁ, ÎÅÏÂȦÄΦ ÄÌÑ ÐÒÏÇÒÁÍÕ×ÁÎÎÑ Ú expat
+Summary(es.UTF-8): Archivos de inclusión del expat
+Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki expat
+Summary(pt_BR.UTF-8): Arquivos de inclusão do expat
+Summary(ru.UTF-8): Хедеры и библиотека, необходимые для программирования с expat
+Summary(uk.UTF-8): Хедери та бібліотека, необхідні для програмування з expat
Group: Development/Libraries
-Requires: %{name} = %{version}
-Obsoletes: libexpat1_95-devel
+Requires: %{name} = %{epoch}:%{version}-%{release}
+Obsoletes: libexpat1_95-devel < 2
%description devel
Expat header files.
-%description devel -l es
-Archivos de inclusión del expat.
+%description devel -l es.UTF-8
+Archivos de inclusión del expat.
-%description devel -l pl
-Pliki nag³ówkowe do biblioteki expat.
+%description devel -l pl.UTF-8
+Pliki nagłówkowe do biblioteki expat.
-%description devel -l pt_BR
-Arquivos de inclusão do expat.
+%description devel -l pt_BR.UTF-8
+Arquivos de inclusão do expat.
-%description devel -l ru
-üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÈÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÉ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÎÁÐÉÓÁÎÉÑ
-ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ libexpat.
+%description devel -l ru.UTF-8
+Этот пакет содержит хедеры и библиотеки, необходимые для написания
+пÑ\80огÑ\80амм, иÑ\81полÑ\8cзÑ\83Ñ\8eÑ\89иÑ\85 libexpat.
-%description devel -l uk
-ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÈÅÄÅÒÉ ÔÁ ¦Â̦ÏÔÅËÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÎÁÐÉÓÁÎÎÑ
-ÐÒÏÇÒÁÍ, ÝÏ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ libexpat.
+%description devel -l uk.UTF-8
+Цей пакет містить хедери та бібліотеки, необхідні для написання
+пÑ\80огÑ\80ам, Ñ\89о викоÑ\80иÑ\81Ñ\82овÑ\83Ñ\8eÑ\82Ñ\8c libexpat.
%package static
Summary: Expat static library
-Summary(pl): Biblioteka statyczna expat
-Summary(pt_BR): Bibliotecas estáticas para desenvolvimento com a biblioteca expat
-Summary(ru): óÔÁÔÉÞÅÓËÁÑ ÂÉÂÌÉÏÔÅËÁ ÄÌÑ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ Ó libexpat
-Summary(uk): óÔÁÔÉÞÎÁ ¦Â̦ÏÔÅËÁ ÄÌÑ ÐÒÏÇÒÁÍÕ×ÁÎÎÑ Ú libexpat
+Summary(es.UTF-8): Biblioteca estática de expat
+Summary(pl.UTF-8): Biblioteka statyczna expat
+Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com a biblioteca expat
+Summary(ru.UTF-8): Статическая библиотека для программирования с libexpat
+Summary(uk.UTF-8): Статична бібліотека для програмування з libexpat
Group: Development/Libraries
-Requires: %{name} = %{version}
+Requires: %{name} = %{epoch}:%{version}-%{release}
%description static
Expat static library.
-%description static -l pl
+%description static -l es.UTF-8
+Biblioteca estática de expat.
+
+%description static -l pl.UTF-8
Biblioteka statyczna expat.
-%description static -l pt_BR
-Bibliotecas estáticas para desenvolvimento com a biblioteca expat.
+%description static -l pt_BR.UTF-8
+Bibliotecas estáticas para desenvolvimento com a biblioteca expat.
+
+%description static -l ru.UTF-8
+Этот пакет содержит статическую библиотеку, необходимую для написания
+программ, использующих libexpat.
+
+%description static -l uk.UTF-8
+Цей пакет містить статичну бібліотеку, необхідну для написання
+програм, що використовують libexpat.
+
+%package tools
+Summary: Expat utilities (xmlwf)
+Summary(pl.UTF-8): Programy narzędziowe do biblioteki Expat (xmlwf)
+Group: Applications/Text
+Requires: %{name} = %{epoch}:%{version}-%{release}
-%description static -l ru
-üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÓÔÁÔÉÞÅÓËÕÀ ÂÉÂÌÉÏÔÅËÕ, ÎÅÏÂÈÏÄÉÍÕÀ ÄÌÑ ÎÁÐÉÓÁÎÉÑ
-ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ libexpat.
+%description tools
+Expat utilities:
+- xmlwf: determines if an XML document is well-formed.
-%description static -l uk
-ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÓÔÁÔÉÞÎÕ Â¦Â̦ÏÔÅËÕ, ÎÅÏÂȦÄÎÕ ÄÌÑ ÎÁÐÉÓÁÎÎÑ
-ÐÒÏÇÒÁÍ, ÝÏ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ libexpat.
+%description tools -l pl.UTF-8
+Programy narzędziowe do biblioteki Expat:
+- xmlwf: sprawdza, czy dokument XML jest dobrze sformułowany.
%prep
%setup -q
-%patch0 -p1
%build
-%configure
-
+%{__libtoolize}
+%{__aclocal} -I m4
+%{__autoconf}
+%{__autoheader}
+%{__automake}
+# remove SIZEOF_VOID_P define, see buildconf.sh
+%{__sed} -i -e '/^\/\* The size of `void \*/,/^$/ d' expat_config.h.in
+%configure \
+ DOCBOOK_TO_MAN=docbook2X2man \
+ %{!?with_static_libs:--disable-static}
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+install -d $RPM_BUILD_ROOT%{_aclocaldir}
+cp -p conftools/expat.m4 $RPM_BUILD_ROOT%{_aclocaldir}
+
+install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+cp -p examples/*.c $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*.so.*.*
-%attr(755,root,root) %{_bindir}/*
-%{_mandir}/man1/*
+%doc AUTHORS COPYING Changes README.md
+%attr(755,root,root) %{_libdir}/libexpat.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libexpat.so.1
%files devel
%defattr(644,root,root,755)
-%doc Changes COPYING README doc/{reference.html,style.css}
-%attr(755,root,root) %{_libdir}/lib*.so
-%attr(755,root,root) %{_libdir}/lib*.la
-%{_includedir}/*
-
+%doc doc/{reference.html,style.css}
+%attr(755,root,root) %{_libdir}/libexpat.so
+%{_libdir}/libexpat.la
+%{_includedir}/expat*.h
+%{_aclocaldir}/expat.m4
+%{_pkgconfigdir}/expat.pc
+%{_libdir}/cmake/expat-%{version}
+%{_examplesdir}/%{name}-%{version}
+
+%if %{with static_libs}
%files static
%defattr(644,root,root,755)
-%{_libdir}/lib*.a
+%{_libdir}/libexpat.a
+%endif
+
+%files tools
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/xmlwf
+%{_mandir}/man1/xmlwf.1*