You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
1.6 KiB
74 lines
1.6 KiB
9 years ago
|
CC = clang
|
||
|
CXX = clang++
|
||
|
|
||
|
ARCH := $(shell uname -m)
|
||
|
|
||
|
PHONELIBS = ../../phonelibs
|
||
|
|
||
|
WARN_FLAGS = -Werror=implicit-function-declaration \
|
||
|
-Werror=incompatible-pointer-types \
|
||
|
-Werror=int-conversion \
|
||
|
-Werror=return-type \
|
||
|
-Werror=format-extra-args
|
||
|
|
||
|
CFLAGS = -std=gnu11 -g -fPIC -O2 $(WARN_FLAGS)
|
||
|
CXXFLAGS = -std=c++11 -g -fPIC -O2 $(WARN_FLAGS)
|
||
|
|
||
|
ZMQ_FLAGS = -I$(PHONELIBS)/zmq/aarch64/include
|
||
|
ZMQ_LIBS = -L$(PHONELIBS)/zmq/aarch64/lib \
|
||
|
-l:libczmq.a -l:libzmq.a \
|
||
|
-lgnustl_shared
|
||
|
|
||
|
CEREAL_FLAGS = -I$(PHONELIBS)/capnp-cpp/include
|
||
|
CEREAL_LIBS = -L$(PHONELIBS)/capnp-cpp/aarch64/lib/ \
|
||
|
-l:libcapnp.a -l:libkj.a
|
||
|
CEREAL_OBJS = ../../cereal/gen/c/log.capnp.o
|
||
|
|
||
|
EXTRA_LIBS = -lusb
|
||
|
|
||
|
ifeq ($(ARCH),x86_64)
|
||
|
ZMQ_LIBS = -L$(HOME)/drive/external/zmq/lib/ \
|
||
|
-l:libczmq.a -l:libzmq.a
|
||
|
CEREAL_LIBS = -L$(HOME)/drive/external/capnp/lib/ \
|
||
|
-l:libcapnp.a -l:libkj.a
|
||
|
EXTRA_LIBS = -lusb-1.0 -lpthread
|
||
|
endif
|
||
|
|
||
|
|
||
|
OBJS = boardd.o \
|
||
|
log.capnp.o
|
||
|
|
||
|
DEPS := $(OBJS:.o=.d)
|
||
|
|
||
|
all: boardd
|
||
|
|
||
|
boardd: $(OBJS)
|
||
|
@echo "[ LINK ] $@"
|
||
|
$(CXX) -fPIC -o '$@' $^ \
|
||
|
$(CEREAL_LIBS) \
|
||
|
$(ZMQ_LIBS) \
|
||
|
$(EXTRA_LIBS)
|
||
|
|
||
|
boardd.o: boardd.cc
|
||
|
@echo "[ CXX ] $@"
|
||
|
$(CXX) $(CXXFLAGS) \
|
||
|
-I$(PHONELIBS)/android_system_core/include \
|
||
|
$(CEREAL_FLAGS) \
|
||
|
$(ZMQ_FLAGS) \
|
||
|
-I../ \
|
||
|
-I../../ \
|
||
|
-c -o '$@' '$<'
|
||
|
|
||
|
|
||
|
log.capnp.o: ../../cereal/gen/cpp/log.capnp.c++
|
||
|
@echo "[ CXX ] $@"
|
||
|
$(CXX) $(CXXFLAGS) $(CEREAL_FLAGS) \
|
||
|
-c -o '$@' '$<'
|
||
|
|
||
|
|
||
|
.PHONY: clean
|
||
|
clean:
|
||
|
rm -f boardd $(OBJS) $(DEPS)
|
||
|
|
||
|
-include $(DEPS)
|