Compare commits

...

20 Commits

Author SHA1 Message Date
Fabien Chouteau 889ce5b21e Create clic-0.1.1.toml (#357) 2021-09-16 15:43:42 +02:00
Gustavo A. Hoffmann 26d9147abf audio_base 1.0.0 (#355)
* audio_base 1.0.0

* Converting license to SPDX string
2021-09-16 11:05:38 +02:00
Alejandro R Mosteo ffd49df662 Backport improvements to build script (#350)
In the stable branch we are still testing the newest release, while sometimes
we get fixes to older release manifests.
2021-09-14 09:59:47 +02:00
Pierre-Marie de Rodat 148248846f ada_toml 0.3.0 (#343)
* ada_toml: minor pasto fix in descriptions

* Add ada_toml 0.3.0
2021-09-13 12:52:49 +02:00
Tama McGlinn b10d18768d raspberry_bsp 1.0 (#267)
* Added raspberry_bsp package

* Mark raspberry_bsp unavailable on windows
2021-09-13 10:58:32 +02:00
Tama McGlinn 909b47b459 adabots 1.0.1 - bugfix release (#346) 2021-09-13 10:08:59 +02:00
Fabien Chouteau c260660ae2 Fix microbit_bsp (#338)
* Update microbit_bsp-0.2.0.toml

* Update microbit_bsp-0.1.0.toml
2021-09-07 17:45:38 +02:00
pmunts 75264a9fa5 mcp2221, remoteio 1.19937.1 (#333)
* mcp2221 release 1.19937.1

Fixed website URL

* remoteio release 1.19937.1

Fixed website URL
2021-09-06 09:55:48 +02:00
Paul Jarrett 6b53b29257 Add files via upload (#326) 2021-09-02 13:27:26 +02:00
pmunts ca79380e4a remoteio release 1.19928.2 (#309)
msys tar needs tarballs created with -H posix
2021-09-02 13:26:36 +02:00
Fabien Chouteau 4d4f222046 libgpr 21.0.0: incompatibility with GNAT Community 2021 (#324) 2021-08-31 18:06:24 +02:00
pmunts b2ac55bfb7 mcp2221 release 1.19928.2 (#312)
msys tar needs tarballs created with -H posix
2021-08-31 10:13:04 +02:00
Fabien Chouteau 4069382a51 clic 0.1.0 (#323) 2021-08-30 17:22:45 +02:00
Alejandro R Mosteo ddc3120ec1 aaa 0.2.3 (#321) 2021-08-30 14:10:25 +02:00
Alejandro R Mosteo 7b8b8c5be0 optional 0.1.0 (#320) 2021-08-27 09:48:11 +02:00
pmunts 03efd72937 libhidapi, libusb externals (#319)
* A cross-platform library to access USB devices

Initial addition to the community index.

* A Simple library for communicating with USB and Bluetooth HID devices

Initial addition to the community index.

* Added licenses and Arch packages

Co-authored-by: Alejandro R. Mosteo <amosteo@unizar.es>
2021-08-25 12:31:36 +02:00
Jesper Quorning bbb3c93637 matreshka: fix database tag typos (#310) 2021-08-25 12:03:50 +02:00
Tama McGlinn 1bb9541ca1 adabots 1.0.0 (#305) 2021-08-23 12:41:33 +02:00
pmunts e98f64fb48 libsimpleio 1.19882.1 (#313)
Eliminated a lot of compiler warnings
2021-08-20 10:58:17 +02:00
Lev Kujawski e034baf38b msys2_runtime and felix 0.2.0 (#318) 2021-08-20 10:15:56 +02:00
32 changed files with 704 additions and 41 deletions
+27
View File
@@ -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 -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
@@ -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"]
+18
View File
@@ -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"
+19
View File
@@ -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"
+18
View File
@@ -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"
+31
View File
@@ -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"
+30
View File
@@ -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 = '''
[![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
@@ -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"
+1
View File
@@ -16,6 +16,7 @@ GPR_BUILD = ["debug", "production", "coverage", "profiling"]
LIBRARY_TYPE = ["static", "relocatable", "static-pic"]
[[depends-on]]
gnat = "/=2021" # Does not build with GNAT Community 2021
xmlada = "~21.0.0"
[origin]
@@ -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"
+12
View File
@@ -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"
+47
View File
@@ -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"
+47
View File
@@ -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
+15
View File
@@ -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
+47
View File
@@ -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"
+47
View File
@@ -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
View File
@@ -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