40 lines
675 B
Makefile
40 lines
675 B
Makefile
CWD := $(dir $(realpath $(lastword $(MAKEFILE_LIST))))
|
|
|
|
|
|
PLUGIN_DIR = ${CWD}plugins
|
|
OBJECT_DIR = $(CWD)target/objects
|
|
BUILD_DIR = $(CWD)target
|
|
DIM_CC_FLAGS = -I$(CWD)sdk/c_cxx
|
|
DIM_CC = gcc
|
|
|
|
BIN=$(BUILD_DIR)/dim
|
|
|
|
PLUGINS=$(wildcard dim_plugins/**/Makefile)
|
|
|
|
|
|
all: $(BIN) $(PLUGINS) compile_commands.json
|
|
|
|
$(BIN): target/release/dim
|
|
cp $< $@
|
|
|
|
target/release/dim:
|
|
cargo build --release
|
|
|
|
dim_plugins/%/Makefile:
|
|
@$(MAKE) -C $(dir $@) \
|
|
-E "PLUGIN_DIR=$(PLUGIN_DIR)" \
|
|
-E "OBJECT_DIR=$(OBJECT_DIR)" \
|
|
-E "BUILD_DIR=$(BUILD_DIR)" \
|
|
-E "DIM_CC_FLAGS=$(DIM_CC_FLAGS)" \
|
|
-E "DIM_CC=$(DIM_CC)"
|
|
|
|
|
|
compile_commands.json:
|
|
compiledb -n make
|
|
|
|
|
|
|
|
|
|
|
|
|