# _*_ mode: Makefile; _*_ export CC = gcc export CXX = g++ # expose these flags to R CMD SHLIB PKG_CPPFLAGS = -O3 -Wno-unknown-pragmas -DXGBOOST_CUSTOMIZE_ERROR_ -fopenmp -fPIC $(SHLIB_OPENMP_CFLAGS) PKG_LIBS = $(SHLIB_OPENMP_CFLAGS) # add flag to build native code even in cross compiler ifeq "$(WIN)" "64" PKG_CPPFLAGS += -m64 endif ifeq ($(no_omp),1) PKG_CPPFLAGS += -DDISABLE_OPENMP endif CXXOBJ= xgboost_wrapper.o xgboost_io.o OBJECTS= xgboost_R.o $(CXXOBJ) .PHONY: all clean all: $(SHLIB) $(SHLIB): $(OBJECTS) xgboost_wrapper.o: ../../wrapper/xgboost_wrapper.cpp xgboost_io.o: ../../src/io/io.cpp $(CXXOBJ) : $(CXX) -c $(PKG_CPPFLAGS) -o $@ $(firstword $(filter %.cpp %.c, $^) ) clean: rm -rf *.so *.o *~ *.dll