+uname_m := $(shell uname -m)
+ifeq ($(uname_m),armv7l)
+CFLAGS=-O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -lrt `pkg-config --cflags --libs glib-2.0`
+else
+ifeq ($(uname_m),armv6l)
+CFLAGS=-O3 -march=armv6 -mfpu=vfp -mfloat-abi=hard -lrt `pkg-config --cflags --libs glib-2.0`
+else
+CFLAGS=-O3 `pkg-config --cflags --libs glib-2.0`
+endif
+endif
+
+
+# LINUX to improve
+#CFLAGS= -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx
+
+
+
CPP_FLAGS= -fopenmp -O3 -lc -lm
ida_gf65_paper1: ida_gf65_paper1.cpp
- g++ -o $@ $< -std=c++11 -O3 -lm -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx -g -O3 -Wall -Ijerasure/include jerasure/src/.libs/jerasure.o jerasure/src/.libs/galois.o -lgf_complete -fpermissive -lpthread -I $(C_INCLUDE)
+ g++ -o $@ $< -std=c++11 -O3 -lm -g -O3 -Wall -Ijerasure/include jerasure/src/.libs/jerasure.o jerasure/src/.libs/galois.o -lgf_complete -fpermissive -lpthread -I $(C_INCLUDE)
+
+
+
+ida_gf65_paper2: ida_gf65_paper2.cpp
+ g++ -o $@ $< -std=c++11 -O3 -lm -g -O3 -Wall -Ijerasure/include jerasure/src/.libs/jerasure.o jerasure/src/.libs/galois.o -lgf_complete -fpermissive -lpthread -I $(C_INCLUDE)
+
+ida_gf65_paper3: ida_gf65_paper3.cpp
+ g++ -o $@ $< -std=c++11 -O3 -lm -g -O3 -Wall -Ijerasure/include jerasure/src/.libs/jerasure.o jerasure/src/.libs/galois.o -lgf_complete -fpermissive -lpthread -I $(C_INCLUDE)
+
clean:
- rm test_mat2 ida ida_gf64 ida_gf65_paper1
+ rm test_mat2 ida ida_gf64 ida_gf65_paper1 ida_gf65_paper2 ida_gf65_paper3