33 lines
734 B
Plaintext
33 lines
734 B
Plaintext
# _*_ 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
|