-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathtaskfile.yaml
More file actions
67 lines (60 loc) · 2.31 KB
/
taskfile.yaml
File metadata and controls
67 lines (60 loc) · 2.31 KB
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
version: "3"
includes:
build: "taskfiles/build.yaml"
deps: "taskfiles/deps.yaml"
docs: "taskfiles/docs.yaml"
lint: "taskfiles/lint.yaml"
test: "taskfiles/test.yaml"
utils: "tools/yscope-dev-utils/exports/taskfiles/utils/utils.yaml"
vars:
G_BUILD_DIR: "{{.ROOT_DIR}}/build"
G_BUILD_SPIDER_DIR: "{{.G_BUILD_DIR}}/spider"
G_SPIDER_CMAKE_CACHE: "{{.G_BUILD_SPIDER_DIR}}/CMakeCache.txt"
G_SPIDER_COMPILE_COMMANDS_DB: "{{.G_BUILD_SPIDER_DIR}}/compile_commands.json"
G_BUILD_EXAMPLES_DIR: "{{.G_BUILD_DIR}}/examples"
G_BUILD_EXAMPLES_WOLF_DIR: "{{.G_BUILD_EXAMPLES_DIR}}/wolf"
G_EXAMPLES_WOLF_CMAKE_CACHE: "{{.G_BUILD_EXAMPLES_WOLF_DIR}}/CMakeCache.txt"
G_EXAMPLES_WOLF_COMPILE_COMMANDS_DB: "{{.G_BUILD_EXAMPLES_WOLF_DIR}}/compile_commands.json"
G_RUST_BUILD_DIR: "{{.G_BUILD_DIR}}/rust-targets"
G_SRC_SPIDER_DIR: "{{.ROOT_DIR}}/src/spider"
G_TEST_DIR: "{{.ROOT_DIR}}/tests"
G_EXAMPLES_DIR: "{{.ROOT_DIR}}/examples"
G_EXAMPLES_WOLF_DIR: "{{.G_EXAMPLES_DIR}}/wolf"
G_SRC_PYTHON_DIR: "{{.ROOT_DIR}}/python/spider-py"
G_BUILD_PYTHON_DIR: "{{.G_BUILD_DIR}}/spider-py"
# Build parameters
# NOTE: Defaulting to an empty string is safe since CMake ignores an empty string.
G_DEPS_MAX_PARALLELISM_PER_TASK: >-
{{default "" (env "SPIDER_DEPS_MAX_PARALLELISM_PER_TASK")}}
G_DEPS_DIR: "{{.G_BUILD_DIR}}/deps"
# These should be kept in-sync with its usage in CMakeLists.txt
G_DEPS_CMAKE_SETTINGS_DIR: "{{.G_DEPS_DIR}}/cmake-settings"
G_CMAKE_DEPENDENCY_FILE: "{{.G_DEPS_CMAKE_SETTINGS_DIR}}/all.cmake"
tasks:
clean:
cmds:
- "rm -rf '{{.G_BUILD_DIR}}'"
config-cmake-project:
internal: true
sources:
- "{{.TASKFILE}}"
- "CMakeLists.txt"
- "examples/wolf/quick-start/CMakeLists.txt"
generates:
- "{{.G_SPIDER_CMAKE_CACHE}}"
- "{{.G_SPIDER_COMPILE_COMMANDS_DB}}"
- "{{.G_EXAMPLES_WOLF_CMAKE_CACHE}}"
- "{{.G_EXAMPLES_WOLF_COMPILE_COMMANDS_DB}}"
cmds:
- >-
cmake -S '{{.ROOT_DIR}}'
-DSPIDER_CMAKE_DEPENDENCY_FILE='{{.G_CMAKE_DEPENDENCY_FILE}}'
-B '{{.G_BUILD_SPIDER_DIR}}'
- "cmake -S '{{.ROOT_DIR}}/examples/wolf/quick-start' -B '{{.G_BUILD_EXAMPLES_WOLF_DIR}}'"
init:
internal: true
silent: true
run: "once"
cmds:
- "mkdir -p '{{.G_BUILD_DIR}}'"
- "mkdir -p '{{.G_BUILD_SPIDER_DIR}}'"