%global nautybasever 2.6r7 %global nautytarver %(tr -d . <<< %{nautybasever}) Name: nauty Version: %(tr r . <<< %{nautybasever}) Release: 0.2%{?dist} Summary: Graph canonical labeling and automorphism group computation License: ASL 2.0 URL: http://pallini.di.uniroma1.it/ Source0: http://pallini.di.uniroma1.it/%{name}%{nautytarver}.tar.gz # Debian patch to fix the gt_numorbits declaration Patch0: %{name}-fix-gt_numorbits.patch # Debian patch to add explicit extern declarations where needed Patch1: %{name}-fix-include-extern.patch # Debian patch to use zlib instead of invoking zcat through a pipe Patch2: %{name}-zlib-blisstog.patch # Debian patch to improve usage and help information Patch3: %{name}-help2man.patch # Debian patch to add libtool support for building a shared library Patch4: %{name}-autotoolization.patch # Debian patch to canonicalize header file usage Patch5: %{name}-includes.patch # Debian patch to prefix "nauty-" to the names of the generic tools Patch6: %{name}-tool-prefix.patch # Detect availability of the popcnt instruction at runtime Patch7: %{name}-popcnt.patch BuildRequires: gcc BuildRequires: gmp-devel BuildRequires: help2man BuildRequires: libtool BuildRequires: zlib-devel # The shortg program invokes sort. Requires: coreutils Requires: lib%{name}%{?_isa} = %{version}-%{release} %description Nauty and Traces are programs for computing automorphism groups of graphs and digraphs. (At present, Traces does not accept digraphs.) They can also produce a canonical label. They are written in a portable subset of C, and run on a considerable number of different systems. There is a small suite of programs called gtools included in the package. For example, geng can generate non-isomorphic graphs very quickly. There are also generators for bipartite graphs, digraphs, and multigraphs, and programs for manipulating files of graphs in a compact format. %package -n libnauty Summary: Library for graph automorphism %description -n libnauty Nauty (No AUTomorphisms, Yes?) is a set of procedures for computing automorphism groups of graphs and digraphs. This package contains a library of nauty procedures. %package -n libnauty-devel Summary: Development files for libnauty Requires: lib%{name}%{?_isa} = %{version}-%{release} %description -n libnauty-devel This package contains files needed to develop programs that use libnauty. %prep %setup -q -n %{name}%{nautytarver} %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 # Remove the pregenerated makefile rm -f makefile # Inject the version number sed -i 's/@INJECTVER@/%{version}/' configure.ac # Regenerate the configure script with libtool support autoreconf -fi %build export CFLAGS="%{optflags} -fwrapv" %configure --disable-static \ %ifarch %ix86 x86_64 --enable-runtime-popcnt \ %endif --enable-tls make %{?_smp_mflags} %install make install DESTDIR=%{buildroot} # We do not want the libtool archives rm %{buildroot}%{_libdir}/*.la %check make check %post -n libnauty -p /sbin/ldconfig %postun -n libnauty -p /sbin/ldconfig %files %doc README nug26.pdf %{_bindir}/dreadnaut %{_bindir}/nauty-* %{_mandir}/man1/dreadnaut.1* %{_mandir}/man1/nauty-*.1* %files -n libnauty %doc changes24-26.txt formats.txt %license COPYRIGHT %{_libdir}/libnauty*.so.* %files -n libnauty-devel %doc schreier.txt %{_includedir}/nauty/ %{_libdir}/libnauty*.so %{_libdir}/pkgconfig/%{name}.pc %changelog * Fri Feb 10 2017 Fedora Release Engineering - 2.6.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Sat Sep 10 2016 Jerry James - 2.6.7-1 - New upstream version * Thu Apr 21 2016 Jerry James - 2.6.5-1 - New upstream version * Fri Apr 15 2016 Jerry James - 2.6.4-1 - Initial RPM