github.com/alwaysproblem/mlserving-tutorial@v0.0.0-20221124033215-121cfddbfbf4/TFserving/ClientAPI/cpp/make/src/tmp/Makefile (about) 1 HOST_SYSTEM = $(shell uname | cut -f 1 -d_) 2 SYSTEM ?= $(HOST_SYSTEM) 3 CC = g++ 4 CFLAGS = -c -Wall -std=c++11 -pthread -I/usr/local/include -I/cpp/src/gen 5 ifeq ($(SYSTEM),Darwin) 6 LDFLAGS = -L/usr/local/lib -L/usr/include -L/grpc/cmake/build -lpthread -lprotobuf -lgrpc++ -lgrpc\ 7 -lgrpc++_reflection\ 8 -ldl 9 else 10 LDFLAGS = -L/usr/local/lib -L/grpc/cmake/build -L/usr/lib/x86_64-linux-gnu\ 11 -lboost_program_options -lprotobuf -pthread -lgrpc++ -lgrpc\ 12 -Wl,--no-as-needed -lgrpc++_reflection -Wl,--as-needed\ 13 -ldl 14 endif 15 EXECUTABLE_NAME=main 16 17 BIN =./bin 18 SOURCE_DIR =./src 19 OBJ =./obj 20 21 # SOURCE_FILES =$(wildcard src/*.cc) $(wildcard src/**/*/*/*.cc) 22 SOURCE_FILES =$(wildcard *.cc) 23 24 EXECUTABLE_FILES = $(EXECUTABLE_NAME:%=$(BIN)/%) 25 OBJECT_FILES = $(SOURCE_FILES:%.cc=$(OBJ)/%.o) 26 27 build: $(EXECUTABLE_FILES) 28 29 clean: 30 rm -r -f $(BIN) 31 rm -r -f $(OBJ) 32 33 .PHONY: build clean 34 35 $(EXECUTABLE_FILES): $(OBJECT_FILES) 36 @echo Linking $< 37 @mkdir -p $(@D) 38 @$(CC) $^ $(LDFLAGS) -o $@ 39 @echo "Build successful!" 40 41 $(OBJECT_FILES): $(OBJ)/%.o: %.cc 42 @echo Compiling $< 43 @mkdir -p $(@D) 44 @$(CC) $(CFLAGS) -o $@ $<