PKG_CPPFLAGS=-Iswipl-devel/src -I../inst/swipl/lib/swipl/include -D_REENTRANT -D__SWI_PROLOG__ -D__SWI_EMBEDDED__
PKG_LIBS=`pkg-config ../inst/swipl/share/pkgconfig/swipl.pc --libs` -Wl,-rpath,'$$ORIGIN/../swipl/lib'
PKG_CXXFLAGS=$(CXX_VISIBILITY)

CMAKE_VERSION := $(shell cmake --version 2>/dev/null)
CMAKE_VERSION_MACOS := $(shell /Applications/CMake.app/Contents/bin/cmake --version 2>/dev/null)
CXX_STD=CXX17

all: $(SHLIB)

$(SHLIB): ../build/done

RcppExports.o: ../build/done

rswipl.o: ../build/done

../build/done:
	mkdir -p ../build
ifdef CMAKE_VERSION
	(cd ../build ; CC="$(CC)" CXX="$(CXX)" CFLAGS="$(subst -pedantic,,$(subst -Wstrict-prototypes,,$(CFLAGS)))" LDFLAGS="$(LDFLAGS)" CXXFLAGS="$(subst -Werror=implicit-function-declaration,,$(CXXFLAGS))" cmake -DCMAKE_CXX_STANDARD=17 -DCMAKE_INSTALL_PREFIX=../inst/swipl -DSWIPL_INSTALL_IN_LIB=ON -DINSTALL_DOCUMENTATION=OFF -DBUILD_TESTING=ON -DINSTALL_TESTS=ON -DSWIPL_PACKAGES_JAVA=OFF -DSWIPL_PACKAGES_X=OFF -DSWIPL_PACKAGES_ODBC=OFF -DUSE_GMP=OFF -DSWIPL_PACKAGES_PYTHON=OFF -DCMAKE_BUILD_TYPE=Release -S ../src/swipl-devel)
	LD_LIBRARY_PATH=$(CURDIR)/../build/src:${LD_LIBRARY_PATH} cmake --build ../build
	cmake --install ../build
else
ifdef CMAKE_VERSION_MACOS
	(cd ../build ; CC="$(CC)" CXX="$(CXX)" CFLAGS="$(subst -pedantic,,$(subst -Wstrict-prototypes,,$(CFLAGS)))" CPPFLAGS="$(CPPFLAGS) -I/opt/R/arm64/include" LDFLAGS="-L/opt/R/arm64/lib $(LDFLAGS)" /Applications/CMake.app/Contents/bin/cmake -DCMAKE_CXX_STANDARD=17 -DCMAKE_INSTALL_PREFIX=../inst/swipl -DSWIPL_INSTALL_IN_LIB=ON -DINSTALL_DOCUMENTATION=OFF -DBUILD_TESTING=OFF -DSWIPL_PACKAGES_JAVA=OFF -DSWIPL_PACKAGES_X=OFF -DSWIPL_PACKAGES_ODBC=OFF -DUSE_GMP=OFF -DSWIPL_PACKAGES_PYTHON=OFF -DCMAKE_BUILD_TYPE=Release -S ../src/swipl-devel)
	$(MAKE) -C ../build install
else
	$(error Please install cmake on your system)
endif
endif
	rm ../inst/swipl/bin/swipl
	rm ../inst/swipl/bin/swipl-ld
	-rm ../inst/swipl/lib/swipl/bin/*/swipl
	-rm ../inst/swipl/lib/swipl/bin/*/swipl-ld
	touch ../build/done
