Compare commits

...

28 Commits

Author SHA1 Message Date
Fabien Chouteau 9bb5af615f AWS 22.0.0 2022-07-25 11:51:43 +02:00
Blady-Com 4cceb704dc macOS support for gmp via external command (#577)
Tested with MacPorts (gmp).
2022-07-25 10:06:13 +02:00
nytpu 058c9d073d getopt 2.0.0 (#574) 2022-07-23 12:00:10 +02:00
Fabien Chouteau 1e8637173e xmlada 21.0.0: fix post-fetch configure (#572)
* xmlada-21.0.0: fix post-fetch configure

Fix configure

* xmlada-22.0.0: fix post-fetch configure
2022-07-22 18:43:36 +02:00
Alejandro R Mosteo 23ba528593 Separate check scripts to their own repository (#567)
* Remove scripts

* Update workflows to use checks repo

* Add explanation about naming of base branch

This only concerns private tests with PRs created against a base branch in
another non-official repo.

* Fix checkout paths

* Move TESTING to a less confusing location
2022-07-21 12:25:39 +02:00
nytpu 41589135c3 lmdb_ada 1.1.0 (#569)
* lmdb_ada 1.0.1

* lmdb_ada 1.0.1 -> 1.1.0
2022-07-20 17:51:28 +02:00
Alejandro R Mosteo 5fe1ac673c wordle 0.1.1, wordlelib 0.1.0 (#561)
* wordlelib 0.1.0

* wordle 0.1.1

* Fix metadata names

* Enable -d (that should be already working but...)

* Remove problematic metadata

* Remove script modification

Co-authored-by: GHA <actions@github.com>
2022-07-20 14:26:13 +02:00
Maxim Reznik d91257541f Spawn repo was moved to AdaCode account. (#571)
I have created an old release there and uploaded files under it.
2022-07-20 09:59:29 +02:00
Fabien Chouteau 7b7c753344 gnatcoll 22.0.0: set build mode to PROD (#570) 2022-07-19 10:37:01 +02:00
Blady-Com c4b895b760 More macOS support for simple_components (#565) 2022-07-18 13:19:58 +02:00
Stephen Merrony bee92953b8 Library for SimH Standard magnetic tape images (#568)
* Library for SimH Standard magnetic tape images

Simh_tape is an Ada package for handling magnetic tape images in the
[standard format](http://simh.trailing-edge.com/docs/simh_magtape.pdf) used by 
[SimH](http://simh.trailing-edge.com/) and many other computer simulators and emulators.

* Remove build-switches

* Fix alire.toml

* Delete simh_tapes-0.1.1-dev.toml

Co-authored-by: Alejandro R Mosteo <amosteo@unizar.es>
2022-07-14 17:29:59 +02:00
Maxim Reznik 3dc3a3bf81 Fix templates_parser to work with GCC 12 (#563)
Force `PRJ_BUILD` to `Release` to avoid `-gnatwe` and compilation issue:

```
templates_parser.adb:2093:55: warning: pragma Unreferenced given for "Next_Last" [enabled by default]
```
2022-07-05 09:24:56 +02:00
Blady-Com 128741301c Add automaton generator to Alire. (#566) 2022-07-04 10:43:17 +02:00
onox 6d242cc550 evdev 2.0.1 (#564) 2022-07-01 10:00:30 +02:00
Alejandro R Mosteo fab9b9953e Ensure aliases work within non-interactive shell (#562)
Co-authored-by: GHA <actions@github.com>
2022-06-24 13:51:58 +02:00
Alejandro R Mosteo 63d9347fc2 wordlist 0.1.3 (#560)
* wordlist 0.1.3

* Fix gnat dependency

Co-authored-by: GHA <actions@github.com>
2022-06-23 19:21:27 +02:00
Fabien Chouteau 1452ad5f47 nrf5x_hal 0.1.0: fix dependencies (#551)
* nrf5x-hal-0.1.0: fix dependencies

`~` was intended here and required since `cortex_m=0.4.0` is breaking the builds.

* Update microbit_examples-0.1.0.toml

* Update nrf5x_hal-0.1.0.toml
2022-06-23 11:36:12 +02:00
Alejandro R Mosteo f32a75e445 Update docker images used in test workflow (#558)
Remove Community Edition tests, switch centOS to the rolling stream release
with alr-provided FSF GNAT, add Fedora that was lying unused.

Co-authored-by: GHA <actions@github.com>
2022-06-23 11:34:25 +02:00
Alejandro R Mosteo 69e6ae18f7 Fix detection of compiler crates in test script (#556)
* Be a bit more clever detecting a compiler dependency

* Work around premature closing of pipe

Co-authored-by: GHA <actions@github.com>
2022-06-23 11:33:40 +02:00
Fabien Chouteau 452ab8f14d Fix xmlada 21 on Windows (#559) 2022-06-23 11:21:53 +02:00
Alejandro R Mosteo 27bff3341a Disable git check in testing script (#557)
* Disable git checks for dir ownership

* Document the vulnerabilities requiring the change

Co-authored-by: GHA <actions@github.com>
2022-06-23 11:20:53 +02:00
nytpu ab2fca430f tlsada 2.4.2 (#548) 2022-06-21 19:05:37 +02:00
Simon Wright 245294cf39 gnat_math_extensions 1.1.0 (#547)
* gnat_math_extensions 1.1.0 - first Alire release (the project started
  in 2010).
2022-06-21 17:49:01 +02:00
Alejandro R Mosteo 81259d3622 iterators 0.2.0 (#549) 2022-06-20 13:47:13 +02:00
Gautier de Montmollin a7df70abef Create hac-0.11.0.toml (#555)
* Create hac-0.11.0.toml

* Update hac-0.11.0.toml

Shortened description (<= 72 characters)
2022-06-20 10:27:38 +02:00
Maxim Reznik d8afd1e41a Annex E: garlic and gnatdist (#553) 2022-06-20 10:24:03 +02:00
pjljvandelaar d99d85c4d3 dependency_graph_extractor, rewriters 22.0.0 (#546)
* Dependency Graph Extractor 22.0.0

* Rewriters 22.0.0

First release
2022-06-12 12:07:57 +02:00
Fabien Chouteau af208985b2 littlefs-0.2.0 (#544) 2022-06-11 10:47:26 +02:00
37 changed files with 564 additions and 306 deletions
+10
View File
@@ -0,0 +1,10 @@
The name of the branch plays a role in the tests run when changes are
submitted. For this reason, when modifying the workflows in ./.github, if you
want to test them prior to submission, the PR must be tested against a branch that
exists also in the `alire-index-checks` repo, e.g., 'stable-1.2' or 'devel-1.2'
Normally you'll want to use the latest stable or devel branch.
E.g., if you modify a workflow in the `alire-index` repo and want to test it
privately, you can do so in your own account, but using the same `stable-x.x`
base branch for your private PR.
+26 -13
View File
@@ -1,5 +1,11 @@
# Please read the TESTING file before modifying this file
name: Build Crate
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
on:
pull_request:
paths:
@@ -19,11 +25,11 @@ jobs:
- ubuntu-latest
- windows-latest
tag:
- arch-rolling
- centos-latest-community-latest
- community-latest
- debian-stable
- ubuntu-lts
- arch-rolling # Arch has its own recent GNAT and pacman
- centos-stream-fsf-latest # CentOS is used for unknown package manager
- debian-stable # Debian has very good Ada support and apt
- fedora-latest # Fedora has its own GNAT and dnf
- ubuntu-lts # Ubuntu LTS is a common Debian derivative
- ""
exclude: # inclusions don't allow to add arrays of values to a scenario
- os: ubuntu-latest
@@ -31,21 +37,21 @@ jobs:
- os: macos-latest
tag: arch-rolling
- os: macos-latest
tag: centos-latest-community-latest
- os: macos-latest
tag: community-latest
tag: centos-stream-fsf-latest
- os: macos-latest
tag: debian-stable
- os: macos-latest
tag: fedora-latest
- os: macos-latest
tag: ubuntu-lts
- os: windows-latest
tag: arch-rolling
- os: windows-latest
tag: centos-latest-community-latest
- os: windows-latest
tag: community-latest
tag: centos-stream-fsf-latest
- os: windows-latest
tag: debian-stable
- os: windows-latest
tag: fedora-latest
- os: windows-latest
tag: ubuntu-lts
@@ -59,6 +65,13 @@ jobs:
# changed files detectors (in both scripts/gh-build-crate.sh and
# check-author action).
- name: Check out alire-index-checks
uses: actions/checkout@v3
with:
repository: ${{env.CHECKS_ORG}}/${{env.CHECKS_REPO}}
ref: ${{github.base_ref}}
path: ${{env.CHECKS_REPO}}
- name: Update system repositories
if: matrix.os == 'ubuntu-latest'
run: sudo apt update
@@ -93,7 +106,7 @@ jobs:
uses: mosteo/actions@docker-run/v1
with:
image: alire/gnat:${{matrix.tag}}
command: scripts/gh-build-crate.sh
command: ${{env.CHECKS_REPO}}/scripts/gh-build-crate.sh
params: -v ${{ github.workspace }}/alire_install/bin/alr:/usr/bin/alr
- name: Install tar from msys2 (Windows) # Git tar in Actions VM does not seem to work)
@@ -102,5 +115,5 @@ jobs:
- name: Test crate (Windows/MacOS)
if: matrix.os != 'ubuntu-latest' # native testing in Windows/MacOS
run: scripts/gh-build-crate.sh
run: ${{env.CHECKS_REPO}}/scripts/gh-build-crate.sh
shell: bash
+14 -1
View File
@@ -1,6 +1,12 @@
# Please read the TESTING file before modifying this file
name: Toolchain
# Build the submitted crate with a native toolchain from Alire
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
on:
pull_request:
paths:
@@ -30,6 +36,13 @@ jobs:
# changed files detectors (in both scripts/gh-build-crate.sh and
# check-author action).
- name: Check out alire-index-checks
uses: actions/checkout@v3
with:
repository: ${{env.CHECKS_ORG}}/${{env.CHECKS_REPO}}
ref: ${{github.base_ref}}
path: ${{env.CHECKS_REPO}}
# For the devel branch we need a compiler available to build alr in
# setup-alire. We will be able to get rid of this once composite actions
# support conditional steps.
@@ -63,5 +76,5 @@ jobs:
run: C:\Users\runneradmin\.cache\alire\msys64\usr\bin\pacman --noconfirm -S tar
- name: Test crate
run: scripts/gh-build-crate.sh
run: ${{env.CHECKS_REPO}}/scripts/gh-build-crate.sh
shell: bash
+14 -1
View File
@@ -1,8 +1,14 @@
# Please read the TESTING file before modifying this file
# Show differences between the submitted manifest and the previous
# release of the same crate, to enable easier catching of problems
name: Diff release
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
on:
pull_request:
paths:
@@ -23,6 +29,13 @@ jobs:
# need the full history or else grafted partial branches confuse the
# changed files detector
- name: Check out alire-index-checks
uses: actions/checkout@v3
with:
repository: ${{env.CHECKS_ORG}}/${{env.CHECKS_REPO}}
ref: ${{github.base_ref}}
path: ${{env.CHECKS_REPO}}
- name: Set up stable `alr`
if: contains(github.base_ref, 'stable-')
uses: alire-project/setup-alire@v1
@@ -49,5 +62,5 @@ jobs:
branch: master
- name: Diff releases
run: scripts/diff-release.sh || true # No deal breaker if failed
run: ${{env.CHECKS_REPO}}/scripts/diff-release.sh || true # No deal breaker if failed
shell: bash
+21
View File
@@ -0,0 +1,21 @@
name = "automate"
description = "Ada finite-state machine generator"
version = "2.2.2"
tags = ["automaton", "generator"]
authors = ["Pascal Pignard"]
maintainers = ["Pascal Pignard <blady.net@orange.fr>"]
maintainers-logins = ["Blady-Com"]
website = "https://github.com/Blady-Com/Automate"
licenses = "CECILL-2.1"
executables = ["genauto"]
[gpr-set-externals.'case(os)']
macos = { GENAUTO_LINKER_FLAGS = "-Wl,-no_pie" } # needed for symbolic exception traceback
[origin]
commit = "5ce97f6cc06d5a370b9aaf40c996f868f7d73e61"
url = "git+https://github.com/Blady-Com/Automate.git"
+53
View File
@@ -0,0 +1,53 @@
description = "Ada Web Server"
website = "https://github.com/adacore/aws"
name = "aws"
version = "22.0.0"
authors = ["AdaCore"]
licenses = "GPL-3.0-or-later WITH GCC-exception-3.1"
maintainers = ["chouteau@adacore.com"]
maintainers-logins = ["Fabien-Chouteau"]
project-files = ["install_dir/share/gpr/aws.gpr"]
tags = ["aws", "web", "server", "http", "https", "soap", "wsdl", "ssl"]
# Since the AWS project doesn't build alone with just gprbuild we build and
# install with the Makefile from post-fetch action.
[[actions]]
type = "post-fetch"
command = ["make", "setup", "build", "install", "ZLIB=false", "DEMOS=false",
"LAL=false", "XMLADA=false", "prefix=install_dir",
"PRJ_BUILD=Release"]
[[depends-on]]
make = "*"
xmlada = "~22.0.0"
gnat = ">=9"
openssl = "*"
[configuration]
disabled = true
[gpr-externals]
LIBRARY_TYPE = ["static", "relocatable"]
PRJ_BUILD = ["Debug", "Release"]
PRJ_SOCKLIB = ["gnat", "ipv6", "ipv4"]
PRJ_TARGET = ["Windows_NT", "UNIX", "Darwin", "vxworks", "freebsd"]
[gpr-set-externals]
PRJ_LAL="Disabled"
[gpr-set-externals."case(os)".linux]
PRJ_TARGET = "UNIX"
TARGET = "x86_64-linux-gnu"
SOCKET = "openssl"
[gpr-set-externals."case(os)".macos]
PRJ_TARGET = "Darwin"
SOCKET = "openssl"
[gpr-set-externals."case(os)".windows]
PRJ_TARGET = "Windows_NT"
[origin]
url= "https://github.com/AdaCore/aws/archive/v22.0.0/aws-22.0.0.zip"
hashes=["sha512:0fa3695d3d45ae05f03312cc71390547cfffd1cc966fd147037dd2d927e5709fbc193ec9dbbe4a0b2130779521a0baee4a3736f4f8b7f93a15448a0c96401c3d"]
@@ -0,0 +1,20 @@
name = "dependency_graph_extractor"
description = "Extract dependency information from Ada projects"
version = "22.0.0"
licenses = "BSD-3-Clause"
website = "https://github.com/TNO/Dependency_Graph_Extractor-Ada"
tags = ["extract", "dependency", "analysis", "graph", "graphml"]
authors = ["Jeroen Ketema", "Pierre van de Laar"]
maintainers = ["Pierre van de Laar <pierre.van.de.laar@gmail.com>"]
maintainers-logins = ["pjljvandelaar"]
executables = ["dependency_graph_extractor"]
[[depends-on]]
libadalang = "^22.0.0"
[origin]
commit = "992fc1c438fff2917f5cbdbfe6ca449933ee6fd5"
url = "git+https://github.com/TNO/Dependency_Graph_Extractor-Ada.git"
+24
View File
@@ -0,0 +1,24 @@
name = "evdev"
description = "Ada 2012 library for input and force-feedback using Linux' evdev API"
version = "2.0.1"
website = "https://github.com/onox/evdev-ada"
licenses = "Apache-2.0"
tags = ["evdev", "force-feedback"]
authors = ["onox"]
maintainers = ["onox <denkpadje@gmail.com>"]
maintainers-logins = ["onox"]
project-files = ["evdev.gpr", "evdev_info.gpr"]
executables = ["evdev-ada"]
[configuration]
disabled = true
[available.'case(os)']
linux = true
'...' = false
[origin]
commit = "571a6bc0f0d3c112753ddfb90f572833c575070c"
url = "git+https://github.com/onox/evdev-ada.git"
+32
View File
@@ -0,0 +1,32 @@
name = "garlic"
description = "GNAT Library for Ada Distributed Environment (garlic)"
website = "https://github.com/reznikmm/garlic/wiki"
version = "6.0.1"
tags = ["dsa", "distributed", "annex", "network", "glade"]
authors = ["AdaCore"]
maintainers = ["Max Reznik <reznikmm@gmail.com>"]
maintainers-logins = ["reznikmm"]
licenses = "GPL-2.0-or-later WITH GCC-exception-2.0"
project-files = ["gnat/garlic.gpr"]
[configuration]
disabled = true
[gpr-externals]
GARLIC_BUILD_MODE = ["dev", "prod"]
[environment.'case(os)'.windows.PATH]
append = "${CRATE_ROOT}/.libs/relocatable"
[environment.'case(os)'.linux.LD_LIBRARY_PATH]
append = "${CRATE_ROOT}/.libs/relocatable"
[environment.'case(os)'.macos.DYLD_LIBRARY_PATH]
append = "${CRATE_ROOT}/.libs/relocatable"
[origin]
commit = "90ef4b6f01c95df7e04c8f3e4c41c275f23acea9"
url = "git+https://github.com/reznikmm/garlic.git"
+27
View File
@@ -0,0 +1,27 @@
name = "getopt"
description = "POSIX getopt(3) for Ada"
version = "2.0.0"
licenses = "MPL-2.0"
website = "https://git.sr.ht/~nytpu/getopt-ada"
tags = ["arguments", "options", "flags", "getopt"]
authors = ["nytpu"]
maintainers = ["nytpu <alex@nytpu.com>"]
maintainers-logins = ["nytpu"]
[gpr-externals]
GETOPT_LIBRARY_TYPE = ["dynamic", "relocatable", "static", "static-pic"]
GETOPT_COMPILE_CHECKS = ["enabled", "disabled"]
GETOPT_RUNTIME_CHECKS = ["enabled", "disabled"]
GETOPT_STYLE_CHECKS = ["enabled", "disabled"]
GETOPT_CONTRACTS = ["enabled", "disabled"]
GETOPT_BUILD_MODE = ["debug", "optimize"]
[origin]
hashes = [
"sha256:2c0816539b61aa27c3accac795ab9278102857c836f27c498bf09387ae2c92d9",
"sha512:84570b13d0dc49c9a7e548780607e50b01b12de8f147ac484efcc35e8f69e4be773665aecbaa4c6bf875101a70d4a9e72c0d616fda04f097dd6f45d5a896019c",
]
url = "https://git.sr.ht/~nytpu/getopt-ada/archive/v2.0.0.tar.gz"
@@ -0,0 +1,22 @@
name = "gnat_math_extensions"
description = "Eigenvalues, eigenvectors for non-symmetric, non-Hermitian matrices"
website = "https://github.com/simonjwright/gnat_math_extensions"
version = "1.1.0"
licenses= "GPL-3.0-or-later WITH GCC-exception-3.1"
authors = ["Simon Wright"]
maintainers = ["Simon Wright <simon@pushface.org>"]
maintainers-logins = ["simonjwright"]
project-files = ["gnat_math_extensions.gpr"]
tags = ["matrices", "blas", "lapack"]
[[depends-on]]
"libblas" = "*"
"liblapack" = "*"
[origin]
commit = "e1f68c35cfb4539450341cede99ffc980510219c"
url = "git+https://github.com/simonjwright/gnat_math_extensions.git"
+1
View File
@@ -27,6 +27,7 @@ GNATCOLL_OS = "windows"
[gpr-set-externals]
GNATCOLL_VERSION = "22.0.0"
GNATCOLL_BUILD_MODE = "PROD"
[[depends-on]]
libgpr = "~22.0.0"
@@ -0,0 +1,33 @@
name = "gnatdist_garlic"
description = "The configuration tool gnatdist for GARLIC"
website = "https://github.com/reznikmm/garlic/wiki"
version = "6.0.1"
tags = ["dsa", "distributed", "annex", "network", "glade"]
authors = ["AdaCore"]
maintainers = ["Max Reznik <reznikmm@gmail.com>"]
maintainers-logins = ["reznikmm"]
licenses = "GPL-2.0-or-later"
project-files = ["../gnat/gnatdist.gpr"]
executables = ["gnatdist"]
auto-gpr-with = false
[configuration]
disabled = true
[environment.PATH]
append = "${CRATE_ROOT}/.bin"
[[forbids]]
polyorb="*"
[origin]
commit = "90ef4b6f01c95df7e04c8f3e4c41c275f23acea9"
subdir = "./Dist/"
url = "git+https://github.com/reznikmm/garlic.git"
+16
View File
@@ -0,0 +1,16 @@
description = "HAC Ada Compiler: a small, quick Ada compiler covering a subset of Ada"
name = "hac"
version = "0.11.0"
authors = ["Gautier de Montmollin"]
website = "https://hacadacompiler.sourceforge.io/"
licenses = "MIT"
maintainers = ["gdemont@hotmail.com"]
maintainers-logins = ["zertovitch"]
project-files = ["hac.gpr"]
[gpr-externals]
HAC_Build_Mode = ["Debug", "Fast", "Small"]
[origin]
url = "https://sourceforge.net/projects/hacadacompiler/files/hac-2022-06-19-v.0.11.zip"
hashes = ["sha512:c596ed7c814406defbbb0d2dbf94c167236f36dc514e681ca2523045698d3fa4346e0b87ade272d4ed5a6047f61e9d4bdd033967bdb893fb4967a9af6c01982d"]
+23
View File
@@ -0,0 +1,23 @@
name = "iterators"
description = "Functional iterators a la Rust"
version = "0.2.0"
authors = ["Alejandro R. Mosteo"]
maintainers = ["Alejandro R. Mosteo <alejandro@mosteo.com>"]
maintainers-logins = ["mosteo"]
website = "https://github.com/mosteo/iterators"
licenses = "LGPL-3.0-only"
tags = ["iterators", "functional"]
[configuration]
disabled = true
[[depends-on]]
aaa = "~0.2.1"
gnat = "^10" # gnat 11 is causing many new errors, migration pending
[origin]
commit = "18995a4dc100b945a63ba49861d14a015a36a527"
url = "git+https://github.com/mosteo/iterators.git"
+5
View File
@@ -9,3 +9,8 @@ kind = "system"
[external.origin."case(distribution)"]
"debian|ubuntu" = ["libgmp-dev"]
msys2 = ["mingw-w64-x86_64-gmp"]
[[external]]
kind = "version-output"
version-command = [ "pkg-config", "--modversion", "gmp" ]
version-regexp = "([\\d\\.]+)"
@@ -9,3 +9,8 @@ kind = "system"
[external.origin."case(distribution)"]
"..." = []
"debian|ubuntu" = ["libgnutls28-dev"]
[[external]]
kind = "version-output"
version-command = [ "pkg-config", "--modversion", "gnutls" ]
version-regexp = "([\\d\\.]+)"
+24
View File
@@ -0,0 +1,24 @@
name = "littlefs"
description = "Ada/SPARK binding for the LittleFS flash embedded filesystem"
version = "0.2.0"
licenses = "BSD-3-Clause"
authors = ["Fabien Chouteau"]
maintainers = ["Fabien Chouteau <chouteau@adacore.com>"]
maintainers-logins = ["Fabien-Chouteau"]
website = "https://github.com/Fabien-Chouteau/littlefs-ada"
tags = ["embedded", "filesystem", "nostd", "flash"]
[configuration.variables]
Assert = { type = "boolean", default = false}
Debug = { type = "boolean", default = false}
Warn = { type = "boolean", default = false}
Error = { type = "boolean", default = false}
Trace = { type = "boolean", default = false}
No_Malloc = { type = "boolean", default = true}
Max_Name_Size = { type = "integer", first = 1, last = 1022, default = 255 }
Max_File_Size = { type = "integer", first = 1, last = 2147483647, default = 2147483647 }
[origin]
commit = "ecc2fb25b7c1b711dfc83d510f1b727f11cc98fe"
url = "git+https://github.com/Fabien-Chouteau/littlefs-ada.git"
+37
View File
@@ -0,0 +1,37 @@
name = "lmdb_ada"
description = "Bindings to the Lightning Memory-Mapped Database"
version = "1.1.0"
licenses = "BSD-2-Clause AND OLDAP-2.8+"
project-files = ["lmdb.gpr"]
website = "https://git.sr.ht/~nytpu/lmdb-ada"
tags = ["database", "key-value"]
authors = ["nytpu"]
maintainers = ["nytpu <alex@nytpu.com>"]
maintainers-logins = ["nytpu"]
[gpr-externals]
LMDB_PLATFORM = ["unix", "windows"]
LMDB_LIBRARY_TYPE = ["dynamic", "relocatable", "static", "static-pic"]
LMDB_COMPILE_CHECKS = ["enabled", "disabled"]
LMDB_RUNTIME_CHECKS = ["enabled", "disabled"]
LMDB_STYLE_CHECKS = ["enabled", "disabled"]
LMDB_CONTRACTS = ["enabled", "disabled"]
LMDB_BUILD_MODE = ["debug", "optimize"]
[gpr-set-externals.'case(os)']
'linux|macos' = { LMDB_PLATFORM = "unix" }
windows = { LMDB_PLATFORM = "windows" }
[[depends-on]]
gnatcoll = "^22.0.0"
[origin]
hashes = [
"sha256:f9975436cb38096f3d87f10cf424ac32ce53f9f0420fe627c7b0ee6de393f967",
"sha512:533a6b89082fac9631bcc84c9ef8867af27c69b840d8810f4fd4d2c87d89a000b51427df68f541e9237a4fdbbb84e92611b3d2b126e7178e0515dfab527f7576",
]
url = "https://git.sr.ht/~nytpu/lmdb-ada/archive/v1.1.0.tar.gz"
@@ -102,7 +102,7 @@ tags = ["embedded", "nostd", "microbit", "nrf51"]
auto-gpr-with=false # User has to select only one project file
[[depends-on]]
microbit_bsp = "^0.1.0"
microbit_bsp = "~0.1.0"
[gpr-set-externals]
MICROBIT_BSP_RUNTIME_CHECKS="enabled"
+3 -2
View File
@@ -11,8 +11,9 @@ tags = ["embedded", "nostd", "nrf51", "nrf52", "nordic", "drivers", "ble"]
auto-gpr-with=false # User has to select only one project file
[[depends-on]]
cortex_m = "^0.2.0"
hal = "^0.1.0"
cortex_m = "~0.2.0"
hal = "~0.1.0"
gnat_arm_elf = "^11.2"
[origin]
commit = "0cf20efac2d0a64ed22844edbfcdd3acbbcdb1cc"
+18
View File
@@ -0,0 +1,18 @@
name = "rewriters"
description = "Easy, yet advanced manipulation of Ada code"
version = "22.0.0"
licenses = "BSD-3-Clause"
website = "https://github.com/TNO/Rewriters-Ada"
tags = ["manipulation", "transformation"]
authors = ["Pierre van de Laar"]
maintainers = ["Pierre van de Laar <pierre.van.de.laar@gmail.com>"]
maintainers-logins = ["pjljvandelaar"]
[[depends-on]]
libadalang = "^22.0.0"
rejuvenation = "^22.0.0"
[origin]
commit = "9b54e0c264161ebd27d0b8fd8018cd0d3a966d6e"
url = "git+https://github.com/TNO/Rewriters-Ada.git"
+16
View File
@@ -0,0 +1,16 @@
name = "simh_tapes"
description = "Library to handle SimH Standard magnetic tape image files"
version = "0.1.1"
authors = ["Stephen Merrony"]
maintainers = ["Stephen Merrony <merrony@gmail.com>"]
maintainers-logins = ["SMerrony"]
licenses = "AGPL-3.0-or-later"
website = "https://github.com/SMerrony/simh_tapes"
tags = ["legacy", "magtape", "magnetic", "tape", "emulation", "simulation"]
executables = ["simhtapetool"]
[origin]
commit = "795aadd4cbc1e8978e98a63aa8bf9a40aed36f1c"
url = "git+https://github.com/SMerrony/simh_tapes.git"
@@ -10,7 +10,7 @@ maintainers-logins = ["mosteo"]
project-files = ["components.gpr", "components-connections_server.gpr", "components-connections_server-elv_max_cube.gpr", "components-connections_server-http_server.gpr", "components-connections_server-http_server-sqlite_browser.gpr", "components-connections_server-modbus.gpr", "components-connections_server-mqtt.gpr", "components-connections_server-secure.gpr", "components-connections_server-smtp.gpr", "components-gnutls.gpr", "components-ntp.gpr", "components-odbc.gpr", "components-sqlite.gpr", "strings_edit.gpr", "tables.gpr"]
[[depends-on]]
gnat = "/=2021 & <11"
gnat = "<2020 & (<11 | >2000)"
libgnutls = "^3.5.8"
unixODBC = "^2.3"
+2 -2
View File
@@ -2,7 +2,7 @@ name = "spawn"
description = "A simple library to spawn processes and communicate with them."
long-description = "This is Glib indepentent implementation of a spawn processes interface."
version = "1.0.0"
website = "https://github.com/reznikmm/spawn"
website = "https://github.com/AdaCore/spawn"
authors = ["AdaCore", "Max Reznik"]
licenses = "GPL-3.0-only WITH GCC-exception-3.1"
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Max Reznik <reznikmm@gmail.com>"]
@@ -19,5 +19,5 @@ windows = { OS = "Windows_NT" } # to see all enumeration values, one per row.
macos = { OS = "osx" }
[origin]
url = "https://github.com/reznikmm/spawn/files/5311743/spawn-1.0.0.tar.gz"
url = "https://github.com/AdaCore/spawn/releases/download/1.0.0/spawn-1.0.0.tar.gz"
hashes = ["sha512:a3d12d2df209f006922883ffcd1b69cff87995970b5e60a1aee69251bd01094364a7f8fe546284d21d0979a34ee3e95b92a94e31de55a0a3d9acf1e7aa133066"]
+1 -1
View File
@@ -2,7 +2,7 @@ name = "spawn"
description = "A simple library to spawn processes and communicate with them."
long-description = "This is Glib indepentent implementation of a spawn processes interface."
version = "22.0.0"
website = "https://github.com/reznikmm/spawn"
website = "https://github.com/AdaCore/spawn"
authors = ["AdaCore", "Max Reznik"]
licenses = "GPL-3.0-only WITH GCC-exception-3.1"
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Max Reznik <reznikmm@gmail.com>"]
+2 -2
View File
@@ -2,7 +2,7 @@ name = "spawn_glib"
description = "A simple library to spawn processes and communicate with them."
long-description = "This is Glib integrated implementation of a spawn processes interface."
version = "1.0.0"
website = "https://github.com/reznikmm/spawn"
website = "https://github.com/AdaCore/spawn"
authors = ["AdaCore", "Max Reznik"]
licenses = "GPL-3.0-only WITH GCC-exception-3.1"
maintainers = ["Vadim Godunko <vgodunko@gmail.com>", "Max Reznik <reznikmm@gmail.com>"]
@@ -22,5 +22,5 @@ windows = { OS = "Windows_NT" } # to see all enumeration values, one per row.
macos = { OS = "osx" }
[origin]
url = "https://github.com/reznikmm/spawn/files/5311744/spawn_glib-1.0.0.tar.gz"
url = "https://github.com/AdaCore/spawn/releases/download/1.0.0/spawn_glib-1.0.0.tar.gz"
hashes = ["sha512:44f2752986dcfdea4634731e0bcb972dec129d89b57e55c9e785b47cd3ae3adc04cf70334294dbcb9dd0c54cfe2896695d9b9090b8f7d6165eaf04a0b3baaaa6"]
@@ -23,6 +23,7 @@ TP_XMLADA = ["Installed", "Disabled"]
[gpr-set-externals]
TP_XMLADA = "Installed"
PRJ_BUILD = "Release"
[environment]
ADAFLAGS.set = "-gnaty-d" # Disable no DOS line terminators check
+30
View File
@@ -0,0 +1,30 @@
name = "tlsada"
description = "Bindings for libtls"
version = "2.4.2"
licenses = "MPL-2.0"
website = "https://git.sr.ht/~nytpu/tlsada"
tags = ["tls", "ssl"]
authors = ["nytpu"]
maintainers = ["nytpu <alex@nytpu.com>"]
maintainers-logins = ["nytpu"]
[[depends-on]]
libtls = "^3.5"
[gpr-externals]
LIBRARY_TYPE = ["dynamic", "relocatable", "static", "static-pic"]
COMPILE_CHECKS = ["enabled", "disabled"]
RUNTIME_CHECKS = ["enabled", "disabled"]
STYLE_CHECKS = ["enabled", "disabled"]
CONTRACTS = ["enabled", "disabled"]
BUILD_MODE = ["debug", "optimize"]
[origin]
hashes = [
"sha256:ba066138194a8de874114fcb5871136ba8442f6f72484c1cd5540ce71383ef4d",
"sha512:1ac4355ee73b7d91baabec3f13d63dcb8c80e2f48c6fc89efe0517420ecd4c6bae9670fd9e3d6fd067f3ac3997df5e3e5080e3084623e6af83f3f32b1d97e0d7",
]
url = "https://git.sr.ht/~nytpu/tlsada/archive/v2.4.2.tar.gz"
+5
View File
@@ -8,3 +8,8 @@ maintainers-logins = ["mosteo"]
[[external]]
kind = "system"
origin = ["unixodbc-dev"]
[[external]]
kind = "version-output"
version-command = [ "odbc_config", "--version" ]
version-regexp = "([\\d\\.]+)"
+24
View File
@@ -0,0 +1,24 @@
name = "wordle"
description = "Wordle for the terminal"
version = "0.1.1"
authors = ["Alejandro R. Mosteo"]
maintainers = ["Alejandro R. Mosteo <alejandro@mosteo.com>"]
maintainers-logins = ["mosteo"]
executables = ["wordle"]
licenses = "MIT"
tags = ["wordle", "console", "terminal", "game"]
[[depends-on]]
aaa = "~0.2.6"
ansiada = "^1.0.0"
wordlelib = "~0.1.0"
wordlist = "~0.1.2"
[origin]
commit = "e2a960d82bce0914d3ed7ac5e4b0a6cd13d41b21"
url = "git+https://github.com/mosteo/wordle_ada.git"
+18
View File
@@ -0,0 +1,18 @@
name = "wordlelib"
description = "Library to track progress in a game of Wordle"
version = "0.1.0"
authors = ["Alejandro R. Mosteo"]
maintainers = ["Alejandro R. Mosteo <alejandro@mosteo.com>"]
maintainers-logins = ["mosteo"]
licenses = "MIT"
tags = ["wordle", "game", "console", "terminal"]
[[depends-on]]
aaa = "~0.2.5"
[origin]
commit = "5f907b3b1c98112eaaec9be55296625f4443d316"
url = "git+https://github.com/mosteo/wordlelib_ada.git"
+25
View File
@@ -0,0 +1,25 @@
name = "wordlist"
description = "An English word list"
version = "0.1.3"
authors = ["Alejandro R. Mosteo"]
maintainers = ["Alejandro R. Mosteo <alejandro@mosteo.com>"]
maintainers-logins = ["mosteo"]
licenses = "MIT"
tags = ["wordlist", "english"]
[[depends-on]]
aaa = "~0.2.5"
ada_toml = "~0.3.0"
gnat = ">=11 & <2000"
resources = "~0.1.0"
[configuration.variables]
Logging = { type = "Boolean", default = false }
Wordset = { type = "Enum", values = ["small", "large", "wordle"], default = "large" }
[origin]
commit = "fad16afcc384075bd0fda36d98b95d78778e46c7"
url = "git+https://github.com/mosteo/wordlist_ada.git"
+8 -1
View File
@@ -13,7 +13,14 @@ project-files = ["distrib/xmlada.gpr",
"schema/xmlada_schema.gpr",
"unicode/xmlada_unicode.gpr"]
[[actions]]
# XMLada 21.0 config scripts are not able to detect build machine on msys2.
# We explicitly set the value in on the command line:
[[actions."case(distribution)".msys2]]
type = "post-fetch"
command = ["sh", "configure", "--build=x86_64-w64-mingw32"]
# For other hosts the detection works fine:
[[actions."case(distribution)"."..."]]
type = "post-fetch"
command = ["sh", "configure"]
+2 -2
View File
@@ -21,12 +21,12 @@ disabled = true
# XMLada 22.0 config scripts are not able to detect build machine on msys2.
# We explicitly set the value in on the command line:
[[actions."case(os)".windows]]
[[actions."case(distribution)".msys2]]
type = "post-fetch"
command = ["sh", "configure", "--build=x86_64-w64-mingw32"]
# For other hosts the detection works fine:
[[actions."case(os)"."..."]]
[[actions."case(distribution)"."..."]]
type = "post-fetch"
command = ["sh", "configure"]
-76
View File
@@ -1,76 +0,0 @@
#!/bin/bash
trap 'echo "ERROR at line ${LINENO} (code: $?)" >&2' ERR
trap 'echo "Interrupted" >&2 ; exit 1' INT
set -o errexit
set -o nounset
# Ensure all alr runs are non-interactive
alias alr="alr -n"
# Detect changes
CHANGES=$(git diff --name-only HEAD~1)
# Bulk changes for the record
echo Changed files: $CHANGES
# Disable assistant. This is necessary despite the setup-alire action doing it
# too, because we sometimes run inside a Docker with fresh configuration
alr toolchain --disable-assistant
# Configure index
alr index --del local >/dev/null || true # Simplifies local testing
alr index --name local --add ./index
# Remove community index in case it has been added before
alr index --del community >/dev/null || true
diff_opts=(--minimal -U0 --line-prefix "--| " --ignore-all-space --ignore-blank-lines --ignore-cr-at-eol)
function diff_one() {
local file="$1"
local folder=$(dirname $file)
local crate=$(basename $file .toml | cut -f1 -d-)
local version=$(basename $file .toml | cut -f2- -d-)
local milestone="$crate=$version"
echo " "
echo "------8<------"
if echo $milestone | grep -q external; then
echo DIFFING external: $milestone
git diff "${diff_opts[@]}" HEAD~1 -- $file
else
echo DIFFING release: $milestone
# Locate the immediately precedent release
# For a first release, there's nothing to compare
if [ $(ls $folder | grep -v external | wc -l) -eq 1 ]; then
echo NOTHING to diff against, first crate release
return 0
fi
# Othewise, get from alr what's the immediately preceding version
local prev_milestone=$(alr show "$crate<$version" | head -1 | cut -f1 -d:)
echo DIFFING milestones $prev_milestone '-->' $milestone
if [ "$prev_milestone" == "ERROR" ]; then
echo ERROR extracting milestone:
alr show "$crate<$version"
return 1
fi
# Convert into filename
local prev_file=$folder/${prev_milestone//=/-}.toml
git diff --no-index "${diff_opts[@]}" -- $prev_file $file
fi
return 0
}
for file in $CHANGES; do
diff_one "$file" || true # keep on trying for different files
done
-203
View File
@@ -1,203 +0,0 @@
#!/bin/bash
trap 'echo "ERROR at line ${LINENO} (code: $?)" >&2' ERR
trap 'echo "Interrupted" >&2 ; exit 1' INT
set -o errexit
set -o nounset
# Ensure all alr runs are non-interactive and able to output unexpected errors
alias alr="alr -d -n"
# See whats happening
git log --graph --decorate --pretty=oneline --abbrev-commit --all | head -30
# Detect changes
CHANGES=$(git diff --name-only HEAD~1)
# Bulk changes for the record
echo Changed files: $CHANGES
# Disable assistant. This is necessary despite the setup-alire action doing it
# too, because we sometimes run inside a Docker with fresh configuration
alr toolchain --disable-assistant
# Show alr metadata
alr version
# Configure index
alr index --name local --add ./index
# Remove community index in case it has been added before
alr index --del community || true
# Show environment for the record
env
# Check index for obsolescent features
echo STRICT MODE index checks
alr index --check
# Check no warning during index loading.
# Such a warning would also happen during `alr printenv`, breaking it.
# TODO: remove after old license deprecation.
alr search --crates 2>&1 | grep "Warning:" && exit 1
# Test crate
for file in $CHANGES; do
if [[ $file == index.toml ]]; then
echo Skipping index metadata file: $file
continue
fi
if [[ $file != *.toml ]]; then
echo Skipping non-crate file: $file
continue
fi
if ! [ -f ./$file ]; then
echo Skipping deleted file: $file
continue
fi
# Checks passed, this is a crate we must test
is_system=false
crate=$(basename $file .toml | cut -f1 -d-)
version=$(basename $file .toml | cut -f2- -d-)
version_noextras=$(echo $version | cut -f1 -d- | cut -f1 -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 $milestone
alr show $milestone
alr show --external $milestone
alr show --external-detect $milestone
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 $milestone
alr show --solve --detail --external-detect $milestone
solution=$(alr show --solve --detail --external-detect $milestone)
# Fail if there are pins in the manifest
if grep -q 'Pins (direct)' <<< $crateinfo ; then
echo "FAIL: release $milestone manifest contains pins"
exit 1
fi
# Skip on explicit unavailability
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 $milestone with MISSING external dependencies
continue
fi
# Update system repositories whenever a detected system package is involved,
# either as dependency or as the crate being tested.
if grep -iq 'origin: system' <<< $solution; then
echo "UPDATING system repositories with sudo from user ${USERNAME:-unset} ($UID:-unset)..."
type apt-get 2>/dev/null && sudo apt-get update || true
type pacman 2>/dev/null && sudo pacman -Syy || true
else
echo No need to update system repositories
fi
# Install an Alire-provided gprbuild whenever there is a non-external gnat in solution
if grep -iq 'gnat_' <<< $solution && ! grep -iq 'gnat_external' <<< $solution; then
gnat_dep=$(grep -E -o '^ gnat_[a-z0-9_]*=\S*' <<< $solution | tail -1 | xargs)
gnat_dep=${gnat_dep:-gnat_native}
echo "INSTALLING indexed gprbuild compatible with $gnat_dep"
alr toolchain --select $gnat_dep gprbuild
# -E for regex, -o for only the matched part, xargs to trim space
# We must give both the gnat in the solution and gprbuild, so both are compatible
# Even if we default to gnat_native, that would select the appropriate gprbuild
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
continue
elif grep -q 'Origin: system package' <<< $crateinfo ; then
echo INSTALLING detected system crate $milestone
is_system=true
elif grep -q 'Not found:' <<< $crateinfo && \
grep -q 'There are external definitions' <<< $crateinfo
then
echo SKIPPING undetected external crate $crate
continue
fi
# Detect missing dependencies for clearer error
if grep -q 'Dependencies cannot be met' <<< $solution ; then
echo FAIL: crate $milestone 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
elif $is_system; then
echo SKIPPING BUILD for SYSTEM crate, FETCHING only
fi
alr -q get $milestone
if $is_system; then
echo DETECTING INSTALLED PACKAGE via crate $milestone
alr show --external-detect $milestone
elif $is_binary; then
echo FETCHED BINARY crate OK
else
echo FETCHED SOURCE crate OK, deployed at $(alr get --dirname $milestone)
# Enter the deployment dir
cd $(alr get --dirname $milestone)
echo BUILD ENVIRONMENT
alr printenv
echo BUILDING CRATE
alr build --release
# As normally dependencies/executables are built in release mode, we also
# check any submissions in this mode. Should we go overboard and check the
# three profile modes?
echo LISTING EXECUTABLES of crate $milestone
alr run --list
cd ..
fi
echo CRATE $milestone TEST ENDED SUCCESSFULLY
done