BUILD_DIR = build
INCLUDE_DIR = include
PYBIND_DIR = pybind
PYTHON_INCLUDE = $(shell python3 -m pybind11 --includes)
EXTENSION = $(shell python3-config --extension-suffix)
INCLUDE = $(INCLUDE_DIR) $(PYTHON_INCLUDE)
PYBIND_INTERFACE = $(PYBIND_DIR)/pybind-wrapper.cc
SERIALCALC = $(PYBIND_DIR)/serialcalc.cc
MODULE = $(BUILD_DIR)/plastic_sorting$(EXTENSION)
all: $(TARGET) $(MODULE)
modules: $(MODULE)
$(BUILD_DIR):
mkdir -p $(BUILD_DIR)
$(MODULE): $(BUILD_DIR) $(PYBIND_INTERFACE)
$(CXX) -O3 -Wall -std=c++17 -shared -fPIC $(PYTHON_INCLUDE) -I$(INCLUDE_DIR) $(PYBIND_INTERFACE) $(SERIALCALC) -o $(MODULE) -lOpenCL
clean:
rm -rf $(BUILD_DIR)