
TOOLSDIR=/app/apps.icsl/puneet/tools
FFTWDIR=$(TOOLSDIR)/fftw-3.3.2
FFTWLIB=$(FFTWDIR)/lib
BOOSTDIR = $(TOOLSDIR)/boost_1_55_0
EIGENDIR = $(TOOLSDIR)/eigen-eigen-6b38706d90a9
CCPATH   = /usr/bin/g++
CXXOPTS  = -m64 -O3 -fPIC -fexceptions -DNDEBUG -DIL_STD -Wno-ctor-dtor-privacy -fopenmp 
CCFLAG = $(CXXOPTS) -I$(TOOLSDIR)/OpenAccess_22.04p054/include/oa -I$(TOOLSDIR)/Si2/oa-22p084/include -I$(BOOSTDIR) -I$(EIGENDIR) -I$(FFTWDIR)/include

SYS_LD_SO = -shared
CXXPIC = -fPIC
SYSLIBS  = -ldl
LIB_SO_EXT = .so
DEBUG = -g

OA_LIB_DIR = $(TOOLSDIR)/OpenAccess_22.04p054/lib/linux_rhel40_64/opt
OA_LIB_LIST = $(OA_LIB_DIR)/liboaCommon.so \
	      $(OA_LIB_DIR)/liboaBase.so \
	      $(OA_LIB_DIR)/liboaPlugIn.so \
	      $(OA_LIB_DIR)/liboaDM.so \
	      $(OA_LIB_DIR)/liboaTech$(LIB_SO_EXT) \
	      $(OA_LIB_DIR)/liboaDesign$(LIB_SO_EXT)

CCLNFLAG = -L$(OA_LIB_DIR) -L$(BOOSTDIR) -L$(FFTWLIB) -loaCommon -loaBase -loaPlugIn -loaDM -loaTech -loaDesign $(SYSLIBS) \
-lm -pthread -lfftw3

VPATH = src:src/PBregionFinder

.PHONY: clean

# Link the executable

OBJ_FILES = build/findProhibitedRects.o build/defectType.o \
	  build/FeatureExtraction.o build/fftInterface.o \
	  build/ManufacturingParams.o build/MeasureCodePerf.o \
	  build/test.o

all: bin/test bin/run.py

bin/test: $(OBJ_FILES) $(OA_LIB_LIST)
	$(CCPATH) $(DEBUG) $(CXXOPTS) -o bin/test $(OBJ_FILES) $(CCLNFLAG)

build/%.o: %.cpp 
	$(CCPATH) $(CCFLAG) $(DEBUG) -o $@ -c $< 

bin/run.py:
	cp src/scripts/run.py bin/run.py

clean: 
	rm  -rf build/*.o
	rm -rf bin/*	 
