1#!/usr/bin/make -f
2# Makefile for carla-interposer #
3# ----------------------------- #
4# Created by falkTX
5#
6
7CWD=..
8include $(CWD)/Makefile.mk
9
10# ----------------------------------------------------------------------------------------------------------------------
11
12BINDIR    := $(CWD)/../bin
13
14ifeq ($(DEBUG),true)
15OBJDIR    := $(CWD)/../build/interposer/Debug
16MODULEDIR := $(CWD)/../build/modules/Debug
17else
18OBJDIR    := $(CWD)/../build/interposer/Release
19MODULEDIR := $(CWD)/../build/modules/Release
20endif
21
22# ----------------------------------------------------------------------------------------------------------------------
23
24BUILD_CXX_FLAGS += -I$(CWD) -I$(CWD)/backend -I$(CWD)/includes -I$(CWD)/modules -I$(CWD)/utils
25
26LINK_FLAGS += -Wl,-rpath=$(shell realpath $(CWD)/../bin)
27LINK_FLAGS += -L$(BINDIR) -lcarla_standalone2 -lcarla_utils
28LINK_FLAGS += -lrestbed -lssl -lcrypto
29LINK_FLAGS += -pthread
30
31# ----------------------------------------------------------------------------------------------------------------------
32
33OBJS    = $(OBJDIR)/rest-server.cpp.o $(OBJDIR)/buffers.cpp.o
34TARGETS = $(BINDIR)/carla-rest-server
35
36# ----------------------------------------------------------------------------------------------------------------------
37
38all: $(TARGETS)
39
40# ----------------------------------------------------------------------------------------------------------------------
41
42clean:
43	rm -f $(OBJDIR)/*.o $(TARGETS)
44
45debug:
46	$(MAKE) DEBUG=true
47
48# ----------------------------------------------------------------------------------------------------------------------
49
50$(BINDIR)/carla-rest-server: $(OBJS)
51	-@mkdir -p $(BINDIR)
52	@echo "Linking carla-rest-server"
53	@$(CXX) $^ $(LINK_FLAGS) -o $@
54
55# ----------------------------------------------------------------------------------------------------------------------
56
57$(OBJDIR)/%.cpp.o: %.cpp
58	-@mkdir -p $(OBJDIR)
59	@echo "Compiling $<"
60	@$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@
61
62# ----------------------------------------------------------------------------------------------------------------------
63
64-include $(OBJS:%.o=%.d)
65
66# ----------------------------------------------------------------------------------------------------------------------
67