Compare commits

..

15 Commits

Author SHA1 Message Date
Fabien Chouteau 7ed3ffa614 libgpr-21.0.0: incompatibility with GNAT Community 2021 2021-08-31 15:40:07 +02:00
Alejandro R. Mosteo 39751981cc gprbuild external 2021-08-19 12:25:59 +02:00
Alejandro R. Mosteo 39ab6f5272 Merge new crates in 1.0 2021-08-19 12:11:40 +02:00
Fabien Chouteau 37ddcd9488 Rename GNAT crates (#302)
* Rename GNAT crates

I changed the names of the crates to what I think is more meaningful.

I  merged the Linux, Windows and macOS under a gnat_native that will be
easier to understand and use in my opinion.

I also added a licenses field.

One thing that we may want to improve is the values for the case
statements, for instance `[origin."case(os)".macos."case(word-size)".bits-64]`
will soon be a blocking point to support macOS on the M1.

Instead of word size we probably need something like: "case(CPU)" or
"case(arch)". Or even use full platform triplets: "case(host_triplet)".

* Add "provides" to gnat_external

Co-authored-by: Alejandro R. Mosteo <amosteo@unizar.es>
2021-07-24 09:50:15 +02:00
Alejandro R. Mosteo 96f39408ed Merge remote-tracking branch 'alire/stable-1.0' into devel-1.1 2021-07-23 14:18:05 +02:00
Alejandro R. Mosteo da017bc07c gnatcov 21.0-1 for all platforms 2021-07-18 18:56:10 +02:00
Alejandro R. Mosteo cdf8c13253 Fix gprbuild path environment 2021-07-18 14:46:32 +02:00
Alejandro R. Mosteo ec4f281b37 GNAT 10.3-1 for all targets 2021-07-18 14:32:29 +02:00
Alejandro R. Mosteo 8cba1009de gprbuild 21.0.0-1 for all targets 2021-07-18 14:07:27 +02:00
Alejandro R. Mosteo 47492703e6 GNAT releases split per target 2021-07-12 10:11:15 +02:00
Alejandro R. Mosteo 7f320c8f06 Bump index version 2021-07-09 10:34:20 +02:00
Alejandro R. Mosteo 4f2c55b0cc New gnat 10.3 release 2021-06-30 17:00:55 +02:00
Alejandro R. Mosteo 54a690189d Mark binary crates with no auto-gpr-with 2021-06-29 10:34:45 +02:00
Alejandro R. Mosteo 5ae6b108cd Add binary gprbuild 2021-06-29 10:34:45 +02:00
Alejandro R. Mosteo 8b06ec95e6 test gnat crate 2021-06-29 10:34:45 +02:00
40 changed files with 200 additions and 714 deletions
-27
View File
@@ -1,27 +0,0 @@
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 -1
View File
@@ -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 -1
View File
@@ -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>"]
-110
View File
@@ -1,110 +0,0 @@
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"]
-18
View File
@@ -1,18 +0,0 @@
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"
-19
View File
@@ -1,19 +0,0 @@
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"
-18
View File
@@ -1,18 +0,0 @@
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"
-31
View File
@@ -1,31 +0,0 @@
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"
-30
View File
@@ -1,30 +0,0 @@
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"
@@ -1,74 +0,0 @@
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 = '''
[![Build Status](https://github.com/pyjarrett/dir_iterators/actions/workflows/build.yml/badge.svg)](https://github.com/pyjarrett/dir_iterators/actions)
[![Alire](https://img.shields.io/endpoint?url=https://alire.ada.dev/badges/dir_iterators.json)](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"
-27
View File
@@ -1,27 +0,0 @@
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"
-10
View File
@@ -1,10 +0,0 @@
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"]
@@ -0,0 +1,27 @@
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"]
@@ -0,0 +1,17 @@
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.
@@ -0,0 +1,28 @@
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"]
@@ -0,0 +1,27 @@
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"]
+23
View File
@@ -0,0 +1,23 @@
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"]
+22
View File
@@ -0,0 +1,22 @@
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"]
+14
View File
@@ -0,0 +1,14 @@
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
View File
@@ -1 +1 @@
version = "1.0"
version = "1.1"
@@ -1,12 +0,0 @@
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"]
@@ -1,26 +0,0 @@
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"
-12
View File
@@ -1,12 +0,0 @@
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", "database", "db"]
tags = ["sql", "datadase", "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", "database", "db"]
tags = ["sql", "datadase", "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", "database", "db", "firebird"]
tags = ["sql", "datadase", "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", "database", "db", "mysql", "mariadb"]
tags = ["sql", "datadase", "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", "database", "db", "oracle"]
tags = ["sql", "datadase", "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", "database", "db", "postgresql"]
tags = ["sql", "datadase", "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", "database", "db", "sqlite"]
tags = ["sql", "datadase", "db", "sqlite"]
[[depends-on]]
libsqlite3 = "any"
-47
View File
@@ -1,47 +0,0 @@
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"
-47
View File
@@ -1,47 +0,0 @@
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 = "Board Support Package for the BBC micro:bit v1"
description = "Middleware layer of the Ada Drivers Library project"
long-description = '''# microbit BSP
Board Support Package for the BBC micro:bit https://microbit.org/
@@ -8,6 +8,7 @@ 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"
@@ -16,6 +17,7 @@ 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 = "Board Support Package for the BBC micro:bit v1"
description = "Middleware layer of the Ada Drivers Library project"
long-description = '''# microbit BSP
Board Support Package for the BBC micro:bit https://microbit.org/
@@ -8,6 +8,7 @@ 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"
@@ -16,6 +17,7 @@ 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,14 +0,0 @@
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
-15
View File
@@ -1,15 +0,0 @@
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"
@@ -1,18 +0,0 @@
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
-47
View File
@@ -1,47 +0,0 @@
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"
-47
View File
@@ -1,47 +0,0 @@
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"
+26 -53
View File
@@ -43,45 +43,34 @@ for file in $CHANGES; do
is_system=false
crate=$(basename $file .toml | cut -f1 -d-)
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
echo Testing crate: $crate
# Show info for the record
echo PLATFORM-INDEPENDENT CRATE INFO $milestone
alr show $milestone
alr show --external $milestone
alr show --external-detect $milestone
echo PLATFORM-INDEPENDENT CRATE INFO $crate
alr show $crate
alr show --external $crate
alr show --external-detect $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 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 CRATE DEPENDENCIES $milestone
alr show --solve --detail --external-detect $milestone
solution=$(alr show --solve --detail --external-detect $milestone)
echo CRATE DEPENDENCIES $crate
alr show --solve --detail --external-detect $crate
solution=$(alr show --solve --detail --external-detect $crate)
# Skip on explicit unavailability
if alr show --system $milestone | grep -q 'Available when: False'; then
echo SKIPPING crate build: $milestone UNAVAILABLE on system
if alr show --system $crate | grep -q 'Available when: False'; then
echo SKIPPING crate build: $crate 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 $milestone with MISSING external dependencies
echo SKIPPING build for crate $crate with MISSING external dependencies
continue
fi
@@ -95,20 +84,13 @@ 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 $milestone
echo SKIPPING detected external crate $crate
continue
elif grep -q 'Origin: system package' <<< $crateinfo ; then
echo INSTALLING detected system crate $milestone
echo INSTALLING detected system crate $crate
is_system=true
elif grep -q 'Not found:' <<< $crateinfo && \
grep -q 'There are external definitions' <<< $crateinfo
@@ -119,32 +101,23 @@ for file in $CHANGES; do
# Detect missing dependencies for clearer error
if grep -q 'Dependencies cannot be met' <<< $solution ; then
echo FAIL: crate $milestone dependencies cannot be met
echo FAIL: crate $crate dependencies cannot be met
exit 1
fi
# Actual checks
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
echo DEPLOYING CRATE $crate
alr get -d --build -n $crate
if $is_system; then
echo DETECTING INSTALLED PACKAGE via crate $milestone
alr show -d --external-detect $milestone
elif $is_binary; then
echo FETCHED BINARY crate OK
echo DETECTING INSTALLED PACKAGE via crate $crate
alr show -d --external-detect $crate
else
echo LISTING EXECUTABLES of crate $milestone
cd ${crate}_${version}_*
echo LISTING EXECUTABLES of crate $crate
cd ${crate}_*
alr run -d --list
cd ..
fi
echo CRATE $milestone TEST ENDED SUCCESSFULLY
echo CRATE $crate TEST ENDED SUCCESSFULLY
done