Removed Minisat dependency on zlib

This commit is contained in:
Clifford Wolf 2014-07-25 03:31:16 +02:00
parent e4a0ab9bed
commit 6789e3002a
5 changed files with 43 additions and 13 deletions

View File

@ -27,6 +27,7 @@
#include <stdint.h>
#include <csignal>
#include <cinttypes>
#include <unistd.h>
#include "../minisat/Solver.h"
#include "../minisat/SimpSolver.h"

View File

@ -0,0 +1,38 @@
--- ParseUtils.h
+++ ParseUtils.h
@@ -24,8 +24,6 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include <stdlib.h>
#include <stdio.h>
-#include <zlib.h>
-
#include "XAlloc.h"
namespace Minisat {
@@ -36,24 +34,16 @@ namespace Minisat {
class StreamBuffer {
- gzFile in;
unsigned char* buf;
int pos;
int size;
enum { buffer_size = 64*1024 };
- void assureLookahead() {
- if (pos >= size) {
- pos = 0;
- size = gzread(in, buf, buffer_size); } }
+ virtual void assureLookahead() = 0;
public:
- explicit StreamBuffer(gzFile i) : in(i), pos(0), size(0){
- buf = (unsigned char*)xrealloc(NULL, buffer_size);
- assureLookahead();
- }
- ~StreamBuffer() { free(buf); }
+ virtual ~StreamBuffer() { }
int operator * () const { return (pos >= size) ? EOF : buf[pos]; }
void operator ++ () { pos++; assureLookahead(); }

View File

@ -12,5 +12,6 @@ sed -i -e 's/PRI[iu]64/ & /' Options.h Solver.cc
sed -i -e '1 i #define __STDC_LIMIT_MACROS' *.cc
sed -i -e '1 i #define __STDC_FORMAT_MACROS' *.cc
patch -p0 < PATCH_mkLit_default_arg.patch
patch -p0 < 00_PATCH_mkLit_default_arg.patch
patch -p0 < 00_PATCH_remove_zlib.patch

View File

@ -24,8 +24,6 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
#include <stdlib.h>
#include <stdio.h>
#include <zlib.h>
#include "XAlloc.h"
namespace Minisat {
@ -36,24 +34,16 @@ namespace Minisat {
class StreamBuffer {
gzFile in;
unsigned char* buf;
int pos;
int size;
enum { buffer_size = 64*1024 };
void assureLookahead() {
if (pos >= size) {
pos = 0;
size = gzread(in, buf, buffer_size); } }
virtual void assureLookahead() = 0;
public:
explicit StreamBuffer(gzFile i) : in(i), pos(0), size(0){
buf = (unsigned char*)xrealloc(NULL, buffer_size);
assureLookahead();
}
~StreamBuffer() { free(buf); }
virtual ~StreamBuffer() { }
int operator * () const { return (pos >= size) ? EOF : buf[pos]; }
void operator ++ () { pos++; assureLookahead(); }