]> _ Git - alire.git/commit
Build profiles and switches system (#895)
authorFabien Chouteau <Fabien-Chouteau@users.noreply.github.com>
Mon, 13 Dec 2021 17:31:15 +0000 (18:31 +0100)
committerGitHub <noreply@github.com>
Mon, 13 Dec 2021 17:31:15 +0000 (18:31 +0100)
commit28e8ebc497585a60acea4c287f518d260a0e684a
treee4f2767082a56a9f8adaeab88290367a7af40f34
parent1c6846a6218d99b3debc45f6262ebc03f502d136
Build profiles and switches system (#895)

* Build profiles prototype

* Build_profile in manifest

* First version of build_switches support

* Alire.Properties.Build_Switches: migrate code from Alire.Utils

* Alr.Commands.Init: don't generate lockfile and config files

These files are difficult to write "by hand" as the features evolve.
They will be generated as soon as the users builds/update/with the crate.

* testsuite: add tests for the build profile system

* Alr.Commands.Init: change object dir based on build profile

* Rename build profile TOML keys

* Alire.Utils.Switches: remove style switch not available in GNAT 9
29 files changed:
src/alire/alire-crate_configuration.adb
src/alire/alire-crate_configuration.ads
src/alire/alire-properties-build_profile.adb [new file with mode: 0644]
src/alire/alire-properties-build_profile.ads [new file with mode: 0644]
src/alire/alire-properties-build_switches.adb [new file with mode: 0644]
src/alire/alire-properties-build_switches.ads [new file with mode: 0644]
src/alire/alire-properties-configurations.adb
src/alire/alire-properties-configurations.ads
src/alire/alire-properties-from_toml.ads
src/alire/alire-toml_keys.ads
src/alire/alire-utils-gnat_switches.ads [new file with mode: 0644]
src/alire/alire-utils-switches-knowledge.adb [new file with mode: 0644]
src/alire/alire-utils-switches-knowledge.ads [new file with mode: 0644]
src/alire/alire-utils-switches.adb [new file with mode: 0644]
src/alire/alire-utils-switches.ads [new file with mode: 0644]
src/alr/alr-commands-init.adb
testsuite/drivers/alr.py
testsuite/tests/build_profile/custom_profiles/test.py [new file with mode: 0644]
testsuite/tests/build_profile/custom_profiles/test.yaml [new file with mode: 0644]
testsuite/tests/build_profile/custom_switches/test.py [new file with mode: 0644]
testsuite/tests/build_profile/custom_switches/test.yaml [new file with mode: 0644]
testsuite/tests/build_profile/default/test.py [new file with mode: 0644]
testsuite/tests/build_profile/default/test.yaml [new file with mode: 0644]
testsuite/tests/misc/bad-lockfile/test.py
testsuite/tests/publish/missing-manifest/test.py
testsuite/tests/publish/remote-origin-nonstd/test.py
testsuite/tests/publish/remote-origin/test.py
testsuite/tests/with/changes-info/test.py
testsuite/tests/workflows/init-options/test.py