diff --git a/.github/workflows/ci_ubuntu.yml b/.github/workflows/ci_ubuntu.yml index b58af23d28934..3b2e346673fb0 100644 --- a/.github/workflows/ci_ubuntu.yml +++ b/.github/workflows/ci_ubuntu.yml @@ -73,7 +73,7 @@ jobs: /bin/sh -c "cd $GITHUB_WORKSPACE && ./scripts/build.sh" build: - name: ubuntu + name: ubuntu-${{ matrix.build_type }} runs-on: ubuntu-latest strategy: fail-fast: false diff --git a/.github/workflows/ci_windows.yml b/.github/workflows/ci_windows.yml index 3270cec7aa2c8..791fa4c6a1a64 100644 --- a/.github/workflows/ci_windows.yml +++ b/.github/workflows/ci_windows.yml @@ -22,7 +22,7 @@ on: jobs: build: - name: win + name: win-${{ matrix.build_type }} runs-on: windows-latest strategy: fail-fast: false diff --git a/pixi.toml b/pixi.toml index 15ad18caa0c54..6eaf1c3873a0f 100644 --- a/pixi.toml +++ b/pixi.toml @@ -117,76 +117,154 @@ test-all = { cmd = """ cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE -j --target ALL """, depends_on = ["config"] } +ex = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target $EXE \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/$EXE +""", depends_on = [ + "config", +], env = { EXE = "hello_world", BUILD_TYPE = "Release" } } + ex-atlas-puppet = { cmd = """ cmake \ --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ --target atlas_puppet \ --parallel \ - && ./build/bin/atlas_puppet -""", depends_on = ["config"] } + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/atlas_puppet +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } ex-atlas-simbicon = { cmd = """ cmake \ --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ --target atlas_simbicon \ --parallel \ - && ./build/bin/atlas_simbicon -""", depends_on = ["config"] } + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/atlas_simbicon +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } -ex-hello-world = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target hello_world --parallel && ./build/bin/hello_world", depends_on = [ - "config", -] } +ex-hello-world = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target hello_world \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/hello_world +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } -bm-boxes = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target BM_INTEGRATION_boxes --parallel && ./build/bin/BM_INTEGRATION_boxes", depends_on = [ - "config", -] } +bm = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target BM_INTEGRATION_$EXE \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/BM_INTEGRATION_$EXE +""", depends_on = ["config"], env = { EXE = "empty", BUILD_TYPE = "Release" } } -bm-empty = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target BM_INTEGRATION_empty --parallel && ./build/bin/BM_INTEGRATION_empty", depends_on = [ - "config", -] } +bm-boxes = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target BM_INTEGRATION_boxes \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/BM_INTEGRATION_boxes +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } -bm-kinematics = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target BM_INTEGRATION_kinematics --parallel && ./build/bin/BM_INTEGRATION_kinematics", depends_on = [ - "config", -] } +bm-empty = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target BM_INTEGRATION_empty \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/BM_INTEGRATION_empty +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } -tu-biped = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target tutorial_biped --parallel && ./build/bin/tutorial_biped", depends_on = [ +bm-kinematics = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target BM_INTEGRATION_kinematics \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/BM_INTEGRATION_kinematics +""", depends_on = [ "config", -] } +], env = { BUILD_TYPE = "Release" } } -tu-biped-fi = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target tutorial_biped_finished --parallel && ./build/bin/tutorial_biped_finished", depends_on = [ - "config", -] } +tu-biped = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target tutorial_biped \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/tutorial_biped +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } -tu-collisions = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target tutorial_collisions --parallel && ./build/bin/tutorial_collisions", depends_on = [ +tu-biped-fi = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target tutorial_biped_finished \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/tutorial_biped_finished +""", depends_on = [ "config", -] } +], env = { BUILD_TYPE = "Release" } } -tu-collisions-fi = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target tutorial_collisions_finished --parallel && ./build/bin/tutorial_collisions_finished", depends_on = [ - "config", -] } +tu-collisions = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target tutorial_collisions \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/tutorial_collisions +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } -tu-dominoes = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target tutorial_dominoes --parallel && ./build/bin/tutorial_dominoes", depends_on = [ +tu-collisions-fi = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target tutorial_collisions_finished \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/tutorial_collisions_finished +""", depends_on = [ "config", -] } +], env = { BUILD_TYPE = "Release" } } -tu-dominoes-fi = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target tutorial_dominoes_finished --parallel && ./build/bin/tutorial_dominoes_finished", depends_on = [ - "config", -] } +tu-dominoes = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target tutorial_dominoes \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/tutorial_dominoes +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } -tu-multi-pendulum = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target tutorial_multi_pendulum --parallel && ./build/bin/tutorial_multi_pendulum", depends_on = [ +tu-dominoes-fi = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target tutorial_dominoes_finished \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/tutorial_dominoes_finished +""", depends_on = [ "config", -] } +], env = { BUILD_TYPE = "Release" } } -tu-multi-pendulum-fi = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target tutorial_multi_pendulum_finished --parallel && ./build/bin/tutorial_multi_pendulum_finished", depends_on = [ +tu-multi-pendulum = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target tutorial_multi-pendulum \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/tutorial_multi-pendulum +""", depends_on = [ "config", -] } +], env = { BUILD_TYPE = "Release" } } -install = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE --target install --parallel", depends_on = [ - "build", -] } +tu-multi-pendulum-fi = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target tutorial_multi-pendulum_finished \ + --parallel \ + && ./build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE/bin/tutorial_multi-pendulum_finished +""", depends_on = [ + "config", +], env = { BUILD_TYPE = "Release" } } -create-deps-dir = { cmd = "mkdir -p .deps" } -remove-deps-dir = { cmd = "rm -rf .deps" } +install = { cmd = """ + cmake \ + --build build/$PIXI_ENVIRONMENT_NAME/cpp/$BUILD_TYPE \ + --target install \ + --parallel \ +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } ################################################################################ # linux-64 @@ -243,25 +321,25 @@ config = { cmd = """ -DDART_USE_SYSTEM_IMGUI=ON """, env = { DART_VERBOSE = "OFF" } } -lint-py = { cmd = "black . --exclude '\\..*' && isort . --skip-glob '.*'", depends_on = [ - "config", -] } +lint-py = { cmd = """ + black . --exclude '\\..*' && isort . --skip-glob '.*' +""", depends_on = ["config"] } lint = { depends_on = ["lint-py"] } -check-lint-py = { cmd = "black . --check --exclude '\\..*' && isort . --check --skip-glob '.*'", depends_on = [ - "config", -] } +check-lint-py = { cmd = """ + black . --check --exclude '\\..*' && isort . --check --skip-glob '.*' +""", depends_on = ["config"] } check-lint = { depends_on = ["check-lint-py"] } build = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE -j", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } build-tests = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE -j --target tests", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } build-dartpy = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp -j --target dartpy", depends_on = [ "config", @@ -272,61 +350,61 @@ test = { cmd = """ --test-dir build/$PIXI_ENVIRONMENT_NAME/cpp \ --build-config $BUILD_TYPE \ --output-on-failure - """, depends_on = ["build-tests"], env = { BUILD_TYPE = "OFF" } } +""", depends_on = ["build-tests"], env = { BUILD_TYPE = "Release" } } test-dartpy = { cmd = """ - cmake \ +cmake \ --build build/$PIXI_ENVIRONMENT_NAME/cpp \ - --config $BUILD_TYPE \ - -j \ +--config $BUILD_TYPE \ +-j \ --target pytest - """, depends_on = ["config"], env = { BUILD_TYPE = "OFF" } } + """, depends_on = ["config"], env = { BUILD_TYPE = "Release" } } test-all = { cmd = """ - cmake \ +cmake \ --build build/$PIXI_ENVIRONMENT_NAME/cpp \ - --config $BUILD_TYPE \ - -j \ +--config $BUILD_TYPE \ +-j \ --target ALL -""", depends_on = ["config"], env = { BUILD_TYPE = "OFF" } } +""", depends_on = ["config"], env = { BUILD_TYPE = "Release" } } tu-biped = { cmd = """ - cmake \ +cmake \ --build build/$PIXI_ENVIRONMENT_NAME/cpp \ - --config $BUILD_TYPE \ - --target tutorial_biped \ - --parallel \ +--config $BUILD_TYPE \ +--target tutorial_biped \ +--parallel \ && build/$BUILD_TYPE/tutorial_biped.exe - """, depends_on = ["config"], env = { BUILD_TYPE = "OFF" } } + """, depends_on = ["config"], env = { BUILD_TYPE = "Release" } } tu-biped-fi = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE --target tutorial_biped_finished --parallel && build/$BUILD_TYPE/tutorial_biped_finished.exe", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } tu-collisions = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE --target tutorial_collisions --parallel && build/$BUILD_TYPE/tutorial_collisions.exe", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } tu-collisions-fi = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE --target tutorial_collisions_finished --parallel && build/$BUILD_TYPE/tutorial_collisions_finished.exe", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } tu-dominoes = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE --target tutorial_dominoes --parallel && build/$BUILD_TYPE/tutorial_dominoes.exe", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } tu-dominoes-fi = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE --target tutorial_dominoes_finished --parallel && build/$BUILD_TYPE/tutorial_dominoes_finished.exe", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } tu-multi-pendulum = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE --target tutorial_multi_pendulum --parallel && build/$BUILD_TYPE/tutorial_multi_pendulum.exe", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } tu-multi-pendulum-fi = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE --target tutorial_multi_pendulum_finished --parallel && build/$BUILD_TYPE/tutorial_multi_pendulum_finished.exe", depends_on = [ "config", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } } install = { cmd = "cmake --build build/$PIXI_ENVIRONMENT_NAME/cpp --config $BUILD_TYPE -j --target install", depends_on = [ "build", -], env = { BUILD_TYPE = "OFF" } } +], env = { BUILD_TYPE = "Release" } }