%global snapdate 20131001 %global commit d90ea2b2d01b27a7adf0501f644a7782e50362fe %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: gumbo-parser Version: 1.0 Release: 0.2.%{snapdate}git%{shortcommit}%{?dist} Summary: A HTML5 parser License: ASL 2.0 URL: https://github.com/google/gumbo-parser Source0: https://github.com/google/gumbo-parser/archive/%{commit}/gumbo-parser-1.0-%{snapdate}git%{shortcommit}.tar.gz # Fix up Doxyfile Patch1: 0001-Doxygen-tweaks.patch # Autotool generated sources Patch2: 0002-Autotool-generated-sources.patch # For the tests BuildRequires: gtest-devel # For the docs BuildRequires: doxygen # For the python bindings BuildRequires: python3-setuptools BuildRequires: python3-devel %description Gumbo is an implementation of the HTML5 parsing algorithm implemented as a pure C99 library with no outside dependencies. It's designed to serve as a building block for other tools and libraries such as linters, validators, templating languages, and refactoring and analysis tools. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %package python Summary: Python bindings to %{name} Requires: %{name} = %{version}-%{release} BuildArch: noarch %description python Python bindings to %{name}. %prep %setup -q -n %{name}-%{commit} %patch1 -p1 # Package has autotools compatibility issues # Use prebuilt autotool generated sources %patch2 -p1 # Fix up permissions chmod +x config.guess config.sub configure \ depcomp install-sh missing test-driver # Fix up timestamps touch -r aclocal.m4 configure m4/*.m4 Makefile.in # Doxygen standard footers are not multilib-compliant # Create a custom one. doxygen -w html footer.html /dev/null /dev/null sed -i -e 's,\$generatedby,Generated on $date for $projectname by,' footer.html # Update Doxyfile doxygen -u Doxyfile %build %configure --disable-static --disable-silent-rules --docdir=%{_pkgdocdir} make %{?_smp_mflags} # Build doxgen docs doxygen Doxyfile # python bindings %{__python3} setup.py build %check make check %install %make_install find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' install -m 755 -d ${RPM_BUILD_ROOT}%{_mandir}/man3 install -m 644 docs/man/man3/*.3 ${RPM_BUILD_ROOT}%{_mandir}/man3 install -m 755 -d ${RPM_BUILD_ROOT}%{_pkgdocdir} cp -r docs/html ${RPM_BUILD_ROOT}%{_pkgdocdir} install -m 644 {COPYING,*.md} ${RPM_BUILD_ROOT}%{_pkgdocdir} # python bindings %{__python3} setup.py install -O1 --skip-build --root $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %doc %{_pkgdocdir}/COPYING %exclude %{_pkgdocdir}/html %exclude %{_pkgdocdir}/*.md %{_libdir}/*.so.* %files devel %doc %{_pkgdocdir}/html %doc %{_pkgdocdir}/*.md %{_includedir}/* %{_libdir}/*.so %{_libdir}/pkgconfig/gumbo.pc %{_mandir}/man3/*.3* %files python %{python3_sitelib}/* %changelog * Thu Oct 17 2013 Ralf Corsépius - 1.0-0.2.20131001gitd90ea2b - Update tarball. - Add autotool genered source-files. - Fix up doxygen support/Work-around doxygen regressions. - Reflect review feedback. - Merge main package docs and *devel-docs into common subdir. - Enforce python3. * Fri Aug 16 2013 Ralf Corsépius - 1.0-0.1.20130816git88ee911 - Initial Fedora package.