|
21 | 21 | repository = "https://github.com/rerun-io/cpp-example-opencv-eigen"
|
22 | 22 | version = "0.1.0"
|
23 | 23 |
|
| 24 | +# The following activation scripts make the tasks portable cross-platform. |
| 25 | +# |
| 26 | +# They define: |
| 27 | +# - CMAKE_GENERATOR |
| 28 | +# - BUILD_FOLDER |
| 29 | +# - EXE_PATH |
| 30 | +# |
| 31 | +# In particular, BUILD_FOLDER will be set to either: |
| 32 | +# - build_source |
| 33 | +# - build_findpackage |
| 34 | +# depending on the feature being used. |
| 35 | +[activation] |
| 36 | +scripts = ["pixi/env.sh"] |
| 37 | + |
| 38 | +[target.win-64.activation] |
| 39 | +scripts = ["pixi/env.bat"] |
| 40 | + |
| 41 | +################################################################################ |
| 42 | +# Common Tasks |
| 43 | +################################################################################ |
24 | 44 |
|
25 | 45 | [tasks]
|
26 |
| -# Note: extra CLI argument after `pixi run TASK` are passed to the task cmd. |
27 |
| -clean = { cmd = "rm -rf build bin CMakeFiles/" } |
28 |
| -print-env = { cmd = "echo $PATH" } |
29 | 46 |
|
30 |
| -[target.win-64.tasks] |
31 |
| -prepare = "cmake -G 'Visual Studio 17 2022' -B build -S . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DRERUN_FIND_PACKAGE:BOOL=OFF" |
32 |
| -build = { cmd = "cmake --build build --config RelWithDebInfo", depends_on = [ |
33 |
| - "prepare", |
34 |
| -] } |
35 |
| -example = { cmd = "build/RelWithDebInfo/rerun_ext_example.exe", depends_on = [ |
36 |
| - "build", |
37 |
| -] } |
| 47 | +print-env = { cmd = "echo $PATH" } |
38 | 48 |
|
39 | 49 | [target.unix.tasks]
|
40 |
| -prepare = "cmake -G 'Ninja' -B build -S . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DRERUN_FIND_PACKAGE:BOOL=OFF" |
41 |
| -build = { cmd = "cmake --build build --config RelWithDebInfo --target all", depends_on = [ |
42 |
| - "prepare", |
43 |
| -] } |
44 |
| -example = { cmd = "build/rerun_ext_example", depends_on = ["build"] } |
| 50 | +# This task only runs propertly Unix systems. |
45 | 51 | format = { cmd = "clang-format -i src/*" }
|
46 | 52 |
|
47 |
| -[feature.rerunfindpackage.target.win-64.tasks] |
48 |
| -prepare = "cmake -G 'Visual Studio 17 2022' -B buildrerunfindpackage -S . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DRERUN_FIND_PACKAGE:BOOL=ON" |
49 |
| -build = { cmd = "cmake --build buildrerunfindpackage --config RelWithDebInfo", depends_on = [ |
50 |
| - "prepare", |
51 |
| -] } |
52 |
| -example = { cmd = "buildrerunfindpackage/RelWithDebInfo/rerun_ext_example.exe", depends_on = [ |
53 |
| - "build", |
54 |
| -] } |
| 53 | +################################################################################ |
| 54 | +# Building Rerun from source via the released bundle. |
| 55 | +################################################################################ |
| 56 | +[feature.source.tasks] |
| 57 | + |
| 58 | +# The default behavior will cause rerun to be build from source |
| 59 | +prepare-source = "cmake -B $BUILD_FOLDER -S . -DCMAKE_BUILD_TYPE=RelWithDebInfo" |
55 | 60 |
|
56 |
| -[feature.rerunfindpackage.target.unix.tasks] |
57 |
| -prepare = "cmake -G 'Ninja' -B buildrerunfindpackage -S . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DRERUN_FIND_PACKAGE:BOOL=ON" |
58 |
| -build = { cmd = "cmake --build buildrerunfindpackage --config RelWithDebInfo --target all", depends_on = [ |
59 |
| - "prepare", |
| 61 | +build-source = { cmd = "cmake --build $BUILD_FOLDER --config RelWithDebInfo", depends_on = [ |
| 62 | + "prepare-source", |
60 | 63 | ] }
|
61 |
| -example = { cmd = "buildrerunfindpackage/rerun_ext_example", depends_on = [ |
62 |
| - "build", |
| 64 | + |
| 65 | +example = { cmd = "$EXE_PATH", depends_on = ["build-source"] } |
| 66 | + |
| 67 | +clean = { cmd = "rm -rf $BUILD_FOLDER bin CMakeFiles/" } |
| 68 | + |
| 69 | +################################################################################ |
| 70 | +# Using Rerun via find_package |
| 71 | +################################################################################ |
| 72 | +[feature.findpackage.tasks] |
| 73 | + |
| 74 | +prepare-findpackage = "cmake -B $BUILD_FOLDER -S . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DRERUN_FIND_PACKAGE:BOOL=ON" |
| 75 | + |
| 76 | +build-findpackage = { cmd = "cmake --build $BUILD_FOLDER --config RelWithDebInfo", depends_on = [ |
| 77 | + "prepare-findpackage", |
63 | 78 | ] }
|
64 |
| -format = { cmd = "clang-format -i src/*" } |
65 | 79 |
|
| 80 | +example-findpackage = { cmd = "$EXE_PATH", depends_on = ["build-findpackage"] } |
| 81 | + |
| 82 | +clean = { cmd = "rm -rf $BUILD_FOLDER bin CMakeFiles/" } |
66 | 83 |
|
| 84 | +################################################################################ |
| 85 | +# Depencencies |
| 86 | +################################################################################ |
67 | 87 | [dependencies]
|
68 | 88 | # Build tools:
|
69 | 89 | clang-tools = ">=15,<16" # clang-format
|
|
84 | 104 | # Build tools:
|
85 | 105 | vs2022_win-64 = "19.37.32822"
|
86 | 106 |
|
87 |
| -[feature.rerunfindpackage.dependencies] |
| 107 | +[feature.findpackage.dependencies] |
88 | 108 | librerun-sdk = "0.17.0.*"
|
89 | 109 |
|
90 | 110 | [environments]
|
91 | 111 | default = { solve-group = "defaultgroup" }
|
92 |
| -rerunfindpackage = { features = [ |
93 |
| - "rerunfindpackage", |
94 |
| -], solve-group = "defaultgroup" } |
| 112 | +source = { features = ["source"], solve-group = "defaultgroup" } |
| 113 | +findpackage = { features = ["findpackage"], solve-group = "defaultgroup" } |
0 commit comments