public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/cryptominisat] f45: Version 5.16.0
@ 2026-09-25 21:15 Jerry James
  0 siblings, 0 replies; only message in thread
From: Jerry James @ 2026-09-25 21:15 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/cryptominisat
            Branch : f45
            Commit : 9efa3a5656899dd56ccce48b46d3062b92bdacd4
            Author : Jerry James <loganjerry@gmail.com>
            Date   : 2026-09-25T13:52:25-06:00
            Stats  : +34/-86 in 4 file(s)
            URL    : https://src.fedoraproject.org/rpms/cryptominisat/c/9efa3a5656899dd56ccce48b46d3062b92bdacd4?branch=f45

            Log:
            Version 5.16.0

- Build with bundled (modified) picosat
- Ship the cadiback libraries

---
diff --git a/cryptominisat-cmake.patch b/cryptominisat-cmake.patch
index 47a1307..ba56a4c 100644
--- a/cryptominisat-cmake.patch
+++ b/cryptominisat-cmake.patch
@@ -1,6 +1,6 @@
---- cryptominisat-release-v5.14.5/cadiback/CMakeLists.txt.orig	2026-05-24 02:45:05.000000000 -0600
-+++ cryptominisat-release-v5.14.5/cadiback/CMakeLists.txt	2026-06-01 11:32:16.163467777 -0600
-@@ -16,9 +16,6 @@ if(NOT WIN32)
+--- cryptominisat-release-v5.16.0/cadiback/CMakeLists.txt.orig	2026-09-12 15:20:55.000000000 -0600
++++ cryptominisat-release-v5.16.0/cadiback/CMakeLists.txt	2026-09-25 10:43:25.001130101 -0600
+@@ -18,9 +18,6 @@ if(NOT WIN32)
          add_cxx_flag_if_supported("-fvisibility=hidden")
      endif()
  
@@ -10,7 +10,7 @@
      if(CMAKE_BUILD_TYPE STREQUAL "Release")
          # add_cxx_flag_if_supported("-flto")
          # add_link_flag_if_supported("-flto")
-@@ -27,11 +24,8 @@ if(NOT WIN32)
+@@ -29,11 +26,8 @@ if(NOT WIN32)
          add_cxx_flag_if_supported("-Wextra")
          add_cxx_flag_if_supported("-Wunused")
          add_cxx_flag_if_supported("-Wsign-compare")
@@ -22,8 +22,8 @@
          add_cxx_flag_if_supported("-Wno-extra-semi")
          add_cxx_flag_if_supported("-Wstrict-aliasing")
          add_cxx_flag_if_supported("-Wpointer-arith")
---- cryptominisat-release-v5.14.5/CMakeLists.txt.orig	2026-05-24 04:06:28.000000000 -0600
-+++ cryptominisat-release-v5.14.5/CMakeLists.txt	2026-06-01 11:30:42.126185714 -0600
+--- cryptominisat-release-v5.16.0/CMakeLists.txt.orig	2026-09-21 15:54:57.000000000 -0600
++++ cryptominisat-release-v5.16.0/CMakeLists.txt	2026-09-25 10:44:21.608476426 -0600
 @@ -189,8 +189,6 @@ if(ENABLE_ASSERTIONS)
  else()
      # Note this definition doesn't appear in the cache variables.
@@ -43,15 +43,16 @@
      if(CMAKE_BUILD_TYPE STREQUAL "Release")
        # add_cxx_flag_if_supported("-flto")
        # add_c_flag_if_supported("-flto")
-@@ -296,7 +291,6 @@ if(NOT WIN32)
+@@ -296,8 +291,6 @@ if(NOT WIN32)
          add_cxx_flag_if_supported("-Wextra")
          add_cxx_flag_if_supported("-Wunused")
          add_cxx_flag_if_supported("-Wsign-compare")
 -        add_cxx_flag_if_supported("-fno-omit-frame-pointer")
+-        add_c_flag_if_supported("-fno-omit-frame-pointer")
          add_cxx_flag_if_supported("-Wtype-limits")
          add_cxx_flag_if_supported("-Wuninitialized")
          add_cxx_flag_if_supported("-Wno-deprecated")
-@@ -308,10 +302,8 @@ if(NOT WIN32)
+@@ -309,10 +302,8 @@ if(NOT WIN32)
          add_cxx_flag_if_supported("-Wparentheses")
          add_cxx_flag_if_supported("-Wunreachable-code")
          add_cxx_flag_if_supported("-g")
@@ -62,7 +63,7 @@
  
          # Apparently needed before OS X Mavericks (2013)
          #add_c_flag_if_supported("-stdlib=libc++")
-@@ -324,10 +316,6 @@ if(LIMITMEM)
+@@ -325,10 +316,6 @@ if(LIMITMEM)
      add_compile_definitions(LIMITMEM)
  endif()
  

diff --git a/cryptominisat-picosat.patch b/cryptominisat-picosat.patch
deleted file mode 100644
index 36ed9a6..0000000
--- a/cryptominisat-picosat.patch
+++ /dev/null
@@ -1,58 +0,0 @@
---- cryptominisat-release-v5.14.4/MANIFEST.in.orig	2026-04-04 13:00:54.000000000 -0600
-+++ cryptominisat-release-v5.14.4/MANIFEST.in	2026-04-20 09:32:03.071239484 -0600
-@@ -3,5 +3,4 @@ global-exclude *.timeout
- global-exclude *.in
- global-exclude *.txt
- recursive-include src/ *.h *.hpp
--recursive-include src/mpicosat/ *.h *.hpp
- recursive-include src/oracle/ *.h *.hpp
---- cryptominisat-release-v5.14.4/src/CMakeLists.txt.orig	2026-04-04 13:00:54.000000000 -0600
-+++ cryptominisat-release-v5.14.4/src/CMakeLists.txt	2026-04-20 09:34:56.749247483 -0600
-@@ -133,8 +133,6 @@ set(cryptoms_lib_files
-     gaussian.cpp
-     packedrow.cpp
-     matrixfinder.cpp
--    mpicosat/mpicosat.c
--    mpicosat/version.c
-     oracle/oracle.cpp
-     ${CMAKE_CURRENT_BINARY_DIR}/GitSHA1.cpp
- )
-@@ -157,7 +155,7 @@ if(GPU)
-     )
- endif()
- 
--set(cryptoms_lib_link_libs "")
-+set(cryptoms_lib_link_libs picosat-trace)
- 
- if(FINAL_PREDICTOR)
-     set(cryptoms_lib_files
-@@ -328,7 +326,6 @@ if(IPASIR)
- endif()
- 
- cmsat_add_public_header(cryptominisat5 ${CMAKE_CURRENT_SOURCE_DIR}/cryptominisat_c.h)
--cmsat_add_public_header(cryptominisat5 ${CMAKE_CURRENT_SOURCE_DIR}/mpicosat/mpicosat.h)
- cmsat_add_public_header(cryptominisat5 ${CMAKE_CURRENT_SOURCE_DIR}/cryptominisat.h)
- cmsat_add_public_header(cryptominisat5 ${CMAKE_CURRENT_SOURCE_DIR}/solvertypesmini.h)
- cmsat_add_public_header(cryptominisat5 ${CMAKE_CURRENT_SOURCE_DIR}/dimacsparser.h)
---- cryptominisat-release-v5.14.4/src/occsimplifier.cpp.orig	2026-04-04 13:00:54.000000000 -0600
-+++ cryptominisat-release-v5.14.4/src/occsimplifier.cpp	2026-04-20 09:31:38.194518349 -0600
-@@ -47,7 +47,7 @@ THE SOFTWARE.
- #include "gatefinder.h"
- #include "trim.h"
- extern "C" {
--#include "mpicosat/mpicosat.h"
-+#include <picosat.h>
- }
- 
- //#define VERBOSE_DEBUG
---- cryptominisat-release-v5.14.4/src/solver.cpp.orig	2026-04-04 13:00:54.000000000 -0600
-+++ cryptominisat-release-v5.14.4/src/solver.cpp	2026-04-20 09:31:38.195133936 -0600
-@@ -70,7 +70,7 @@ THE SOFTWARE.
- #include "get_clause_query.h"
- #include "community_finder.h"
- extern "C" {
--#include "mpicosat/mpicosat.h"
-+#include <picosat.h>
- }
- #include "cryptominisat.h"
- 

diff --git a/cryptominisat.spec b/cryptominisat.spec
index 076730a..34e97b0 100644
--- a/cryptominisat.spec
+++ b/cryptominisat.spec
@@ -1,11 +1,15 @@
 # We bundle cadiback because it has been modified by the cryptominisat team to
 # present a library interface to cryptominisat
 %global cadiurl     https://github.com/meelgroup/cadiback
-%global cadicommit  3b6a84062b1304433eb8960a4bff6b9a80de9c54
+%global cadicommit  47a6d821085ef8cb033241659824beafeb798cff
 %global giturl      https://github.com/msoos/cryptominisat
 
+# This corresponds to cadical 2.2.1
+# Update whenever building with a new version of cadical
+%global cadicalsha1 4198d817d0dcde5b1240eefbff70b555b7df2af9
+
 Name:           cryptominisat
-Version:        5.14.7
+Version:        5.16.0
 Release:        %autorelease
 Summary:        SAT solver
 
@@ -16,8 +20,6 @@ Source0:        %{giturl}/archive/release/v%{version}/%{name}-%{version}.tar.gz
 Source1:        %{cadiurl}/archive/%{cadicommit}/cadiback-%{sub %{cadicommit} 1 7}.tar.gz
 # Change the CMake files to not change Fedora build flags
 Patch:          %{name}-cmake.patch
-# Unbundle picosat
-Patch:          %{name}-picosat.patch
 # Use zlib-ng instead of zlib
 Patch:          %{name}-zlib-ng.patch
 
@@ -39,7 +41,6 @@ BuildRequires:  cmake(cadical)
 BuildRequires:  gcc-c++
 BuildRequires:  help2man
 BuildRequires:  ninja-build
-BuildRequires:  picosat-devel
 BuildRequires:  pkgconfig(zlib-ng)
 BuildRequires:  python3-devel
 
@@ -69,6 +70,9 @@ Summary:        Cryptominisat library
 # Cadiback upstream has not tagged any releases, so there is no version number
 Provides:       bundled(cadiback)
 
+# Picosat has been modified by the cryptominisat team
+Provides:       bundled(picosat) = 965
+
 %description libs
 The %{name} library.
 
@@ -107,8 +111,10 @@ fi
 # Defeat attempt to add an rpath
 sed -i 's/INSTALL_RPATH_USE_LINK_PATH TRUE//' src/CMakeLists.txt
 
-# Ensure the bundled picosat is not used
-rm -fr src/mpicosat
+# Don't try to include a nonexistent header
+sed -e '/cadical_gitsha1\.hpp/d' \
+    -e 's/CaDiCaL::get_version_sha1()/"%{cadicalsha1}"/' \
+    -i src/cryptominisat.cpp
 
 %generate_buildrequires
 %pyproject_buildrequires
@@ -118,13 +124,8 @@ export CFLAGS='%{build_cflags} -I %{_includedir}/breakid -DNTRACING'
 export CXXFLAGS='%{build_cxxflags} -I %{_includedir}/breakid -DNTRACING'
 
 %install -a
-# We don't want the bundled cadiback
-rm -fr %{buildroot}%{_includedir}/cadiback
-rm -fr %{buildroot}%{_libdir}/cmake/cadiback
-rm %{buildroot}%{_libdir}/*.a
-
 # Remove a bogus dependency that leads to cvc5 build failures
-sed -i 's/;PkgConfig::GMP//' \
+sed -i '/set_target_properties/,/^)$/d' \
     %{buildroot}%{_libdir}/cmake/cryptominisat5/cryptominisat5Targets.cmake
 
 # The Python interface is installed in the wrong place
@@ -152,10 +153,10 @@ Classifier: Intended Audience :: Developers
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: C++
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.5
+Classifier: Programming Language :: Python :: 3.13
 Classifier: License :: OSI Approved :: MIT License
 Classifier: Topic :: Utilities
-Requires-Python: >=3.5
+Requires-Python: >=3.13
 Description-Content-Type: text/markdown
 License-File: LICENSE.txt
 License-File: AUTHORS
@@ -175,17 +176,21 @@ mv %{buildroot}%{_bindir}/oracle %{buildroot}%{_bindir}/cryptominisat5-oracle
 %{_mandir}/man1/cryptominisat5.1*
 
 %files devel
+%{_includedir}/cadiback/
 %{_includedir}/cryptominisat5/
 %{_includedir}/oracle/
+%{_libdir}/libcadiback.so
 %{_libdir}/libcryptominisat5.so
 %{_libdir}/liboracle.so
+%{_libdir}/cmake/cadiback/
 %{_libdir}/cmake/cryptominisat5/
 
 %files libs
 %doc AUTHORS
 %license LICENSE.txt
-%{_libdir}/libcryptominisat5.so.5.14
-%{_libdir}/liboracle.so.5.14
+%{_libdir}/libcadiback.so.0{,.*}
+%{_libdir}/libcryptominisat5.so.5.16
+%{_libdir}/liboracle.so.5.16
 
 %files -n python3-pycryptosat
 %doc python/README.md

diff --git a/sources b/sources
index 7548070..c3ec230 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (cryptominisat-5.14.7.tar.gz) = 7387f2866049455fa176b3844dd65800721ebf0170a11a3262cd35a05fb1db5d9422be62a0e976ba9abeb31ca074b38b95c188448eb9b2b8a51caba1ff4c46cc
-SHA512 (cadiback-3b6a840.tar.gz) = 8d3796b774c03ac6965a35c24cbb351623146fa8f0c6b98e2b63b888812724003c496b66ef04fbe1520fecb1e5a918e00f44b4b6feaf7849050d0520f37ba63b
+SHA512 (cryptominisat-5.16.0.tar.gz) = 810787b32c58a987317a19aea586490844eca9887f59d6922426ffd8ab8bd634f9abae39ddde73bf8929ed3316eed9523deb0d67385adbda72ddf81efc194864
+SHA512 (cadiback-47a6d82.tar.gz) = 287baf4222781657608b9f0c8cc72ba176413150ae98adcae51451caa88d7958b9b0dafbf0fd802a71c34fa8ad2361ad42df8fe5f195070004d66b9e701e4cab

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-09-25 21:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-25 21:15 [rpms/cryptominisat] f45: Version 5.16.0 Jerry James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox