From e3d7aaa027c1f25d538b2b95417a6bef7076e720 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 18 Jul 2012 12:57:56 -0500 Subject: [PATCH 01/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 5f80530..ce15592 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.72 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs Group: Applications/Engineering @@ -103,6 +103,9 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 %{_libdir}/libbliss.so.* %changelog +* Wed Jul 18 2012 Fedora Release Engineering - 0.72-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + * Fri Mar 16 2012 Jerry James - 0.72-4 - Apply bug fix and performance enhancement patch from Thomas Rehn From e24589ba04e8d64a8cc2b0b4e6798ebe8f1d2181 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 13 Feb 2013 11:51:37 -0600 Subject: [PATCH 02/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index ce15592..6d87b31 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.72 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs Group: Applications/Engineering @@ -103,6 +103,9 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 %{_libdir}/libbliss.so.* %changelog +* Wed Feb 13 2013 Fedora Release Engineering - 0.72-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + * Wed Jul 18 2012 Fedora Release Engineering - 0.72-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild From 27c1593f5a7930ca15e2ae239abb5b5a3f3ee1e3 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 2 Aug 2013 22:36:34 -0500 Subject: [PATCH 03/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 6d87b31..6c56d51 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.72 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs Group: Applications/Engineering @@ -103,6 +103,9 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 %{_libdir}/libbliss.so.* %changelog +* Sat Aug 03 2013 Fedora Release Engineering - 0.72-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Wed Feb 13 2013 Fedora Release Engineering - 0.72-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild From 90259ef4dcec0a6eb851dd130ab5838f7fa22a27 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 6 Jun 2014 22:10:30 -0500 Subject: [PATCH 04/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 6c56d51..25a41c0 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.72 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs Group: Applications/Engineering @@ -103,6 +103,9 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 %{_libdir}/libbliss.so.* %changelog +* Sat Jun 07 2014 Fedora Release Engineering - 0.72-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + * Sat Aug 03 2013 Fedora Release Engineering - 0.72-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild From 81a4f6223b4c409d930cf041b0afcdd3d9b44250 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Fri, 15 Aug 2014 22:47:14 +0000 Subject: [PATCH 05/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 25a41c0..c6b35ec 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.72 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs Group: Applications/Engineering @@ -103,6 +103,9 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 %{_libdir}/libbliss.so.* %changelog +* Fri Aug 15 2014 Fedora Release Engineering - 0.72-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + * Sat Jun 07 2014 Fedora Release Engineering - 0.72-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild From f5a1a48336250eb6f0ba7fe4298021a3a330f556 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 11 Feb 2015 15:05:47 -0700 Subject: [PATCH 06/47] Note bundled jquery. Use license macro. --- bliss.spec | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/bliss.spec b/bliss.spec index c6b35ec..d7ba19f 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,9 +1,8 @@ Name: bliss Version: 0.72 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs -Group: Applications/Engineering License: GPLv3 URL: http://www.tcs.hut.fi/Software/bliss/ Source0: http://www.tcs.hut.fi/Software/bliss/%{name}-%{version}.zip @@ -29,9 +28,9 @@ well as C++ and C programming language APIs. %package devel Summary: Headers and library files for developing with bliss -Group: Development/Libraries Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: gmp-devel%{?_isa} +Provides: bundled(jquery) %description devel Headers and library files needed to develop applications that use the @@ -39,7 +38,6 @@ bliss library. %package libs Summary: Compute automorphism groups and canonical labelings of graphs -Group: Development/Libraries %description libs A command-line bliss tool to access the functionality of the bliss @@ -99,10 +97,14 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 %{_libdir}/libbliss.so %files libs -%doc COPYING.txt +%license COPYING.txt %{_libdir}/libbliss.so.* %changelog +* Wed Feb 11 2015 Jerry James - 0.72-10 +- Note bundled jquery +- Use license macro + * Fri Aug 15 2014 Fedora Release Engineering - 0.72-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild From c3a010e697dba2c187908d815cfc3decf430c6cc Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 6 Mar 2015 14:33:19 -0700 Subject: [PATCH 07/47] Link with $RPM_LD_FLAGS. --- bliss.spec | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/bliss.spec b/bliss.spec index d7ba19f..9017049 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.72 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: GPLv3 @@ -52,14 +52,15 @@ library. # here instead. Also, avoid an unused direct dependency on libm. g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -fPIC -shared -o libbliss.so.%{version} \ -Wl,-soname,libbliss.so.%{sover} defs.cc graph.cc partition.cc orbit.cc \ - uintseqhash.cc heap.cc timer.cc utils.cc bliss_C.cc -lgmp -Wl,--as-needed + uintseqhash.cc heap.cc timer.cc utils.cc bliss_C.cc -Wl,--as-needed \ + $RPM_LD_FLAGS -lgmp ln -s libbliss.so.%{version} libbliss.so.%{sover} ln -s libbliss.so.%{sover} libbliss.so # The Makefile doesn't know how to link the binary against a shared library. # Also, once again avoid an unused direct dependency on libm. -g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -o bliss bliss.cc -L. -lbliss -lgmp \ - -Wl,--as-needed +g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -o bliss bliss.cc -Wl,--as-needed \ + $RPM_LD_FLAGS -L. -lbliss -lgmp # Build the documentation doxygen @@ -101,6 +102,9 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 %{_libdir}/libbliss.so.* %changelog +* Fri Mar 6 2015 Jerry James - 0.72-11 +- Link with RPM_LD_FLAGS + * Wed Feb 11 2015 Jerry James - 0.72-10 - Note bundled jquery - Use license macro From f5a362fa4c8a44855ffd8e981b245eaac41b84f9 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Sat, 2 May 2015 12:47:43 +0200 Subject: [PATCH 08/47] Rebuilt for GCC 5 C++11 ABI change --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 9017049..8309d5d 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.72 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: GPLv3 @@ -102,6 +102,9 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 %{_libdir}/libbliss.so.* %changelog +* Sat May 02 2015 Kalev Lember - 0.72-12 +- Rebuilt for GCC 5 C++11 ABI change + * Fri Mar 6 2015 Jerry James - 0.72-11 - Link with RPM_LD_FLAGS From b20fb0df7841705f7997679e6ee1cca0d4cf65c2 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 15 Jun 2015 22:27:11 -0600 Subject: [PATCH 09/47] Fix the version number in the man page. --- bliss.spec | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/bliss.spec b/bliss.spec index 8309d5d..1ed64c8 100644 --- a/bliss.spec +++ b/bliss.spec @@ -69,20 +69,21 @@ doxygen # The Makefile has no install target. # Install the library -mkdir -p $RPM_BUILD_ROOT%{_libdir} -cp -a libbliss.* $RPM_BUILD_ROOT%{_libdir} +mkdir -p %{buildroot}%{_libdir} +cp -a libbliss.* %{buildroot}%{_libdir} # Install the header files -mkdir -p $RPM_BUILD_ROOT%{_includedir}/bliss -cp -p *.h *.hh $RPM_BUILD_ROOT%{_includedir}/bliss +mkdir -p %{buildroot}%{_includedir}/bliss +cp -p *.h *.hh %{buildroot}%{_includedir}/bliss # Install the binary -mkdir -p $RPM_BUILD_ROOT%{_bindir} -cp -p bliss $RPM_BUILD_ROOT%{_bindir} +mkdir -p %{buildroot}%{_bindir} +cp -p bliss %{buildroot}%{_bindir} # Install the man page -mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1 -cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1 +mkdir -p %{buildroot}%{_mandir}/man1 +sed 's/@VERSION@/%{version}/' %{SOURCE1} > %{buildroot}%{_mandir}/man1/bliss.1 +touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %post libs -p /sbin/ldconfig From 496a9b21d299026528eace6fce5c909fd580e7a3 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 17 Jun 2015 01:53:48 +0000 Subject: [PATCH 10/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 1ed64c8..c059179 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.72 -Release: 12%{?dist} +Release: 13%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: GPLv3 @@ -103,6 +103,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Wed Jun 17 2015 Fedora Release Engineering - 0.72-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Sat May 02 2015 Kalev Lember - 0.72-12 - Rebuilt for GCC 5 C++11 ABI change From 5afc32e53f975b6977af27a72e83102d47277192 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Sat, 19 Sep 2015 20:50:22 -0600 Subject: [PATCH 11/47] New upstream version. --- .gitignore | 1 + bliss-error.patch | 364 +++++++++++++++++++++------------------------- bliss-rehn.patch | 20 +-- bliss.spec | 12 +- sources | 2 +- 5 files changed, 182 insertions(+), 217 deletions(-) diff --git a/.gitignore b/.gitignore index 8a01871..0a80693 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /bliss-0.72.zip +/bliss-0.73.zip diff --git a/bliss-error.patch b/bliss-error.patch index efd77c5..cd0f545 100644 --- a/bliss-error.patch +++ b/bliss-error.patch @@ -1,5 +1,111 @@ ---- ./graph.cc.orig 2011-05-12 06:29:46.000000000 -0600 -+++ ./graph.cc 2011-10-28 21:22:57.464203395 -0600 +--- ./bliss.cc.orig 2015-09-01 10:23:10.000000000 -0600 ++++ ./bliss.cc 2015-09-04 15:04:09.946602735 -0600 +@@ -276,13 +276,16 @@ main(const int argc, const char** argv) + if(opt_canonize == false) + { + /* No canonical labeling, only automorphism group */ +- g->find_automorphisms(stats, &report_aut, stdout); ++ if (!g->find_automorphisms(stats, &report_aut, stdout)) ++ exit(1); + } + else + { + /* Canonical labeling and automorphism group */ + const unsigned int* cl = g->canonical_form(stats, &report_aut, stdout); + ++ if (!cl) ++ exit(1); + fprintf(stdout, "Canonical labeling: "); + bliss::print_permutation(stdout, g->get_nof_vertices(), cl, 1); + fprintf(stdout, "\n"); +@@ -290,6 +293,8 @@ main(const int argc, const char** argv) + if(opt_output_can_file) + { + bliss::AbstractGraph* cf = g->permute(cl); ++ if (!cf) ++ exit(1); + FILE* const fp = fopen(opt_output_can_file, "w"); + if(!fp) + _fatal("Cannot open '%s' for outputting the canonical form, aborting", opt_output_can_file); +--- ./bliss_C.cc.orig 2015-09-01 10:23:10.000000000 -0600 ++++ ./bliss_C.cc 2015-09-04 15:04:09.945602814 -0600 +@@ -131,7 +131,7 @@ BlissGraph *bliss_permute(BlissGraph *gr + } + + extern "C" +-void ++int + bliss_find_automorphisms(BlissGraph *graph, + void (*hook)(void *user_param, + unsigned int n, +@@ -142,7 +142,8 @@ bliss_find_automorphisms(BlissGraph *gra + bliss::Stats s; + assert(graph); + assert(graph->g); +- graph->g->find_automorphisms(s, hook, hook_user_param); ++ if (!graph->g->find_automorphisms(s, hook, hook_user_param)) ++ return 0; + + if(stats) + { +@@ -154,6 +155,7 @@ bliss_find_automorphisms(BlissGraph *gra + stats->nof_generators = s.get_nof_generators(); + stats->max_level = s.get_max_level(); + } ++ return 1; + } + + +@@ -173,7 +175,7 @@ bliss_find_canonical_labeling(BlissGraph + + canonical_labeling = graph->g->canonical_form(s, hook, hook_user_param); + +- if(stats) ++ if(canonical_labeling && stats) + { + stats->group_size_approx = s.get_group_size_approx(); + stats->nof_nodes = s.get_nof_nodes(); +--- ./bliss_C.h.orig 2015-09-01 10:23:10.000000000 -0600 ++++ ./bliss_C.h 2015-09-04 15:04:09.947602656 -0600 +@@ -156,6 +156,7 @@ unsigned int bliss_hash(BlissGraph *grap + * The argument \a perm should be an array of + * N=bliss::bliss_get_nof_vertices(\a graph) elements describing + * a bijection on {0,...,N-1}. ++ * Returns NULL if insufficient memory or internal error. + */ + BlissGraph *bliss_permute(BlissGraph *graph, const unsigned int *perm); + +@@ -174,8 +175,9 @@ BlissGraph *bliss_permute(BlissGraph *gr + * if you want to use the automorphism later, you have to take a copy of it. + * Do not call bliss_* functions in the hook. + * If \a stats is non-null, then some search statistics are copied there. ++ * \return nonzero if successful, zero if insufficient memory or internal error + */ +-void ++int + bliss_find_automorphisms(BlissGraph *graph, + void (*hook)(void *user_param, + unsigned int N, +@@ -194,6 +196,7 @@ bliss_find_automorphisms(BlissGraph *gra + * then bliss_permute() with the returned canonical labeling. + * Note that the computed canonical version may depend on the applied version + * of bliss. ++ * Returns NULL if insufficient memory or internal error. + */ + const unsigned int * + bliss_find_canonical_labeling(BlissGraph *graph, +--- ./defs.cc.orig 2015-09-01 10:23:12.000000000 -0600 ++++ ./defs.cc 2015-09-04 15:04:09.947602656 -0600 +@@ -32,7 +32,6 @@ fatal_error(const char* fmt, ...) + vfprintf(stderr, fmt, ap); + fprintf(stderr, "\nAborting!\n"); + va_end(ap); +- exit(1); + } + + } +--- ./graph.cc.orig 2015-09-01 10:23:10.000000000 -0600 ++++ ./graph.cc 2015-09-04 15:04:09.927604245 -0600 @@ -34,7 +34,10 @@ namespace bliss { @@ -12,7 +118,7 @@ /*------------------------------------------------------------------------- * -@@ -279,20 +282,6 @@ +@@ -279,20 +282,6 @@ AbstractGraph::reset_permutation(unsigne *perm = i; } @@ -33,7 +139,7 @@ -@@ -618,7 +607,7 @@ +@@ -618,7 +607,7 @@ typedef struct { } PathInfo; @@ -42,7 +148,7 @@ AbstractGraph::search(const bool canonical, Stats& stats) { const unsigned int N = get_nof_vertices(); -@@ -658,7 +647,7 @@ +@@ -658,7 +647,7 @@ AbstractGraph::search(const bool canonic if(N == 0) { /* Nothing to do, return... */ @@ -51,7 +157,7 @@ } /* Initialize the partition ... */ -@@ -696,10 +685,10 @@ +@@ -696,10 +685,10 @@ AbstractGraph::search(const bool canonic */ if(first_path_labeling) free(first_path_labeling); first_path_labeling = (unsigned int*)calloc(N, sizeof(unsigned int)); @@ -64,7 +170,7 @@ /* * Is the initial partition discrete? -@@ -710,7 +699,7 @@ +@@ -710,7 +699,7 @@ AbstractGraph::search(const bool canonic update_labeling(best_path_labeling); /* Update statistics */ stats.nof_leaf_nodes = 1; @@ -73,7 +179,7 @@ } /* -@@ -718,20 +707,39 @@ +@@ -718,20 +707,39 @@ AbstractGraph::search(const bool canonic */ if(first_path_labeling_inv) free(first_path_labeling_inv); first_path_labeling_inv = (unsigned int*)calloc(N, sizeof(unsigned int)); @@ -117,39 +223,7 @@ /* * Initialize orbit information so that all vertices are in their own orbits -@@ -974,7 +982,6 @@ - */ - { - unsigned int next_split_element = UINT_MAX; -- unsigned int* next_split_element_pos = 0; - unsigned int* ep = p.elements + cell->first; - if(current_node.fp_on) - { -@@ -985,7 +992,6 @@ - *ep < next_split_element and - first_path_orbits.is_minimal_representative(*ep)) { - next_split_element = *ep; -- next_split_element_pos = ep; - } - } - } -@@ -1001,7 +1007,6 @@ - current_node.long_prune_redundant.find(*ep) == - current_node.long_prune_redundant.end())) { - next_split_element = *ep; -- next_split_element_pos = ep; - } - } - } -@@ -1015,7 +1020,6 @@ - current_node.long_prune_redundant.find(*ep) == - current_node.long_prune_redundant.end())) { - next_split_element = *ep; -- next_split_element_pos = ep; - } - } - } -@@ -1203,8 +1207,10 @@ +@@ -1203,8 +1211,10 @@ AbstractGraph::search(const bool canonic #if defined(BLISS_VERIFY_EQUITABLEDNESS) /* The new partition should be equitable */ @@ -161,15 +235,7 @@ #endif /* -@@ -1366,6 +1372,7 @@ - goto handle_first_path_automorphism; - /* Should never get here because of CR:FP */ - _INTERNAL_ERROR(); -+ return false; - } - } - -@@ -1598,8 +1605,10 @@ +@@ -1596,8 +1606,10 @@ AbstractGraph::search(const bool canonic #if defined(BLISS_VERIFY_AUTOMORPHISMS) /* Verify that it really is an automorphism */ @@ -181,7 +247,7 @@ #endif unsigned int gca_level_with_first = 0; -@@ -1666,6 +1675,7 @@ +@@ -1664,6 +1676,7 @@ AbstractGraph::search(const bool canonic _INTERNAL_ERROR(); @@ -189,7 +255,7 @@ handle_first_path_automorphism: -@@ -1701,8 +1711,10 @@ +@@ -1699,8 +1712,10 @@ AbstractGraph::search(const bool canonic #if defined(BLISS_VERIFY_AUTOMORPHISMS) /* Verify that it really is an automorphism */ @@ -201,7 +267,7 @@ #endif if(opt_use_long_prune) -@@ -1749,12 +1761,13 @@ +@@ -1747,12 +1762,13 @@ AbstractGraph::search(const bool canonic /* Release component recursion data in partition */ if(opt_use_comprec) p.cr_free(); @@ -216,7 +282,7 @@ AbstractGraph::find_automorphisms(Stats& stats, void (*hook)(void *user_param, unsigned int n, -@@ -1764,7 +1777,8 @@ +@@ -1762,7 +1778,8 @@ AbstractGraph::find_automorphisms(Stats& report_hook = hook; report_user_param = user_param; @@ -226,7 +292,7 @@ if(first_path_labeling) { -@@ -1776,6 +1790,7 @@ +@@ -1774,6 +1791,7 @@ AbstractGraph::find_automorphisms(Stats& free(best_path_labeling); best_path_labeling = 0; } @@ -234,7 +300,7 @@ } -@@ -1790,7 +1805,8 @@ +@@ -1788,7 +1806,8 @@ AbstractGraph::canonical_form(Stats& sta report_hook = hook; report_user_param = user_param; @@ -244,7 +310,7 @@ return best_path_labeling; } -@@ -3480,15 +3496,17 @@ +@@ -3479,15 +3498,17 @@ Digraph::initialize_certificate() * Check whether perm is an automorphism. * Slow, mainly for debugging and validation purposes. */ @@ -264,7 +330,7 @@ #endif for(unsigned int i = 0; i < get_nof_vertices(); i++) -@@ -3507,7 +3525,7 @@ +@@ -3506,7 +3527,7 @@ Digraph::is_automorphism(unsigned int* c ei++) edges2.insert(*ei); if(!(edges1 == edges2)) @@ -273,7 +339,7 @@ edges1.clear(); for(std::vector::iterator ei = v1.edges_out.begin(); -@@ -3520,10 +3538,10 @@ +@@ -3519,10 +3540,10 @@ Digraph::is_automorphism(unsigned int* c ei++) edges2.insert(*ei); if(!(edges1 == edges2)) @@ -286,7 +352,7 @@ } bool -@@ -4330,8 +4348,10 @@ +@@ -4337,8 +4358,10 @@ Graph* Graph::permute(const unsigned int* perm) const { #if defined(BLISS_CONSISTENCY_CHECKS) @@ -298,7 +364,7 @@ #endif Graph* const g = new Graph(get_nof_vertices()); -@@ -5270,15 +5290,17 @@ +@@ -5278,15 +5301,17 @@ Graph::initialize_certificate() * *-------------------------------------------------------------------------*/ @@ -318,7 +384,7 @@ #endif for(unsigned int i = 0; i < get_nof_vertices(); i++) -@@ -5298,10 +5320,10 @@ +@@ -5306,10 +5331,10 @@ Graph::is_automorphism(unsigned int* con edges2.insert(*ei); if(!(edges1 == edges2)) @@ -331,115 +397,39 @@ } ---- ./bliss_C.cc.orig 2011-05-12 06:29:46.000000000 -0600 -+++ ./bliss_C.cc 2011-10-28 21:22:39.428577545 -0600 -@@ -131,7 +131,7 @@ - } - - extern "C" --void -+int - bliss_find_automorphisms(BlissGraph *graph, - void (*hook)(void *user_param, - unsigned int n, -@@ -142,7 +142,8 @@ - bliss::Stats s; - assert(graph); - assert(graph->g); -- graph->g->find_automorphisms(s, hook, hook_user_param); -+ if (!graph->g->find_automorphisms(s, hook, hook_user_param)) -+ return 0; - - if(stats) - { -@@ -154,6 +155,7 @@ - stats->nof_generators = s.get_nof_generators(); - stats->max_level = s.get_max_level(); - } -+ return 1; - } +--- ./graph.hh.orig 2015-09-01 10:23:10.000000000 -0600 ++++ ./graph.hh 2015-09-04 15:09:17.261182632 -0600 +@@ -159,7 +159,7 @@ public: + * Check whether \a perm is an automorphism of this graph. + * Unoptimized, mainly for debugging purposes. + */ +- virtual bool is_automorphism(const std::vector& perm) const; ++ virtual bool is_automorphism(const std::vector& perm) const = 0; -@@ -173,7 +175,7 @@ - - canonical_labeling = graph->g->canonical_form(s, hook, hook_user_param); - -- if(stats) -+ if(canonical_labeling && stats) - { - stats->group_size_approx = s.get_group_size_approx(); - stats->nof_nodes = s.get_nof_nodes(); ---- ./bliss.cc.orig 2011-05-12 06:29:46.000000000 -0600 -+++ ./bliss.cc 2011-10-28 21:22:39.429577524 -0600 -@@ -276,13 +276,16 @@ - if(opt_canonize == false) - { - /* No canonical labeling, only automorphism group */ -- g->find_automorphisms(stats, &report_aut, stdout); -+ if (!g->find_automorphisms(stats, &report_aut, stdout)) -+ exit(1); - } - else - { - /* Canonical labeling and automorphism group */ - const unsigned int* cl = g->canonical_form(stats, &report_aut, stdout); - -+ if (!cl) -+ exit(1); - fprintf(stdout, "Canonical labeling: "); - bliss::print_permutation(stdout, g->get_nof_vertices(), cl, 1); - fprintf(stdout, "\n"); -@@ -290,6 +293,8 @@ - if(opt_output_can_file) - { - bliss::AbstractGraph* cf = g->permute(cl); -+ if (!cf) -+ exit(1); - FILE* const fp = fopen(opt_output_can_file, "w"); - if(!fp) - _fatal("Cannot open '%s' for outputting the canonical form, aborting", opt_output_can_file); ---- ./defs.cc.orig 2011-05-12 06:29:46.000000000 -0600 -+++ ./defs.cc 2011-10-28 21:22:39.429577524 -0600 -@@ -33,7 +33,6 @@ - vfprintf(stderr, fmt, ap); - fprintf(stderr, "\nAborting!\n"); - va_end(ap); -- exit(1); - } - - } ---- ./bliss_C.h.orig 2011-05-12 06:29:46.000000000 -0600 -+++ ./bliss_C.h 2011-10-28 21:22:39.430577503 -0600 -@@ -156,6 +156,7 @@ - * The argument \a perm should be an array of - * N=bliss::bliss_get_nof_vertices(\a graph) elements describing - * a bijection on {0,...,N-1}. -+ * Returns NULL if insufficient memory or internal error. - */ - BlissGraph *bliss_permute(BlissGraph *graph, const unsigned int *perm); - -@@ -174,8 +175,9 @@ - * if you want to use the automorphism later, you have to take a copy of it. - * Do not call bliss_* functions in the hook. - * If \a stats is non-null, then some search statistics are copied there. -+ * \return nonzero if successful, zero if insufficient memory or internal error - */ --void -+int - bliss_find_automorphisms(BlissGraph *graph, - void (*hook)(void *user_param, - unsigned int N, -@@ -194,6 +196,7 @@ - * then bliss_permute() with the returned canonical labeling. - * Note that the computed canonical version may depend on the applied version - * of bliss. -+ * Returns NULL if insufficient memory or internal error. - */ - const unsigned int * - bliss_find_canonical_labeling(BlissGraph *graph, ---- ./graph.hh.orig 2011-05-12 06:29:46.000000000 -0600 -+++ ./graph.hh 2011-10-28 21:27:16.463811606 -0600 -@@ -270,7 +270,7 @@ + /** Activate/deactivate failure recording. +@@ -211,8 +211,10 @@ public: + * if you want to use the automorphism later, you have to take a copy of it. + * Do not call any member functions in the hook. + * The search statistics are copied in \a stats. ++ * \return true if successful, false if insufficient memory to search or ++ * other internal error. + */ +- void find_automorphisms(Stats& stats, ++ bool find_automorphisms(Stats& stats, + void (*hook)(void* user_param, + unsigned int n, + const unsigned int* aut), +@@ -232,6 +234,8 @@ public: + * Note that the computed canonical version may depend on the applied version + * of bliss as well as on some other options (for instance, the splitting + * heuristic selected with bliss::Graph::set_splitting_heuristic()). ++ * This function returns NULL if there is insufficient memory, or another ++ * internal error occurs. + */ + const unsigned int* canonical_form(Stats& stats, + void (*hook)(void* user_param, +@@ -436,7 +440,7 @@ protected: void reset_permutation(unsigned int *perm); /* Mainly for debugging purposes */ @@ -448,7 +438,7 @@ std::vector certificate_current_path; std::vector certificate_first_path; -@@ -284,7 +284,11 @@ +@@ -450,7 +454,11 @@ protected: virtual Partition::Cell* find_next_cell_to_be_splitted(Partition::Cell *cell) = 0; @@ -461,37 +451,7 @@ void (*report_hook)(void *user_param, -@@ -362,7 +366,7 @@ - * Check whether \a perm is an automorphism of this graph. - * Unoptimized, mainly for debugging purposes. - */ -- virtual bool is_automorphism(const std::vector& perm) const; -+ virtual bool is_automorphism(const std::vector& perm) const = 0; - - - -@@ -427,8 +431,10 @@ - * if you want to use the automorphism later, you have to take a copy of it. - * Do not call any member functions in the hook. - * The search statistics are copied in \a stats. -+ * \return true if successful, false if insufficient memory to search or -+ * other internal error. - */ -- void find_automorphisms(Stats& stats, -+ bool find_automorphisms(Stats& stats, - void (*hook)(void* user_param, - unsigned int n, - const unsigned int* aut), -@@ -448,6 +454,8 @@ - * Note that the computed canonical version may depend on the applied version - * of bliss as well as on some other options (for instance, the splitting - * heuristic selected with bliss::Graph::set_splitting_heuristic()). -+ * This function returns NULL if there is insufficient memory, or another -+ * internal error occurs. - */ - const unsigned int* canonical_form(Stats& stats, - void (*hook)(void* user_param, -@@ -615,7 +623,7 @@ +@@ -634,7 +642,7 @@ protected: void initialize_certificate(); @@ -500,7 +460,7 @@ bool nucr_find_first_component(const unsigned int level); -@@ -856,7 +864,7 @@ +@@ -875,7 +883,7 @@ protected: void initialize_certificate(); diff --git a/bliss-rehn.patch b/bliss-rehn.patch index 4854338..f37eedb 100644 --- a/bliss-rehn.patch +++ b/bliss-rehn.patch @@ -1,5 +1,5 @@ ---- ./graph.cc.orig 2012-03-16 10:55:45.139266642 -0600 -+++ ./graph.cc 2012-03-16 10:57:42.429090440 -0600 +--- ./graph.cc.orig 2015-09-04 15:04:09.927604245 -0600 ++++ ./graph.cc 2015-09-04 15:09:46.999819514 -0600 @@ -597,16 +597,6 @@ public: }; @@ -25,7 +25,7 @@ std::vector best_path_info; search_stack.clear(); -@@ -5466,7 +5455,7 @@ Graph::nucr_find_first_component(const u +@@ -5477,7 +5466,7 @@ Graph::nucr_find_first_component(const u component.clear(); component_elements = 0; sh_return = 0; @@ -34,8 +34,8 @@ unsigned int sh_size = 0; unsigned int sh_nuconn = 0; ---- ./graph.hh.orig 2012-03-16 10:55:45.153266622 -0600 -+++ ./graph.hh 2012-03-16 11:00:26.851843429 -0600 +--- ./graph.hh.orig 2015-09-04 15:09:17.261182632 -0600 ++++ ./graph.hh 2015-09-04 15:09:47.001819355 -0600 @@ -109,9 +109,12 @@ public: unsigned long int get_max_level() const {return max_level;} }; @@ -52,7 +52,7 @@ /** -@@ -355,7 +358,7 @@ protected: +@@ -524,7 +527,7 @@ protected: */ unsigned int cr_component_elements; @@ -60,10 +60,10 @@ + std::vector first_path_info; - public: -@@ -508,6 +511,10 @@ public: - opt_use_long_prune = active; - } + }; +@@ -756,6 +759,10 @@ public: + void set_splitting_heuristic(const SplittingHeuristic shs) {sh = shs; } + + /** + * Get an information vector about the first path. diff --git a/bliss.spec b/bliss.spec index c059179..0516e97 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,9 +1,9 @@ Name: bliss -Version: 0.72 -Release: 13%{?dist} +Version: 0.73 +Release: 1%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs -License: GPLv3 +License: LGPLv3 URL: http://www.tcs.hut.fi/Software/bliss/ Source0: http://www.tcs.hut.fi/Software/bliss/%{name}-%{version}.zip # Man page written by Jerry James using text borrowed from the sources. @@ -46,6 +46,7 @@ library. %prep %setup -q %patch0 +%patch1 %build # The Makefile creates a static library, so we roll our own shared library @@ -99,10 +100,13 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so %files libs -%license COPYING.txt +%license COPYING COPYING.LESSER %{_libdir}/libbliss.so.* %changelog +* Sat Sep 19 2015 Jerry James - 0.73-1 +- New upstream version + * Wed Jun 17 2015 Fedora Release Engineering - 0.72-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild diff --git a/sources b/sources index e3aca36..ffd5c32 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -6f0e114944fa0863870b7f631850abb2 bliss-0.72.zip +72f2e310786923b5c398ba0fc40b42ce bliss-0.73.zip From 7e674e6ca5154ffa6672d15cd0c97c8e84047fc7 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 3 Feb 2016 17:05:26 +0000 Subject: [PATCH 12/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 0516e97..b8d3d6a 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.73 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -104,6 +104,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Wed Feb 03 2016 Fedora Release Engineering - 0.73-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Sat Sep 19 2015 Jerry James - 0.73-1 - New upstream version From 7d98e933a4d5868f2aae9c4001a1edd950654996 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Sat, 28 Jan 2017 11:10:19 -0700 Subject: [PATCH 13/47] Add BR on gcc-c++. --- bliss.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/bliss.spec b/bliss.spec index b8d3d6a..ccc0d68 100644 --- a/bliss.spec +++ b/bliss.spec @@ -16,6 +16,7 @@ Patch0: bliss-error.patch Patch1: bliss-rehn.patch BuildRequires: doxygen +BuildRequires: gcc-c++ BuildRequires: gmp-devel Requires: %{name}-libs%{?_isa} = %{version}-%{release} From 609c30d2a9405dab48d2a8d6dcf77f33fcf53728 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 10 Feb 2017 06:56:00 +0000 Subject: [PATCH 14/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index ccc0d68..eb4ca7e 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.73 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -105,6 +105,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Fri Feb 10 2017 Fedora Release Engineering - 0.73-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Wed Feb 03 2016 Fedora Release Engineering - 0.73-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From b4597cf83a2729cf6e3823c0db11a8f09aa3fe65 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 26 Jul 2017 04:03:33 +0000 Subject: [PATCH 15/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index eb4ca7e..9c7572c 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.73 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -105,6 +105,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Wed Jul 26 2017 Fedora Release Engineering - 0.73-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Fri Feb 10 2017 Fedora Release Engineering - 0.73-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild From 2e9b11efd6d280c65e1903310e58766950292c7d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 2 Aug 2017 18:18:39 +0000 Subject: [PATCH 16/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 9c7572c..818085e 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.73 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -105,6 +105,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Wed Aug 02 2017 Fedora Release Engineering - 0.73-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Wed Jul 26 2017 Fedora Release Engineering - 0.73-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From 89a769e7695b9cd3251ec7153e4e81dea1f111bf Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 7 Feb 2018 03:57:26 +0000 Subject: [PATCH 17/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 818085e..a2fcc32 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.73 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -105,6 +105,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Wed Feb 07 2018 Fedora Release Engineering - 0.73-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Wed Aug 02 2017 Fedora Release Engineering - 0.73-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild From 24f69d1b65baf3a0821e4d69c21d4363fa50b1a3 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 13 Feb 2018 20:24:05 -0700 Subject: [PATCH 18/47] Fix timestamp code to be reproducible and compilable. --- bliss-rehn.patch | 19 +++++++++++++++---- bliss.spec | 15 +++++++++------ 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/bliss-rehn.patch b/bliss-rehn.patch index f37eedb..b563b92 100644 --- a/bliss-rehn.patch +++ b/bliss-rehn.patch @@ -1,5 +1,16 @@ ---- ./graph.cc.orig 2015-09-04 15:04:09.927604245 -0600 -+++ ./graph.cc 2015-09-04 15:09:46.999819514 -0600 +--- bliss.cc.orig 2018-02-13 20:21:38.742214666 -0700 ++++ bliss.cc 2018-02-13 20:22:19.714122586 -0700 +@@ -59,7 +59,7 @@ usage(FILE* const fp, const char* argv0) + else program_name = argv0; + if(!program_name or *program_name == 0) program_name = "bliss"; + +- fprintf(fp, "bliss version %s (compiled "__DATE__")\n", bliss::version); ++ fprintf(fp, "bliss version %s (compiled " __DATE__ ")\n", bliss::version); + fprintf(fp, "Copyright 2003-2015 Tommi Junttila\n"); + fprintf(fp, + "\n" +--- graph.cc.orig 2018-02-13 20:21:38.752214643 -0700 ++++ graph.cc 2018-02-13 20:21:46.199197907 -0700 @@ -597,16 +597,6 @@ public: }; @@ -34,8 +45,8 @@ unsigned int sh_size = 0; unsigned int sh_nuconn = 0; ---- ./graph.hh.orig 2015-09-04 15:09:17.261182632 -0600 -+++ ./graph.hh 2015-09-04 15:09:47.001819355 -0600 +--- graph.hh.orig 2018-02-13 20:21:38.753214641 -0700 ++++ graph.hh 2018-02-13 20:21:46.200197905 -0700 @@ -109,9 +109,12 @@ public: unsigned long int get_max_level() const {return max_level;} }; diff --git a/bliss.spec b/bliss.spec index a2fcc32..0c9ad87 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,3 +1,6 @@ +# The timestamp on files inside the archive +%global release_date 1441092191 + Name: bliss Version: 0.73 Release: 6%{?dist} @@ -52,17 +55,17 @@ library. %build # The Makefile creates a static library, so we roll our own shared library # here instead. Also, avoid an unused direct dependency on libm. -g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -fPIC -shared -o libbliss.so.%{version} \ - -Wl,-soname,libbliss.so.%{sover} defs.cc graph.cc partition.cc orbit.cc \ - uintseqhash.cc heap.cc timer.cc utils.cc bliss_C.cc -Wl,--as-needed \ - $RPM_LD_FLAGS -lgmp +g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -DSOURCE_DATE_EPOCH=%release_date -fPIC \ + -shared -o libbliss.so.%{version} -Wl,-soname,libbliss.so.%{sover} defs.cc \ + graph.cc partition.cc orbit.cc uintseqhash.cc heap.cc timer.cc utils.cc \ + bliss_C.cc -Wl,--as-needed $RPM_LD_FLAGS -lgmp ln -s libbliss.so.%{version} libbliss.so.%{sover} ln -s libbliss.so.%{sover} libbliss.so # The Makefile doesn't know how to link the binary against a shared library. # Also, once again avoid an unused direct dependency on libm. -g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -o bliss bliss.cc -Wl,--as-needed \ - $RPM_LD_FLAGS -L. -lbliss -lgmp +g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -DSOURCE_DATE_EPOCH=%release_date -o bliss \ + bliss.cc -Wl,--as-needed $RPM_LD_FLAGS -L. -lbliss -lgmp # Build the documentation doxygen From 427e926dcc39257d3441a30c432003cea8c53726 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 30 May 2018 19:17:45 -0600 Subject: [PATCH 19/47] Use %ldconfig_scriptlets. --- bliss.spec | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/bliss.spec b/bliss.spec index 0c9ad87..b64d07b 100644 --- a/bliss.spec +++ b/bliss.spec @@ -90,9 +90,7 @@ mkdir -p %{buildroot}%{_mandir}/man1 sed 's/@VERSION@/%{version}/' %{SOURCE1} > %{buildroot}%{_mandir}/man1/bliss.1 touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 -%post libs -p /sbin/ldconfig - -%postun libs -p /sbin/ldconfig +%ldconfig_scriptlets libs %files %{_bindir}/bliss From 79fdeb914572f2229d2f7d5bf6ad8be614fd5dfc Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 12 Jul 2018 21:11:14 +0000 Subject: [PATCH 20/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index b64d07b..d737253 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Name: bliss Version: 0.73 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -106,6 +106,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Thu Jul 12 2018 Fedora Release Engineering - 0.73-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Wed Feb 07 2018 Fedora Release Engineering - 0.73-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From 8bc8438475b071cb752d58cb398aebe59e98d11e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 31 Jan 2019 14:43:21 +0000 Subject: [PATCH 21/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index d737253..1f192e8 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Name: bliss Version: 0.73 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -106,6 +106,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Thu Jan 31 2019 Fedora Release Engineering - 0.73-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Thu Jul 12 2018 Fedora Release Engineering - 0.73-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From 43403c4bb670813f841d79688d08680215cec46e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 19:22:54 +0000 Subject: [PATCH 22/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 1f192e8..4f85331 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Name: bliss Version: 0.73 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -106,6 +106,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 0.73-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Thu Jan 31 2019 Fedora Release Engineering - 0.73-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From 24a85375a13d74359615f7cdd022e5977018336d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jan 2020 13:04:21 +0000 Subject: [PATCH 23/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 4f85331..78afc20 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Name: bliss Version: 0.73 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -106,6 +106,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Tue Jan 28 2020 Fedora Release Engineering - 0.73-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Wed Jul 24 2019 Fedora Release Engineering - 0.73-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 4f3f287f3577004ff39cffaae0a0fce0c662f093 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 27 Jul 2020 13:12:31 +0000 Subject: [PATCH 24/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 78afc20..14c44e6 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Name: bliss Version: 0.73 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -106,6 +106,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Mon Jul 27 2020 Fedora Release Engineering - 0.73-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Tue Jan 28 2020 Fedora Release Engineering - 0.73-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 05889bae34dee2ff60fb695d886ffaecec874fe3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 1 Aug 2020 00:11:07 +0000 Subject: [PATCH 25/47] - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 14c44e6..ae8c4a3 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Name: bliss Version: 0.73 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -106,6 +106,10 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.* %changelog +* Sat Aug 01 2020 Fedora Release Engineering - 0.73-12 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Mon Jul 27 2020 Fedora Release Engineering - 0.73-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 15f8d388330781649ed94bdf06b928147c54930e Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 7 Dec 2020 12:01:33 -0700 Subject: [PATCH 26/47] Switch to using the sagemath sources. - Drop -error patch; nobody else uses it and it changes the contract. --- .gitignore | 4 +- bliss-error.patch | 471 ---------------------------------------------- bliss-rehn.patch | 31 +-- bliss.spec | 68 +++---- sources | 2 +- 5 files changed, 40 insertions(+), 536 deletions(-) delete mode 100644 bliss-error.patch diff --git a/.gitignore b/.gitignore index 0a80693..aa37e03 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -/bliss-0.72.zip -/bliss-0.73.zip +/bliss-*.zip +/*.tar.gz diff --git a/bliss-error.patch b/bliss-error.patch deleted file mode 100644 index cd0f545..0000000 --- a/bliss-error.patch +++ /dev/null @@ -1,471 +0,0 @@ ---- ./bliss.cc.orig 2015-09-01 10:23:10.000000000 -0600 -+++ ./bliss.cc 2015-09-04 15:04:09.946602735 -0600 -@@ -276,13 +276,16 @@ main(const int argc, const char** argv) - if(opt_canonize == false) - { - /* No canonical labeling, only automorphism group */ -- g->find_automorphisms(stats, &report_aut, stdout); -+ if (!g->find_automorphisms(stats, &report_aut, stdout)) -+ exit(1); - } - else - { - /* Canonical labeling and automorphism group */ - const unsigned int* cl = g->canonical_form(stats, &report_aut, stdout); - -+ if (!cl) -+ exit(1); - fprintf(stdout, "Canonical labeling: "); - bliss::print_permutation(stdout, g->get_nof_vertices(), cl, 1); - fprintf(stdout, "\n"); -@@ -290,6 +293,8 @@ main(const int argc, const char** argv) - if(opt_output_can_file) - { - bliss::AbstractGraph* cf = g->permute(cl); -+ if (!cf) -+ exit(1); - FILE* const fp = fopen(opt_output_can_file, "w"); - if(!fp) - _fatal("Cannot open '%s' for outputting the canonical form, aborting", opt_output_can_file); ---- ./bliss_C.cc.orig 2015-09-01 10:23:10.000000000 -0600 -+++ ./bliss_C.cc 2015-09-04 15:04:09.945602814 -0600 -@@ -131,7 +131,7 @@ BlissGraph *bliss_permute(BlissGraph *gr - } - - extern "C" --void -+int - bliss_find_automorphisms(BlissGraph *graph, - void (*hook)(void *user_param, - unsigned int n, -@@ -142,7 +142,8 @@ bliss_find_automorphisms(BlissGraph *gra - bliss::Stats s; - assert(graph); - assert(graph->g); -- graph->g->find_automorphisms(s, hook, hook_user_param); -+ if (!graph->g->find_automorphisms(s, hook, hook_user_param)) -+ return 0; - - if(stats) - { -@@ -154,6 +155,7 @@ bliss_find_automorphisms(BlissGraph *gra - stats->nof_generators = s.get_nof_generators(); - stats->max_level = s.get_max_level(); - } -+ return 1; - } - - -@@ -173,7 +175,7 @@ bliss_find_canonical_labeling(BlissGraph - - canonical_labeling = graph->g->canonical_form(s, hook, hook_user_param); - -- if(stats) -+ if(canonical_labeling && stats) - { - stats->group_size_approx = s.get_group_size_approx(); - stats->nof_nodes = s.get_nof_nodes(); ---- ./bliss_C.h.orig 2015-09-01 10:23:10.000000000 -0600 -+++ ./bliss_C.h 2015-09-04 15:04:09.947602656 -0600 -@@ -156,6 +156,7 @@ unsigned int bliss_hash(BlissGraph *grap - * The argument \a perm should be an array of - * N=bliss::bliss_get_nof_vertices(\a graph) elements describing - * a bijection on {0,...,N-1}. -+ * Returns NULL if insufficient memory or internal error. - */ - BlissGraph *bliss_permute(BlissGraph *graph, const unsigned int *perm); - -@@ -174,8 +175,9 @@ BlissGraph *bliss_permute(BlissGraph *gr - * if you want to use the automorphism later, you have to take a copy of it. - * Do not call bliss_* functions in the hook. - * If \a stats is non-null, then some search statistics are copied there. -+ * \return nonzero if successful, zero if insufficient memory or internal error - */ --void -+int - bliss_find_automorphisms(BlissGraph *graph, - void (*hook)(void *user_param, - unsigned int N, -@@ -194,6 +196,7 @@ bliss_find_automorphisms(BlissGraph *gra - * then bliss_permute() with the returned canonical labeling. - * Note that the computed canonical version may depend on the applied version - * of bliss. -+ * Returns NULL if insufficient memory or internal error. - */ - const unsigned int * - bliss_find_canonical_labeling(BlissGraph *graph, ---- ./defs.cc.orig 2015-09-01 10:23:12.000000000 -0600 -+++ ./defs.cc 2015-09-04 15:04:09.947602656 -0600 -@@ -32,7 +32,6 @@ fatal_error(const char* fmt, ...) - vfprintf(stderr, fmt, ap); - fprintf(stderr, "\nAborting!\n"); - va_end(ap); -- exit(1); - } - - } ---- ./graph.cc.orig 2015-09-01 10:23:10.000000000 -0600 -+++ ./graph.cc 2015-09-04 15:04:09.927604245 -0600 -@@ -34,7 +34,10 @@ - namespace bliss { - - #define _INTERNAL_ERROR() fatal_error("%s:%d: internal error",__FILE__,__LINE__) --#define _OUT_OF_MEMORY() fatal_error("%s:%d: out of memory",__FILE__,__LINE__) -+#define _OUT_OF_MEMORY(label) do { \ -+ fatal_error("%s:%d: out of memory",__FILE__,__LINE__); \ -+ goto label; \ -+ } while (0) - - /*------------------------------------------------------------------------- - * -@@ -279,20 +282,6 @@ AbstractGraph::reset_permutation(unsigne - *perm = i; - } - --bool --AbstractGraph::is_automorphism(unsigned int* const perm) --{ -- _INTERNAL_ERROR(); -- return false; --} -- --bool --AbstractGraph::is_automorphism(const std::vector& perm) const --{ -- _INTERNAL_ERROR(); -- return false; --} -- - - - -@@ -618,7 +607,7 @@ typedef struct { - } PathInfo; - - --void -+bool - AbstractGraph::search(const bool canonical, Stats& stats) - { - const unsigned int N = get_nof_vertices(); -@@ -658,7 +647,7 @@ AbstractGraph::search(const bool canonic - if(N == 0) - { - /* Nothing to do, return... */ -- return; -+ return true; - } - - /* Initialize the partition ... */ -@@ -696,10 +685,10 @@ AbstractGraph::search(const bool canonic - */ - if(first_path_labeling) free(first_path_labeling); - first_path_labeling = (unsigned int*)calloc(N, sizeof(unsigned int)); -- if(!first_path_labeling) _OUT_OF_MEMORY(); -+ if(!first_path_labeling) _OUT_OF_MEMORY(oom1); - if(best_path_labeling) free(best_path_labeling); - best_path_labeling = (unsigned int*)calloc(N, sizeof(unsigned int)); -- if(!best_path_labeling) _OUT_OF_MEMORY(); -+ if(!best_path_labeling) _OUT_OF_MEMORY(oom2); - - /* - * Is the initial partition discrete? -@@ -710,7 +699,7 @@ AbstractGraph::search(const bool canonic - update_labeling(best_path_labeling); - /* Update statistics */ - stats.nof_leaf_nodes = 1; -- return; -+ return true; - } - - /* -@@ -718,20 +707,39 @@ AbstractGraph::search(const bool canonic - */ - if(first_path_labeling_inv) free(first_path_labeling_inv); - first_path_labeling_inv = (unsigned int*)calloc(N, sizeof(unsigned int)); -- if(!first_path_labeling_inv) _OUT_OF_MEMORY(); -+ if(!first_path_labeling_inv) _OUT_OF_MEMORY(oom3); - if(best_path_labeling_inv) free(best_path_labeling_inv); - best_path_labeling_inv = (unsigned int*)calloc(N, sizeof(unsigned int)); -- if(!best_path_labeling_inv) _OUT_OF_MEMORY(); -+ if(!best_path_labeling_inv) _OUT_OF_MEMORY(oom4); - - /* - * Allocate space for the automorphisms - */ - if(first_path_automorphism) free(first_path_automorphism); - first_path_automorphism = (unsigned int*)malloc(N * sizeof(unsigned int)); -- if(!first_path_automorphism) _OUT_OF_MEMORY(); -+ if(!first_path_automorphism) _OUT_OF_MEMORY(oom5); - if(best_path_automorphism) free(best_path_automorphism); - best_path_automorphism = (unsigned int*)malloc(N * sizeof(unsigned int)); -- if(!best_path_automorphism) _OUT_OF_MEMORY(); -+ if(!best_path_automorphism) { -+ _OUT_OF_MEMORY(oom6); -+ oom6: -+ free(first_path_automorphism); -+ first_path_automorphism = NULL; -+ oom5: -+ free(best_path_labeling_inv); -+ best_path_labeling_inv = NULL; -+ oom4: -+ free(first_path_labeling_inv); -+ first_path_labeling_inv = NULL; -+ oom3: -+ free(best_path_labeling); -+ best_path_labeling = NULL; -+ oom2: -+ free(first_path_labeling); -+ first_path_labeling = NULL; -+ oom1: -+ return false; -+ } - - /* - * Initialize orbit information so that all vertices are in their own orbits -@@ -1203,8 +1211,10 @@ AbstractGraph::search(const bool canonic - - #if defined(BLISS_VERIFY_EQUITABLEDNESS) - /* The new partition should be equitable */ -- if(!is_equitable()) -+ if(!is_equitable()) { - fatal_error("consistency check failed - partition after refinement is not equitable"); -+ return false; -+ } - #endif - - /* -@@ -1596,8 +1606,10 @@ AbstractGraph::search(const bool canonic - - #if defined(BLISS_VERIFY_AUTOMORPHISMS) - /* Verify that it really is an automorphism */ -- if(!is_automorphism(best_path_automorphism)) -+ if(!is_automorphism(best_path_automorphism)) { - fatal_error("Best path automorhism validation check failed"); -+ return false; -+ } - #endif - - unsigned int gca_level_with_first = 0; -@@ -1664,6 +1676,7 @@ AbstractGraph::search(const bool canonic - - - _INTERNAL_ERROR(); -+ return false; - - - handle_first_path_automorphism: -@@ -1699,8 +1712,10 @@ AbstractGraph::search(const bool canonic - - #if defined(BLISS_VERIFY_AUTOMORPHISMS) - /* Verify that it really is an automorphism */ -- if(!is_automorphism(first_path_automorphism)) -+ if(!is_automorphism(first_path_automorphism)) { - fatal_error("First path automorphism validation check failed"); -+ return false; -+ } - #endif - - if(opt_use_long_prune) -@@ -1747,12 +1762,13 @@ AbstractGraph::search(const bool canonic - /* Release component recursion data in partition */ - if(opt_use_comprec) - p.cr_free(); -+ return true; - } - - - - --void -+bool - AbstractGraph::find_automorphisms(Stats& stats, - void (*hook)(void *user_param, - unsigned int n, -@@ -1762,7 +1778,8 @@ AbstractGraph::find_automorphisms(Stats& - report_hook = hook; - report_user_param = user_param; - -- search(false, stats); -+ if (!search(false, stats)) -+ return false; - - if(first_path_labeling) - { -@@ -1774,6 +1791,7 @@ AbstractGraph::find_automorphisms(Stats& - free(best_path_labeling); - best_path_labeling = 0; - } -+ return true; - } - - -@@ -1788,7 +1806,8 @@ AbstractGraph::canonical_form(Stats& sta - report_hook = hook; - report_user_param = user_param; - -- search(true, stats); -+ if (!search(true, stats)) -+ return NULL; - - return best_path_labeling; - } -@@ -3479,15 +3498,17 @@ Digraph::initialize_certificate() - * Check whether perm is an automorphism. - * Slow, mainly for debugging and validation purposes. - */ --bool -+int - Digraph::is_automorphism(unsigned int* const perm) - { - std::set > edges1; - std::set > edges2; - - #if defined(BLISS_CONSISTENCY_CHECKS) -- if(!is_permutation(get_nof_vertices(), perm)) -+ if(!is_permutation(get_nof_vertices(), perm)) { - _INTERNAL_ERROR(); -+ return -1; -+ } - #endif - - for(unsigned int i = 0; i < get_nof_vertices(); i++) -@@ -3506,7 +3527,7 @@ Digraph::is_automorphism(unsigned int* c - ei++) - edges2.insert(*ei); - if(!(edges1 == edges2)) -- return false; -+ return 0; - - edges1.clear(); - for(std::vector::iterator ei = v1.edges_out.begin(); -@@ -3519,10 +3540,10 @@ Digraph::is_automorphism(unsigned int* c - ei++) - edges2.insert(*ei); - if(!(edges1 == edges2)) -- return false; -+ return 0; - } - -- return true; -+ return 1; - } - - bool -@@ -4337,8 +4358,10 @@ Graph* - Graph::permute(const unsigned int* perm) const - { - #if defined(BLISS_CONSISTENCY_CHECKS) -- if(!is_permutation(get_nof_vertices(), perm)) -+ if(!is_permutation(get_nof_vertices(), perm)) { - _INTERNAL_ERROR(); -+ return NULL; -+ } - #endif - - Graph* const g = new Graph(get_nof_vertices()); -@@ -5278,15 +5301,17 @@ Graph::initialize_certificate() - * - *-------------------------------------------------------------------------*/ - --bool -+int - Graph::is_automorphism(unsigned int* const perm) - { - std::set > edges1; - std::set > edges2; - - #if defined(BLISS_CONSISTENCY_CHECKS) -- if(!is_permutation(get_nof_vertices(), perm)) -+ if(!is_permutation(get_nof_vertices(), perm)) { - _INTERNAL_ERROR(); -+ return -1; -+ } - #endif - - for(unsigned int i = 0; i < get_nof_vertices(); i++) -@@ -5306,10 +5331,10 @@ Graph::is_automorphism(unsigned int* con - edges2.insert(*ei); - - if(!(edges1 == edges2)) -- return false; -+ return 0; - } - -- return true; -+ return 1; - } - - ---- ./graph.hh.orig 2015-09-01 10:23:10.000000000 -0600 -+++ ./graph.hh 2015-09-04 15:09:17.261182632 -0600 -@@ -159,7 +159,7 @@ public: - * Check whether \a perm is an automorphism of this graph. - * Unoptimized, mainly for debugging purposes. - */ -- virtual bool is_automorphism(const std::vector& perm) const; -+ virtual bool is_automorphism(const std::vector& perm) const = 0; - - - /** Activate/deactivate failure recording. -@@ -211,8 +211,10 @@ public: - * if you want to use the automorphism later, you have to take a copy of it. - * Do not call any member functions in the hook. - * The search statistics are copied in \a stats. -+ * \return true if successful, false if insufficient memory to search or -+ * other internal error. - */ -- void find_automorphisms(Stats& stats, -+ bool find_automorphisms(Stats& stats, - void (*hook)(void* user_param, - unsigned int n, - const unsigned int* aut), -@@ -232,6 +234,8 @@ public: - * Note that the computed canonical version may depend on the applied version - * of bliss as well as on some other options (for instance, the splitting - * heuristic selected with bliss::Graph::set_splitting_heuristic()). -+ * This function returns NULL if there is insufficient memory, or another -+ * internal error occurs. - */ - const unsigned int* canonical_form(Stats& stats, - void (*hook)(void* user_param, -@@ -436,7 +440,7 @@ protected: - void reset_permutation(unsigned int *perm); - - /* Mainly for debugging purposes */ -- virtual bool is_automorphism(unsigned int* const perm); -+ virtual int is_automorphism(unsigned int* const perm) = 0; - - std::vector certificate_current_path; - std::vector certificate_first_path; -@@ -450,7 +454,11 @@ protected: - virtual Partition::Cell* find_next_cell_to_be_splitted(Partition::Cell *cell) = 0; - - -- void search(const bool canonical, Stats &stats); -+ /** -+ * \return true if successful, false if insufficient memory to complete or -+ * other internal error -+ */ -+ bool search(const bool canonical, Stats &stats); - - - void (*report_hook)(void *user_param, -@@ -634,7 +642,7 @@ protected: - - void initialize_certificate(); - -- bool is_automorphism(unsigned int* const perm); -+ int is_automorphism(unsigned int* const perm); - - - bool nucr_find_first_component(const unsigned int level); -@@ -875,7 +883,7 @@ protected: - - void initialize_certificate(); - -- bool is_automorphism(unsigned int* const perm); -+ int is_automorphism(unsigned int* const perm); - - void sort_edges(); - diff --git a/bliss-rehn.patch b/bliss-rehn.patch index b563b92..324cff7 100644 --- a/bliss-rehn.patch +++ b/bliss-rehn.patch @@ -1,17 +1,6 @@ ---- bliss.cc.orig 2018-02-13 20:21:38.742214666 -0700 -+++ bliss.cc 2018-02-13 20:22:19.714122586 -0700 -@@ -59,7 +59,7 @@ usage(FILE* const fp, const char* argv0) - else program_name = argv0; - if(!program_name or *program_name == 0) program_name = "bliss"; - -- fprintf(fp, "bliss version %s (compiled "__DATE__")\n", bliss::version); -+ fprintf(fp, "bliss version %s (compiled " __DATE__ ")\n", bliss::version); - fprintf(fp, "Copyright 2003-2015 Tommi Junttila\n"); - fprintf(fp, - "\n" ---- graph.cc.orig 2018-02-13 20:21:38.752214643 -0700 -+++ graph.cc 2018-02-13 20:21:46.199197907 -0700 -@@ -597,16 +597,6 @@ public: +--- graph.cc.orig 2016-08-02 23:48:05.000000000 -0600 ++++ graph.cc 2020-11-18 10:23:58.791980824 -0700 +@@ -608,16 +608,6 @@ public: }; @@ -25,10 +14,10 @@ -} PathInfo; - - - bool + void AbstractGraph::search(const bool canonical, Stats& stats) { -@@ -753,7 +743,6 @@ AbstractGraph::search(const bool canonic +@@ -745,7 +735,6 @@ AbstractGraph::search(const bool canonic initialize_certificate(); std::vector search_stack; @@ -36,7 +25,7 @@ std::vector best_path_info; search_stack.clear(); -@@ -5477,7 +5466,7 @@ Graph::nucr_find_first_component(const u +@@ -3711,7 +3700,7 @@ Digraph::nucr_find_first_component(const component.clear(); component_elements = 0; sh_return = 0; @@ -45,8 +34,8 @@ unsigned int sh_size = 0; unsigned int sh_nuconn = 0; ---- graph.hh.orig 2018-02-13 20:21:38.753214641 -0700 -+++ graph.hh 2018-02-13 20:21:46.200197905 -0700 +--- graph.hh.orig 2016-08-02 23:48:05.000000000 -0600 ++++ graph.hh 2020-11-18 10:22:45.358042181 -0700 @@ -109,9 +109,12 @@ public: unsigned long int get_max_level() const {return max_level;} }; @@ -63,7 +52,7 @@ /** -@@ -524,7 +527,7 @@ protected: +@@ -516,7 +519,7 @@ protected: */ unsigned int cr_component_elements; @@ -72,7 +61,7 @@ }; -@@ -756,6 +759,10 @@ public: +@@ -748,6 +751,10 @@ public: void set_splitting_heuristic(const SplittingHeuristic shs) {sh = shs; } diff --git a/bliss.spec b/bliss.spec index ae8c4a3..f42f68f 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,29 +1,28 @@ -# The timestamp on files inside the archive -%global release_date 1441092191 +%global pkgdate 2016-08-02 +%global debrel 1 Name: bliss Version: 0.73 -Release: 12%{?dist} +Release: 13%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 URL: http://www.tcs.hut.fi/Software/bliss/ -Source0: http://www.tcs.hut.fi/Software/bliss/%{name}-%{version}.zip +Source0: https://github.com/mkoeppe/bliss/archive/sage_package/%{version}+debian-%{debrel}+sage-%{pkgdate}.tar.gz # Man page written by Jerry James using text borrowed from the sources. # The man page therefore has the same copyright and license as the sources. Source1: bliss.1 -# Sent upstream 28 Oct 2011. Don't call exit() in library code. -Patch0: bliss-error.patch -# Patch from Thomas Rehn, also sent upstream. Fix one bug and add one +# Patch from Thomas Rehn, sent upstream 28 Oct 2011. Fix one bug and add one # performance enhancement. -Patch1: bliss-rehn.patch +Patch0: bliss-rehn.patch BuildRequires: doxygen BuildRequires: gcc-c++ BuildRequires: gmp-devel -Requires: %{name}-libs%{?_isa} = %{version}-%{release} +BuildRequires: libtool +BuildRequires: make -%global sover %(echo %{version} | cut -d. -f1) +Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description Bliss is an open source tool for computing automorphism groups and @@ -48,50 +47,33 @@ A command-line bliss tool to access the functionality of the bliss library. %prep -%setup -q -%patch0 -%patch1 +%autosetup -p0 -n bliss-sage_package-%{version}-debian-%{debrel}-sage-%{pkgdate} +autoreconf -fi . %build -# The Makefile creates a static library, so we roll our own shared library -# here instead. Also, avoid an unused direct dependency on libm. -g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -DSOURCE_DATE_EPOCH=%release_date -fPIC \ - -shared -o libbliss.so.%{version} -Wl,-soname,libbliss.so.%{sover} defs.cc \ - graph.cc partition.cc orbit.cc uintseqhash.cc heap.cc timer.cc utils.cc \ - bliss_C.cc -Wl,--as-needed $RPM_LD_FLAGS -lgmp -ln -s libbliss.so.%{version} libbliss.so.%{sover} -ln -s libbliss.so.%{sover} libbliss.so +%configure --disable-static -# The Makefile doesn't know how to link the binary against a shared library. -# Also, once again avoid an unused direct dependency on libm. -g++ $RPM_OPT_FLAGS -DBLISS_USE_GMP -DSOURCE_DATE_EPOCH=%release_date -o bliss \ - bliss.cc -Wl,--as-needed $RPM_LD_FLAGS -L. -lbliss -lgmp +# Get rid of undesirable hardcoded rpaths; workaround libtool reordering +# -Wl,--as-needed after all the libraries. +sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \ + -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \ + -e 's|CC="\(.*g..\)"|CC="\1 -Wl,--as-needed"|' \ + -i libtool + +%make_build # Build the documentation doxygen %install -# The Makefile has no install target. - -# Install the library -mkdir -p %{buildroot}%{_libdir} -cp -a libbliss.* %{buildroot}%{_libdir} - -# Install the header files -mkdir -p %{buildroot}%{_includedir}/bliss -cp -p *.h *.hh %{buildroot}%{_includedir}/bliss - -# Install the binary -mkdir -p %{buildroot}%{_bindir} -cp -p bliss %{buildroot}%{_bindir} +%make_install +rm %{buildroot}%{_libdir}/*.la # Install the man page mkdir -p %{buildroot}%{_mandir}/man1 sed 's/@VERSION@/%{version}/' %{SOURCE1} > %{buildroot}%{_mandir}/man1/bliss.1 touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 -%ldconfig_scriptlets libs - %files %{_bindir}/bliss %{_mandir}/man1/bliss.1* @@ -103,9 +85,13 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %files libs %license COPYING COPYING.LESSER -%{_libdir}/libbliss.so.* +%{_libdir}/libbliss.so.2* %changelog +* Mon Dec 7 2020 Jerry James - 0.73-13 +- Switch to using the sagemath sources +- Drop -error patch; nobody else uses it and it changes the contract + * Sat Aug 01 2020 Fedora Release Engineering - 0.73-12 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild diff --git a/sources b/sources index ffd5c32..f84e737 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -72f2e310786923b5c398ba0fc40b42ce bliss-0.73.zip +SHA512 (0.73+debian-1+sage-2016-08-02.tar.gz) = 6bebd421e2bade97bb98bc3baa7556f3f0ef357dd98a20096a90118e4eed919cb4ca9d4cb59b353f9b4cace215f699599f8b1c4e95843488bdc4019b670a185b From 43625a98435364c10701c1cda1dcf77501be09b5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 01:12:47 +0000 Subject: [PATCH 27/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index f42f68f..41bd74c 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Name: bliss Version: 0.73 -Release: 13%{?dist} +Release: 14%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -88,6 +88,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 0.73-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Mon Dec 7 2020 Jerry James - 0.73-13 - Switch to using the sagemath sources - Drop -error patch; nobody else uses it and it changes the contract From ac2dc434abef4ad1480427e06c3724b1cbcaee13 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 19 Jul 2021 13:25:05 -0600 Subject: [PATCH 28/47] Switch to github URLs. --- bliss.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/bliss.spec b/bliss.spec index 41bd74c..a540355 100644 --- a/bliss.spec +++ b/bliss.spec @@ -7,8 +7,8 @@ Release: 14%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 -URL: http://www.tcs.hut.fi/Software/bliss/ -Source0: https://github.com/mkoeppe/bliss/archive/sage_package/%{version}+debian-%{debrel}+sage-%{pkgdate}.tar.gz +URL: https://github.com/mkoeppe/bliss +Source0: %{url}/archive/sage_package/%{version}+debian-%{debrel}+sage-%{pkgdate}.tar.gz # Man page written by Jerry James using text borrowed from the sources. # The man page therefore has the same copyright and license as the sources. Source1: bliss.1 @@ -88,6 +88,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Mon Jul 19 2021 Jerry James - 0.73-15 +- Switch to github URLs + * Tue Jan 26 2021 Fedora Release Engineering - 0.73-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 8c56cad10da7f7e9d7e5e0d1ffcb6c5b199077bf Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 13:44:34 +0000 Subject: [PATCH 29/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering From cae5bb8b44dbd8b6829dd5a07814bab1cde8cc50 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 18:41:33 +0000 Subject: [PATCH 30/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index a540355..e126f7a 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Name: bliss Version: 0.73 -Release: 14%{?dist} +Release: 15%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -88,6 +88,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Wed Jul 21 2021 Fedora Release Engineering - 0.73-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Mon Jul 19 2021 Jerry James - 0.73-15 - Switch to github URLs From 2e62169ff3927f705ef61114050e49cf6b6ad9f8 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 7 Oct 2021 10:55:37 -0600 Subject: [PATCH 31/47] Version 0.77. Switch to new upstream URLs. --- README.md | 5 +++ bliss-rehn.patch | 84 ++++++++++++++---------------------------------- bliss.spec | 60 ++++++++++++++++++++-------------- sources | 2 +- 4 files changed, 67 insertions(+), 84 deletions(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..671fed1 --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# bliss + +Bliss is an open source tool for computing automorphism groups and +canonical forms of graphs. It has both a command line user interface as +well as C++ and C programming language APIs. diff --git a/bliss-rehn.patch b/bliss-rehn.patch index 324cff7..b2ebf09 100644 --- a/bliss-rehn.patch +++ b/bliss-rehn.patch @@ -1,23 +1,6 @@ ---- graph.cc.orig 2016-08-02 23:48:05.000000000 -0600 -+++ graph.cc 2020-11-18 10:23:58.791980824 -0700 -@@ -608,16 +608,6 @@ public: - }; - - -- -- --typedef struct { -- unsigned int splitting_element; -- unsigned int certificate_index; -- unsigned int subcertificate_length; -- UintSeqHash eqref_hash; --} PathInfo; -- -- - void - AbstractGraph::search(const bool canonical, Stats& stats) - { -@@ -745,7 +735,6 @@ AbstractGraph::search(const bool canonic +--- src/abstractgraph.cc.orig 2021-02-18 02:59:34.000000000 -0700 ++++ src/abstractgraph.cc 2021-10-03 11:35:51.011616678 -0600 +@@ -745,7 +745,6 @@ AbstractGraph::search(const bool canonic initialize_certificate(); std::vector search_stack; @@ -25,7 +8,28 @@ std::vector best_path_info; search_stack.clear(); -@@ -3711,7 +3700,7 @@ Digraph::nucr_find_first_component(const +--- src/abstractgraph.hh.orig 2021-02-18 02:59:34.000000000 -0700 ++++ src/abstractgraph.hh 2021-10-03 11:45:07.075286913 -0600 +@@ -493,10 +493,14 @@ protected: + */ + unsigned int cr_component_elements; + ++ std::vector first_path_info; + ++public: + +- +- ++ /** ++ * Get an information vector about the first path. ++ */ ++ std::vector get_first_path_info() { return first_path_info; } + + }; + +--- src/graph.cc.orig 2021-02-18 02:59:34.000000000 -0700 ++++ src/graph.cc 2021-10-03 11:36:13.393644284 -0600 +@@ -1550,7 +1550,7 @@ Graph::nucr_find_first_component(const u component.clear(); component_elements = 0; sh_return = 0; @@ -34,41 +38,3 @@ unsigned int sh_size = 0; unsigned int sh_nuconn = 0; ---- graph.hh.orig 2016-08-02 23:48:05.000000000 -0600 -+++ graph.hh 2020-11-18 10:22:45.358042181 -0700 -@@ -109,9 +109,12 @@ public: - unsigned long int get_max_level() const {return max_level;} - }; - -- -- -- -+typedef struct { -+ unsigned int splitting_element; -+ unsigned int certificate_index; -+ unsigned int subcertificate_length; -+ UintSeqHash eqref_hash; -+} PathInfo; - - - /** -@@ -516,7 +519,7 @@ protected: - */ - unsigned int cr_component_elements; - -- -+ std::vector first_path_info; - - - }; -@@ -748,6 +751,10 @@ public: - void set_splitting_heuristic(const SplittingHeuristic shs) {sh = shs; } - - -+ /** -+ * Get an information vector about the first path. -+ */ -+ std::vector get_first_path_info() { return first_path_info; } - }; - - diff --git a/bliss.spec b/bliss.spec index e126f7a..f9a9e77 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,14 +1,11 @@ -%global pkgdate 2016-08-02 -%global debrel 1 - Name: bliss -Version: 0.73 -Release: 15%{?dist} +Version: 0.77 +Release: 1%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 -URL: https://github.com/mkoeppe/bliss -Source0: %{url}/archive/sage_package/%{version}+debian-%{debrel}+sage-%{pkgdate}.tar.gz +URL: https://users.aalto.fi/~tjunttil/bliss/ +Source0: %{url}/downloads/%{name}-%{version}.zip # Man page written by Jerry James using text borrowed from the sources. # The man page therefore has the same copyright and license as the sources. Source1: bliss.1 @@ -16,10 +13,10 @@ Source1: bliss.1 # performance enhancement. Patch0: bliss-rehn.patch +BuildRequires: cmake BuildRequires: doxygen BuildRequires: gcc-c++ BuildRequires: gmp-devel -BuildRequires: libtool BuildRequires: make Requires: %{name}-libs%{?_isa} = %{version}-%{release} @@ -27,13 +24,12 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description Bliss is an open source tool for computing automorphism groups and canonical forms of graphs. It has both a command line user interface as -well as C++ and C programming language APIs. +well as C++ and C programming language APIs. %package devel Summary: Headers and library files for developing with bliss Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: gmp-devel%{?_isa} -Provides: bundled(jquery) %description devel Headers and library files needed to develop applications that use the @@ -47,27 +43,39 @@ A command-line bliss tool to access the functionality of the bliss library. %prep -%autosetup -p0 -n bliss-sage_package-%{version}-debian-%{debrel}-sage-%{pkgdate} -autoreconf -fi . +%autosetup -p0 + +# Do not override Fedora build flags. The last sagemath version added an +# soname. Duplicate it for compatibility. Link with GMP. +sed -e 's/ -O3//' \ + -e '/POSITION_INDEPENDENT/aset_target_properties(bliss PROPERTIES VERSION 2.0.0 SOVERSION 2)\ntarget_link_libraries(bliss gmp)' \ + -i CMakeLists.txt %build -%configure --disable-static - -# Get rid of undesirable hardcoded rpaths; workaround libtool reordering -# -Wl,--as-needed after all the libraries. -sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \ - -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \ - -e 's|CC="\(.*g..\)"|CC="\1 -Wl,--as-needed"|' \ - -i libtool - -%make_build +%cmake -DUSE_GMP:BOOL=ON . +%cmake_build # Build the documentation doxygen %install -%make_install -rm %{buildroot}%{_libdir}/*.la +# %%cmake_install does nothing, so install manually + +# Install the binary +cd %{_vpath_builddir} +mkdir -p %{buildroot}%{_bindir} +install -m 0755 -p bliss %{buildroot}%{_bindir} + +# Install the library +mkdir -p %{buildroot}%{_libdir} +install -m 0755 -p libbliss.so.2.0.0 %{buildroot}%{_libdir} +ln -s libbliss.so.2.0.0 %{buildroot}%{_libdir}/libbliss.so.2 +ln -s libbliss.so.2 %{buildroot}%{_libdir}/libbliss.so +cd .. + +# Install the header files +mkdir -p %{buildroot}%{_includedir}/%{name} +install -m 0644 -p src/*.hh %{buildroot}%{_includedir}/%{name} # Install the man page mkdir -p %{buildroot}%{_mandir}/man1 @@ -88,6 +96,10 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Thu Oct 7 2021 Jerry James - 0.77-1 +- Version 0.77 +- Switch to new upstream URLs + * Wed Jul 21 2021 Fedora Release Engineering - 0.73-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild diff --git a/sources b/sources index f84e737..3dddec5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (0.73+debian-1+sage-2016-08-02.tar.gz) = 6bebd421e2bade97bb98bc3baa7556f3f0ef357dd98a20096a90118e4eed919cb4ca9d4cb59b353f9b4cace215f699599f8b1c4e95843488bdc4019b670a185b +SHA512 (bliss-0.77.zip) = d210f137e614bca7cf0d88851d0c62292bf479b687bca6a25d9e42661825f882a4ff8c74c96a965bd9d4f246a1bda6b90cef64894914e6f7b17db6bf4a8f4b17 From 37f08de0bc9fcd20d79a6a551f2db4cc90126394 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jan 2022 22:24:53 +0000 Subject: [PATCH 32/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index f9a9e77..3660ff5 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.77 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -96,6 +96,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Wed Jan 19 2022 Fedora Release Engineering - 0.77-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Thu Oct 7 2021 Jerry James - 0.77-1 - Version 0.77 - Switch to new upstream URLs From ee3e440473715be65fb32930f0e1b13250909250 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 20 Jul 2022 22:04:07 +0000 Subject: [PATCH 33/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 3660ff5..72b2e04 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.77 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPLv3 @@ -96,6 +96,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Wed Jul 20 2022 Fedora Release Engineering - 0.77-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Wed Jan 19 2022 Fedora Release Engineering - 0.77-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 547f37482ff093e2398c77563bc5033d4cbfe617 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Wed, 20 Jul 2022 16:27:51 -0600 Subject: [PATCH 34/47] Remove dot from %cmake invocation to fix FTBFS. --- bliss.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 72b2e04..c73afbb 100644 --- a/bliss.spec +++ b/bliss.spec @@ -52,7 +52,7 @@ sed -e 's/ -O3//' \ -i CMakeLists.txt %build -%cmake -DUSE_GMP:BOOL=ON . +%cmake -DUSE_GMP:BOOL=ON %cmake_build # Build the documentation From 066f0a2cb763d4f6a1102b0105d5cb3de39cee61 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 15 Aug 2022 11:38:45 -0600 Subject: [PATCH 35/47] Convert License tag to SPDX. --- bliss.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index c73afbb..fe45447 100644 --- a/bliss.spec +++ b/bliss.spec @@ -3,7 +3,7 @@ Version: 0.77 Release: 3%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs -License: LGPLv3 +License: LGPL-3.0-only URL: https://users.aalto.fi/~tjunttil/bliss/ Source0: %{url}/downloads/%{name}-%{version}.zip # Man page written by Jerry James using text borrowed from the sources. @@ -27,6 +27,8 @@ canonical forms of graphs. It has both a command line user interface as well as C++ and C programming language APIs. %package devel +# The doxygen-generated content contains MIT-licensed files +License: LGPL-3.0-only AND MIT Summary: Headers and library files for developing with bliss Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: gmp-devel%{?_isa} @@ -96,6 +98,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Mon Aug 15 2022 Jerry James - 0.77-3 +- Convert License tag to SPDX + * Wed Jul 20 2022 Fedora Release Engineering - 0.77-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From cd8680b6fe28c32f5a8a7eb6b13aec5032f31c43 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 22 Nov 2022 11:30:52 -0700 Subject: [PATCH 36/47] Clarify bliss-devel license. --- bliss.spec | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/bliss.spec b/bliss.spec index fe45447..5484411 100644 --- a/bliss.spec +++ b/bliss.spec @@ -27,8 +27,33 @@ canonical forms of graphs. It has both a command line user interface as well as C++ and C programming language APIs. %package devel -# The doxygen-generated content contains MIT-licensed files -License: LGPL-3.0-only AND MIT +# The content is LGPL-3.0-only. Other licenses are due to files installed by +# doxygen. +# html/bc_s.png: GPL-1.0-or-later +# html/bdwn.png: GPL-1.0-or-later +# html/closed.png: GPL-1.0-or-later +# html/doc.png: GPL-1.0-or-later +# html/doxygen.css: GPL-1.0-or-later +# html/doxygen.svg: GPL-1.0-or-later +# html/dynsections.js: MIT +# html/folderclosed.png: GPL-1.0-or-later +# html/folderopen.png: GPL-1.0-or-later +# html/jquery.js: MIT +# html/menu.js: MIT +# html/menudata.js: MIT +# html/nav_f.png: GPL-1.0-or-later +# html/nav_g.png: GPL-1.0-or-later +# html/nav_h.png: GPL-1.0-or-later +# html/open.png: GPL-1.0-or-later +# html/splitbar.png: GPL-1.0-or-later +# html/sync_off.png: GPL-1.0-or-later +# html/sync_on.png: GPL-1.0-or-later +# html/tab_a.png: GPL-1.0-or-later +# html/tab_b.png: GPL-1.0-or-later +# html/tab_h.png: GPL-1.0-or-later +# html/tab_s.png: GPL-1.0-or-later +# html/tabs.css: GPL-1.0-or-later +License: LGPL-3.0-only AND MIT AND GPL-1.0-or-later Summary: Headers and library files for developing with bliss Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: gmp-devel%{?_isa} From d8bf91f1143179a02f803838be68e77985268676 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 18 Jan 2023 22:58:18 +0000 Subject: [PATCH 37/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 5484411..328605e 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.77 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only @@ -123,6 +123,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Wed Jan 18 2023 Fedora Release Engineering - 0.77-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Mon Aug 15 2022 Jerry James - 0.77-3 - Convert License tag to SPDX From 4de9c8128311851f20c04bf7e2d9c48992487513 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 14:42:59 +0000 Subject: [PATCH 38/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 328605e..ba655f1 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.77 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only @@ -123,6 +123,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 0.77-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Wed Jan 18 2023 Fedora Release Engineering - 0.77-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 55be07512b4bc6a9a5ffade61a28fd835f960276 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 14:29:31 +0000 Subject: [PATCH 39/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index ba655f1..d9be659 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.77 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only @@ -123,6 +123,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Fri Jan 19 2024 Fedora Release Engineering - 0.77-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Wed Jul 19 2023 Fedora Release Engineering - 0.77-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 44dbaa0ac3d32c98e199b893d9301c0cce56d95a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 23 Jan 2024 00:31:55 +0000 Subject: [PATCH 40/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index d9be659..7c67d96 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,6 +1,6 @@ Name: bliss Version: 0.77 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only @@ -123,6 +123,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Tue Jan 23 2024 Fedora Release Engineering - 0.77-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Fedora Release Engineering - 0.77-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 3a843bd252e2bd89f59692d6f80de375dc4f5537 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 22 Feb 2024 10:09:49 -0700 Subject: [PATCH 41/47] Build the SCIP fork - Do not build for 32-bit x86 --- bliss-rehn.patch | 30 +++++++++++++++--------------- bliss.spec | 46 ++++++++++++++++++++++++---------------------- sources | 2 +- 3 files changed, 40 insertions(+), 38 deletions(-) diff --git a/bliss-rehn.patch b/bliss-rehn.patch index b2ebf09..8879561 100644 --- a/bliss-rehn.patch +++ b/bliss-rehn.patch @@ -1,15 +1,5 @@ ---- src/abstractgraph.cc.orig 2021-02-18 02:59:34.000000000 -0700 -+++ src/abstractgraph.cc 2021-10-03 11:35:51.011616678 -0600 -@@ -745,7 +745,6 @@ AbstractGraph::search(const bool canonic - initialize_certificate(); - - std::vector search_stack; -- std::vector first_path_info; - std::vector best_path_info; - - search_stack.clear(); ---- src/abstractgraph.hh.orig 2021-02-18 02:59:34.000000000 -0700 -+++ src/abstractgraph.hh 2021-10-03 11:45:07.075286913 -0600 +--- include/bliss/abstractgraph.hh.orig 2022-06-17 07:24:11.000000000 -0600 ++++ include/bliss/abstractgraph.hh 2023-02-01 09:32:06.289384074 -0700 @@ -493,10 +493,14 @@ protected: */ unsigned int cr_component_elements; @@ -27,9 +17,19 @@ }; ---- src/graph.cc.orig 2021-02-18 02:59:34.000000000 -0700 -+++ src/graph.cc 2021-10-03 11:36:13.393644284 -0600 -@@ -1550,7 +1550,7 @@ Graph::nucr_find_first_component(const u +--- src/abstractgraph.cc.orig 2022-06-17 07:24:11.000000000 -0600 ++++ src/abstractgraph.cc 2023-02-01 09:31:50.377694086 -0700 +@@ -745,7 +745,6 @@ AbstractGraph::search(const bool canonic + initialize_certificate(); + + std::vector search_stack; +- std::vector first_path_info; + std::vector best_path_info; + + search_stack.clear(); +--- src/graph.cc.orig 2022-06-17 07:24:11.000000000 -0600 ++++ src/graph.cc 2023-02-01 09:32:06.290384054 -0700 +@@ -1551,7 +1551,7 @@ Graph::nucr_find_first_component(const u component.clear(); component_elements = 0; sh_return = 0; diff --git a/bliss.spec b/bliss.spec index 7c67d96..ec47d02 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,11 +1,12 @@ Name: bliss Version: 0.77 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only URL: https://users.aalto.fi/~tjunttil/bliss/ -Source0: %{url}/downloads/%{name}-%{version}.zip +VCS: https://github.com/ds4dm/Bliss +Source0: %{vcs}/archive/v%{version}/Bliss-%{version}.tar.gz # Man page written by Jerry James using text borrowed from the sources. # The man page therefore has the same copyright and license as the sources. Source1: bliss.1 @@ -13,6 +14,9 @@ Source1: bliss.1 # performance enhancement. Patch0: bliss-rehn.patch +# See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} + BuildRequires: cmake BuildRequires: doxygen BuildRequires: gcc-c++ @@ -70,14 +74,22 @@ A command-line bliss tool to access the functionality of the bliss library. %prep -%autosetup -p0 +%autosetup -n Bliss-%{version} -p0 # Do not override Fedora build flags. The last sagemath version added an -# soname. Duplicate it for compatibility. Link with GMP. +# soname. Duplicate it for compatibility. Link the library with libgmp. +# Hidden symbols hide ALL symbols, meaning we can't use the library. sed -e 's/ -O3//' \ - -e '/POSITION_INDEPENDENT/aset_target_properties(bliss PROPERTIES VERSION 2.0.0 SOVERSION 2)\ntarget_link_libraries(bliss gmp)' \ + -e '/POSITION_INDEPENDENT/a\ \ VERSION 2.0.0 SOVERSION 2' \ + -e '/^install($/itarget_link_libraries(libbliss ${GMP_LIBRARIES})' \ + -e '/VISIBILITY/d' \ -i CMakeLists.txt +# Fix installation directories +if [ "%{_lib}" != "lib" ]; then + sed -i 's,\(DESTINATION \)lib,\1%{_lib},' CMakeLists.txt +fi + %build %cmake -DUSE_GMP:BOOL=ON %cmake_build @@ -86,23 +98,7 @@ sed -e 's/ -O3//' \ doxygen %install -# %%cmake_install does nothing, so install manually - -# Install the binary -cd %{_vpath_builddir} -mkdir -p %{buildroot}%{_bindir} -install -m 0755 -p bliss %{buildroot}%{_bindir} - -# Install the library -mkdir -p %{buildroot}%{_libdir} -install -m 0755 -p libbliss.so.2.0.0 %{buildroot}%{_libdir} -ln -s libbliss.so.2.0.0 %{buildroot}%{_libdir}/libbliss.so.2 -ln -s libbliss.so.2 %{buildroot}%{_libdir}/libbliss.so -cd .. - -# Install the header files -mkdir -p %{buildroot}%{_includedir}/%{name} -install -m 0644 -p src/*.hh %{buildroot}%{_includedir}/%{name} +%cmake_install # Install the man page mkdir -p %{buildroot}%{_mandir}/man1 @@ -117,12 +113,18 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %doc html %{_includedir}/bliss %{_libdir}/libbliss.so +%{_libdir}/cmake/Bliss/ %files libs +%doc CHANGES.txt %license COPYING COPYING.LESSER %{_libdir}/libbliss.so.2* %changelog +* Thu Feb 22 2024 Jerry James - 0.77-8 +- Build the SCIP fork +- Do not build for 32-bit x86 + * Tue Jan 23 2024 Fedora Release Engineering - 0.77-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/sources b/sources index 3dddec5..c2c1d11 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (bliss-0.77.zip) = d210f137e614bca7cf0d88851d0c62292bf479b687bca6a25d9e42661825f882a4ff8c74c96a965bd9d4f246a1bda6b90cef64894914e6f7b17db6bf4a8f4b17 +SHA512 (Bliss-0.77.tar.gz) = 27bd44695f2c1f3dfcb2f39f75fea3f61db29dfde4bef545bd14017830cd3d399b2e448ae7a703a5886bd433b22f6eddfaa99618c8714340d366d8e387ae6583 From eddbe1b09202a3cb8e9d4913a422fdd5bbf30e86 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Tue, 16 Jul 2024 12:32:51 -0600 Subject: [PATCH 42/47] Minor spec file simplifications --- bliss.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/bliss.spec b/bliss.spec index ec47d02..4412bf8 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,3 +1,5 @@ +%global giturl https://github.com/ds4dm/Bliss + Name: bliss Version: 0.77 Release: 8%{?dist} @@ -5,14 +7,14 @@ Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only URL: https://users.aalto.fi/~tjunttil/bliss/ -VCS: https://github.com/ds4dm/Bliss -Source0: %{vcs}/archive/v%{version}/Bliss-%{version}.tar.gz +VCS: git:%{giturl}.git +Source0: %{giturl}/archive/v%{version}/Bliss-%{version}.tar.gz # Man page written by Jerry James using text borrowed from the sources. # The man page therefore has the same copyright and license as the sources. Source1: bliss.1 # Patch from Thomas Rehn, sent upstream 28 Oct 2011. Fix one bug and add one # performance enhancement. -Patch0: bliss-rehn.patch +Patch: bliss-rehn.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} From b28f4e9be38f6d7e249c0764a7178d9682aab837 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 18:23:34 +0000 Subject: [PATCH 43/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 4412bf8..c9d63cb 100644 --- a/bliss.spec +++ b/bliss.spec @@ -2,7 +2,7 @@ Name: bliss Version: 0.77 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only @@ -123,6 +123,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 0.77-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Thu Feb 22 2024 Jerry James - 0.77-8 - Build the SCIP fork - Do not build for 32-bit x86 From 3f184f2082b4f373affb8cb45a3f596b03baf8b6 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 13 Jan 2025 13:33:07 -0700 Subject: [PATCH 44/47] Move configuration steps to %conf --- bliss.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/bliss.spec b/bliss.spec index c9d63cb..f9d2c28 100644 --- a/bliss.spec +++ b/bliss.spec @@ -78,6 +78,7 @@ library. %prep %autosetup -n Bliss-%{version} -p0 +%conf # Do not override Fedora build flags. The last sagemath version added an # soname. Duplicate it for compatibility. Link the library with libgmp. # Hidden symbols hide ALL symbols, meaning we can't use the library. From 01271737bd2e95812e960a5cad7448100951550e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 12:37:04 +0000 Subject: [PATCH 45/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index f9d2c28..1ff7113 100644 --- a/bliss.spec +++ b/bliss.spec @@ -2,7 +2,7 @@ Name: bliss Version: 0.77 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only @@ -124,6 +124,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 0.77-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Jul 17 2024 Fedora Release Engineering - 0.77-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 3fe9a69c07779bae805ad28f0a1d2e21e6747263 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 17:45:17 +0000 Subject: [PATCH 46/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- bliss.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bliss.spec b/bliss.spec index 1ff7113..d9c999d 100644 --- a/bliss.spec +++ b/bliss.spec @@ -2,7 +2,7 @@ Name: bliss Version: 0.77 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Compute automorphism groups and canonical labelings of graphs License: LGPL-3.0-only @@ -124,6 +124,9 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %{_libdir}/libbliss.so.2* %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 0.77-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Thu Jan 16 2025 Fedora Release Engineering - 0.77-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 904970fbfacb2c0027b9ed60040df31a80ad3738 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 9 Jan 2026 21:35:00 -0700 Subject: [PATCH 47/47] Reflow the description text - More precise globbing in %files - Update the project URL --- bliss.spec | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/bliss.spec b/bliss.spec index d9c999d..9b1aacd 100644 --- a/bliss.spec +++ b/bliss.spec @@ -1,4 +1,4 @@ -%global giturl https://github.com/ds4dm/Bliss +%global giturl https://github.com/scipopt/Bliss Name: bliss Version: 0.77 @@ -28,9 +28,9 @@ BuildRequires: make Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description -Bliss is an open source tool for computing automorphism groups and -canonical forms of graphs. It has both a command line user interface as -well as C++ and C programming language APIs. +Bliss is an open source tool for computing automorphism groups and canonical +forms of graphs. It has both a command line user interface as well as C++ and +C programming language APIs. %package devel # The content is LGPL-3.0-only. Other licenses are due to files installed by @@ -65,15 +65,14 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: gmp-devel%{?_isa} %description devel -Headers and library files needed to develop applications that use the -bliss library. +Headers and library files needed to develop applications that use the bliss +library. %package libs Summary: Compute automorphism groups and canonical labelings of graphs %description libs -A command-line bliss tool to access the functionality of the bliss -library. +A command-line bliss tool to access the functionality of the bliss library. %prep %autosetup -n Bliss-%{version} -p0 @@ -121,7 +120,7 @@ touch -r %{SOURCE1} %{buildroot}%{_mandir}/man1/bliss.1 %files libs %doc CHANGES.txt %license COPYING COPYING.LESSER -%{_libdir}/libbliss.so.2* +%{_libdir}/libbliss.so.2{,.*} %changelog * Wed Jul 23 2025 Fedora Release Engineering - 0.77-11