-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMakefile
43 lines (33 loc) · 1.02 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
TARGET = particle_plugin
TARGET_TYPE = shared-lib
# Don't add default 'lib' prefix to the plugin's target file
PREFIX_LIB =
SRC = src/logging/log_pass.cpp \
src/logging/msg_index.cpp \
src/logging/attr_parser.cpp \
src/logging/fmt_parser.cpp \
src/plugin/plugin_base.cpp \
src/plugin/gimple.cpp \
src/plugin/tree.cpp \
src/util/json.cpp \
src/util/variant.cpp \
src/plugin.cpp
INCLUDE_PATH = src
# Check access to GCC's tree nodes at runtime
DEFINE = ENABLE_TREE_CHECKING
LIB = boost_system \
boost_filesystem
# GCC requires RTTI disabled for plugins
CXX_FLAGS += -fno-rtti
# Path to GCC plugin header files
GCC_PLUGIN_INCLUDE_PATH ?= $(shell $(CXX) -print-file-name=plugin)/include
CXX_FLAGS += -isystem $(GCC_PLUGIN_INCLUDE_PATH)
# Other dependencies
INCLUDE_PATH += $(BOOST_INCLUDE_PATH) $(RAPIDJSON_INCLUDE_PATH)
LIB_PATH += $(BOOST_LIB_PATH)
# Ignore undefined symbols (macOS)
UNAME_S := $(shell uname -s)
ifeq ($(UNAME_S),Darwin)
LD_FLAGS += -Wl,-flat_namespace -Wl,-undefined,suppress
endif
include gcc-c++.mk