-
Notifications
You must be signed in to change notification settings - Fork 65
/
pixi.toml
83 lines (69 loc) · 2.3 KB
/
pixi.toml
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
[project]
name = "projectaria_tools"
description = "projectaria_tools is an C++/Python open-source toolkit to interact with Project Aria data"
homepage = "https://github.com/facebookresearch/projectaria_tools"
license = "Apache-2.0"
channels = ["conda-forge"]
platforms = ["linux-64", "osx-arm64", "osx-64", "win-64"]
version = "1.5.2"
[tasks]
#
# Define a set of task to CLEAN, BUILD, TEST and PACKAGE projectaria_tools
#
#
# CLEAN
clean = "rm -rf ./build ./wheels ./projectaria_tools.egg-info/"
#
# C++ - BUILD and TEST
prepare = "cmake -GNinja -B build -S . -DBUILD_UNIT_TEST=ON"
build = "cmake --build build --target all"
test = "cd build; ctest -j"
prepare_and_build = { depends_on = ["prepare", "build"] }
build_and_test = { depends_on = ["prepare_and_build", "test"] }
run_c = { depends_on = ["build_and_test"] }
#
# Python - BUILD and TEST
build_python = "CMAKE_GENERATOR=Ninja python -m pip install ."
test_python = """
export TEST_FOLDER="./data";
python -m unittest core/python/test/corePyBindTest.py;
python -m unittest core/python/test/mpsPyBindTest.py;
python -m unittest core/python/sophus/test/sophusPybindTest.py;"""
run_python = { depends_on = ["build_python", "test_python"]}
#
# Python - PACKAGE
build_python_wheel = "python -m pip wheel . -w wheels"
[target.win-64.tasks]
#
# Deal with windows specifics (prepare and build)
# - Config must be specified for all command lines
#
#
cmake-generator = "cmake --help"
prepare = "cmake -B build -S . -DCMAKE_BUILD_TYPE=Release -DBUILD_UNIT_TEST=ON"
build = "cmake --build build --config Release -- /nologo /verbosity:minimal /maxcpucount"
# --parallel 4 -- /m
test = "cd build; ctest -C Release -j"
build_python = "python -m pip install ."
[build-dependencies]
cmake = "3.28.3"
cxx-compiler = "1.6.0.*"
ninja = "1.11.1"
[dependencies]
# Note: projectaria_tools gather its own dependencies using CMake Fetch, but
# - VRS dependency expects some libraries to be available
# - Unit testing is leveraging installed gtest
# Install UNIT TEST dependencies
gtest = "1.14.0"
# Install VRS dependencies
# - Note that some library are listed as '*' so pixi can pick the last compatible set of libraries versions
boost = "1.84.0"
fmt = "10.2.1"
libjpeg-turbo = "*"
libpng = "*"
lz4 = "*"
xxhash = "*"
zlib = "*"
# Install Python dependencies
python = "3.11.*"
pip = "*"