Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 5 May 2015 21:54:30 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r385495 - in head/math: . cryptominisat cryptominisat/files py-cryptominisat py-cryptominisat/files
Message-ID:  <201505052154.t45LsUs9037466@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Tue May  5 21:54:29 2015
New Revision: 385495
URL: https://svnweb.freebsd.org/changeset/ports/385495

Log:
  math/cryptominisat, math/py-cryptominisat: add new ports
  
  CryptoMiniSat is a modern, multi-threaded, feature-rich, simplifying SAT
  solver, featuring over 100 configurable parameters to tune to specific
  need, collection of statistical data to MySQL database + javascript-based
  visualization of it and clean C++ and python interfaces.
  
  WWW: http://www.msoos.org/cryptominisat4/
  
  PR:		199929
  Submitted by:	6yearold@gmail.com (based on)

Added:
  head/math/cryptominisat/
  head/math/cryptominisat/Makefile   (contents, props changed)
  head/math/cryptominisat/distinfo   (contents, props changed)
  head/math/cryptominisat/files/
  head/math/cryptominisat/files/patch-cryptominisat4_CMakeLists.txt   (contents, props changed)
  head/math/cryptominisat/files/patch-cryptominisat4_bva.cpp   (contents, props changed)
  head/math/cryptominisat/pkg-descr   (contents, props changed)
  head/math/cryptominisat/pkg-plist   (contents, props changed)
  head/math/py-cryptominisat/
  head/math/py-cryptominisat/Makefile   (contents, props changed)
  head/math/py-cryptominisat/files/
  head/math/py-cryptominisat/files/patch-pycryptosat.cpp   (contents, props changed)
Modified:
  head/math/Makefile   (contents, props changed)

Modified: head/math/Makefile
==============================================================================
--- head/math/Makefile	Tue May  5 21:21:29 2015	(r385494)
+++ head/math/Makefile	Tue May  5 21:54:29 2015	(r385495)
@@ -94,6 +94,7 @@
     SUBDIR += convertall
     SUBDIR += coq
     SUBDIR += crlibm
+    SUBDIR += cryptominisat
     SUBDIR += cvc3
     SUBDIR += dcdflib
     SUBDIR += diehard
@@ -546,6 +547,7 @@
     SUBDIR += py-basemap-data
     SUBDIR += py-bitvector
     SUBDIR += py-bottleneck
+    SUBDIR += py-cryptominisat
     SUBDIR += py-fastcluster
     SUBDIR += py-ffc
     SUBDIR += py-fiat

Added: head/math/cryptominisat/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/cryptominisat/Makefile	Tue May  5 21:54:29 2015	(r385495)
@@ -0,0 +1,21 @@
+# $FreeBSD$
+
+PORTNAME=	cryptominisat
+PORTVERSION=	4.2.0
+PORTREVISION?=	0
+CATEGORIES?=	math
+MASTER_SITES=	http://msoos.org/largefiles/
+
+MAINTAINER=	6yearold@gmail.com
+COMMENT?=	General-purpose award-winning SAT solver
+
+LICENSE?=	LGPL3
+
+LIB_DEPENDS?=	libboost_program_options.so:${PORTSDIR}/devel/boost-libs
+
+USES?=		cmake compiler:c++11-lib tar:bzip2
+CMAKE_ARGS=	-DNOMYSQL=1 -DNOM4RI=1 -DPYTHON_EXECUTABLE=0
+WRKSRC=		${WRKDIR}/${PORTNAME}4-${PORTVERSION}
+USE_LDCONFIG=	yes
+
+.include <bsd.port.mk>

Added: head/math/cryptominisat/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/cryptominisat/distinfo	Tue May  5 21:54:29 2015	(r385495)
@@ -0,0 +1,2 @@
+SHA256 (cryptominisat-4.2.0.tar.bz2) = 4fb35b3f91a5fddcdd021a92e6e9f1a9049fb03f354860b118e9937a15a8ff02
+SIZE (cryptominisat-4.2.0.tar.bz2) = 634464

Added: head/math/cryptominisat/files/patch-cryptominisat4_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/cryptominisat/files/patch-cryptominisat4_CMakeLists.txt	Tue May  5 21:54:29 2015	(r385495)
@@ -0,0 +1,10 @@
+--- cryptominisat4/CMakeLists.txt.orig	2014-07-16 21:45:53 UTC
++++ cryptominisat4/CMakeLists.txt
+@@ -85,6 +85,7 @@ target_link_libraries(libcryptominisat4
+ set_target_properties(libcryptominisat4 PROPERTIES
+     OUTPUT_NAME cryptominisat4
+     PUBLIC_HEADER "${cryptominisat4_public_headers}"
++    SOVERSION 0
+ )
+ 
+ cmsat_add_public_header(libcryptominisat4 cryptominisat.h )

Added: head/math/cryptominisat/files/patch-cryptominisat4_bva.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/cryptominisat/files/patch-cryptominisat4_bva.cpp	Tue May  5 21:54:29 2015	(r385495)
@@ -0,0 +1,10 @@
+--- cryptominisat4/bva.cpp.orig	2014-07-14 22:45:03 UTC
++++ cryptominisat4/bva.cpp
+@@ -25,6 +25,7 @@
+ #include "clausecleaner.h"
+ #include "subsumeimplicit.h"
+ #include "sqlstats.h"
++#include <cmath>
+ #include <functional>
+ 
+ using namespace CMSat;

Added: head/math/cryptominisat/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/cryptominisat/pkg-descr	Tue May  5 21:54:29 2015	(r385495)
@@ -0,0 +1,6 @@
+CryptoMiniSat is a modern, multi-threaded, feature-rich, simplifying SAT
+solver, featuring over 100 configurable parameters to tune to specific
+need, collection of statistical data to MySQL database + javascript-based
+visualization of it and clean C++ and python interfaces.
+
+WWW: http://www.msoos.org/cryptominisat4/

Added: head/math/cryptominisat/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/cryptominisat/pkg-plist	Tue May  5 21:54:29 2015	(r385495)
@@ -0,0 +1,9 @@
+bin/cryptominisat
+include/cryptominisat4/cryptominisat.h
+include/cryptominisat4/solverconf.h
+include/cryptominisat4/solvertypesmini.h
+lib/cmake/cryptominisat4/cryptominisat4Config.cmake
+lib/cmake/cryptominisat4/cryptominisat4Targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/cryptominisat4/cryptominisat4Targets.cmake
+lib/libcryptominisat4.so
+lib/libcryptominisat4.so.0

Added: head/math/py-cryptominisat/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/py-cryptominisat/Makefile	Tue May  5 21:54:29 2015	(r385495)
@@ -0,0 +1,24 @@
+# $FreeBSD$
+
+CATEGORIES=	math python
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+COMMENT=	Python bindings to CryptoMiniSat
+
+LICENSE=	MIT
+
+LIB_DEPENDS=	libcryptominisat4.so:${PORTSDIR}/math/cryptominisat
+
+USES=		compiler:c++11-lib python:2.7 tar:bzip2
+USE_PYTHON=	autoplist distutils
+WRKSRC_SUBDIR=	python
+
+MASTERDIR=	${.CURDIR}/../cryptominisat
+PATCHDIR=	${.CURDIR}/files
+PLIST=		${.CURDIR}/pkg-plist
+
+post-install:
+	${FIND} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} -name \*.so \
+		-exec ${STRIP_CMD} {} +
+
+.include "${MASTERDIR}/Makefile"

Added: head/math/py-cryptominisat/files/patch-pycryptosat.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/math/py-cryptominisat/files/patch-pycryptosat.cpp	Tue May  5 21:54:29 2015	(r385495)
@@ -0,0 +1,19 @@
+On FreeBSD -std=c++11 turns NULL into nullptr which sometimes breaks:
+
+  pycryptosat.cpp:393:12: error: cannot initialize return object of type 'int' with an rvalue of type 'nullptr_t'
+      return NULL;
+             ^~~~
+  /usr/include/sys/_null.h:35:14: note: expanded from macro 'NULL'
+  #define NULL    nullptr
+                  ^~~~~~~
+--- pycryptosat.cpp.orig	2014-07-06 23:41:16 UTC
++++ pycryptosat.cpp
+@@ -390,7 +390,7 @@ Solver_init(Solver *self, PyObject *args
+     if (!self->cmsat) {
+         return -1;
+     }
+-    return NULL;
++    return 0;
+ }
+ 
+ static PyMemberDef Solver_members[] = {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201505052154.t45LsUs9037466>