Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 889ce5b21e | |||
| 26d9147abf | |||
| ffd49df662 | |||
| 148248846f | |||
| b10d18768d | |||
| 909b47b459 | |||
| c260660ae2 | |||
| 75264a9fa5 | |||
| 6b53b29257 | |||
| ca79380e4a | |||
| 4d4f222046 | |||
| b2ac55bfb7 | |||
| 4069382a51 | |||
| ddc3120ec1 | |||
| 7b8b8c5be0 | |||
| 03efd72937 | |||
| bbb3c93637 | |||
| 1bb9541ca1 | |||
| e98f64fb48 | |||
| e034baf38b |
@@ -0,0 +1,27 @@
|
||||
name = "aaa"
|
||||
version = "0.2.3"
|
||||
description = "Alex's Ada Assortment (of miscellaneous utilities)"
|
||||
|
||||
long-description = """
|
||||
Alex's Ada Assortment of Utilities
|
||||
|
||||
- Text formatting (paragraphs, tables).
|
||||
- Indefinite containers.
|
||||
- Enumeration validity/conversions of string images.
|
||||
- On-demand stack backtraces.
|
||||
- String vectors.
|
||||
- Simple subprocess spawning.
|
||||
- Write-through minimal cache for objects stored in files
|
||||
"""
|
||||
|
||||
authors = ["Alejandro R. Mosteo"]
|
||||
licenses = "LGPL-3.0-only"
|
||||
maintainers = ["alejandro@mosteo.com"]
|
||||
maintainers-logins = ["mosteo"]
|
||||
tags = ["miscellanea", "utility"]
|
||||
website = "https://github.com/mosteo/aaa"
|
||||
|
||||
[origin]
|
||||
commit = "12201a008c07e6ef0e4f21d327c941bed97d7166"
|
||||
url = "git+https://github.com/mosteo/aaa.git"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
description = "TOML parser for Ada "
|
||||
description = "TOML parser for Ada"
|
||||
name = "ada_toml"
|
||||
version = "0.1.0"
|
||||
authors = ["AdaCore", "Pierre-Marie de Rodat <pmderodat@kawie.fr>"]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
description = "TOML parser for Ada "
|
||||
description = "TOML parser for Ada"
|
||||
name = "ada_toml"
|
||||
version = "0.2.0"
|
||||
authors = ["AdaCore", "Pierre-Marie de Rodat <pmderodat@kawie.fr>"]
|
||||
|
||||
@@ -0,0 +1,110 @@
|
||||
description = "TOML parser for Ada"
|
||||
name = "ada_toml"
|
||||
version = "0.3.0"
|
||||
authors = ["AdaCore", "Pierre-Marie de Rodat <pmderodat@kawie.fr>"]
|
||||
licenses = "BSD-3-Clause"
|
||||
maintainers = ["pmderodat@kawie.fr"]
|
||||
maintainers-logins = ["pmderodat"]
|
||||
project-files = ["ada_toml.gpr"]
|
||||
long-description = """
|
||||
ada-toml: TOML parser for Ada
|
||||
=============================
|
||||
|
||||
`ada-toml` is a pure Ada library for parsing and creating
|
||||
[TOML](https://github.com/toml-lang/toml#toml) documents. It conforms to the
|
||||
[version 1.0.0](https://toml.io/en/v1.0.0) of the format standard.
|
||||
|
||||
|
||||
Quick tutorial
|
||||
--------------
|
||||
|
||||
All basic types and subprograms are in the `TOML` package. All "nodes" in a
|
||||
TOML documents are materialized using the `TOML.TOML_Value` type. Since TOML
|
||||
values make up a tree, this type has reference semantics. This means that
|
||||
modifying a TOML node does not modify the corresponding `TOML_Value` value
|
||||
itself, but rather the TOML value that is referenced.
|
||||
|
||||
Parsing a TOML file is as easy as using the `TOML.File_IO.Load_File` function:
|
||||
|
||||
```ada
|
||||
declare
|
||||
Result : constant TOML.Read_Result :=
|
||||
TOML.File_IO.Load_File ("config.toml");
|
||||
begin
|
||||
if Result.Success then
|
||||
Ada.Text_IO.Put_Line ("config.toml loaded with success!");
|
||||
else
|
||||
Ada.Text_IO.Put_Line ("error while loading config.toml:");
|
||||
Ada.Text_IO.Put_Line
|
||||
(Ada.Strings.Unbounded.To_String (Result.Message));
|
||||
end if;
|
||||
end;
|
||||
```
|
||||
|
||||
Each TOML value has kind, defining which data it contains (a boolean, an
|
||||
integer, a string, a table, ...). To each kind, one or several primitives are
|
||||
associated to let one process the underlying data:
|
||||
|
||||
```ada
|
||||
case Result.Kind is
|
||||
when TOML.TOML_Boolean =>
|
||||
Ada.Text_IO.Put_Line ("Boolean: " & Result.As_Boolean'Image);
|
||||
|
||||
when TOML.TOML_Integer =>
|
||||
Ada.Text_IO.Put_Line ("Boolean: " & Result.As_Integer'Image);
|
||||
|
||||
when TOML.TOML_String =>
|
||||
Ada.Text_IO.Put_Line ("Boolean: " & Result.As_String);
|
||||
|
||||
when TOML.TOML_Array =>
|
||||
Ada.Text_IO.Put_Line ("Array of " & Result.Length & " elements");
|
||||
|
||||
when others =>
|
||||
null;
|
||||
end case;
|
||||
```
|
||||
|
||||
There are also primitives to build TOML values:
|
||||
|
||||
```ada
|
||||
declare
|
||||
Bool : constant TOML.TOML_Value := TOML.Create_Boolean (False);
|
||||
Int : constant TOML.TOML_Value := TOML.Create_Integer (10);
|
||||
Str : constant TOML.TOML_Value := TOML.Create_String ("Hello, world");
|
||||
|
||||
Table : constant TOML.TOML_Value := TOML.Create_Table;
|
||||
begin
|
||||
Table.Set ("bool_field", Bool);
|
||||
Table.Set ("int_field", Int);
|
||||
Table.Set ("str_field", Str);
|
||||
end;
|
||||
```
|
||||
|
||||
And finally one can turn a tree of TOML nodes back in text form:
|
||||
|
||||
```ada
|
||||
Ada.Text_IO.Put_Line ("TOML document:");
|
||||
Ada.Text_IO.Put_Line (Table.Dump_As_String);
|
||||
```
|
||||
|
||||
|
||||
Contributing
|
||||
------------
|
||||
|
||||
The development of `ada-toml` happens on
|
||||
[GitHub](https://github.com/pmderodat/ada-toml). Everyone is welcome to
|
||||
contribute to this project: please read our [contribution
|
||||
rules](https://github.com/pmderodat/ada-toml/tree/master/CONTRIBUTING.rst) if
|
||||
you consider doing so.
|
||||
"""
|
||||
|
||||
[gpr-externals]
|
||||
ADA_TOML_BUILD_MODE = ["dev", "prod"]
|
||||
LIBRARY_TYPE = ["static", "relocatable", "static-pic"]
|
||||
|
||||
[gpr-set-externals]
|
||||
ADA_TOML_BUILD_MODE = "prod"
|
||||
|
||||
[origin]
|
||||
url = "https://github.com/pmderodat/ada-toml/archive/v0.3.tar.gz"
|
||||
hashes = ["sha512:862d230bf28c393243b01425b259a2fd5d1cf33d3da521eea5f5533691efb46cd3fa335941bcd768b5da635896737b5ee51cbd593d84df58785db6d4c836afd2"]
|
||||
@@ -0,0 +1,18 @@
|
||||
name = "adabots"
|
||||
description = "Learn Ada by programming Minecraft robots"
|
||||
version = "1.0.0"
|
||||
|
||||
authors = ["Tama McGlinn"]
|
||||
maintainers = ["Tama McGlinn <t.mcglinn@gmail.com>"]
|
||||
maintainers-logins = ["TamaMcGlinn"]
|
||||
licenses = "MIT"
|
||||
project-files = ["adabots.gpr"]
|
||||
tags = ["learn", "ada", "minecraft", "computercraft", "robots", "teach", "children"]
|
||||
|
||||
[[depends-on]] # This line was added by `alr with`
|
||||
aws = "^21.0.0" # This line was added by `alr with`
|
||||
|
||||
[origin]
|
||||
commit = "159c2547f3a059d83a183ca70b75fee572f7fbaf"
|
||||
url = "git+https://github.com/TamaMcGlinn/AdaBots.git"
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
name = "adabots"
|
||||
description = "Learn Ada by programming Minecraft robots"
|
||||
version = "1.0.1"
|
||||
|
||||
authors = ["Tama McGlinn"]
|
||||
maintainers = ["Tama McGlinn <t.mcglinn@gmail.com>"]
|
||||
maintainers-logins = ["TamaMcGlinn"]
|
||||
|
||||
licenses = "MIT"
|
||||
project-files = ["adabots.gpr"]
|
||||
tags = ["learn", "ada", "minecraft", "computercraft", "robots", "teach", "children"]
|
||||
|
||||
[[depends-on]] # This line was added by `alr with`
|
||||
aws = "^21.0.0" # This line was added by `alr with`
|
||||
|
||||
[origin]
|
||||
commit = "a31a416c1f09e59ab1d1ab0b132aca225c66be48"
|
||||
url = "git+https://github.com/TamaMcGlinn/AdaBots.git"
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
description = "Basic Ada packages for audio applications"
|
||||
long-description = """
|
||||
# Audio Base
|
||||
This crate contains basic Ada packages for audio applications.
|
||||
"""
|
||||
name = "audio_base"
|
||||
version = "1.0.0"
|
||||
website="https://github.com/Ada-Audio/audio_base"
|
||||
licenses = "MIT"
|
||||
authors=["Gustavo A. Hoffmann"]
|
||||
maintainers = ["gusthoff@gusthoff.com"]
|
||||
maintainers-logins = ["gusthoff"]
|
||||
project-files = ["audio_base.gpr"]
|
||||
tags = ["audio", "riff"]
|
||||
|
||||
[origin]
|
||||
commit = "8646d0adc2be09c57dd16952a329c4342e5ddb3b"
|
||||
url = "git+https://github.com/Ada-Audio/audio_base.git"
|
||||
@@ -0,0 +1,31 @@
|
||||
name = "clic"
|
||||
description = "Command Line Interface Components"
|
||||
version = "0.1.0"
|
||||
|
||||
authors = ["Alejandro R. Mosteo", "Fabien Chouteau"]
|
||||
maintainers = ["alejandro@mosteo.com", "Fabien Chouteau <fabien.chouteau@gmail.com>"]
|
||||
maintainers-logins = ["mosteo", "Fabien-Chouteau"]
|
||||
licenses = "MIT"
|
||||
tags = ["cli", "command-line", "user-input", "tty"]
|
||||
website = "https://github.com/alire-project/clic"
|
||||
long-description = """
|
||||
Command Line Interface Components:
|
||||
- "git like" subcommand handling
|
||||
- TTY color and formatting
|
||||
- User input queries
|
||||
"""
|
||||
|
||||
# TODO: uncomment for alr 1.1.0
|
||||
# [configuration]
|
||||
# disabled = true # CLIC is an Alire dependency using git submodule, so we can't
|
||||
# # use the crate configuration here.
|
||||
|
||||
[[depends-on]]
|
||||
aaa = "~0.2.3"
|
||||
simple_logging = "^1.2.0"
|
||||
ansiada = "~0.1.0"
|
||||
|
||||
[origin]
|
||||
commit = "ac734659560ffa98346c4ddc97d8966471d70374"
|
||||
url = "git+https://github.com/alire-project/clic.git"
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
name = "clic"
|
||||
description = "Command Line Interface Components"
|
||||
version = "0.1.1"
|
||||
|
||||
authors = ["Alejandro R. Mosteo", "Fabien Chouteau"]
|
||||
maintainers = ["alejandro@mosteo.com", "Fabien Chouteau <fabien.chouteau@gmail.com>"]
|
||||
maintainers-logins = ["mosteo", "Fabien-Chouteau"]
|
||||
licenses = "MIT"
|
||||
tags = ["cli", "command-line", "user-input", "tty"]
|
||||
website = "https://github.com/alire-project/clic"
|
||||
long-description = """
|
||||
Command Line Interface Components:
|
||||
- "git like" subcommand handling
|
||||
- TTY color and formatting
|
||||
- User input queries
|
||||
"""
|
||||
|
||||
# TODO: uncomment for alr 1.1.0
|
||||
# [configuration]
|
||||
# disabled = true # CLIC is an Alire dependency using git submodule, so we can't
|
||||
# # use the crate configuration here.
|
||||
|
||||
[[depends-on]]
|
||||
aaa = "~0.2.3"
|
||||
simple_logging = "^1.2.0"
|
||||
ansiada = "~0.1.0"
|
||||
|
||||
[origin]
|
||||
commit = "32a93777a3e1796534e07c59966075a3d6f4f503"
|
||||
url = "git+https://github.com/alire-project/clic.git"
|
||||
@@ -0,0 +1,74 @@
|
||||
name = "dir_iterators"
|
||||
description = "Ways of moving around directory trees"
|
||||
version = "0.0.3"
|
||||
website = "https://github.com/pyjarrett/dir_iterators"
|
||||
authors = ["Paul Jarrett"]
|
||||
licenses = "Apache-2.0"
|
||||
|
||||
maintainers = ["Paul Jarrett <jarrett.paul.young@gmail.com>"]
|
||||
maintainers-logins = ["pyjarrett"]
|
||||
tags = ["dir", "files", "walk"]
|
||||
|
||||
long-description = '''
|
||||
[](https://github.com/pyjarrett/dir_iterators/actions)
|
||||
[](https://alire.ada.dev/crates/dir_iterators.html)
|
||||
|
||||
## Iterator-based directory walks
|
||||
|
||||
Provides convenient ways to walk directories based on Ada 2012 user-defined
|
||||
iterators.
|
||||
|
||||
Inspired by [walkdir for Rust](https://github.com/BurntSushi/walkdir).
|
||||
|
||||
|
||||
## Walking a directory tree recursively
|
||||
|
||||
```ada
|
||||
with Ada.Directories;
|
||||
with Ada.Text_IO;
|
||||
with Dir_Iterators.Recursive;
|
||||
|
||||
-- ...
|
||||
|
||||
Dir_Walk : constant Dir_Iterators.Recursive.Recursive_Dir_Walk
|
||||
:= Dir_Iterators.Recursive.Walk (Dir);
|
||||
|
||||
for Dir_Entry of Dir_Walk loop
|
||||
Ada.Text_IO.Put_Line(Ada.Directories.Full_Name(Dir_Entry));
|
||||
end loop;
|
||||
```
|
||||
|
||||
## Walking a directory tree recursively with a filter
|
||||
|
||||
Use a filter to prune directories and files from the walk.
|
||||
|
||||
```ada
|
||||
with Ada.Directories;
|
||||
with Ada.Text_IO;
|
||||
with Dir_Iterators.Recursive;
|
||||
|
||||
package AD renames Ada.Directories;
|
||||
|
||||
-- ...
|
||||
|
||||
procedure Foo (Include_Dot_Files : Boolean; Dir_Root : String) is
|
||||
function Filter (E : Ada.Directories.Directory_Entry_Type) return Boolean is
|
||||
Name : constant String := Ada.Directories.Simple_Name(E);
|
||||
begin
|
||||
return Include_Dot_Files
|
||||
or else (not (Name'Length > 1 and then Name(1) = '.'));
|
||||
end Filter;
|
||||
|
||||
Walk : constant Dir_Iterators.Recursive.Recursive_Dir_Walk :=
|
||||
Dir_Iterators.Recursive.Walk (Dir_Root, Filter'Access);
|
||||
begin
|
||||
for Dir_Entry of Walk loop
|
||||
Ada.Text_IO.Put_Line(Ada.Directories.Full_Name(Dir_Entry));
|
||||
end loop;
|
||||
end Foo;
|
||||
```
|
||||
'''
|
||||
[origin]
|
||||
commit = "9a345982c4680cea101a4295da1ead5610526a3d"
|
||||
url = "git+https://github.com/pyjarrett/dir_iterators.git"
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
name = "felix"
|
||||
description = "X/Open Native Language System (NLS) for Ada"
|
||||
version = "0.2.0"
|
||||
|
||||
authors = ["Lev Kujawski"]
|
||||
maintainers = ["Lev Kujawski <int21h@mailbox.org>"]
|
||||
maintainers-logins = ["lkujaw"]
|
||||
licenses = "MIT-0"
|
||||
website = "https://github.com/lkujaw/felix"
|
||||
tags = ["ada1995", "i18n", "nls",
|
||||
"localization", "localisation", "l10n"]
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on.'case(os)'.windows]
|
||||
msys2_runtime = ">=3.0"
|
||||
|
||||
[gpr-set-externals.'case(os)']
|
||||
'windows' = { SYSTEM_API = "WIN32" }
|
||||
'...' = { SYSTEM_API = "POSIX" }
|
||||
|
||||
[environment.'case(distribution)']
|
||||
'msys2' = { C_INCLUDE_PATH.append = "${DISTRIB_ROOT}/usr/include/" }
|
||||
|
||||
[origin]
|
||||
commit = "7409bde64df3467f6d8b6aceb96eba2aac920014"
|
||||
url = "git+https://github.com/lkujaw/felix.git"
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
description = "GNAT is a compiler for the Ada programming language"
|
||||
name = "gnat"
|
||||
|
||||
maintainers = ["alejandro@mosteo.com"]
|
||||
maintainers-logins = ["mosteo"]
|
||||
|
||||
[[external]]
|
||||
kind = "version-output"
|
||||
version-regexp = "^GNAT ([\\d\\.]+).*|^GNAT Community ([\\d]{4}).*"
|
||||
version-command = ["gnat", "--version"]
|
||||
@@ -1,27 +0,0 @@
|
||||
name = "gnat_arm_elf"
|
||||
version = "10.3-1"
|
||||
provides = ["gnat=10.3-1"]
|
||||
description = "The GNAT Ada compiler - ARM cross-compiler"
|
||||
maintainers = ["chouteau@adacore.com"]
|
||||
maintainers-logins = ["Fabien-Chouteau"]
|
||||
licenses = "GPL-3.0-or-later AND GPL-3.0-or-later WITH GCC-exception-3.1"
|
||||
|
||||
auto-gpr-with = false
|
||||
|
||||
[configuration]
|
||||
disabled = true
|
||||
|
||||
[environment]
|
||||
PATH.prepend = "${CRATE_ROOT}/bin"
|
||||
|
||||
[origin."case(os)".linux."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-arm-elf-linux64-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:8f71f65acc2eb45adc335318f7c9b33bfe77121fb17b404e252da969de6621a2"]
|
||||
|
||||
[origin."case(os)".macos."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-arm-elf-darwin-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:2e090fa57235829873f8b3154a80ed890dd11c3d7c7f9a6b1cbb9921cce674f2"]
|
||||
|
||||
[origin."case(os)".windows."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-arm-elf-windows64-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:7562c6f8beb9732fad32be692abf93e9aa54d39837f8232edeb593ba2cfc29fe"]
|
||||
@@ -1,17 +0,0 @@
|
||||
description = "GNAT is a compiler for the Ada programming language"
|
||||
name = "gnat_external"
|
||||
|
||||
maintainers = ["alejandro@mosteo.com"]
|
||||
maintainers-logins = ["mosteo"]
|
||||
|
||||
[[external]]
|
||||
kind = "version-output"
|
||||
version-regexp = "^GNAT ([\\d\\.]+).*|^GNAT Community ([\\d]{4}).*"
|
||||
version-command = ["gnat", "--version"]
|
||||
provides = "gnat"
|
||||
|
||||
# We do not want to have system external definitions because in typical systems
|
||||
# like Debian/Ubuntu only one version at a time can be installed. Hence using
|
||||
# different versions in different crates/configurations would imply messing the
|
||||
# users' system. Let them manually configure the compiler they want when they
|
||||
# do not want one of the pre-packaged Alire versions.
|
||||
@@ -1,28 +0,0 @@
|
||||
name = "gnat_native"
|
||||
version = "10.3-1"
|
||||
description = "The GNAT Ada compiler - Native"
|
||||
maintainers = ["chouteau@adacore.com"]
|
||||
maintainers-logins = ["Fabien-Chouteau"]
|
||||
licenses = "GPL-3.0-or-later AND GPL-3.0-or-later WITH GCC-exception-3.1"
|
||||
|
||||
auto-gpr-with = false
|
||||
|
||||
provides = ["gnat=10.3-1"]
|
||||
|
||||
[configuration]
|
||||
disabled = true
|
||||
|
||||
[environment]
|
||||
PATH.prepend = "${CRATE_ROOT}/bin"
|
||||
|
||||
[origin."case(os)".windows."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-x86_64-windows64-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:6d85b367c642195308440f5b8bdc10b529e2014d58c4ada06e9c8a1f86bf5342"]
|
||||
|
||||
[origin."case(os)".macos."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-x86_64-darwin-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:20b3092f830adda081737e2d66322da8d4ad2bb9f5aa985bd18312d04fc61458"]
|
||||
|
||||
[origin."case(os)".linux."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-x86_64-linux-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:8b7c5dcd858ba01bbb66053bcc2899a7015ef426b0f90d47b5b142b90886a6a2"]
|
||||
@@ -1,27 +0,0 @@
|
||||
name = "gnat_riscv64_elf"
|
||||
version = "10.3-1"
|
||||
provides = ["gnat=10.3-1"]
|
||||
description = "The GNAT Ada compiler - RISC-V cross-compiler"
|
||||
maintainers = ["chouteau@adacore.com"]
|
||||
maintainers-logins = ["Fabien-Chouteau"]
|
||||
licenses = "GPL-3.0-or-later AND GPL-3.0-or-later WITH GCC-exception-3.1"
|
||||
|
||||
auto-gpr-with = false
|
||||
|
||||
[configuration]
|
||||
disabled = true
|
||||
|
||||
[environment]
|
||||
PATH.prepend = "${CRATE_ROOT}/bin"
|
||||
|
||||
[origin."case(os)".linux."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-riscv64-elf-linux64-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:209ee8df59c3f84412f9cb5121a2df4db45daedce47fbd19f7318461b1a4c00a"]
|
||||
|
||||
[origin."case(os)".macos."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-riscv64-elf-darwin-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:a64d12884ab5a6892e0263ed136dd73f1917fc21a80c127b9495059dd3c1c70d"]
|
||||
|
||||
[origin."case(os)".windows."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-10.3.0-1/gnat-riscv64-elf-windows64-10.3.0-1.tar.gz"
|
||||
hashes = ["sha256:f20c48b6097529361ab540fa17728292dc304749745e0222e6f17eb710337a22"]
|
||||
@@ -1,23 +0,0 @@
|
||||
name = "gnatcov"
|
||||
version = "21.0-1"
|
||||
|
||||
description = "The GNAT Ada compiler - ARM cross-compiler"
|
||||
maintainers = ["chouteau@adacore.com"]
|
||||
maintainers-logins = ["Fabien-Chouteau"]
|
||||
|
||||
auto-gpr-with = false
|
||||
|
||||
[environment]
|
||||
PATH.prepend = "${CRATE_ROOT}/bin"
|
||||
|
||||
[origin."case(os)".linux."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnatcov-21.0-1/gnatcov-x86_64-linux-21.0-1.tar.gz"
|
||||
hashes = ["sha256:a1f859a747df7d6451776c9d32a51ba9e47f7fabeeb9749511cdd69fbe28ebef"]
|
||||
|
||||
[origin."case(os)".macos."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnatcov-21.0-1/gnatcov-x86_64-darwin-21.0-1.tar.gz"
|
||||
hashes = ["sha256:9aadf309133481d72bba5512b63b16d360a04ae960c2047484b71d47c39e3d2a"]
|
||||
|
||||
[origin."case(os)".windows."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnatcov-21.0-1/gnatcov-x86_64-windows64-21.0-1.tar.gz"
|
||||
hashes = ["sha256:8b38e414fde33549c177fe7e263e3a8a7276c4721a9138597a5d341296d41768"]
|
||||
@@ -1,22 +0,0 @@
|
||||
name = "gprbuild"
|
||||
version = "21.0.0-1"
|
||||
description = "The GPRBuild Ada/multilanguage build tool"
|
||||
maintainers = ["chouteau@adacore.com"]
|
||||
maintainers-logins = ["Fabien-Chouteau"]
|
||||
|
||||
auto-gpr-with = false
|
||||
|
||||
[environment]
|
||||
PATH.prepend = "${CRATE_ROOT}/bin"
|
||||
|
||||
[origin."case(os)".linux."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gprbuild-21.0.0-1/gprbuild-x86_64-linux-21.0.0-1.tar.gz"
|
||||
hashes = ["sha256:349f6f95165901e9f5099e2046e62fdb2290745a6f984e15e1759f456362d646"]
|
||||
|
||||
[origin."case(os)".macos."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gprbuild-21.0.0-1/gprbuild-x86_64-darwin-21.0.0-1.tar.gz"
|
||||
hashes = ["sha256:0193f1acb608045539f5568e22395007892cb2a44c89fb9eb170293621c66309"]
|
||||
|
||||
[origin."case(os)".windows."case(word-size)".bits-64]
|
||||
url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gprbuild-21.0.0-1/gprbuild-x86_64-windows64-21.0.0-1.tar.gz"
|
||||
hashes = ["sha256:c75588476b295107dddcd302b44e9eef86feebcb0c5168518335da6122264c8f"]
|
||||
@@ -1,14 +0,0 @@
|
||||
description = "The GPRBuild Ada/multilanguage build tool"
|
||||
name = "gprbuild"
|
||||
|
||||
maintainers = ["alejandro@mosteo.com"]
|
||||
maintainers-logins = ["mosteo"]
|
||||
|
||||
[[external]]
|
||||
kind = "version-output"
|
||||
version-regexp = "^GPRBUILD ([\\d\\.-]+).*|^GPRBUILD Community ([\\d\\.-]+).*"
|
||||
version-command = ["gprbuild", "--version"]
|
||||
|
||||
[[external]]
|
||||
kind = "system"
|
||||
origin = ["gprbuild"]
|
||||
+1
-1
@@ -1 +1 @@
|
||||
version = "1.1"
|
||||
version = "1.0"
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
description = "A simple library for communicating with USB and Bluetooth HID devices"
|
||||
name = "libhidapi"
|
||||
licenses = "BSD-3-Clause OR GPL-3.0-only OR custom-hidapi"
|
||||
|
||||
maintainers = ["Philip Munts <phil@munts.net>"]
|
||||
maintainers-logins = ["pmunts"]
|
||||
|
||||
[[external]]
|
||||
kind = "system"
|
||||
[external.origin."case(distribution)"]
|
||||
"debian|ubuntu" = ["libhidapi-dev"]
|
||||
arch = ["hidapi"]
|
||||
@@ -0,0 +1,26 @@
|
||||
name = "libsimpleio"
|
||||
description = "Linux Simple I/O Library bindings for GNAT Ada"
|
||||
version = "1.19882.1"
|
||||
licenses = "BSD-1-Clause"
|
||||
website = "https://github.com/pmunts/libsimpleio"
|
||||
|
||||
authors = ["Philip Munts"]
|
||||
maintainers = ["Philip Munts <phil@munts.net>"]
|
||||
maintainers-logins = ["pmunts"]
|
||||
|
||||
project-files = ["libsimpleio.gpr", "programs.gpr"]
|
||||
|
||||
tags = ["embedded", "linux", "libsimpleio", "remoteio", "beaglebone",
|
||||
"pocketbeagle", "raspberrypi", "adc", "dac", "gpio", "hid", "i2c", "motor",
|
||||
"pwm", "sensor", "serial", "servo", "spi", "stepper", "watchdog"]
|
||||
|
||||
[available."case(os)"]
|
||||
'linux' = true
|
||||
"..." = false
|
||||
|
||||
[origin]
|
||||
hashes = [
|
||||
"sha512:eb0dd86e69e4a5c583cce74bbbf5fbe4f8e45d545c226e56ba082a05a8941d6adbad7b38364d84a059feed701550bc851f8cc360a29b460a8df251bee99479d0",
|
||||
]
|
||||
url = "http://repo.munts.com/alire/libsimpleio-1.19882.1.tbz2"
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
description = "A cross-platform library to access USB devices"
|
||||
name = "libusb"
|
||||
licenses = "LGPL-2.1-or-later"
|
||||
|
||||
maintainers = ["Philip Munts <phil@munts.net>"]
|
||||
maintainers-logins = ["pmunts"]
|
||||
|
||||
[[external]]
|
||||
kind = "system"
|
||||
[external.origin."case(distribution)"]
|
||||
"debian|ubuntu" = ["libusb-1.0-0-dev"]
|
||||
arch = ["libusb"]
|
||||
@@ -7,7 +7,7 @@ licenses = "BSD-3-Clause"
|
||||
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Maxim Reznik <reznikmm@gmail.com>"]
|
||||
maintainers-logins = ["godunko", "reznikmm"]
|
||||
project-files = ["build_matreshka_sql.gpr"]
|
||||
tags = ["sql", "datadase", "db"]
|
||||
tags = ["sql", "database", "db"]
|
||||
|
||||
[[depends-on]]
|
||||
matreshka_league = "18.1.0"
|
||||
|
||||
@@ -7,7 +7,7 @@ licenses = "BSD-3-Clause"
|
||||
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Maxim Reznik <reznikmm@gmail.com>"]
|
||||
maintainers-logins = ["godunko", "reznikmm"]
|
||||
project-files = ["build_matreshka_sql.gpr"]
|
||||
tags = ["sql", "datadase", "db"]
|
||||
tags = ["sql", "database", "db"]
|
||||
|
||||
[[depends-on]]
|
||||
matreshka_league = "20.1.0"
|
||||
|
||||
@@ -7,7 +7,7 @@ licenses = "BSD-3-Clause"
|
||||
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Maxim Reznik <reznikmm@gmail.com>"]
|
||||
maintainers-logins = ["godunko", "reznikmm"]
|
||||
project-files = ["build_matreshka_sql_firebird.gpr"]
|
||||
tags = ["sql", "datadase", "db", "firebird"]
|
||||
tags = ["sql", "database", "db", "firebird"]
|
||||
|
||||
[[depends-on]]
|
||||
libfbclient = "any"
|
||||
|
||||
@@ -7,7 +7,7 @@ licenses = "BSD-3-Clause"
|
||||
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Maxim Reznik <reznikmm@gmail.com>"]
|
||||
maintainers-logins = ["godunko", "reznikmm"]
|
||||
project-files = ["build_matreshka_sql_mysql.gpr"]
|
||||
tags = ["sql", "datadase", "db", "mysql", "mariadb"]
|
||||
tags = ["sql", "database", "db", "mysql", "mariadb"]
|
||||
|
||||
[[depends-on]]
|
||||
libmysqlclient = "any"
|
||||
|
||||
@@ -7,7 +7,7 @@ licenses = "BSD-3-Clause"
|
||||
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Maxim Reznik <reznikmm@gmail.com>"]
|
||||
maintainers-logins = ["godunko", "reznikmm"]
|
||||
project-files = ["build_matreshka_sql_oracle.gpr"]
|
||||
tags = ["sql", "datadase", "db", "oracle"]
|
||||
tags = ["sql", "database", "db", "oracle"]
|
||||
|
||||
[[depends-on]]
|
||||
libclntsh = "any"
|
||||
|
||||
@@ -7,7 +7,7 @@ licenses = "BSD-3-Clause"
|
||||
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Maxim Reznik <reznikmm@gmail.com>"]
|
||||
maintainers-logins = ["godunko", "reznikmm"]
|
||||
project-files = ["build_matreshka_sql_postgresql.gpr"]
|
||||
tags = ["sql", "datadase", "db", "postgresql"]
|
||||
tags = ["sql", "database", "db", "postgresql"]
|
||||
|
||||
# Configure on msys2 fails to work with pg_config
|
||||
[available.'case(os)']
|
||||
|
||||
@@ -7,7 +7,7 @@ licenses = "BSD-3-Clause"
|
||||
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Maxim Reznik <reznikmm@gmail.com>"]
|
||||
maintainers-logins = ["godunko", "reznikmm"]
|
||||
project-files = ["build_matreshka_sql_sqlite3.gpr"]
|
||||
tags = ["sql", "datadase", "db", "sqlite"]
|
||||
tags = ["sql", "database", "db", "sqlite"]
|
||||
|
||||
[[depends-on]]
|
||||
libsqlite3 = "any"
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
name = "mcp2221"
|
||||
description = "MCP2221 USB Raw HID I/O Expander Library for GNAT Ada"
|
||||
version = "1.19928.2"
|
||||
licenses = "BSD-1-Clause"
|
||||
website = "https://github.com/pmunts/simpleio"
|
||||
|
||||
authors = ["Philip Munts"]
|
||||
maintainers = ["Philip Munts <phil@munts.net>"]
|
||||
maintainers-logins = ["pmunts"]
|
||||
|
||||
project-files = ["mcp2221.gpr", "programs.gpr"]
|
||||
|
||||
tags = ["embedded", "linux", "mcp2221", "adc", "dac", "gpio", "i2c", "motor",
|
||||
"pwm", "sensor", "serial", "servo", "spi", "stepper"]
|
||||
|
||||
[available."case(os)"]
|
||||
'linux|windows' = true
|
||||
"..." = false
|
||||
|
||||
# Linux needs libhidapi-dev and/or libusb-1.0-0-dev installed
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on."case(os)"."linux"]
|
||||
libhidapi = "~0.8"
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on."case(os)"."linux"]
|
||||
libusb = "~1.0"
|
||||
|
||||
# On Linux, patch hid-hidapi.ads to link with libhidapi-hidraw.so
|
||||
|
||||
[[actions."case(os)".linux]]
|
||||
type = "post-fetch"
|
||||
command = ["sh", "-c", "sed -i 's/lhidapi/lhidapi-hidraw/g' src/objects/hid/hid-hidapi.ads"]
|
||||
|
||||
# On Windows, copy .DLL files to ./bin/ (for execution) and ./lib/ (for linking)
|
||||
|
||||
[[actions."case(os)".windows]]
|
||||
type = "post-fetch"
|
||||
command = ["sh", "-c", "mkdir -p ./bin && cp src/win64/*.dll ./bin && mkdir -p ./lib && cp src/win64/*.dll ./lib"]
|
||||
|
||||
[origin]
|
||||
hashes = [
|
||||
"sha512:55b6c3181571ca2557be57c232b4a91b050edebcae6aeb0ecd104510ec937a8390d0180d882e4326f35c1f85b0f7d64b1f63cc0d6b059736ca40f0a3f380ef54",
|
||||
]
|
||||
url = "http://repo.munts.com/alire/mcp2221-1.19928.2.tbz2"
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
name = "mcp2221"
|
||||
description = "MCP2221 USB Raw HID I/O Expander Library for GNAT Ada"
|
||||
version = "1.19937.1"
|
||||
licenses = "BSD-1-Clause"
|
||||
website = "https://github.com/pmunts/libsimpleio"
|
||||
|
||||
authors = ["Philip Munts"]
|
||||
maintainers = ["Philip Munts <phil@munts.net>"]
|
||||
maintainers-logins = ["pmunts"]
|
||||
|
||||
project-files = ["mcp2221.gpr", "programs.gpr"]
|
||||
|
||||
tags = ["embedded", "linux", "mcp2221", "adc", "dac", "gpio", "i2c", "motor",
|
||||
"pwm", "sensor", "serial", "servo", "spi", "stepper"]
|
||||
|
||||
[available."case(os)"]
|
||||
'linux|windows' = true
|
||||
"..." = false
|
||||
|
||||
# Linux needs libhidapi-dev and/or libusb-1.0-0-dev installed
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on."case(os)"."linux"]
|
||||
libhidapi = "~0.8"
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on."case(os)"."linux"]
|
||||
libusb = "~1.0"
|
||||
|
||||
# On Linux, patch hid-hidapi.ads to link with libhidapi-hidraw.so
|
||||
|
||||
[[actions."case(os)".linux]]
|
||||
type = "post-fetch"
|
||||
command = ["sh", "-c", "sed -i 's/lhidapi/lhidapi-hidraw/g' src/objects/hid/hid-hidapi.ads"]
|
||||
|
||||
# On Windows, copy .DLL files to ./bin/ (for execution) and ./lib/ (for linking)
|
||||
|
||||
[[actions."case(os)".windows]]
|
||||
type = "post-fetch"
|
||||
command = ["sh", "-c", "mkdir -p ./bin && cp src/win64/*.dll ./bin && mkdir -p ./lib && cp src/win64/*.dll ./lib"]
|
||||
|
||||
[origin]
|
||||
hashes = [
|
||||
"sha512:5caf240f629b0d133121e5765dd2df591f45e2221373b010c74c9e870fea308d445d2e957cbe5806ad0ecff846a6a3ec15c8c8fcd84ae7b532998cd2a5eba2fe",
|
||||
]
|
||||
url = "http://repo.munts.com/alire/mcp2221-1.19937.1.tbz2"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
description = "Middleware layer of the Ada Drivers Library project"
|
||||
description = "Board Support Package for the BBC micro:bit v1"
|
||||
long-description = '''# microbit BSP
|
||||
|
||||
Board Support Package for the BBC micro:bit https://microbit.org/
|
||||
@@ -8,7 +8,6 @@ Library](https://github.com/AdaCore/Ada_Drivers_Library/tree/master/middleware).
|
||||
|
||||
Any bug report, issue, contribution must be adressed to the [Ada Drivers
|
||||
Library](https://github.com/AdaCore/Ada_Drivers_Library/) repo.
|
||||
|
||||
'''
|
||||
|
||||
name = "microbit_bsp"
|
||||
@@ -17,7 +16,6 @@ licenses = "BSD-3-Clause"
|
||||
website="https://github.com/AdaCore/Ada_Drivers_Library/"
|
||||
maintainers = ["chouteau@adacore.com"]
|
||||
maintainers-logins = ["Fabien-Chouteau"]
|
||||
project-files = ["adl_middleware.gpr"]
|
||||
tags = ["embedded", "nostd", "microbit", "bbc", "nrf51", "bsp"]
|
||||
|
||||
[[depends-on]]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
description = "Middleware layer of the Ada Drivers Library project"
|
||||
description = "Board Support Package for the BBC micro:bit v1"
|
||||
long-description = '''# microbit BSP
|
||||
|
||||
Board Support Package for the BBC micro:bit https://microbit.org/
|
||||
@@ -8,7 +8,6 @@ Library](https://github.com/AdaCore/Ada_Drivers_Library/tree/master/middleware).
|
||||
|
||||
Any bug report, issue, contribution must be adressed to the [Ada Drivers
|
||||
Library](https://github.com/AdaCore/Ada_Drivers_Library/) repo.
|
||||
|
||||
'''
|
||||
|
||||
name = "microbit_bsp"
|
||||
@@ -17,7 +16,6 @@ licenses = "BSD-3-Clause"
|
||||
website="https://github.com/AdaCore/Ada_Drivers_Library/"
|
||||
maintainers = ["chouteau@adacore.com"]
|
||||
maintainers-logins = ["Fabien-Chouteau"]
|
||||
project-files = ["adl_middleware.gpr"]
|
||||
tags = ["embedded", "nostd", "microbit", "bbc", "nrf51", "bsp"]
|
||||
|
||||
[[depends-on]]
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
name = "msys2_runtime"
|
||||
description = "POSIX emulation library for Windows"
|
||||
|
||||
maintainers = ["Lev Kujawski <int21h@mailbox.org>"]
|
||||
maintainers-logins = ["lkujaw"]
|
||||
|
||||
[[external]]
|
||||
kind = "system"
|
||||
[external.origin.'case(distribution)']
|
||||
'msys2' = ["msys2-runtime-devel"]
|
||||
|
||||
[external.available.'case(distribution)']
|
||||
'msys2' = true
|
||||
'...' = false
|
||||
@@ -0,0 +1,15 @@
|
||||
name = "optional"
|
||||
description = "Optional values a la java.lang.Optional"
|
||||
version = "0.1"
|
||||
tags = ["optional", "functional"]
|
||||
licenses = "LGPL-3.0-only"
|
||||
website = "https://github.com/mosteo/optional/"
|
||||
|
||||
authors = ["Alejandro R. Mosteo"]
|
||||
maintainers = ["Alejandro R. Mosteo <alejandro@mosteo.com>"]
|
||||
maintainers-logins = ["mosteo"]
|
||||
|
||||
[origin]
|
||||
commit = "1aa0e20bf7cd010c4b59e6ab7cc4b089790b796e"
|
||||
url = "git+https://github.com/mosteo/optional.git"
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
name = "raspberry_bsp"
|
||||
description = "Board Support package for Raspberry PI v1, v2 and B+"
|
||||
version = "1.0.0"
|
||||
|
||||
authors = ["Tama McGlinn"]
|
||||
maintainers = ["Tama McGlinn <t.mcglinn@gmail.com>"]
|
||||
maintainers-logins = ["TamaMcGlinn"]
|
||||
|
||||
licenses = "MIT"
|
||||
tags = ["raspberry", "pi"]
|
||||
website = "https://github.com/TamaMcGlinn/ada_raspio"
|
||||
|
||||
[origin]
|
||||
commit = "a15c773223e31c3ba97dc806897ab1feec2ff5a3"
|
||||
url = "git+https://github.com/TamaMcGlinn/ada_raspio.git"
|
||||
|
||||
[available."case(os)"]
|
||||
windows = false
|
||||
@@ -0,0 +1,47 @@
|
||||
name = "remoteio"
|
||||
description = "Remote I/O Protocol Client Library for GNAT Ada"
|
||||
version = "1.19928.2"
|
||||
licenses = "BSD-1-Clause"
|
||||
website = "https://github.com/pmunts/simpleio"
|
||||
|
||||
authors = ["Philip Munts"]
|
||||
maintainers = ["Philip Munts <phil@munts.net>"]
|
||||
maintainers-logins = ["pmunts"]
|
||||
|
||||
project-files = ["remoteio.gpr", "programs.gpr"]
|
||||
|
||||
tags = ["embedded", "linux", "remoteio", "adc", "dac", "gpio", "i2c", "motor",
|
||||
"pwm", "sensor", "serial", "servo", "spi", "stepper"]
|
||||
|
||||
[available."case(os)"]
|
||||
'linux|windows' = true
|
||||
"..." = false
|
||||
|
||||
# Linux needs libhidapi-dev and/or libusb-1.0-0-dev installed
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on."case(os)"."linux"]
|
||||
libhidapi = "~0.8"
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on."case(os)"."linux"]
|
||||
libusb = "~1.0"
|
||||
|
||||
# On Linux, patch hid-hidapi.ads to link with libhidapi-hidraw.so
|
||||
|
||||
[[actions."case(os)".linux]]
|
||||
type = "post-fetch"
|
||||
command = ["sh", "-c", "sed -i 's/lhidapi/lhidapi-hidraw/g' src/objects/hid/hid-hidapi.ads"]
|
||||
|
||||
# On Windows, copy .DLL files to ./bin/ (for execution) and ./lib/ (for linking)
|
||||
|
||||
[[actions."case(os)".windows]]
|
||||
type = "post-fetch"
|
||||
command = ["sh", "-c", "mkdir -p ./bin && cp src/win64/*.dll ./bin && mkdir -p ./lib && cp src/win64/*.dll ./lib"]
|
||||
|
||||
[origin]
|
||||
hashes = [
|
||||
"sha512:6f9f2f580b06ea18d2b462ee08408741d5fecbcd554114802e7303f2d05dd7025592f6a9f2a1205d5dcf782a4c0950c324aab9213be296c692ddfec838ed436f",
|
||||
]
|
||||
url = "http://repo.munts.com/alire/remoteio-1.19928.2.tbz2"
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
name = "remoteio"
|
||||
description = "Remote I/O Protocol Client Library for GNAT Ada"
|
||||
version = "1.19937.1"
|
||||
licenses = "BSD-1-Clause"
|
||||
website = "https://github.com/pmunts/libsimpleio"
|
||||
|
||||
authors = ["Philip Munts"]
|
||||
maintainers = ["Philip Munts <phil@munts.net>"]
|
||||
maintainers-logins = ["pmunts"]
|
||||
|
||||
project-files = ["remoteio.gpr", "programs.gpr"]
|
||||
|
||||
tags = ["embedded", "linux", "remoteio", "adc", "dac", "gpio", "i2c", "motor",
|
||||
"pwm", "sensor", "serial", "servo", "spi", "stepper"]
|
||||
|
||||
[available."case(os)"]
|
||||
'linux|windows' = true
|
||||
"..." = false
|
||||
|
||||
# Linux needs libhidapi-dev and/or libusb-1.0-0-dev installed
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on."case(os)"."linux"]
|
||||
libhidapi = "~0.8"
|
||||
|
||||
[[depends-on]]
|
||||
[depends-on."case(os)"."linux"]
|
||||
libusb = "~1.0"
|
||||
|
||||
# On Linux, patch hid-hidapi.ads to link with libhidapi-hidraw.so
|
||||
|
||||
[[actions."case(os)".linux]]
|
||||
type = "post-fetch"
|
||||
command = ["sh", "-c", "sed -i 's/lhidapi/lhidapi-hidraw/g' src/objects/hid/hid-hidapi.ads"]
|
||||
|
||||
# On Windows, copy .DLL files to ./bin/ (for execution) and ./lib/ (for linking)
|
||||
|
||||
[[actions."case(os)".windows]]
|
||||
type = "post-fetch"
|
||||
command = ["sh", "-c", "mkdir -p ./bin && cp src/win64/*.dll ./bin && mkdir -p ./lib && cp src/win64/*.dll ./lib"]
|
||||
|
||||
[origin]
|
||||
hashes = [
|
||||
"sha512:fc6c694fddf9a62f419ca3c189698c0761b3fbe5c6133d30c11ba2176471f88d019de47c058cadc6eaf253efefcf36bd5ce54637b17481a8fde85894d2d2e84f",
|
||||
]
|
||||
url = "http://repo.munts.com/alire/remoteio-1.19937.1.tbz2"
|
||||
|
||||
+53
-26
@@ -43,34 +43,45 @@ for file in $CHANGES; do
|
||||
is_system=false
|
||||
|
||||
crate=$(basename $file .toml | cut -f1 -d-)
|
||||
echo Testing crate: $crate
|
||||
version=$(basename $file .toml | cut -f2- -d-)
|
||||
milestone="$crate=$version"
|
||||
echo Testing crate: $milestone
|
||||
# Remember that version can be "external", in which case we do not know the
|
||||
# actual version, and indeed the test will only work if the external is the
|
||||
# newest version. This probably merits a way of being tested properly, but
|
||||
# that will require changes in alr.
|
||||
|
||||
if [[ $version = external ]]; then
|
||||
echo Downgrading milestone to plain crate name
|
||||
milestone=$crate
|
||||
fi
|
||||
|
||||
# Show info for the record
|
||||
echo PLATFORM-INDEPENDENT CRATE INFO $crate
|
||||
alr show $crate
|
||||
alr show --external $crate
|
||||
alr show --external-detect $crate
|
||||
echo PLATFORM-INDEPENDENT CRATE INFO $milestone
|
||||
alr show $milestone
|
||||
alr show --external $milestone
|
||||
alr show --external-detect $milestone
|
||||
|
||||
echo PLATFORM-DEPENDENT CRATE INFO $crate
|
||||
alr show --system $crate
|
||||
alr show --external --system $crate
|
||||
alr show --external-detect --system $crate
|
||||
crateinfo=$(alr show --external-detect --system $crate)
|
||||
echo PLATFORM-DEPENDENT CRATE INFO $milestone
|
||||
alr show --system $milestone
|
||||
alr show --external --system $milestone
|
||||
alr show --external-detect --system $milestone
|
||||
crateinfo=$(alr show --external-detect --system $milestone)
|
||||
|
||||
echo CRATE DEPENDENCIES $crate
|
||||
alr show --solve --detail --external-detect $crate
|
||||
solution=$(alr show --solve --detail --external-detect $crate)
|
||||
echo CRATE DEPENDENCIES $milestone
|
||||
alr show --solve --detail --external-detect $milestone
|
||||
solution=$(alr show --solve --detail --external-detect $milestone)
|
||||
|
||||
# Skip on explicit unavailability
|
||||
if alr show --system $crate | grep -q 'Available when: False'; then
|
||||
echo SKIPPING crate build: $crate UNAVAILABLE on system
|
||||
if alr show --system $milestone | grep -q 'Available when: False'; then
|
||||
echo SKIPPING crate build: $milestone UNAVAILABLE on system
|
||||
continue
|
||||
fi
|
||||
|
||||
# In unsupported platforms, externals are properly reported as missing. We
|
||||
# can skip testing of such a crate since it will likely fail.
|
||||
if grep -q 'Dependencies (external):' <<< $solution ; then
|
||||
echo SKIPPING build for crate $crate with MISSING external dependencies
|
||||
echo SKIPPING build for crate $milestone with MISSING external dependencies
|
||||
continue
|
||||
fi
|
||||
|
||||
@@ -84,13 +95,20 @@ for file in $CHANGES; do
|
||||
echo No need to update system repositories
|
||||
fi
|
||||
|
||||
# Detect whether the crate is binary to skip build
|
||||
is_binary=false
|
||||
if grep -iq 'binary archive' <<< $crateinfo; then
|
||||
echo Crate is BINARY
|
||||
is_binary=true
|
||||
fi
|
||||
|
||||
# Alternatives for when the crate itself comes from an external. Only system
|
||||
# externals should be tested.
|
||||
if grep -q 'Origin: external path' <<< $crateinfo ; then
|
||||
echo SKIPPING detected external crate $crate
|
||||
echo SKIPPING detected external crate $milestone
|
||||
continue
|
||||
elif grep -q 'Origin: system package' <<< $crateinfo ; then
|
||||
echo INSTALLING detected system crate $crate
|
||||
echo INSTALLING detected system crate $milestone
|
||||
is_system=true
|
||||
elif grep -q 'Not found:' <<< $crateinfo && \
|
||||
grep -q 'There are external definitions' <<< $crateinfo
|
||||
@@ -101,23 +119,32 @@ for file in $CHANGES; do
|
||||
|
||||
# Detect missing dependencies for clearer error
|
||||
if grep -q 'Dependencies cannot be met' <<< $solution ; then
|
||||
echo FAIL: crate $crate dependencies cannot be met
|
||||
echo FAIL: crate $milestone dependencies cannot be met
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Actual checks
|
||||
echo DEPLOYING CRATE $crate
|
||||
alr get -d --build -n $crate
|
||||
echo DEPLOYING CRATE $milestone
|
||||
if $is_binary; then
|
||||
echo SKIPPING BUILD for BINARY crate, FETCHING only
|
||||
build_flag=""
|
||||
else
|
||||
build_flag="--build"
|
||||
fi
|
||||
|
||||
alr get -d $build_flag -n $milestone
|
||||
|
||||
if $is_system; then
|
||||
echo DETECTING INSTALLED PACKAGE via crate $crate
|
||||
alr show -d --external-detect $crate
|
||||
echo DETECTING INSTALLED PACKAGE via crate $milestone
|
||||
alr show -d --external-detect $milestone
|
||||
elif $is_binary; then
|
||||
echo FETCHED BINARY crate OK
|
||||
else
|
||||
echo LISTING EXECUTABLES of crate $crate
|
||||
cd ${crate}_*
|
||||
echo LISTING EXECUTABLES of crate $milestone
|
||||
cd ${crate}_${version}_*
|
||||
alr run -d --list
|
||||
cd ..
|
||||
fi
|
||||
|
||||
echo CRATE $crate TEST ENDED SUCCESSFULLY
|
||||
echo CRATE $milestone TEST ENDED SUCCESSFULLY
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user