# SPDX-FileCopyrightText: 2016-2026 Rick Helmus <r.helmus@uva.nl>
#
# SPDX-License-Identifier: GPL-3.0-only

PKG_CPPFLAGS=-DSTRICT_R_HEADERS

SRC=$(wildcard GenForm-svn/*.cpp)
OBJECTS_GF=$(SRC:.cpp=.o)
DEST_GF=GenForm

CXX_STD = CXX14
PKG_LIBS = $(SHLIB_OPENMP_CXXFLAGS) -lz
PKG_CXXFLAGS = $(SHLIB_OPENMP_CXXFLAGS)

PKG_CFLAGS += $(shell echo 'source("../tools/build_flags.R"); getFlags("PKG_CFLAGS")' | "${R_HOME}/bin/R" --vanilla --slave)
PKG_CXXFLAGS += $(shell echo 'source("../tools/build_flags.R"); getFlags("PKG_CXXFLAGS")' | "${R_HOME}/bin/R" --vanilla --slave)
PKG_LIBS += $(shell echo 'source("../tools/build_flags.R"); getFlags("PKG_LIBS")' | "${R_HOME}/bin/R" --vanilla --slave)

.PHONY: all clean inst

all: GenForm $(SHLIB)

all:
	@echo 'source("../tools/build_flags.R"); printConfig()' | "${R_HOME}/bin/R" --vanilla --slave

GenForm: $(OBJECTS_GF)
	$(CXX) -o $(DEST_GF) $(OBJECTS_GF)

clean:
	rm -rf $(OBJECTS_GF) $(DEST_GF) $(SHLIB) $(OBJECTS)
