CXX=g++
C=gcc
-CFLAGS=-O3 -std=c++11
-OBJ = pixmap_io.o one_round_new.o
+
+uname_m := $(shell uname -m)
+ifeq ($(uname_m),armv7l)
+CFLAGS=-O3 -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -lrt
+else
+ifeq ($(uname_m),armv6l)
+CFLAGS=-O3 -march=armv6 -mfpu=vfp -mfloat-abi=hard -lrt
+else
+CFLAGS=-O3
+endif
+endif
+
+
%.o: %.c
$(C) -c -o $@ $< $(CFLAGS)
-%.o: %.cpp
+one_round_new.o: one_round_new.cpp
$(CXX) -c -o $@ $< $(CFLAGS)
-one_round_new: $(OBJ)
- $(CXX) -o $@ $^ $(CFLAGS)
+
+one_round_hash.o: one_round_hash.cpp
+ $(CXX) -c -o $@ $< $(CFLAGS)
+
+
+
+one_round_par2.o: one_round_par2.cpp
+ $(CXX) -fopenmp -c -o $@ $< $(CFLAGS)
+
+one_round_new: pixmap_io.o one_round_new.o
+ $(CXX) -o $@ $^ $(CFLAGS)
+
+
+one_round_par2: pixmap_io.o one_round_par2.o
+ $(CXX) -fopenmp -o $@ $^ $(CFLAGS)
+
+
+one_round_hash: pixmap_io.o one_round_hash.o
+ $(CXX) -o $@ $^ $(CFLAGS)
clean:
- rm -rf $(OBJ) one_round_new
+ rm -rf *.o one_round_new one_round_hash one_round_par2