#### Variable for build packages ####
#our package
export USE_MKL=0
#export MKL_ROOT=/home/b99902073/work/ranksvm/kernel/exp/composer_xe_2013_sp1.0.080
export MKL_ROOT=
export MKL_HEADER_DIR=$(MKL_ROOT)/mkl/include
export MKL_COMPILER_LIB_DIR=$(NKL_ROOT)/mkl/lib/intel64
export MKL_LIB_DIR=$(MKL_ROOT)/compiler/lib/intel64
#
#rv-svm
#export CPLEX_ROOT=/home/b99902073/work/cplex
export CPLEX_ROOT=
export CPLEX_HEADER_DIR=$(CPLEX_ROOT)/cplex/include
export CPLEX_LIB_DIR=$(CPLEX_ROOT)/cplex/lib/x86-64_sles10_4.1/static_pic
#
####
all : exp plot

.PHONY : build clean exp plot data package

package : ./packages/rvsvm.zip ./packages/svm_light.tar.gz ./packages/svm_rank.tar.gz
	mkdir -p ./svm-light
	tar zxvf ./packages/svm_light.tar.gz -C ./svm-light/
	cd ./svm-light; \
	patch -p1 -i ../patch/svm-light.patch
	mkdir -p ./svm-rank
	tar zxvf ./packages/svm_rank.tar.gz -C ./svm-rank/
	cd ./svm-rank; \
	patch -p1 -i ../patch/svm-rank.patch
	mkdir -p ./rv-svm
	unzip ./packages/rvsvm.zip -d ./rv-svm
	cd ./rv-svm; \
	patch -p1 -i ../patch/rv-svm.patch

build : package
	$(MAKE) -C ./kernel-ranksvm
	$(MAKE) -C ./svm-rank
	$(MAKE) -C ./svm-light
	$(MAKE) -C ./rv-svm

clean :
	$(MAKE) -C ./kernel-ranksvm clean
	rm -rf ./svm-rank
	rm -rf ./svm-light
	rm -rf ./rv-svm
	rm -f *.pyc
	rm -f ./log/* ./plots/*
	rm -f ./figures/*.eps ./figures/*.pdf

data :
	./subsample.py qids ./data/MQ2007-list/train.txt ./data/MQ2007-list-sub/train.txt
	cp ./data/MQ2007-list/test.txt ./data/MQ2007-list-sub/test.txt

exp : build data
	./run_comparison_time.py
	./run_comparison_performance.py

plot : 
	./generate_plot_code.py
	cat ./plots/*.m | matlab
