# This file replaces the original Makefile for ZChaff. CC = g++ cc = gcc CNF = ./cnf HGR = ./hgr2bdt CFLAGS = -DNDEBUG -O3 #ifeq (solaris, $(OSTYPE)) MFLAGS = -D_NEED_REDEFINE_RAND_MAX_ HMETIS_LIB = $(HGR)/hmetis-solaris/libhmetis.a #else # ifneq (linux, $(OSTYPE)) # echo "WARNING: This thing is not tested under os other than Linux and Solaris" # endif # HMETIS_LIB = $(HGR)/hmetis-1.5-linux/libhmetis.a #endif RANLIB = ranlib AR = ar .SUFFIXES: .o .cpp .c HEADERS = asap_base.h asap_clsgen.h asap_common.h asap_dbase.h asap_solver.h dtree_solver.h SOLVER_SRCS = sat_solver.cpp SOLVER_OBJS = $(SOLVER_SRCS:.cpp=.o) CNF_OBJS = $(CNF)/clause.o $(CNF)/cnf.o $(CNF)/dtree.o $(CNF)/list.o HGR_OBJS = $(HGR)/main.o $(HGR)/cnf2hgr.o $(HGR)/hgr2bdt.o $(HGR)/dman.o $(HGR)/dtree.o $(HGR)/elimorder.o $(HGR)/hypergraph.o LIB_SRCS = asap_utils.cpp asap_solver.cpp asap_dbase.cpp asap_c_wrapper.cpp asap_cpp_wrapper.cpp dtree_solver.cpp LIB_OBJS = $(LIB_SRCS:.cpp=.o) TARGET: $(SOLVER_OBJS) libsat.a $(CC) $(LINKFLAGS) $(CFLAGS) $(MFLAGS) -o asap $(SOLVER_OBJS) libsat.a $(HMETIS_LIB) $(LIB_OBJS): $(HEADERS) Makefile libsat.a: $(LIB_OBJS) $(CNF_OBJS) $(HGR_OBJS) @rm -f libsat.a $(AR) cr libsat.a $(LIB_OBJS) $(CNF_OBJS) $(HGR_OBJS) $(RANLIB) libsat.a clean: @rm *.o $(CNF)/*.o $(HGR)/*.o .cpp.o: $(CC) $(CFLAGS) $(MFLAGS) -c $< -o $*.o .cc.o: $(CC) $(CFLAGS) $(MFLAGS) -c $< -o $*.o