#CC = CC
CC = g++
cc = gcc

#CFLAGS = -g
#CFLAGS = -O3 -pg 
#CFLAGS = -O3
CFLAGS = -DNDEBUG -O3 

ifeq (solaris, $(OSTYPE))
  MFLAGS = -D_NEED_REDEFINE_RAND_MAX_
else
  ifneq (linux, $(OSTYPE))
    echo "WARNING: This thing are not tested under os other than Linux and Solaris"
  endif
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

SOLVER_SRCS = sat_solver.cpp 
SOLVER_OBJS = $(SOLVER_SRCS:.cpp=.o)

LIB_SRCS =  asap_utils.cpp asap_solver.cpp asap_dbase.cpp asap_c_wrapper.cpp  asap_cpp_wrapper.cpp
LIB_OBJS = $(LIB_SRCS:.cpp=.o)

TARGET:   $(SOLVER_OBJS) libsat.a
	  $(CC) $(LINKFLAGS) $(CFLAGS) $(MFLAGS) -o asap $(SOLVER_OBJS) libsat.a

$(LIB_OBJS): $(HEADERS) Makefile

libsat.a:   $(LIB_OBJS)
	@rm -f libsat.a
	$(AR) cr libsat.a $(LIB_OBJS)
	$(RANLIB) libsat.a
.c.o:
	$(cc) $(CFLAGS) $(MFLAGS) -c $<
.cpp.o:
	$(CC) $(CFLAGS) $(MFLAGS) -c $< 





