Compare commits

..

4 Commits

Author SHA1 Message Date
Alejandro R. Mosteo 41424df44d Remove hard-coded repo 2026-05-22 17:51:39 +02:00
Alejandro R. Mosteo 2e187a6e2c Refactor commonalities and general tidy-up 2026-05-22 17:47:42 +02:00
Alejandro R. Mosteo 23a2d783a2 Touch libhello to trigger tests 2026-05-22 17:13:37 +02:00
Alejandro R. Mosteo 17f2b68db5 New crate name check, plus reusable workflow 2026-05-22 17:09:50 +02:00
87 changed files with 203 additions and 3380 deletions
+31
View File
@@ -0,0 +1,31 @@
name: Check out index repos
description: >
Check out alire-index with full history (needed by diff detectors
and check-author; grafted partial branches cause confusion), and
alire-index-checks checked out at the PR base branch.
Also exports CHECKS_REPO for use in subsequent run steps.
inputs:
checks_repo:
description: Name of the checks repository.
required: false
default: alire-index-checks
runs:
using: composite
steps:
- name: Check out alire-index
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check out alire-index-checks
uses: actions/checkout@v4
with:
repository: alire-project/${{ inputs.checks_repo }}
ref: ${{ github.base_ref }}
path: ${{ inputs.checks_repo }}
- name: Export CHECKS_REPO
shell: bash
run: echo "CHECKS_REPO=${{ inputs.checks_repo }}" >> "$GITHUB_ENV"
+45
View File
@@ -0,0 +1,45 @@
name: Set up alr
description: >
Install alr, stable or devel, based on the PR target branch.
The stable version is provided here as the single authoritative source.
inputs:
version:
description: Stable alr version to install; update here to bump.
required: false
default: '2.1.0'
toolchain:
description: >
Passed verbatim to setup-alire's toolchain input
(e.g. --disable-assistant). Omit to use the action default.
required: false
default: ''
runs:
using: composite
steps:
- name: Set up stable `alr`
if: contains(github.base_ref, 'stable-') && inputs.toolchain == ''
uses: alire-project/setup-alire@v5
with:
version: ${{ inputs.version }}
- name: Set up stable `alr` (custom toolchain)
if: contains(github.base_ref, 'stable-') && inputs.toolchain != ''
uses: alire-project/setup-alire@v5
with:
version: ${{ inputs.version }}
toolchain: ${{ inputs.toolchain }}
- name: Set up devel `alr`
if: contains(github.base_ref, 'devel-') && inputs.toolchain == ''
uses: alire-project/setup-alire@v5
with:
branch: master
- name: Set up devel `alr` (custom toolchain)
if: contains(github.base_ref, 'devel-') && inputs.toolchain != ''
uses: alire-project/setup-alire@v5
with:
branch: master
toolchain: ${{ inputs.toolchain }}
+15 -33
View File
@@ -4,16 +4,19 @@ name: Build Crate (Distro toolchain)
# Build the crate on the platforms with a supported package manager
# and using the distro-supplied GNAT compiler (with Alire's FSF fallback).
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
ALR_VERSION: 2.1.1
on:
pull_request:
paths:
- 'index/**.toml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
pull-requests: write
jobs:
build:
@@ -38,38 +41,17 @@ jobs:
- ubuntu-lts # Ubuntu LTS is a common Debian derivative
steps:
- name: Check out alire-index
uses: actions/checkout@v4
with:
fetch-depth: 0
# Needed to be able to diff and obtain changed files. Furthermore, we
# need the full history or else grafted partial branches confuse the
# changed files detectors (in both scripts/gh-build-crate.sh and
# check-author action).
- name: Check out repos
uses: ./.github/actions/checkout-repos
- name: Check out alire-index-checks
uses: actions/checkout@v4
- name: Set up `alr`
uses: ./.github/actions/setup-alr
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@latest
with:
toolchain: --disable-assistant # We want to use the external ones in this workflow
version: ${{env.ALR_VERSION}}
- name: Set up devel `alr`
if: contains(github.base_ref, 'devel-')
uses: alire-project/setup-alire@latest
with:
toolchain: --disable-assistant # We want to use the external ones in this workflow
branch: master
# External distro toolchain is used; skip Alire's own
toolchain: --disable-assistant
- name: Test crate (${{matrix.tag}})
uses: mosteo-actions/docker-run@v2
uses: mosteo-actions/docker-run@v1
with:
image: ghcr.io/alire-project/docker/gnat:${{matrix.tag}}
command: ${{env.CHECKS_REPO}}/scripts/gh-build-crate.sh
+12 -20
View File
@@ -2,14 +2,11 @@
# When the same index version is used by various stable and devel `alr`
# versions, we want to make sure all of them understand the index properly.
# Besides, there are
name: Build Crate (alr dev)
# Build the crate with a native toolchain from Alire
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
PACMAN: C:\Users\runneradmin\AppData\Local\alire\cache\msys64\usr\bin\pacman
on:
@@ -17,6 +14,14 @@ on:
paths:
- 'index/**.toml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
pull-requests: write
jobs:
build:
@@ -37,28 +42,15 @@ jobs:
- windows-latest
steps:
- name: Check out alire-index
uses: actions/checkout@v4
with:
fetch-depth: 0
# Needed to be able to diff and obtain changed files. Furthermore, we
# need the full history or else grafted partial branches confuse the
# changed files detectors (in both scripts/gh-build-crate.sh and
# check-author action).
- name: Check out alire-index-checks
uses: actions/checkout@v4
with:
repository: ${{env.CHECKS_ORG}}/${{env.CHECKS_REPO}}
ref: ${{github.base_ref}}
path: ${{env.CHECKS_REPO}}
- name: Check out repos
uses: ./.github/actions/checkout-repos
- name: Set up devel `alr`
uses: alire-project/setup-alire@latest
uses: alire-project/setup-alire@v5
with:
branch: 'master'
- name: Install tar from msys2 (Windows) # Git tar in Actions VM does not seem to work)
- name: Install tar from msys2 (Windows) # Git tar in Actions VM does not seem to work
if: matrix.os == 'windows-latest'
run: ${{env.PACMAN}} --noconfirm -S tar
+13 -31
View File
@@ -4,9 +4,6 @@ name: Build Crate (Alire toolchain)
# Build the crate with a native toolchain from Alire
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
ALR_VERSION: 2.1.1
PACMAN: C:\Users\runneradmin\AppData\Local\alire\cache\msys64\usr\bin\pacman
on:
@@ -14,6 +11,14 @@ on:
paths:
- 'index/**.toml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
pull-requests: write
jobs:
build:
@@ -34,37 +39,14 @@ jobs:
- windows-latest
steps:
- name: Check out alire-index
uses: actions/checkout@v4
with:
fetch-depth: 0
# Needed to be able to diff and obtain changed files. Furthermore, we
# need the full history or else grafted partial branches confuse the
# changed files detectors (in both scripts/gh-build-crate.sh and
# check-author action).
- name: Check out alire-index-checks
uses: actions/checkout@v4
with:
repository: ${{env.CHECKS_ORG}}/${{env.CHECKS_REPO}}
ref: ${{github.base_ref}}
path: ${{env.CHECKS_REPO}}
- name: Check out repos
uses: ./.github/actions/checkout-repos
# By default, this also sets up the newest indexed native toolchain
- name: Set up stable `alr`
if: contains(github.base_ref, 'stable-')
uses: alire-project/setup-alire@latest
with:
version: ${{env.ALR_VERSION}}
- name: Set up `alr`
uses: ./.github/actions/setup-alr
# By default, this also sets up the newest indexed native toolchain
- name: Set up devel `alr`
if: contains(github.base_ref, 'devel-')
uses: alire-project/setup-alire@latest
with:
branch: 'master'
- name: Install tar from msys2 (Windows) # Git tar in Actions VM does not seem to work)
- name: Install tar from msys2 (Windows) # Git tar in Actions VM does not seem to work
if: matrix.os == 'windows-latest'
run: ${{env.PACMAN}} --noconfirm -S tar
+12 -24
View File
@@ -6,16 +6,19 @@
name: Build Crate (MacPorts)
# Build the crate with a native toolchain from Alire
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
ALR_VERSION: 2.1.1
on:
pull_request:
paths:
- 'index/**.toml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
pull-requests: write
jobs:
build:
@@ -33,26 +36,11 @@ jobs:
- macos-latest # arm64
steps:
- name: Check out alire-index
uses: actions/checkout@v4
with:
fetch-depth: 0
# Needed to be able to diff and obtain changed files. Furthermore, we
# need the full history or else grafted partial branches confuse the
# changed files detectors (in both scripts/gh-build-crate.sh and
# check-author action).
- name: Check out repos
uses: ./.github/actions/checkout-repos
- name: Check out alire-index-checks
uses: actions/checkout@v4
with:
repository: ${{env.CHECKS_ORG}}/${{env.CHECKS_REPO}}
ref: ${{github.base_ref}}
path: ${{env.CHECKS_REPO}}
- name: Set up stable `alr`
uses: alire-project/setup-alire@latest
with:
version: ${{env.ALR_VERSION}}
- name: Set up `alr`
uses: ./.github/actions/setup-alr
- name: Disable Homebrew
run: rm -f $(which brew)
+7 -1
View File
@@ -5,11 +5,17 @@ on:
paths:
- 'index/**.toml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
check:
uses: ./.github/workflows/check-with-script.yml
with:
name: Author
script: check-author.sh
script_arg: ${{github.event.pull_request.user.login}}
setup_alr: true
+7 -1
View File
@@ -5,10 +5,16 @@ on:
paths:
- 'index/**.toml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
check:
uses: ./.github/workflows/check-with-script.yml
with:
name: Crate Name
script: check-crate-name.sh
script_arg: ${{github.event.pull_request.title}}
+19 -20
View File
@@ -1,35 +1,34 @@
name: Check Index
env:
ALR_VERSION: 2.1.1
on: pull_request
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
check:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- name: Set up stable `alr`
if: contains(github.base_ref, 'stable-')
uses: alire-project/setup-alire@latest
with:
version: ${{env.ALR_VERSION}}
- name: Set up `alr`
uses: ./.github/actions/setup-alr
- name: Set up devel `alr`
if: contains(github.base_ref, 'devel-')
uses: alire-project/setup-alire@latest
with:
branch: master
- name: List current index
run: alr index --list
- run: alr index --list
- run: alr index --add=. --name=local_index
- name: Add local index
run: alr index --add=. --name=local_index
# Check index contents for unknown config variables
- run: alr index --check
- name: Check index
run: alr index --check
- run: alr index --update-all
- name: Update index
run: alr index --update-all
- run: alr search --crates
- name: List crates
run: alr search --crates
-16
View File
@@ -1,16 +0,0 @@
name: Check Schema
on:
pull_request:
paths:
- 'index/**.toml'
jobs:
check:
uses: ./.github/workflows/check-with-script.yml
with:
name: Schema
script: check-schema.sh
script_arg: alire/schemas/manifest-schema.yaml
setup_python: true
fetch_schema: true
+7 -55
View File
@@ -3,10 +3,6 @@ name: Check With Script
on:
workflow_call:
inputs:
name:
description: Display name for the check job
required: true
type: string
script:
description: Script filename under alire-index-checks/scripts/
required: true
@@ -20,66 +16,22 @@ on:
required: false
type: boolean
default: false
setup_python:
description: Whether to set up Python and install requirements.txt
required: false
type: boolean
default: false
fetch_schema:
description: Whether to clone the Alire repo (manifest JSON Schema)
required: false
type: boolean
default: false
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
ALR_VERSION: 2.1.1
SCHEMA_REPO: https://github.com/alire-project/alire
jobs:
check:
name: ${{inputs.name}}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
# Needed to be able to diff and obtain changed files. Furthermore,
# we need the full history or else grafted partial branches confuse
# the changed files detectors.
- name: Check out repos
uses: ./.github/actions/checkout-repos
- name: Check out alire-index-checks
uses: actions/checkout@v4
with:
repository: ${{env.CHECKS_ORG}}/${{env.CHECKS_REPO}}
ref: ${{github.base_ref}}
path: ${{env.CHECKS_REPO}}
- name: Set up stable `alr`
- name: Set up `alr`
if: inputs.setup_alr
uses: alire-project/setup-alire@latest
with:
version: ${{env.ALR_VERSION}}
- name: Set up Python
if: inputs.setup_python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install Python dependencies
if: inputs.setup_python
run: pip install -r ${{env.CHECKS_REPO}}/requirements.txt
shell: bash
- name: Fetch manifest schema
if: inputs.fetch_schema
run: git clone --depth 1 "$SCHEMA_REPO" alire
shell: bash
uses: ./.github/actions/setup-alr
- name: Run check
run: >
${{env.CHECKS_REPO}}/scripts/${{inputs.script}}
"${{inputs.script_arg}}"
"$SCRIPT_ARG"
shell: bash
env:
SCRIPT_ARG: ${{inputs.script_arg}}
+1 -1
View File
@@ -12,7 +12,7 @@ jobs:
steps:
- uses: actions/stale@v7
with:
debug-only : false # Set to true to work in dry-run mode
debug-only: false # Set to true to work in dry-run mode
stale-pr-message: 'This PR is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 30 days.'
close-pr-message: 'This PR was closed because it has been stalled for 90 days with no activity.'
days-before-stale: 60
+12 -31
View File
@@ -5,16 +5,18 @@
name: Diff release
env:
CHECKS_ORG: alire-project
CHECKS_REPO: alire-index-checks
ALR_VERSION: 2.1.1
on:
pull_request:
paths:
- 'index/**.toml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
DIFF:
@@ -22,34 +24,13 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out alire-index
uses: actions/checkout@v4
with:
fetch-depth: 0
# Needed to be able to diff and obtain changed files. Furthermore, we
# need the full history or else grafted partial branches confuse the
# changed files detector
- name: Check out repos
uses: ./.github/actions/checkout-repos
- name: Check out alire-index-checks
uses: actions/checkout@v4
- name: Set up `alr`
uses: ./.github/actions/setup-alr
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@latest
with:
toolchain: --disable-assistant # We don't need the compiler
version: ${{env.ALR_VERSION}}
- name: Set up devel `alr`
if: contains(github.base_ref, 'devel-')
uses: alire-project/setup-alire@latest
with:
toolchain: --disable-assistant # We don't need the compiler
branch: master
toolchain: --disable-assistant # No compiler needed
- name: <<DIFF RELEASES>>
run: ${{env.CHECKS_REPO}}/scripts/diff-release.sh || true # No deal breaker if failed
+3 -6
View File
@@ -6,15 +6,12 @@ Because Alire comes late in the history of the Ada and SPARK languages we will n
- Respect the ownership of projects: Owner and maintainers of a project deserve to be credited for their work.
- Avoid user confusion on the name of crates: Crate names should be clear with regards to the project they contain. For instance, do not try to impersonate existing crates or projects.
To that extent we will potentially reject a crate or transfer the ownership of a crate.
To that extent we will potentially reject a create or transfer the ownership of a crate.
We count on the goodwill of the contributors to help us conduct this moderation in a kind and courteous way. Do not submit a crate to the Alire index if you are not willing to comply with this policy.
As the Alire project matures, we expect to do less moderation and potentially remove this policy in favor of a first come, first served policy.
As the Alire project matures, we expect to do less moderation and potentially remove this policy in favor of a first come, first served policy.
# Release immutability
A release (identified by a unique semantic version) is protected against
changes by its integrity hashes. If errors are identified post-publication, a
release could be marked unavailable, or superseded by a new one (using the
appropriate major/minor/patch/build version changes), but not modified.
A release (identified by a unique semantic version) is protected against changes by its integrity hashes. If errors are identified post-publication, a release could be withdrawn, or superseded by a new one (using the appropriate major/minor/patch/build version changes), but not modified.
-56
View File
@@ -1,56 +0,0 @@
This document describes the manual process to review a PR for a release
submission to the Alire's community index.
## Purpose of the review process
- Ensure submitted releases build and resolve on at least some platforms.
- Keep crate names clear and unambiguous (see [POLICY.md](POLICY.md)).
- Protect users from broken, misleading, or malicious manifests.
- Help submitters land good releases, not gatekeep them.
## Checks for all releases
- [ ] Wait for CI checks to pass. Do not merge with failing tests unless a
justified reason is given in the PR comments.
- [ ] Help the submitter when an error is well known or the cause is readily
apparent.
- [ ] Missing dependencies are not a failure by themselves: verify that at
least some platforms resolve and build.
- [ ] Build failures caused by dependencies out of the control of the
submitter are not a reason to block the PR.
- [ ] Inspect the submitted manifest for anything untoward.
- [ ] For repeat releases, check the Diff workflow output to quickly spot the
important changes against the previous release.
- [ ] Tags are meaningful and descriptive.
- [ ] `gpr-set-externals` settings are appropriate (see Common pitfalls below).
- [ ] System library dependencies are declared and not left implicit. If a
needed external crate does not exist yet, request its external to be
added in the same PR. Examples:
- https://github.com/alire-project/alire-index/blob/stable-1.4.0/index/li/libcurl/libcurl-external.toml
- https://github.com/alire-project/alire-index/blob/stable-1.4.0/index/ma/make/make-external.toml
## Checks for new crates (first release)
- [ ] The crate name does not collide with a popular existing Ada/SPARK
project not yet indexed (see [POLICY.md](POLICY.md)). Do not let a
submission impersonate or shadow an established project.
- [ ] Inspect the upstream repository: confirm it is a real project with real
code, not a placeholder or squatting attempt, or otherwise deceitful.
## Common pitfalls
- **Test-only dependencies in the root crate.** Crates depending on e.g.
`gnattest` or `gnatprove` must not have them in the root crate; those are
only for testing the crate itself. Request moving them to a nested crate
and point the submitter to the catalog spec section on testing with pins:
https://github.com/alire-project/alire/blob/master/doc/catalog-format-spec.md#using-pins-for-crate-testing
- **Use of `gpr-set-externals`.** Setting a GPR external value is:
- OK to configure the build for the current environment (OS, architecture).
- OK for crates that produce a binary and are not intended as dependencies.
- NOT OK to fix the build mode (devel/release) on a library crate; clients
must be able to set it themselves.
## Approving
- [ ] Once everything checks out, tag the @alire-project/crate-reviewers team
in a comment stating that the PR is OK to merge.
-61
View File
@@ -1,61 +0,0 @@
name = "adacl"
description = "Ada Class Library: Strings, Tracing, AUnit, Smart Pointers, Getopt"
long-description = """A versatile Ada 2022 class library for robust application development.
Features:
- Getopt: Command-line argument parser with wide character support
- Strings: Utilities for String, Wide_String, and Wide_Wide_String
- Calendar: Time and date utilities with wide character support
- Tracing: Diagnostic trace utility with wide character support
- Protected Queue: Supports finish, wait, and abort operations
- Smart Pointers:
- Reference-counted pointers
- Unique pointers (C++-style)
- Shared pointers (C++-style)
Related crates:
- AUnit: AUnit-Compatible Assertions for access, array, discrete, floating-point, fixed-point, decimal, and vector types
- EAStrings: Encoding-aware string utilities
- RegEx: SPITBOL-inspired pattern matching and regular expressions for String, Wide_String, and Wide_Wide_String
- SAR: Text search and replace for String, Wide_String, and Wide_Wide_String
Source: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl/src/)
Documentation: [GNATdoc](https://adacl.sourceforge.net/gnatdoc/adacl/index.html)
"""
version = "7.1.2"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://sourceforge.net/projects/adacl/"
tags = ["library", "command-line", "trace", "logging", "string", "aunit", "assert", "container", "smart-pointer", "ada2022"]
[build-switches]
"*".ada_version = "Ada2022"
"*".source_encoding = "UTF_8"
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.debug_info = "Yes"
development.optimization = "Debug"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.debug_info = "No"
release.optimization = "Performance"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.debug_info = "Yes"
validation.optimization = "Debug"
validation.runtime_checks = "Everything"
# vim: set textwidth=0 nowrap tabstop=8 shiftwidth=4 softtabstop=4 expandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:f164e66e7ab67aba80a4947feccd1012b1ab7d5a94584fd73884851e5daaca41",
"sha512:5ba56c74a14149e264b8dcc0c0b85a36d08adc929a464e2ca792bce5b675c562acbe18c01b7a9e515a05c0f4a821d71197117e49471351bef1b1da7f6dc9c008",
]
url = "https://sourceforge.net/projects/adacl/files/Alire/adacl-7.1.2.tgz"
-109
View File
@@ -1,109 +0,0 @@
name = "adacl_aunit"
description = "Ada 2022 AUnit with readable asserts & paramerised test"
long-description = """A versatile Ada 2022 testing library, enhancing AUnit with readable assertions and parameterised tests.
## Features
### AUnit-Compatible Assertions
- Generic support for access, array, discrete, floating-point, fixed-point, decimal, vector types, and files.
- **Readable Error Messages**: Assertions provide detailed feedback.
Example for unbounded strings:
```ada
procedure Equal
(Actual : Ada.Strings.Unbounded.Unbounded_String;
Expected : String;
Name : String;
Source : String := GNAT.Source_Info.File;
Line : Natural := GNAT.Source_Info.Line)
is
use Ada.Strings.Unbounded;
begin
if not (Actual = Expected) then
Report_Assertion
(Message => "In string «" & Name & "» the " & Actual'Image & " is not equal to " & Expected'Image,
Source => Source,
Line => Line);
end if;
end Equal;
```
This yields clear, context-rich error messages, surpassing standard AUnit
output.
## Parameterised Tests
Run the same test with varied inputs and expected values, boosting coverage
efficiently.
Example from hp41cx_tools:
```ada
overriding procedure Register_Tests (T : in out Test_Case) is
pragma Debug (AdaCL.Trace.Entering (In_Parameter => T.Name.all'Image));
begin
T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, "WAKE_UP", "2024-12-01 08:00:00", [3, 9, 4, 2, 0, 2, 8, 8, 0, 0, 0], 3942028800.0);
T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, "^LBLTEST", "2025-07-22 12:00:00", [3, 9, 6, 2, 1, 7, 4, 4, 0, 0, 0], 3962174400.0);
T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, "TONE", "2025-11-12 09:12:34", [3, 9, 7, 1, 9, 2, 7, 5, 5, 4, 0], 3971927554.0);
T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, "FRACTION", "2025-11-12 09:12:34.5", [3, 9, 7, 1, 9, 2, 7, 5, 5, 4, 5], 3971927554.5);
T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, "REPEAT24", "24:00:00", [0, 0, 0, 0, 0, 8, 6, 4, 0, 0, 0], 0000086400.0);
T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, "REPEAT'First", "0000:00:01.0", [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], 0000000010.0);
T.Parameter.Register_Routine (T, Test_To_HP_Duration_01'Access, "REPEAT'Last", "9999:59:59.9", [0, 0, 3, 5, 9, 9, 9, 9, 9, 9, 9], 0035999999.9);
pragma Debug (AdaCL.Trace.Exiting);
return;
end Register_Tests;
```
Registering tests multiple times with different data enhances test coverage
without redundant code.
Source: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl_aunit/test/src/)
Documentation: [GNATdoc](https://adacl.sourceforge.net/gnatdoc/adacl_aunit_test/index.html)
"""
version = "7.1.2"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://sourceforge.net/projects/adacl_aunit/"
tags = ["library", "aunit", "assert", "ada2022"]
[build-switches]
"*".ada_version = "Ada2022"
"*".source_encoding = "UTF_8"
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.debug_info = "Yes"
development.optimization = "Debug"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.debug_info = "No"
release.optimization = "Performance"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.debug_info = "Yes"
validation.optimization = "Debug"
validation.runtime_checks = "Everything"
[[depends-on]]
adacl = "^7.1"
aunit = "^26.0.0"
# [[pins]]
# adacl = { path = "../adacl" }
# vim: set textwidth=0 nowrap tabstop=8 shiftwidth=4 softtabstop=4 expandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:26ea0bad6222af3bed97456328d75ae292e37de7939e2f948b58ce1f613f10e7",
"sha512:0fa1159df8cbadba08eab8c474ac8d252d2f6513530d2030d321abda32fe71ee3fbd6fe28ed369e7c4e1070862e1133c8380191259e8af12d0274f7b04ca643f",
]
url = "https://sourceforge.net/projects/adacl/files/Alire/adacl_aunit-7.1.2.tgz"
@@ -1,70 +0,0 @@
name = "adacl_eastrings"
description = "AdaCL: Encoding-Aware String Utilities"
long-description = """Encoding-aware string utilities for Ada 2022, developed by Björn Persson for robust internationalization (i18n).
Supports text processing with the following encodings:
- Universal Character Set 4, Big-Endian (UCS-4 BE)
- Universal Character Set 4, Little-Endian (UCS-4 LE)
- Universal Character Set 2, Big-Endian (UCS-2 BE)
- Universal Character Set 2, Little-Endian (UCS-2 LE)
- Unicode Transformation Format 16, Big-Endian (UTF-16 BE)
- Unicode Transformation Format 16, Little-Endian (UTF-16 LE)
- Unicode Transformation Format 8 (UTF-8)
- American Standard Code for Information Interchange (ASCII)
- ISO/IEC 8859-1 (Latin-1)
- Code Page 850 (DOS Latin-1)
- Windows Code Page 1252
Additional features:
- Text I/O for encoding-aware input/output
- Basic command-line parsing for internationalized text
Licensed under GPL-3.0-or-later. Integrates with the Ada Class Library (AdaCL).
Source: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl_eastrings/src/)
Documentation: [GNATdoc](https://adacl.sourceforge.net/gnatdoc/adacl_eastrings/index.html)
"""
version = "7.1.2"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>" ,"Björn Persson <rombobeorn@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>" ,"Björn Persson <rombobeorn@users.sourceforge.net>"]
maintainers-logins = ["krischik", "rombobeorn"]
website = "https://sourceforge.net/projects/adacl/"
tags = ["library", "strings", "i18n", "ada2022"]
[build-switches]
"*".ada_version = "Ada2022"
"*".source_encoding = "UTF_8"
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.debug_info = "Yes"
development.optimization = "Debug"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.debug_info = "No"
release.optimization = "Performance"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.debug_info = "Yes"
validation.optimization = "Debug"
validation.runtime_checks = "Everything"
[[depends-on]]
adacl = "^7.1"
# [[pins]]
# adacl = { path = "../adacl" }
# vim: set textwidth=0 nowrap tabstop=8 shiftwidth=4 softtabstop=4 expandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:6bb988d2cb432befb802f7f026b0381f5621b73339b270351f9cba169d1c9493",
"sha512:92a0af84f6133f80f1da80905bf6e73f4e91a2c9c8c6f4418d12a75f93a62be1b1d0946011bd0e425356314dfbc41a16bb7bb128abcc94b149ca122f39ce881e",
]
url = "https://sourceforge.net/projects/adacl/files/Alire/adacl_eastrings-7.1.2.tgz"
@@ -1,77 +0,0 @@
name = "adacl_embedded"
description = "Ada Embedded Library"
long-description = """
## AdaCL Embedded - Lightweight Embedded Ada Library
AdaCL-Embedded focuses on embedded and real-time programming on the Raspberry Pi and similar platforms.
It favours predictability, minimal runtime overhead, and static data structures. Object-oriented programming, unbounded
strings, and wide strings are avoided or kept to an absolute minimum.
### Current Features
* **AdaCL.Embedded.Trace** - Interrupt-safe, lightweight tracing facility using a ring buffer.
### Configuration Options
* `Variant`
* `no_tasking` - for the lightest runtimes (no protected objects). Also works well with interrupt-driven runtimes.
* `tasking` - for runtimes with tasking support.
* `Event_Log_Buffer_Length` - maximum length of each trace line (default: 200, min: 1, max: 1024)
* `Event_Log_Buffer_Size` - number of entries in the ring buffer (default: 0, max: 1024, min: 0 (buffer disabled))
A text length of 200 is the standart minimum used in the Ada Standart (i.E. `Ada.Text_IO.Get_Line`, exception messages,
etc.pp).
Memory needed is approximately `(Event_Log_Buffer_Length + 4) * Event_Log_Buffer_Size` bytes, plus some overhead for the
buffer management. For example: 1024 buffer size with 200 line lenght is about the maximum size that can be used with
the static memory of Raspberry Pi Pico. The buffer size can be set to 0 to disable the trace buffer and the related code
completely.
Source: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl-embedded/src/)
Documentation: [GNATdoc](https://adacl-embedded.sourceforge.net/gnatdoc/adael/index.html)
"""
version = "7.1.1"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://sourceforge.net/projects/adacl/"
tags = ["library", "embedded", "trace", "logging", "raspberry-pi", "ada2022"]
[build-switches]
"*".ada_version = "Ada2022"
"*".source_encoding = "UTF_8"
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.debug_info = "Yes"
development.optimization = "Debug"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.debug_info = "No"
release.optimization = "Performance"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.debug_info = "Yes"
validation.optimization = "Debug"
validation.runtime_checks = "Everything"
[configuration.variables]
Variant = {type = "Enum", values = ["tasking", "no_tasking"], default = "no_tasking" }
Event_Log_Buffer_Length = {type = "Integer", first = 1, last = 1024, default = 200 }
Event_Log_Buffer_Size = {type = "Integer", first = 0, last = 1024, default = 0 }
# vim: set textwidth=120 wrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:4feddadbc5e900b65ccfa3bed4a4becb9afb9cc89ac3d865e0ea0ecf9477eee6",
"sha512:e611feee8b969e7bf3ca61033a70660ae389f06264ed94027d5d12a55ded8f2e9f44088155740182e627431f12b66753745faba18016f431490ce64f6868e43b",
]
url = "https://sourceforge.net/projects/adacl/files/Alire/adacl_embedded-7.1.1.tgz"
@@ -1,76 +0,0 @@
name = "adacl_embedded"
description = "Ada Embedded Library"
long-description = """## AdaCL Embedded - Lightweight Embedded Ada Library
AdaCL-Embedded focuses on embedded and real-time programming on the Raspberry Pi and similar platforms.
It favours predictability, minimal runtime overhead, and static data structures. Object-oriented programming, unbounded
strings, and wide strings are avoided or kept to an absolute minimum.
### Current Features
* **AdaCL.Embedded.Trace** - Interrupt-safe, lightweight tracing facility using a ring buffer.
* **AdaCL.Embedded.Text_IO** - Extended Ada.Text_IO.
### Configuration Options
* `Variant`
* `no_tasking` - for the lightest runtimes (no protected objects). Also works well with interrupt-driven runtimes.
* `tasking` - for runtimes with tasking support.
* `Event_Log_Buffer_Length` - maximum length of each trace line (default: 200, min: 1, max: 1024)
* `Event_Log_Buffer_Size` - number of entries in the ring buffer (default: 0, max: 1024, min: 0 (buffer disabled))
A text length of 200 is the standart minimum used in the Ada Standart (i.E. `Ada.Text_IO.Get_Line`, exception messages,
etc.pp).
Memory needed is approximately `(Event_Log_Buffer_Length + 4) * Event_Log_Buffer_Size` bytes, plus some overhead for the
buffer management. For example: 1024 buffer size with 200 line lenght is about the maximum size that can be used with
the static memory of Raspberry Pi Pico. The buffer size can be set to 0 to disable the trace buffer and the related code
completely.
Source: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl-embedded/src/)
Documentation: [GNATdoc](https://adacl-embedded.sourceforge.net/gnatdoc/adael/index.html)
"""
version = "7.1.2"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://sourceforge.net/projects/adacl/"
tags = ["library", "embedded", "trace", "logging", "raspberry-pi", "ada2022"]
[build-switches]
"*".ada_version = "Ada2022"
"*".source_encoding = "UTF_8"
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.debug_info = "Yes"
development.optimization = "Debug"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.debug_info = "No"
release.optimization = "Performance"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.debug_info = "Yes"
validation.optimization = "Debug"
validation.runtime_checks = "Everything"
[configuration.variables]
Variant = {type = "Enum", values = ["tasking", "no_tasking"], default = "no_tasking" }
Event_Log_Buffer_Length = {type = "Integer", first = 1, last = 1024, default = 200 }
Event_Log_Buffer_Size = {type = "Integer", first = 0, last = 1024, default = 0 }
# vim: set textwidth=120 wrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:fe91db4f952655498fd733d3f4132d55f33e5286a296c1e9b9a62d03afa98d6c",
"sha512:a0fc7fe07d29e8e26d2a16f8664297d1359be2ea4a0ba6d9dd9944162dea1f6b220263133707a52e305a0c7026f4824ac5c6167a96e70946249f7412fdc16279",
]
url = "https://sourceforge.net/projects/adacl/files/Alire/adacl_embedded-7.1.2.tgz"
@@ -1,62 +0,0 @@
name = "adacl_regexp"
description = "AdaCL: Regex and SPITBOL Patterns with Wide Character Support"
long-description = """Regular expression and SPITBOL pattern matching for Ada 2022, with wide character support.
Features:
- Regular Expressions:
- Generic implementation for any discrete element array
- Instantiations for String, Wide_String, and Wide_Wide_String
- SPITBOL Patterns:
- Pattern construction and matching, inspired by Macro-SPITBOL (Robert Dewar)
- Supports String, Wide_String, and Wide_Wide_String
- Forked from GNAT.Regexp and GNAT.Spitbol with enhanced wide and wide-wide character support
Licensed under GPL-3.0-or-later. Integrates with the Ada Class Library (AdaCL).
Source: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl_regexp/src/)
Documentation: [GNATdoc](https://adacl.sourceforge.net/gnatdoc/adacl_regexp/index.html)
"""
version = "7.1.2"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://sourceforge.net/projects/adacl/"
tags = ["library", "strings", "wide-strings", "search", "regexp", "unicode", "ada2022"]
[build-switches]
"*".ada_version = "Ada2022"
"*".source_encoding = "UTF_8"
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.debug_info = "Yes"
development.optimization = "Debug"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.debug_info = "No"
release.optimization = "Performance"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.debug_info = "Yes"
validation.optimization = "Debug"
validation.runtime_checks = "Everything"
[[depends-on]]
adacl = "^7.1"
# [[pins]]
# adacl = { path = "../adacl" }
# vim: set textwidth=0 nowrap tabstop=8 shiftwidth=4 softtabstop=4 expandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:33dc6d3df5198bfbeae063f6c1d239feb71a512485b29afe716475c3984b8bd9",
"sha512:52ce5fa534742a653a96ca0077555b6d64d9301affeee39d4d0637cf8fcfcb401714dbd9478a837a698d63f50a1a96315ad0a5b640e0a988140d9556f07618a0",
]
url = "https://sourceforge.net/projects/adacl/files/Alire/adacl_regexp-7.1.2.tgz"
-61
View File
@@ -1,61 +0,0 @@
name = "adacl_sar"
description = "AdaCL: Search and Replace with Wide/Wide-Wide Support"
long-description = """Powerful search-and-replace library for Ada 2022, developed by Martin Krischik, with wide and wide-wide character support.
Features:
- Load, transform, and store text
- Vector-based text transformations for efficient processing
- Supports standard, wide, and wide-wide characters for internationalisation
- Embedded transformations for internal text processing
- Extensible transformations via tagged types for complex operations
- Integrates with the Ada Class Library (AdaCL) for robust text handling
Licensed under GPL-3.0-or-later. Integrates with the Ada Class Library (AdaCL).
Source: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl_sar/src/)
Documentation: [GNATdoc](https://adacl.sourceforge.net/gnatdoc/adacl_sar/index.html)
"""
version = "7.1.2"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://sourceforge.net/projects/adacl/"
tags = ["library", "strings", "search", "replace", "ada2022"]
[build-switches]
"*".ada_version = "Ada2022"
"*".source_encoding = "UTF_8"
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.debug_info = "Yes"
development.optimization = "Debug"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.debug_info = "No"
release.optimization = "Performance"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.debug_info = "Yes"
validation.optimization = "Debug"
validation.runtime_checks = "Everything"
[[depends-on]]
adacl = "^7.1"
# [[pins]]
# adacl = { path = "../adacl" }
# vim: set textwidth=0 nowrap tabstop=8 shiftwidth=4 softtabstop=4 expandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:dff0c40c7c1685dc75bd20a80f21c4d07448d29d3a00f8fc219a828a1a45b122",
"sha512:df7f487cca52ba81f34c414be35a8c3bd7c0b007b245ecfa2c85c1108fc41c33e2e05b341334cc8bc5c779bcbbc6c47602824a9e061aad1dc5d541cefbcca7a6",
]
url = "https://sourceforge.net/projects/adacl/files/Alire/adacl_sar-7.1.2.tgz"
-23
View File
@@ -1,23 +0,0 @@
name = "clara"
description = "Type-safe CLI argument parsing with functional monads"
version = "1.0.1"
authors = ["A Bit of Help, Inc. - Michael Gardner"]
maintainers = ["A Bit of Help, Inc. - Michael Gardner <mjgardner@abitofhelp.com>"]
maintainers-logins = ["abitofhelp"]
licenses = "BSD-3-Clause"
website = "https://github.com/abitofhelp/clara"
tags = ["cli", "command-line", "arguments", "parser", "ada2022", "spark", "functional", "type-safe"]
[build-switches]
"*".Ada_Version = "Ada2022"
"*".Style_Checks = "yes"
[[depends-on]]
gnat = ">=13"
functional = "^4.0.0"
[origin]
commit = "1dafa0e89978ca214aab806d137b2641668b2458"
url = "git+https://github.com/abitofhelp/clara.git"
-17
View File
@@ -1,17 +0,0 @@
name = "crdt"
description = "CRDT library for Ada/SPARK"
version = "1.1.0"
authors = ["bladeacer"]
maintainers = ["bladeacer <wg.nick.exe@gmail.com>"]
maintainers-logins = ["bladeacer"]
licenses = "MIT"
website = "https://github.com/bladeacer/ada_crdt"
tags = ["crdt", "spark", "ada"]
[origin]
hashes = [
"sha256:33c64a3b04b3b93f0eb1abb844a8c082b4bdd4aa614151f3bc6d5d9a08e3f827",
"sha512:0f54181b0fbff2f990247f085ea49c03675285cb9fee33f0938b39eec48a964ca756c5a0e2b4feac02c6f0dd53e822a03499dee1a9145c5309ba16bdeb53c28b",
]
url = "https://codeberg.org/bladeacer/Ada_CRDT/archive/v1.1.0.tar.gz"
-20
View File
@@ -1,20 +0,0 @@
name = "crdt"
description = "CRDT library for Ada/SPARK"
version = "1.3.0"
authors = ["bladeacer"]
maintainers = ["bladeacer <wg.nick.exe@gmail.com>"]
maintainers-logins = ["bladeacer"]
licenses = "MIT"
website = "https://github.com/bladeacer/ada_crdt"
tags = ["crdt", "spark", "ada"]
[origin]
hashes = [
"sha256:c8c763a8a61283772300aa62d7053a7e446ff9a1fb6aac0470ac4b5a63a1137d",
"sha512:077bfc97180e4a518647d3561f822516181b999f8d485a71f8d4355ab12dd082a9c3e8212373ce9f6c395e8c43a48b92758fd42cea715d59d4c89d8fdb36b156",
]
url = "https://codeberg.org/bladeacer/Ada_CRDT/archive/v1.3.0.tar.gz"
-20
View File
@@ -1,20 +0,0 @@
name = "crdt"
description = "CRDT library for Ada/SPARK"
version = "1.5.0"
authors = ["bladeacer"]
maintainers = ["bladeacer <wg.nick.exe@gmail.com>"]
maintainers-logins = ["bladeacer"]
licenses = "MIT"
website = "https://github.com/bladeacer/ada_crdt"
tags = ["crdt", "spark", "ada"]
[origin]
hashes = [
"sha256:e1f8ac189b360ad97b4569648406ed4f1c0aef3810d4a975457695fe0a98cf9a",
"sha512:7221048c5c0fc1367644380a9ee3322d872290caa6ebd9c2af5dd54dbf9be0541e74a93e5afd6351d9c8b207c0e7d9b12e4e72683dd282e94e4bce502a69fcf0",
]
url = "https://codeberg.org/bladeacer/Ada_CRDT/archive/v1.5.0.tar.gz"
-25
View File
@@ -1,25 +0,0 @@
name = "df_box2d"
description = "Ada bindings to Box2D v3, Erin Catto's 2D physics engine (pure C)"
version = "0.1.0"
authors = ["The Dark Factory Ltd"]
maintainers = ["tony.gair@thedarkfactory.co.uk"]
maintainers-logins = ["tonygair"]
licenses = "MIT"
website = "https://github.com/the-dark-factory/box2d-ada"
tags = ["binding", "physics", "box2d", "game", "simulation"]
project-files = ["df_box2d.gpr"]
auto-gpr-with = false
notes = "Box2D v3 is vendored and built into a static lib by scripts/build-box2d.sh (CMake); run it once before alr build. Requires cmake and a C compiler."
[build-switches]
"*".style_checks = "no"
[available.'case(os)']
macos = true
linux = true
windows = false # Untested.
[origin]
commit = "fbe979353fe4428bbe22a03a43c591c8f70efa11"
url = "git+https://github.com/the-dark-factory/box2d-ada.git"
-25
View File
@@ -1,25 +0,0 @@
name = "df_ccv"
description = "Ada bindings to Liu Liu's CCV computer vision library"
version = "0.1.0"
authors = ["The Dark Factory Ltd"]
maintainers = ["tony.gair@thedarkfactory.co.uk"]
maintainers-logins = ["tonygair"]
licenses = "MIT"
website = "https://github.com/the-dark-factory/ccv-ada"
tags = ["binding", "image", "computer-vision", "ccv"]
project-files = ["df_ccv.gpr"]
auto-gpr-with = false
notes = "CCV is built separately: clone liuliu/ccv and make lib (needs libpng+libjpeg), then point df_ccv.gpr's CCV_LIB_DIR at libccv.a. See CHARTER.md."
[build-switches]
"*".style_checks = ["-gnaty"]
[available.'case(os)']
macos = true
linux = true
windows = false # Untested.
[origin]
commit = "ec4e224e77c7ec669663a887b80bec416f1dec84"
url = "git+https://github.com/the-dark-factory/ccv-ada.git"
-29
View File
@@ -1,29 +0,0 @@
name = "df_imgui"
description = "Ada bindings to Dear ImGui via cimgui"
version = "0.1.0"
authors = ["The Dark Factory Ltd"]
maintainers = ["tony.gair@thedarkfactory.co.uk"]
maintainers-logins = ["tonygair"]
licenses = "MIT"
website = "https://github.com/the-dark-factory/imgui-ada"
tags = ["binding", "gui", "imgui", "cimgui"]
project-files = ["df_imgui.gpr"]
auto-gpr-with = false
notes = "cimgui (the C++ side) is vendored; the post-fetch action builds vendor/cimgui/libcimgui.a (plain c++, no cmake)."
[[actions]]
type = "post-fetch"
command = ["bash", "scripts/build-cimgui.sh"]
[build-switches]
"*".style_checks = ["-gnaty"]
[available.'case(os)']
macos = true
linux = true
windows = false # Untested; left off until verified.
[origin]
commit = "3dec19e9896a15f1194c8c98dc7848324c0faaac"
url = "git+https://github.com/the-dark-factory/imgui-ada.git"
-24
View File
@@ -1,24 +0,0 @@
name = "df_llama"
description = "Ada bindings to llama.cpp - run a local LLM on-device from Ada"
version = "0.1.0"
authors = ["The Dark Factory Ltd"]
maintainers = ["tony.gair@thedarkfactory.co.uk"]
maintainers-logins = ["tonygair"]
licenses = "MIT"
website = "https://github.com/the-dark-factory/llama-ada"
tags = ["binding", "llm", "ai", "llama", "ggml"]
project-files = ["df_llama.gpr"]
auto-gpr-with = false
notes = "Needs the llama.cpp shared libraries: build llama.cpp and point LLAMA_CPP_LIB at its build output (gpr default: vendor/llama.cpp/build/bin). The example also needs a local GGUF model."
[build-switches]
"*".style_checks = "no"
[available.'case(os)']
macos = true
linux = true
windows = false # Untested.
[origin]
commit = "f44da7bd5e883a686812a5f8d58e15f40fcc1889"
url = "git+https://github.com/the-dark-factory/llama-ada.git"
-28
View File
@@ -1,28 +0,0 @@
name = "df_stb"
description = "Ada bindings to Sean Barrett's STB header-only utility libraries"
version = "0.1.0"
authors = ["The Dark Factory Ltd"]
maintainers = ["tony.gair@thedarkfactory.co.uk"]
maintainers-logins = ["tonygair"]
licenses = "MIT"
website = "https://github.com/the-dark-factory/stb-ada"
tags = ["binding", "image", "stb", "stb-image", "stb-truetype"]
project-files = ["df_stb.gpr"]
auto-gpr-with = false
notes = "STB is header-only C; the post-fetch action builds vendor/stb/libstb.a from csrc/stb_impl.c (plain cc, no extra tooling)."
[build-switches]
"*".style_checks = ["-gnaty"]
[[actions]]
type = "post-fetch"
command = ["bash", "scripts/build-stb.sh"]
[available.'case(os)']
macos = true
linux = true
windows = false # Untested.
[origin]
commit = "c3442adac650bff870167ba26b718115deb780b9"
url = "git+https://github.com/the-dark-factory/stb-ada.git"
-14
View File
@@ -1,14 +0,0 @@
name = "df_vulkan"
description = "Generated Ada binding to Vulkan, with a SPARK-verified safety layer"
version = "0.1.0"
licenses = "Apache-2.0"
authors = ["The Dark Factory Ltd"]
maintainers = ["Tony Gair <tony.gair@thedarkfactory.co.uk>"]
maintainers-logins = ["tonygair"]
project-files = ["df_vulkan.gpr"]
tags = ["vulkan", "graphics", "gpu", "binding", "spark"]
website = "https://github.com/the-dark-factory/vulkan-ada"
[origin]
commit = "d3fac5d7df41b91c5a989edf1f55b6a1162b90ad"
url = "git+https://github.com/the-dark-factory/vulkan-ada.git"
-22
View File
@@ -1,22 +0,0 @@
name = "functional"
description = "Functional Programming Library for Ada 2022"
version = "4.1.1"
authors = ["A Bit of Help, Inc. - Michael Gardner"]
maintainers = ["A Bit of Help, Inc. - Michael Gardner <mjgardner@abitofhelp.com>"]
maintainers-logins = ["abitofhelp"]
licenses = "BSD-3-Clause"
website = "https://github.com/abitofhelp/functional"
tags = ["functional", "fx", "either", "option", "result", "monad", "error-handling", "ada2022", "spark", "embedded"]
[build-switches]
"*".Ada_Version = "Ada2022"
"*".Style_Checks = "yes"
[[depends-on]]
gnat = ">=13"
[origin]
commit = "c1ff2600a58b24bf482ec1e44fb63c58c1b1e293"
url = "git+https://github.com/abitofhelp/functional.git"
-31
View File
@@ -1,31 +0,0 @@
name = "gnoga"
description = "gnoga - The GNU Omnificent GUI for Ada"
version = "2.2.2"
tags = ["gui", "web", "server", "http", "https", "ssl"]
authors = ["David Botton"]
maintainers = ["Pascal Pignard <blady.net@orange.fr>"]
maintainers-logins = ["Blady-Com"]
website = "https://github.com/Blady-Com/gnoga"
licenses = "GPL-3.0-only WITH GCC-exception-3.1"
project-files = ["lib_gnoga.gpr"]
[gpr-set-externals.'case(os)']
linux = { Target_OS = "Linux", PRJ_TARGET = "Linux" }
windows = { Target_OS = "Windows", PRJ_TARGET = "Windows" }
macos = { Target_OS = "OSX", PRJ_TARGET = "OSX" }
[gpr-set-externals]
UXS_VARIANT = "UXS3"
[[depends-on]]
gnat = ">=2021 | (>=12 & <2000)"
simple_components = "^4.62.0"
uxstrings = "0.9.3"
[origin]
commit = "2513b058ff0a0bc7b895edf7c7be5f548a2eff08"
url = "git+https://github.com/Blady-Com/gnoga.git"
+8 -1
View File
@@ -45,9 +45,16 @@ project-files = [
"gnatcom/gnatcom.gpr",
"gnatcom/gnatcom_tools.gpr",
"gwindows/gwindows.gpr",
"gwindows/gwindows_contrib.gpr"
"gwindows/gwindows_contrib.gpr",
"gwindows/gwindows_samples.gpr"
]
executables = [
"game_of_life_interactive",
"mdi_example",
"sci_example",
"demo_exlv1",
"demo_exlv2",
"demo_exlv3",
"bindcom",
"comscope",
"createcom",
-15
View File
@@ -1,15 +0,0 @@
name = "jintp"
description = "Template parser in Ada based on Jinja2"
version = "1.0.1"
authors = ["Rene Hartmann"]
maintainers = ["Rene Hartmann <rhartmann@users.sourceforge.net>"]
maintainers-logins = ["rehartmann"]
licenses = "BSD-2-Clause"
website = "https://github.com/rehartmann/JinTP"
tags = ["templates", "jinja", "jinja2"]
[origin]
commit = "732a46b2fba56e7e99d502fa2b7e3bba522b213f"
url = "git+https://github.com/rehartmann/JinTP.git"
-24
View File
@@ -1,24 +0,0 @@
name = "lace"
description = "Contains a set of low level re-usable Ada components."
version = "1.0.0"
authors = ["Rod Kay"]
maintainers = ["Rod Kay <rodakay5@gmail.com>"]
maintainers-logins = ["charlie5"]
licenses = "ISC"
website = "https://github.com/charlie5/lace"
tags = ["event", "response", "subject", "observer", "pool", "text"]
long-description = "\nContains:\n\n - lace.Events : Provides a 'subject/oberver' 'event/response' facility.\n - lace.Any : Provides an interface type to allow heterogenous containers.\n - lace.fast_Pool : Provides a generic which allows fast allocation/deallocation.\n - lace.Text : Provides a DSA friendly set of text operations.\n\n"
project-files = ["library/lace.gpr"]
[[depends-on]]
lace_shared = "^1.0.0"
[origin]
commit = "934d277661e0ed8bdc2013f9fe24ac00c99a544c"
subdir = "./1-base/lace/"
url = "git+https://github.com/charlie5/lace.git"
-24
View File
@@ -1,24 +0,0 @@
name = "lace_math"
description = "Provides an Ada package family covering pure and applied mathematics."
version = "1.0.0"
authors = ["Rod Kay"]
maintainers = ["Rod Kay <rodakay5@gmail.com>"]
maintainers-logins = ["charlie5"]
licenses = "ISC"
website = "https://github.com/charlie5/lace"
tags = ["math", "arithmetic", "algebra", "geometry"]
long-description = "\nContains:\n\n - Pure\n - Arithmetic (covers quantity)\n - Algebra (covers structure)\n - Geometry (covers space)\n - Analysis (covers change)\n\n - Applied\n - Statistics\n - Computational\n\n"
project-files = ["library/math.gpr"]
[[depends-on]]
lace_shared = "^1.0.0"
[origin]
commit = "934d277661e0ed8bdc2013f9fe24ac00c99a544c"
subdir = "./1-base/math/"
url = "git+https://github.com/charlie5/lace.git"
@@ -1,16 +0,0 @@
name = "lace_shared"
description = "Default settings for GPR files in the Lace project."
version = "1.0.0"
authors = ["Rod Kay"]
maintainers = ["Rod Kay <rodakay5@gmail.com>"]
maintainers-logins = ["charlie5"]
licenses = "ISC"
website = "https://github.com/charlie5/lace"
[origin]
commit = "934d277661e0ed8bdc2013f9fe24ac00c99a544c"
subdir = "./0-floor/lace_shared/"
url = "git+https://github.com/charlie5/lace.git"
-18
View File
@@ -1,18 +0,0 @@
name = "lace_swig"
description = "Provides packages required by bindings produced by the 'swig4ada' tool."
version = "1.0.0"
authors = ["Rod Kay"]
maintainers = ["Rod Kay <rodakay5@gmail.com>"]
maintainers-logins = ["charlie5"]
licenses = "ISC"
website = "https://github.com/charlie5/lace"
tags = ["binding", "c", "cxx"]
project-files = ["library/swig.gpr"]
[origin]
commit = "62eae8404662be5ee3915534097fc6dd669541c3"
subdir = "./1-base/swig/"
url = "git+https://github.com/charlie5/lace.git"
-22
View File
@@ -1,22 +0,0 @@
name = "lace_xml"
description = "Provides simple XML read/write support."
version = "1.0.0"
authors = ["Rod Kay"]
maintainers = ["Rod Kay <rodakay5@gmail.com>"]
maintainers-logins = ["charlie5"]
licenses = "ISC"
website = "https://github.com/charlie5/lace"
project-files = ["library/xml.gpr"]
[[depends-on]]
lace_shared = "^1.0.0"
libexpat = "*"
[origin]
commit = "934d277661e0ed8bdc2013f9fe24ac00c99a544c"
subdir = "./1-base/xml/"
url = "git+https://github.com/charlie5/lace.git"
-71
View File
@@ -1,71 +0,0 @@
description = "LEA is a Lightweight Editor for Ada "
name = "lea"
version = "0.94.0"
authors = ["Gautier de Montmollin"]
website = "https://github.com/zertovitch/lea"
licenses = "MIT"
tags = ["application", "lea", "editor", "hac"]
maintainers = ["gdemont@hotmail.com"]
maintainers-logins = ["zertovitch"]
long-description = """
&nbsp; <a target="_blank" href="https://a.fsdn.com/con/app/proj/l-e-a/screenshots/sudo_new-0c7d4c58.png" ><img src="https://a.fsdn.com/con/app/proj/l-e-a/screenshots/sudo_new-0c7d4c58.png" alt="lea screenshot 1" width="auto" height="140"></a>
&nbsp; <a target="_blank" href="https://a.fsdn.com/con/app/proj/l-e-a/screenshots/mandel_new-f3219868.png" ><img src="https://a.fsdn.com/con/app/proj/l-e-a/screenshots/mandel_new-f3219868.png" alt="lea screenshot 2" width="auto" height="140"></a>
&nbsp; <a target="_blank" href="https://a.fsdn.com/con/app/proj/l-e-a/screenshots/lea_ubu-912c5456.png" ><img src="https://a.fsdn.com/con/app/proj/l-e-a/screenshots/lea_ubu-912c5456.png" alt="lea screenshot 3" width="auto" height="140"></a>
&nbsp; <a target="_blank" href="https://a.fsdn.com/con/app/proj/l-e-a/screenshots/ext_edit_new-28fcf374.png"><img src="https://a.fsdn.com/con/app/proj/l-e-a/screenshots/ext_edit_new-28fcf374.png" alt="lea screenshot 4" width="auto" height="140"></a>
**LEA**, a **Lightweight Editor for Ada**, aims to provide an easy, script-world-like, "look & feel" for developing Ada projects of any size and level, while enabling access to full-scale development tools like GNAT.
Features:
* Quick start and reactivity
* Uses the Scintilla editor widget (like Notepad++)
* Multi-document
* Multiple undo's & redo's
* Multi-line, multi-point editing; rectangular selections
* Duplication of lines and selections
* Color themes
* Syntax highlighting, parenthesis matching
* Bookmarks
* Smart editor features (auto-completion, navigation, mouse-hover infos)
* Includes HAC, the HAC Ada Compiler
* Includes numerous examples of Ada programs, ready to be run
* Single executable, runs without installation
* Programmed in Ada
* **Free**, Open-Source
"""
project-files = ["lea_project_tree.gpr"]
executables = ["lea"]
[available.'case(os)']
windows = true
'...' = false
[gpr-externals]
LEA_Build_Mode = ["Debug", "Fast", "Small"]
[gpr-set-externals]
HAC_Build_Mode = "Small"
LEA_Build_Mode = "Small"
Zip_Build_Mode = "Small"
[[depends-on]]
ini_files = "^10.0.0"
[[depends-on]]
gwindows = "^1.5.4"
[[depends-on]]
zipada = "^61.0.0"
[[depends-on]]
gnat = "/=10.3.2"
[[depends-on]]
hac = "0.41.0"
[[actions.'case(os)'.windows]]
type = "post-build"
command = ["cmd", "/c copy /B lea_without_data.exe + _lea_data.zip lea.exe"]
[origin]
url = "https://sourceforge.net/projects/l-e-a/files/lea-src-v.0.94b.zip"
hashes = ["sha512:f861a40fbf1bdd9279b2a1b38416030cf5f368511f595f43285626f7dca33227ec3651a6c6fa19525e1dcb6709c5affb0891a77b0342a8ce0405d890423af11e"]
@@ -15,4 +15,3 @@ kind = "system"
'debian|ubuntu' = ["libbullet-dev"]
arch = ["bullet"]
msys2 = ["mingw-w64-x86_64-bullet"]
gentoo = ["sci-physics/bullet"]
-1
View File
@@ -11,4 +11,3 @@ kind = "system"
"debian|ubuntu" = ["libexpat1-dev"]
arch = ["expat"]
msys2 = ["mingw-w64-x86_64-expat"]
gentoo = ["dev-libs/expat"]
@@ -12,4 +12,4 @@ arch = ["freetype2"]
msys2 = ["mingw-w64-x86_64-freetype"]
homebrew = ["freetype"]
macports = ["freetype"]
gentoo = ["media-libs/freetype"]
+1 -1
View File
@@ -15,4 +15,4 @@ url = "git+https://github.com/alire-project/libhello.git"
# We use this crate as a trigger to conveniently test minor changes to
# metaprocesses of the CI of the repository itself.
# Last touch: 2026-06-10 00:32 CEST
# Last touch: 2026-05-22 17:51 CEST
@@ -10,4 +10,3 @@ kind = "system"
"arch|homebrew|macports" = ["raylib"]
"fedora" = ["raylib-devel"]
"msys2" = ["mingw-w64-x86_64-raylib"]
"gentoo" = ["media-libs/raylib"]
-30
View File
@@ -1,30 +0,0 @@
name = "libsap"
description = "Asynchronous message passing for protocol stacks"
version = "0.2.0"
long-description = """
Provides utilities to create _Service Access Points_ (SAP) for asynchronous,
zero-copy message passing between tasks based on _Service Primitive_ messages
(request, confirm, indication, and response primitives).
"""
authors = ["Daniel King"]
maintainers = ["Daniel King <damaki.gh@gmail.com>"]
maintainers-logins = ["damaki"]
licenses = "Apache-2.0 WITH LLVM-exception"
website = "https://github.com/damaki/libsap"
tags = ["protocol", "protocols", "nostd", "spark"]
[[depends-on]]
gnat = ">=14"
atomic = "^1.1.0"
[build-switches]
"*".Ada_Version = "Ada2022"
[configuration.variables]
Tasking_Supported = { type = "Boolean", default = true }
[origin]
commit = "6539a64891774d0b8dabf6fa4f96b1986c8bfc2c"
url = "git+https://github.com/damaki/libsap.git"
-30
View File
@@ -1,30 +0,0 @@
name = "libsap"
description = "Asynchronous message passing for protocol stacks"
version = "0.3.0"
long-description = """
Provides utilities to create _Service Access Points_ (SAP) for asynchronous,
zero-copy message passing between tasks based on _Service Primitive_ messages
(request, confirm, indication, and response primitives).
"""
authors = ["Daniel King"]
maintainers = ["Daniel King <damaki.gh@gmail.com>"]
maintainers-logins = ["damaki"]
licenses = "Apache-2.0 WITH LLVM-exception"
website = "https://github.com/damaki/libsap"
tags = ["protocol", "protocols", "nostd", "spark"]
[[depends-on]]
gnat = ">=14"
atomic = "^1.1.0"
[build-switches]
"*".Ada_Version = "Ada2022"
[configuration.variables]
Tasking_Supported = { type = "Boolean", default = true }
[origin]
commit = "d3305919b9804818a247312b0d415f311110c07c"
url = "git+https://github.com/damaki/libsap.git"
-27
View File
@@ -1,27 +0,0 @@
name = "msg_pack"
description = "Ada implementation of MessagePack serialization"
version = "0.1.0"
authors = ["mlorek"]
maintainers = ["MLorek <michal.lorek@gmail.com>"]
maintainers-logins = ["mlorek"]
licenses = "MIT"
website = "https://github.com/mlorek/msgpack"
tags = ["serialization", "msgpack", "messagepack", "msg-pack"]
[[actions]]
type = "test"
command = ["alr", "build"]
[[actions]]
type = "test"
command = ["alr", "exec", "--", "gprbuild", "-p", "-P", "tests/tests.gpr"]
[[actions]]
type = "test"
command = ["./tests/bin/test_main"]
[origin]
commit = "30c5bb53c36ffdcfb4bc3a849b6b847788965147"
url = "git+https://github.com/mlorek/msgpack.git"
+5 -6
View File
@@ -10,10 +10,9 @@ maintainers-logins = ["AntonMeep"]
[[external]]
kind = "system"
[external.origin."case(distribution)"]
"arch" = ["openssl"]
"fedora" = ["openssl-devel"]
"debian|ubuntu" = ["libssl-dev"]
"fedora" = ["openssl-devel"]
"homebrew" = ["openssl"]
"macports" = ["openssl"]
"msys2" = ["mingw-w64-x86_64-openssl"]
"suse" = ["openssl-devel"]
"arch" = ["openssl"]
"msys2" = ["mingw-w64-x86_64-openssl"]
"homebrew" = ["openssl"]
"macports" = ["openssl"]
@@ -1,59 +0,0 @@
name = "pico_ada_c01_blink"
description = "Chapter 1: Blinking LEDs - Getting Started on the Raspberry Pi Pico"
long-description = """My first steps into Ada programming on the Pico: from Jeremy Grosser's classic
blink example through explicit pin control to using an external LED, plus thoughts on the elegant (but still
experimental) Ravenscar profile.
Starting simple with LED blinking in Ada - internal LED, external LED with proper renaming, and a look at why Ravenscar
looks so clean (even if it's not quite ready for everyday use yet).
Contained in Chapter 01 are:
1. blink - Jeremy Grosser Ada sample
2. sketch_01_1_blink - Chapter 1.1 Blink internal LED
3. sketch_01_2_blink - Chapter 1.2 Blink external LED
Read the full tutorial at [Chapter 1: Blinking LEDs - Getting Started with Ada on the Raspberry Pi
Pico](https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c01_blink/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c01_blink/)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink"
tags = ["raspberry", "pi", "pico", "rp2040", "ada2022", "embedded"]
executables = [
"blink",
"sketch_01_1_blink",
"sketch_01_2_blink",
"uart_echo",
"ws2812_demo"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
[origin]
hashes = [
"sha256:b2a407d0ce278129403aac15a6d4674edeeab2d94b042e7d5645b576a7eb42d9",
"sha512:af8f8ff2825441f9323e3b7edc000b8a088d15fbf2ac2b6a98516b41c04dd3fecef05de1b833f1df7cb59896144ecbc59bbe92e24ff7cba630429cde33aff77f",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c01_blink-1.7.0.tgz"
@@ -1,64 +0,0 @@
name = "pico_ada_c01_blink"
description = "Chapter 1: Blinking LEDs - Getting Started on the Raspberry Pi Pico"
long-description = """My first steps into Ada programming on the Pico: from Jeremy Grosser's classic
blink example through explicit pin control to using an external LED, plus thoughts on the elegant (but still
experimental) Ravenscar profile.
Starting simple with LED blinking in Ada - internal LED, external LED with proper renaming, and a look at why Ravenscar
looks so clean (even if it's not quite ready for everyday use yet).
Contained in Chapter 01 are:
1. blink - Jeremy Grosser Ada sample
2. sketch_01_1_blink - Chapter 1.1 Blink internal LED
3. sketch_01_2_blink - Chapter 1.2 Blink external LED
"""
notes = """
Read the full tutorial at [Chapter 1: Blinking LEDs - Getting Started with Ada on the Raspberry Pi
Pico](https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c01_blink/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink"
tags = ["raspberry", "pi", "pico", "rp2040", "ada2022", "embedded"]
executables = [
"blink",
"sketch_01_1_blink",
"sketch_01_2_blink"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
[configuration.values]
pico_xbsp.Event_Log_Output = "uart"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:fafec550f6c3803c17da6f10c677bc576c4effb284943169465e87092aa4817d",
"sha512:a09a1084c894df4014a5213b73c571045505de4975b90a847f72c779cc1b5337218255ddaf0897bb68c31383d86ac16467353499f1229c8e3c4527d0b3519934",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c01_blink-1.8.0.tgz"
@@ -1,72 +0,0 @@
name = "pico_ada_c01_blink_e"
description = "Chapter 1 Reloaded: Blinking LEDs on Both Cores"
long-description = """Blinking LEDs on Both Cores Updated Chapter 1 using the new embedded_rp2040
runtime - now with proper multi-core support, Ada.Real_Time, and delay until for accurate, slippage-free LED blinking on
Raspberry Pi Pico.
After quick community help, I rewrote Chapter 1 to use light tasking on both RP2040 cores. No more manual timers -
clean, precise dual-LED blinking with zero slippage.
Contained in Chapter 01 reloaded are:
1. blink - Jeremy Grosser Ada sample
2. sketch_01_1_blink - Chapter 1.1 Blink internal LED
3. sketch_01_2_blink - Chapter 1.2 Blink external LED
4. double_blink-main - double blink using both cores.
Read the full tutorial at [Chapter 1 Reloaded: Dual-Core Light Tasking - Blinking LEDs on Both
Cores](https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_e), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c01_blink_e/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico2_ada_c01_blink_lt/)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_e"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"blink",
"double_blink-main",
"sketch_01_1_blink",
"sketch_01_2_blink",
"uart_echo"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
embedded_rp2040 = "^15.4"
[configuration.values]
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
embedded_rp2040.Max_CPUs = 2
embedded_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:661b9c20483d47fa9d061fc41df6de5a119edba085203ece98d0b5a07c3f5cfa",
"sha512:eacfdfc2a2c2f2c5dfffbe3009d80d663569c74121a6f0a0c0a26f34b85aa6a61d22fb554a014fdef9dfcbce72796b7214abcc905d7131a963008411e31859ec",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c01_blink_e-1.7.0.tgz"
@@ -1,72 +0,0 @@
name = "pico_ada_c01_blink_e"
description = "Chapter 1 Reloaded: Blinking LEDs on Both Cores"
long-description = """Blinking LEDs on Both Cores Updated Chapter 1 using the new embedded_rp2040
runtime - now with proper multi-core support, Ada.Real_Time, and delay until for accurate, slippage-free LED blinking on
Raspberry Pi Pico.
After quick community help, I rewrote Chapter 1 to use light tasking on both RP2040 cores. No more manual timers -
clean, precise dual-LED blinking with zero slippage.
Contained in Chapter 01 reloaded are:
1. blink - Jeremy Grosser Ada sample
2. sketch_01_1_blink - Chapter 1.1 Blink internal LED
3. sketch_01_2_blink - Chapter 1.2 Blink external LED
4. double_blink-main - double blink using both cores.
Read the full tutorial at [Chapter 1 Reloaded: Dual-Core Light Tasking - Blinking LEDs on Both
Cores](https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_e), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico2_ada_c01_blink_lt/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_e"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"blink",
"double_blink-main",
"sketch_01_1_blink",
"sketch_01_2_blink"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
embedded_rp2040 = "^15.4"
[configuration.values]
embedded_rp2040.Board = "rpi_pico"
embedded_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:63b67f2fcc8d73aa407e13a1827d7308dbf2f3d367d6288bdff193ccd50893d0",
"sha512:2a213a60a95a2eb344bd799552782c11b2787e7d4c5c3b2fad5ae1e1c94356b772170870cf592abf65bde45100192ef092af4e9d1e19562ad872d07ef7e6280d",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c01_blink_e-1.8.0.tgz"
@@ -1,72 +0,0 @@
name = "pico_ada_c01_blink_lt"
description = "Chapter 1 Reloaded: Blinking LEDs on Both Cores"
long-description = """Blinking LEDs on Both Cores Updated Chapter 1 using the new light_tasking_rp2040
runtime - now with proper multi-core support, Ada.Real_Time, and delay until for accurate, slippage-free LED blinking on
Raspberry Pi Pico.
After quick community help, I rewrote Chapter 1 to use light tasking on both RP2040 cores. No more manual timers -
clean, precise dual-LED blinking with zero slippage.
Contained in Chapter 01 reloaded are:
1. blink - Jeremy Grosser Ada sample
2. sketch_01_1_blink - Chapter 1.1 Blink internal LED
3. sketch_01_2_blink - Chapter 1.2 Blink external LED
4. double_blink-main - double blink using both cores.
Read the full tutorial at [Chapter 1 Reloaded: Dual-Core Light Tasking - Blinking LEDs on Both
Cores](https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_lt), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c01_blink_lt/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico2_ada_c01_blink_lt/)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_lt"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"blink",
"double_blink-main",
"sketch_01_1_blink",
"sketch_01_2_blink",
"uart_echo"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
light_tasking_rp2040 = "^15.4"
[configuration.values]
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
light_tasking_rp2040.Max_CPUs = 2
light_tasking_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:5a2dc6262de97d10e5033f3c90da3af8f46079208146706a7c273629ef1eb404",
"sha512:447684f35a8803f938e81e622a51b12366b2a3bab8c4a32c24a7a35329c951e7af72e60cfd6776340db9bf6a9ecb3ccd0fde8d389e35fbd9a11decb3d55ae425",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c01_blink_lt-1.7.0.tgz"
@@ -1,72 +0,0 @@
name = "pico_ada_c01_blink_lt"
description = "Chapter 1 Reloaded: Blinking LEDs on Both Cores"
long-description = """Blinking LEDs on Both Cores Updated Chapter 1 using the new light_tasking_rp2040
runtime - now with proper multi-core support, Ada.Real_Time, and delay until for accurate, slippage-free LED blinking on
Raspberry Pi Pico.
After quick community help, I rewrote Chapter 1 to use light tasking on both RP2040 cores. No more manual timers -
clean, precise dual-LED blinking with zero slippage.
Contained in Chapter 01 reloaded are:
1. blink - Jeremy Grosser Ada sample
2. sketch_01_1_blink - Chapter 1.1 Blink internal LED
3. sketch_01_2_blink - Chapter 1.2 Blink external LED
4. double_blink-main - double blink using both cores.
Read the full tutorial at [Chapter 1 Reloaded: Dual-Core Light Tasking - Blinking LEDs on Both
Cores](https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_lt), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico2_ada_c01_blink_lt/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_lt"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"blink",
"double_blink-main",
"sketch_01_1_blink",
"sketch_01_2_blink"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
light_tasking_rp2040 = "^15.4"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
rp2040_hal = "^2.7.1"
[configuration.values]
light_tasking_rp2040.Board = "rpi_pico"
light_tasking_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:a9e2019b8ca3f4b921deeecaa4a0bd816383dab7a183c403c925395dd4783a75",
"sha512:29479274cb66dd145f377790199bd90b919858b7fbac48ff9d69012f02e1d8877c19d895128d855a91a11542118082796cd7d7793979266300e69d7337cad20f",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c01_blink_lt-1.8.0.tgz"
@@ -1,66 +0,0 @@
name = "pico_ada_c02_button_and_led"
description = "Chapter 2 - Button controled LEDs"
long-description = """Controlling an LED with a button on the Raspberry Pi Pico using Ada - two simple
but useful interaction examples.
In this chapter I combine a push button with an LED. We start with basic on/off control, then move to a toggle-style
table lamp with software debounce.
Contained in Chapter 02 are:
1. sketch_02_1_button_and_led - Chapter 2.1 Switch LED with Button
2. sketch_02_2_table_lamp - Chapter 2.2 Simple table lamp
Read the full tutorial at [Chapter 2 - Button &
LED](https://pi-ada-tutorial.sourceforge.io/pico_ada_c02_button_and_led), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c02_button_and_led/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c02_button_and_led/)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c02_button_and_led"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"sketch_02_1_button_and_led",
"sketch_02_2_table_lamp"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
light_tasking_rp2040 = "^15.4"
[configuration.values]
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
light_tasking_rp2040.Max_CPUs = 2
light_tasking_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:d519b9b367887981e76b6eca3a8ef0471140a370a610a9beab0c4122e88dbe89",
"sha512:e0359f54b9a25ab729aa8cb8404048b737d4c7084a71c495803956c535efc778c07ec4f94d2d87f7fd8b7f58cb22c491167a33650462c9eaab44a327757892a8",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c02_button_and_led-1.7.0.tgz"
@@ -1,67 +0,0 @@
name = "pico_ada_c02_button_and_led"
description = "Chapter 2 - Button controled LEDs"
long-description = """Controlling an LED with a button on the Raspberry Pi Pico using Ada - two simple
but useful interaction examples.
In this chapter I combine a push button with an LED. We start with basic on/off control, then move to a toggle-style
table lamp with software debounce.
Contained in Chapter 02 are:
1. sketch_02_1_button_and_led - Chapter 2.1 Switch LED with Button
2. sketch_02_2_table_lamp - Chapter 2.2 Simple table lamp
Read the full tutorial at [Chapter 2 - Button &
LED](https://pi-ada-tutorial.sourceforge.io/pico_ada_c02_button_and_led), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c02_button_and_led/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c02_button_and_led"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"sketch_02_1_button_and_led",
"sketch_02_2_table_lamp"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
light_tasking_rp2040 = "^15.4"
[configuration.values]
light_tasking_rp2040.Board = "rpi_pico"
light_tasking_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:de88eb38b8f3f5c4b2881f7e7470327bb6c02308d2776945065a4e802779fdd1",
"sha512:694c69e664c8d8bd4ed4bff9fb0d89447354076a43e597092066e281100fad93caf80405701246e7e7df502d936008797d524c29bd43c3ccc6c28b9bde136f91",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c02_button_and_led-1.8.0.tgz"
@@ -1,71 +0,0 @@
name = "pico_ada_c03_led_bar"
description = "Chapter 3 - Cylon LED Bar: flowing light upgraded to a menacing scanner"
long-description = """Building a smooth flowing LED bar on the Raspberry Pi Pico with Ada - from a simple
chasing light to a proper menacing Cylon scanner effect using real-time delays.
In this chapter we turn ten LEDs into a flowing light bar. We start with the basic Freenove example using an array of
RP.GPIO.GPIO_Point (aliased limited tagged types). We then improve it with a pre-calculated sine-harmonic timing table
to create a realistic Cylon scanner - all done with Ada.Real_Time and zero floating-point at runtime for perfect
jitter-free movement.
Contained in Chapter 03 are:
1. Sketch_03_1_Flowing_Light - straight port of the classic flowing light
2. Cylon_Light - the final dramatic Cylon scanner with organic easing
3. Cylon_Light_Float - Floating point version of Cylon_Light
Read the full tutorial at [Chapter 3 - Cylon LED Bar: flowing light upgraded to a menacing
scanner](https://pi-ada-tutorial.sourceforge.io/pico_ada_c03_led_bar), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c03_led_bar/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c03_led_bar/)
(The Cylons did nothing wrong. Humans created the perfect companion species and then completely messed it up.)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c03_led_bar"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"sketch_03_1_flowing_light",
"cylon_light_float",
"cylon_light"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
light_tasking_rp2040 = "^15.4"
[configuration.values]
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
light_tasking_rp2040.Max_CPUs = 2
light_tasking_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:ba8561a2377bb4783dc131d971cc285ba7401abbc1ccf679c235d2330b0d9a5a",
"sha512:24d88bd23f3ae6a476e3dca70cc7cfb51073c164ed59a6b14e68354a39118f5cfb864564e5d52058527f2c2c3ef33fa915c9810dcd3002929f52af3861624dc9",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c03_led_bar-1.7.0.tgz"
@@ -1,72 +0,0 @@
name = "pico_ada_c03_led_bar"
description = "Chapter 3 - Cylon LED Bar: flowing light upgraded to a menacing scanner"
long-description = """Building a smooth flowing LED bar on the Raspberry Pi Pico with Ada - from a simple
chasing light to a proper menacing Cylon scanner effect using real-time delays.
In this chapter we turn ten LEDs into a flowing light bar. We start with the basic Freenove example using an array of
RP.GPIO.GPIO_Point (aliased limited tagged types). We then improve it with a pre-calculated sine-harmonic timing table
to create a realistic Cylon scanner - all done with Ada.Real_Time and zero floating-point at runtime for perfect
jitter-free movement.
Contained in Chapter 03 are:
1. Sketch_03_1_Flowing_Light - straight port of the classic flowing light
2. Cylon_Light - the final dramatic Cylon scanner with organic easing
3. Cylon_Light_Float - Floating point version of Cylon_Light
Read the full tutorial at [Chapter 3 - Cylon LED Bar: flowing light upgraded to a menacing
scanner](https://pi-ada-tutorial.sourceforge.io/pico_ada_c03_led_bar), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c03_led_bar/)
(The Cylons did nothing wrong. Humans created the perfect companion species and then completely messed it up.)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c03_led_bar"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"sketch_03_1_flowing_light",
"cylon_light_float",
"cylon_light"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
light_tasking_rp2040 = "^15.4"
[configuration.values]
light_tasking_rp2040.Board = "rpi_pico"
light_tasking_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:c3f59a4f81cd5361618b3db1ebc2e4b47226f60f3d3ce3b983cea9061efde9ce",
"sha512:48c291835ec6f507c3f8571c14d82ecddb9b768695a89d366555e1557fafb30e8af37bb5778a203f131b37042d826446ac49f3d052718ad5497e219062306509",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c03_led_bar-1.8.0.tgz"
@@ -1,69 +0,0 @@
name = "pico_ada_c04_pwm"
description = "Chapter 4: Analog LED with PWM"
long-description = """Building smooth breathing LEDs and flowing light bars with hardware PWM on the
Raspberry Pi Pico using Ada. From jittery duty cycles to perfect linear dimming - guided by the Voltcraft MSO-5102B
oscilloscope and a deep dive into PWM slice mapping on both Pico 1 and Pico 2.
In this chapter we create a reusable Pico.Analog package for PWM-based analogue output. We start with a classic
breathing light, then move on to a flowing light bar. Along the way the MSO-5102B reveals the real behaviour of our
code, and we discover (and fix) a subtle bug in the experimental RP2350 HAL.
Contained in Chapter 04 are:
1. Pwm - Original PWM sample from Jeremy Grosser
2. sketch_04_1_breathing_light - Chapter 4.1 Blink internal LED
3. sketch_04_2_flowing_light_2 - Chapter 4.1 Project Meteor Flowing Light
Read the full tutorial at [Chapter 4: Analog & PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c04_pwm), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c04_pwm/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c04_pwm/)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c04_pwm"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"pwm",
"sketch_04_1_breathing_light",
"sketch_04_2_flowing_light_2"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
light_tasking_rp2040 = "^15.4"
[configuration.values]
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
light_tasking_rp2040.Max_CPUs = 2
light_tasking_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:4182587d55e37a120ec6409b8938672f30fa20771374054b7f8da3cc463e4194",
"sha512:62f2aaca3994888a5e7af969f53a5a4d65720332e30c9dc5d30ce1ef76f2afffadaccb5da3cd18025614d7f1c3914eba6a0052a561147c1a7aa321de71be0b98",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c04_pwm-1.7.0.tgz"
@@ -1,70 +0,0 @@
name = "pico_ada_c04_pwm"
description = "Chapter 4: Analog LED with PWM"
long-description = """Building smooth breathing LEDs and flowing light bars with hardware PWM on the
Raspberry Pi Pico using Ada. From jittery duty cycles to perfect linear dimming - guided by the Voltcraft MSO-5102B
oscilloscope and a deep dive into PWM slice mapping on both Pico 1 and Pico 2.
In this chapter we create a reusable Pico.Analog package for PWM-based analogue output. We start with a classic
breathing light, then move on to a flowing light bar. Along the way the MSO-5102B reveals the real behaviour of our
code, and we discover (and fix) a subtle bug in the experimental RP2350 HAL.
Contained in Chapter 04 are:
1. Pwm - Original PWM sample from Jeremy Grosser
2. sketch_04_1_breathing_light - Chapter 4.1 Blink internal LED
3. sketch_04_2_flowing_light_2 - Chapter 4.1 Project Meteor Flowing Light
Read the full tutorial at [Chapter 4: Analog & PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c04_pwm), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c04_pwm/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c04_pwm"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"pwm",
"sketch_04_1_breathing_light",
"sketch_04_2_flowing_light_2"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
light_tasking_rp2040 = "^15.4"
[configuration.values]
light_tasking_rp2040.Board = "rpi_pico"
light_tasking_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:7475a1314ae669aeefe9a0d4f5917a6ad051e5960420813cdfd7c04d0b15cf29",
"sha512:a98e0cf3b1ab424be02bd5f8b3442e9621bf42346c0c2978ab504a3b17a106e55d8b59e117a02318239dec4850d626c864cbb6af25df2ca3d9290742ee470b53",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c04_pwm-1.8.0.tgz"
@@ -1,67 +0,0 @@
name = "pico_ada_c05_rgb"
description = "Chapter 5: Controlling an RGB LED with PWM"
long-description = """Learn how to drive a common-cathode RGB LED using the RP2040's PWM peripherals.
This chapter introduces a reusable Ada package for colour control and demonstrates both random colours and a smooth
colour-wheel gradient.
Extend the simple LED examples to full-colour control with an RGB LED. Create a reusable `Pico.Analog.RGB_LED` package
and explore two sketches: random colours (using the embedded runtime) and a smooth colour-wheel transition.
Contained in Chapter 05 are:
2. sketch_05_1_random_color_light.adb - Chapter 5.1 Random Color Light
3. sketch_05_2_gradient_color_light.adb - Chapter 5.2 Gradient Color Light
Read the full tutorial at [Chapter 5: Controlling an RGB LED with
PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c05_rgb), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c05_rgb/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c05_rgb/)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c05_rgb"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"sketch_05_1_random_color_light",
"sketch_05_2_gradient_color_light"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
embedded_rp2040 = "^15.4"
[configuration.values]
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
embedded_rp2040.Max_CPUs = 2
embedded_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:cbf85740ac450d4fd8d1d155d7f3629a9480a186a658d8ac63d7a692a3087926",
"sha512:876fbaf72e455133ec2a7094b638b436921d70810917e2e7663e6f3adaf2b7b02e7b459f78c417f5656c4d0852d7a388fbaf3f69a1b4649115d2fcb3efe235d1",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c05_rgb-1.7.0.tgz"
@@ -1,68 +0,0 @@
name = "pico_ada_c05_rgb"
description = "Chapter 5: Controlling an RGB LED with PWM"
long-description = """Learn how to drive a common-cathode RGB LED using the RP2040's PWM peripherals.
This chapter introduces a reusable Ada package for colour control and demonstrates both random colours and a smooth
colour-wheel gradient.
Extend the simple LED examples to full-colour control with an RGB LED. Create a reusable `Pico.Analog.RGB_LED` package
and explore two sketches: random colours (using the embedded runtime) and a smooth colour-wheel transition.
Contained in Chapter 05 are:
2. sketch_05_1_random_color_light.adb - Chapter 5.1 Random Color Light
3. sketch_05_2_gradient_color_light.adb - Chapter 5.2 Gradient Color Light
Read the full tutorial at [Chapter 5: Controlling an RGB LED with
PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c05_rgb), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c05_rgb/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c05_rgb"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"sketch_05_1_random_color_light",
"sketch_05_2_gradient_color_light"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
embedded_rp2040 = "^15.4"
[configuration.values]
embedded_rp2040.Board = "rpi_pico"
embedded_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:d1bdc090172ad819906d2bdd653c43af3635b1137f4c39f9a9d796780afdb419",
"sha512:1effc8df15013b91cef36a3c5b5f39b60024a3ba257fbe582179081e3f4419809b6b2aae2e6120ba2fe2c33a9926cd8ca28ac737b00948115453bf442668ae0c",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c05_rgb-1.8.0.tgz"
@@ -1,69 +0,0 @@
name = "pico_ada_c06_neopixel"
description = "Chapter 6: Controlling 8 NeoPixel RGB LED"
long-description = """Learn how to drive WS2812 (NeoPixel) LEDs on the Raspberry Pi Pico using the RP2040
PIO in Ada. Includes a square-wave diagnostic, fixes for the official ws2812_demo, and two complete animation sketches.
From understanding the WS2812 protocol to writing our own PIO code and creating colourful animations - everything you
need to make NeoPixels dance with Ada on the Pico.
Contained in Chapter 06 are:
1. square_wave-main.adb - Simple Square Wave test using PIO (for timing reference)
1. ws2812_demo.adb - Jeremy Grosser's WS2812 demo adapted for the RP2040 and Ada 2022
2. sketch_06_1_led_pixel.adb - Chapter 6.1 NeoPixel LED Pixel
3. sketch_06_2_rainbow_light.adb - Chapter 6.2 NeoPixel Rainbow Light
Read the full tutorial at [Chapter 6: Controlling an NeoPixel LED with
PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c06_neopixel/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c06_neopixel/)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"square_wave-main",
"ws2812_demo",
"sketch_06_1_led_pixel",
"sketch_06_2_rainbow_light"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
light_tasking_rp2040 = "^15.4"
[configuration.values]
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
light_tasking_rp2040.Max_CPUs = 2
light_tasking_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:83d4b03e345701b39fcfc45971908a6c49ddc44f588419d9ac122d568dbde959",
"sha512:b4136660eb70df3856a8783ebc041278412534c57ba2b3e3bca116af3168fbbade6a5777380e7dbde05f68b1c0e24d89e35fe69546896b10c491971809d3c141",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c06_neopixel-1.7.0.tgz"
@@ -1,70 +0,0 @@
name = "pico_ada_c06_neopixel"
description = "Chapter 6: Controlling 8 NeoPixel RGB LED"
long-description = """Learn how to drive WS2812 (NeoPixel) LEDs on the Raspberry Pi Pico using the RP2040
PIO in Ada. Includes a square-wave diagnostic, fixes for the official ws2812_demo, and two complete animation sketches.
From understanding the WS2812 protocol to writing our own PIO code and creating colourful animations - everything you
need to make NeoPixels dance with Ada on the Pico.
Contained in Chapter 06 are:
1. square_wave-main.adb - Simple Square Wave test using PIO (for timing reference)
1. ws2812_demo.adb - Jeremy Grosser's WS2812 demo adapted for the RP2040 and Ada 2022
2. sketch_06_1_led_pixel.adb - Chapter 6.1 NeoPixel LED Pixel
3. sketch_06_2_rainbow_light.adb - Chapter 6.2 NeoPixel Rainbow Light
Read the full tutorial at [Chapter 6: Controlling an NeoPixel LED with
PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c06_neopixel/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"square_wave-main",
"ws2812_demo",
"sketch_06_1_led_pixel",
"sketch_06_2_rainbow_light"
]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
light_tasking_rp2040 = "^15.4"
[configuration.values]
light_tasking_rp2040.Board = "rpi_pico"
light_tasking_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:a366fe30b23bfc67dcf10629f032cb28593cdadda0fef7465f0599a135157f66",
"sha512:8fa1997c7bdf3906f4b8ad6a8653bd4f2f281b107d56307dbd3a11d0895bf6d674eb3dbdb8159d053ddbcb69bfbf2e261ace0ac84081546d5276556cadaa1690",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c06_neopixel-1.8.0.tgz"
@@ -1,67 +0,0 @@
name = "pico_ada_c07_buzzer"
description = "Chapter 7: Controlling active and passive Buzzer"
long-description = """Learn how to drive active and passive buzzers with the Raspberry Pi Pico using Ada.
From simple doorbell switches to PWM-generated sweeping alert tones - including hardware tips with flyback diodes and
oscilloscope measurements.
In this chapter we connect both active and passive buzzers to the Pico. We start with a simple button-controlled
doorbell, improve the passive buzzer with bit-banging, and finally create a clean sweeping alert tone using the Pico's
PWM hardware. We also look at inductive-load protection and why a diode is essential.
Contained in Chapter 07 are:
1. sketch_07_1_doorbell.adb - Chapter 7.1 Doorbell with active buzzer
2. sketch_07_2_alert.adb - Chapter 7.2 Alert with passive buzzer
3. pwm_alert.adb - Use PWM to drive an passive buzzer
Read the full tutorial at [Chapter 7: Controlling a Buzzer](https://pi-ada-tutorial.sourceforge.io/pico_ada_c07_buzzer), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c07_buzzer/)
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c07_buzzer"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"pwm_alert",
"sketch_07_1_doorbell",
"sketch_07_2_alert"]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
light_tasking_rp2040 = "^15.4"
[configuration.values]
pico_xbsp.Variant = "tasking"
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
light_tasking_rp2040.Max_CPUs = 2
light_tasking_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:52e42549c15a0d30627cf528ee7bdbdde80ca42db7aa6d34e10166e4ec574312",
"sha512:8631b01ca755cd510061654d65ea47c419ca512aa00efe2f457eda8af60d8b76b2c873a70e5a0608792930e9e7bb7b42ab99b5c7fc4221a69688c3b1737c8638",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c07_buzzer-1.7.0.tgz"
@@ -1,70 +0,0 @@
name = "pico_ada_c07_buzzer"
description = "Chapter 7: Controlling active and passive Buzzer"
long-description = """Learn how to drive active and passive buzzers with the Raspberry Pi Pico using Ada.
From simple doorbell switches to PWM-generated sweeping alert tones - including hardware tips with flyback diodes and
oscilloscope measurements.
In this chapter we connect both active and passive buzzers to the Pico. We start with a simple button-controlled
doorbell, improve the passive buzzer with bit-banging, and finally create a clean sweeping alert tone using the Pico's
PWM hardware. We also look at inductive-load protection and why a diode is essential.
Contained in Chapter 07 are:
1. sketch_07_1_doorbell.adb - Chapter 7.1 Doorbell with active buzzer
2. sketch_07_2_alert.adb - Chapter 7.2 Alert with passive buzzer
3. pwm_alert.adb - Use PWM to drive an passive buzzer
4. buzz_and_blink-main.adb - Use tasks to drive both a buzzer and an LED
Read the full tutorial at [Chapter 7: Controlling a Buzzer](https://pi-ada-tutorial.sourceforge.io/pico_ada_c07_buzzer), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c07_buzzer/)
"""
version = "1.7.1"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c07_buzzer"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"buzz_and_blink-main",
"pwm_alert",
"sketch_07_1_doorbell",
"sketch_07_2_alert"]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.7"
embedded_rp2040 = "^15.4"
[configuration.values]
pico_xbsp.Variant = "tasking"
rp2040_hal.Use_Startup = false
rp2040_hal.Interrupts = "bb_runtimes"
embedded_rp2040.Max_CPUs = 2
embedded_rp2040.Board = "rpi_pico"
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:21f6c12ec35ec649cc96fbecbe845045660b5b7f33a35094246ed4f7e3f759e8",
"sha512:76a90b99908791284c03420bed42e3ae8781d49d296e173a217c4e61086dea082142116acb1597e4c7dafa435e7e8807f1b84be212f4e978be13b4679518f32c",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c07_buzzer-1.7.1.tgz"
@@ -1,70 +0,0 @@
name = "pico_ada_c07_buzzer"
description = "Chapter 7: Controlling active and passive Buzzer"
long-description = """Learn how to drive active and passive buzzers with the Raspberry Pi Pico using Ada.
From simple doorbell switches to PWM-generated sweeping alert tones - including hardware tips with flyback diodes and
oscilloscope measurements.
In this chapter we connect both active and passive buzzers to the Pico. We start with a simple button-controlled
doorbell, improve the passive buzzer with bit-banging, and finally create a clean sweeping alert tone using the Pico's
PWM hardware. We also look at inductive-load protection and why a diode is essential.
Contained in Chapter 07 are:
1. sketch_07_1_doorbell.adb - Chapter 7.1 Doorbell with active buzzer
2. sketch_07_2_alert.adb - Chapter 7.2 Alert with passive buzzer
3. pwm_alert.adb - Use PWM to drive an passive buzzer
4. buzz_and_blink-main.adb - Use tasks to drive both a buzzer and an LED
Read the full tutorial at [Chapter 7: Controlling a Buzzer](https://pi-ada-tutorial.sourceforge.io/pico_ada_c07_buzzer), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c07_buzzer/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c07_buzzer"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"buzz_and_blink-main",
"pwm_alert",
"sketch_07_1_doorbell",
"sketch_07_2_alert"]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
rp2040_hal = "^2.7.1"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
embedded_rp2040 = "^15.4"
[configuration.values]
embedded_rp2040.Board = "rpi_pico"
embedded_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:59471c77782092b301fd1e8526893cab949d57f4da618b50718b908586f180f5",
"sha512:0b2248d3575a9c46f9c21b665076b68c2e05d759f7ecd9a6471c64dbf2729a30124b99aa3a5da80213c4c7805b7e4980fcb2f24c3b0d61294932d4f9410bc8c6",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c07_buzzer-1.8.0.tgz"
@@ -1,71 +0,0 @@
name = "pico_ada_c08_serial_communication"
description = "Chapter 7: Controlling active and passive Buzzer"
long-description = """Learn how to drive active and passive buzzers with the Raspberry Pi Pico using Ada.
From simple doorbell switches to PWM-generated sweeping alert tones - including hardware tips with flyback diodes and
oscilloscope measurements.
In this chapter we connect both active and passive buzzers to the Pico. We start with a simple button-controlled
doorbell, improve the passive buzzer with bit-banging, and finally create a clean sweeping alert tone using the Pico's
PWM hardware. We also look at inductive-load protection and why a diode is essential.
Contained in Chapter 07 are:
1. sketch_08_1_serial_print.adb - Chapter 8.1 Doorbell with active buzzer
2. sketch_08_2_serial_rw.adb - Chapter 8.2 Alert with passive buzzer
Read the full tutorial at [Chapter 7: Controlling a Buzzer](https://pi-ada-tutorial.sourceforge.io/pico_ada_c08_serial_communication), [GNATdoc
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c08_serial_communication/)
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c08_serial_communication"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
executables = [
"sketch_08_1_serial_print",
"sketch_08_2_serial_rw"]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
embedded_rp2040 = "^15.4"
pico_bsp = "^2.2"
pico_xbsp = "^1.8"
rp2040_hal = "^2.7.1"
[configuration.values]
adacl_embedded.Event_Log_Buffer_Size = 0
adacl_embedded.Variant = "no_tasking"
embedded_rp2040.Board = "rpi_pico"
embedded_rp2040.Max_CPUs = 2
pico_xbsp.Variant = "tasking"
rp2040_hal.Interrupts = "bb_runtimes"
rp2040_hal.Use_Startup = false
usb_embedded.Event_Log_Buffer_Size = 0
usb_embedded.Log_Verbose = false
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:149abc1746c734cc7e4024e6358eef2c4730ba9b22333ef5345775250862d263",
"sha512:8fcb433e6ee3ff0d55f8bc746d6d7a515f1e476d05523e3a61144fa72de16962181034c421281a6324b2b7f67eb39e348d8ac71dbafc0390fc0421c8ff63cbf0",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c08_serial_communication-1.8.0.tgz"
-65
View File
@@ -1,65 +0,0 @@
name = "pico_xbsp"
description = "Extended board support package for Raspberry Pi Pico"
long-description = """Extended board support package (XBSP) for the Raspberry Pi Pico.
This crate builds upon Jeremy Grosser's official pico_bsp and adds a growing set of clean, reusable components for Ada
developers targeting the RP2040. It is developed alongside the [Pi Ada
Tutorial](https://pi-ada-tutorial.sourceforge.io/) but is equally suitable for any standalone embedded Ada project.
Current components:
* Pico.Analog - Analogue GPIO using PWM
* Pico.Analog.RGB_LED - Analogue RGB LED control using PWM
* Pico.Tone - Square-wave tone generation using PWM
* Pico.UART_IO - Simple UART text I/O for the Debug Probe (115200 8N1 on GP0/GP1)
* Pico.Utils - Miscellaneous utilities
The crate is available in two variants:
* `no_tasking` (default) - small, fast, and compatible with the light runtime
* `tasking` - thread-safe using protected objects (requires a tasking runtime)
All packages include full GNATdoc annotations.
Useful links:
* [GNATdoc documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/)
* [SourceForge repository](https://sourceforge.net/projects/pi-ada-tutorial/)
* [Tutorial homepage](https://pi-ada-tutorial.sourceforge.io/)
The library will continue to grow with each new tutorial chapter while remaining a clean, independent crate.
"""
version = "1.7.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
pico_bsp = "^2.2"
[configuration.variables]
Variant = {type = "Enum", values = ["tasking", "no_tasking"], default = "no_tasking"}
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:94deaac37258d96f7817a70f1047b2f6c4682ba115ea79395b02458e8e636dbd",
"sha512:4bb9d0a0d38e235759b024d68f346f15140183386705c74e855d396162e49ad9bd77651c92a346bb6911385172794495a4574613c76433ff745c4a85f6d13787",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_xbsp-1.7.0.tgz"
-87
View File
@@ -1,87 +0,0 @@
name = "pico_xbsp"
description = "Extended board support package for Raspberry Pi Pico"
long-description = """Extended board support package (XBSP) for the Raspberry Pi Pico.
This crate builds upon Jeremy Grosser's official pico_bsp and adds a growing set of clean, reusable components for Ada
developers targeting the RP2040. It is developed alongside the [Pi Ada
Tutorial](https://pi-ada-tutorial.sourceforge.io/) but is equally suitable for any standalone embedded Ada project.
Current components:
* Pico.Analog - Analogue GPIO using PWM
* Pico.Analog.RGB_LED - Analogue RGB LED control using PWM
* Pico.Debug_IO - Multi output interface for debug output
* Pico.Tone - Square-wave tone generation using PWM
* Pico.UART_IO - Simple UART text I/O for the Debug Probe (115200 8N1 on GP0/GP1)
* Pico.USB_IO - Simple USB text I/O for direct connection to a PC terminal
* Pico.Utils - Miscellaneous utilities
The crate is available in two variants:
* `no_tasking` (default) - small, fast, and compatible with the light runtime
* `tasking` - thread-safe using protected objects (requires a tasking runtime)
* Event_Log_Output
* "none" - deactivate output entirely.
* "swd" - use Ada.Text_IO which uses semihosting to output to GDB. Don't forget to activate with
`arm semihosting enable`.
* "usb" - use `Pico.USB_IO` which in turn uses `USB.Device.Serial` for output. You will need a serial terminal
to read the output.
* "uart" - use `Pico.UART_IO` which in turn uses `RP.UART` for output. You will need a Debug Probe or a RS232C to
USB interface as well as a serial terminal to read the output.
* USB_TX_Buffer_Size & USB_RX_Buffer_Size
Read and write buffers can be configured separately for greater flexibility.
The default value of 128 bytes equals two USB block sizes and enables reliable bulk transfers.
The minimum supported size is 64 bytes (one USB block). Larger multi-block transfers may fail if the buffer
is set too small.
All packages include full GNATdoc annotations.
Useful links:
* [GNATdoc documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc)
* [SourceForge repository](https://sourceforge.net/projects/pi-ada-tutorial/)
* [Tutorial homepage](https://pi-ada-tutorial.sourceforge.io/)
The library will continue to grow with each new tutorial chapter while remaining a clean, independent crate.
"""
version = "1.8.0"
licenses = "GPL-3.0-or-later"
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
maintainers-logins = ["krischik"]
website = "https://pi-ada-tutorial.sourceforge.io/"
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
[build-switches]
"*".ada_version = ["-gnat2022"]
development.compile_checks = "Warnings"
development.contracts = "Yes"
development.runtime_checks = "Overflow"
release.compile_checks = "Warnings"
release.contracts = "No"
release.runtime_checks = "Default"
validation.compile_checks = "Warnings"
validation.contracts = "Yes"
validation.runtime_checks = "Everything"
[[depends-on]]
adacl_embedded = "^7.1.2"
pico_bsp = "^2.2"
usb_embedded = "^1.0.0"
[configuration.variables]
Variant = {type = "Enum", values = ["tasking", "no_tasking"], default = "no_tasking"}
Event_Log_Output = {type = "Enum", values = ["none", "swd", "usb", "uart"], default = "none"}
USB_TX_Buffer_Size = {type = "Integer", first = 64, last = 1024 , default = 128}
USB_RX_Buffer_Size = {type = "Integer", first = 64, last = 1024 , default = 128}
# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab :
# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff :
# vim: set spell spelllang=en_gb :
[origin]
hashes = [
"sha256:bde7b8601f37d7002f7929fd003682941aa42c582e8cf268ba9139500d440c19",
"sha512:5807b90337e323729bc985ace234dfe51d2af190631c9829e0d7d3255c395d4dc7150b466caf9e8b845d098dd03bea2c3b90c9cea4dfe020da670ee84cc14c2c",
]
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_xbsp-1.8.0.tgz"
@@ -12,7 +12,7 @@ project-files = ["components.gpr", "components-connections_server.gpr", "compone
[[depends-on]]
gnat = "<2020 & (<11 | >2000)"
libgnutls = "^3.5.8"
unixodbc = "^2.3"
unixODBC = "^2.3"
[gpr-externals]
Atomic_Access = ["Pragma-atomic", "GCC-built-ins", "GCC-long-offsets"]
@@ -9,9 +9,9 @@ maintainers-logins = ["mosteo", "Blady-Com"]
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 | ^12" # GNAT 13 onwards unearth new errors
gnat = ">=2021 | (>=12 & <2000)"
libgnutls = "^3.5.8"
unixodbc = "^2.3"
unixODBC = "^2.3"
[gpr-externals]
Atomic_Access = ["Pragma-atomic", "GCC-built-ins", "GCC-long-offsets"]
@@ -11,7 +11,7 @@ project-files = ["components-connections_server-elv_max_cube.gpr", "components-c
[[depends-on]]
gnat = ">=2021 | (>=12 & <2000)"
libgnutls = "^3.7"
unixodbc = "^2.3"
unixODBC = "^2.3"
[gpr-externals]
Development = ["Debug", "Release", "Profile"] # Default Debug
-87
View File
@@ -1,87 +0,0 @@
# This is a crate
name = "spdx_tool"
description = "SPDX license detection and management tool"
version = "1.0.0"
authors = ["ciceron"]
maintainers = ["ciceron <Stephane.Carrez@gmail.com>"]
maintainers-logins = ["stcarrez"]
licenses = "Apache-2.0"
website = "https://github.com/stcarrez/spdx-tool"
tags = ["tools", "spdx", "license"]
executables = ["spdx-tool"]
project-files = ["spdx_tool.gpr"]
long-description = """
spdx-tool scans the source files to identify licenses and allows to update them in order to use the
SPDX license format. It can be used to:
* identify the license used in source files of a project,
* produce a JSON/XML report for the licenses found with the list of files,
* replace a license header by the [SPDX license](https://spdx.org/licenses/) tag equivalent.
Identify licenses used in a project:
```
spdx-tool
```
Identify files matching a given license:
```
spdx-tool --only-licenses=Apache-2.0 -f
```
Check the license header before replacing it:
```
spdx-tool --only-licenses=Apache-2.0 --print-license --line-number src
```
Replace the license header by the `SPDX-License-Identifier` header:
```
spdx-tool --only-licenses=Apache-2.0 --update=spdx src
```
Build an XML or JSON report of files with their licenses:
```
spdx-tool --output-xml=report.xml
```
## Documentation
* Man page: [spdx-tool (1)](https://gitlab.com/stcarrez/spdx-tool/-/blob/main/docs/spdx-tool.md?ref_type=heads)
"""
[[depends-on]]
utilada = "^2.8.0"
utilada_xml = "^2.8.0"
sciada = "~0.4.0"
spdx = "~0.2.0"
ansiada = "^1.0.0"
intl = "^1.0.1"
printer_toolkit = "~0.2.0"
ada_toml = "~0.5.0"
[depends-on."case(os)".linux]
magicada = "^1"
[gpr-set-externals."case(os)"]
linux = { USE_MAGICADA = "yes" }
freebsd = { USE_MAGICADA = "no" }
macos = { USE_MAGICADA = "no" }
windows = { USE_MAGICADA = "no" }
[[actions]]
type = "post-fetch"
command = ["sh", "./alire-setup.sh"]
[origin]
commit = "a2c70523a2c712053ef6f4780b1dc0e875782058"
url = "git+https://gitlab.com/stcarrez/spdx-tool.git"
@@ -1,19 +0,0 @@
name = "trendy_terminal"
description = "Terminal options, setup, tab completion and hinting."
version = "0.0.7"
website = "https://github.com/pyjarrett/trendy_terminal"
authors = ["Paul Jarrett"]
maintainers = ["Paul Jarrett <jarrett.paul.young@gmail.com>"]
maintainers-logins = ["pyjarrett"]
licenses = "Apache-2.0"
tags = ["terminal", "command-line", "console", "vt100"]
[build-switches]
"*".Style_Checks = "No"
[origin]
commit = "730526e3498fb1c09b6a300be0d91b4ba478fe8d"
url = "git+https://github.com/pyjarrett/trendy_terminal.git"
@@ -1,16 +0,0 @@
name = "uhppoted_lib"
description = "Library for the UHPPOTE access controllers"
version = "0.2.0"
licenses = "MIT"
authors = ["uhppoted"]
maintainers = ["uhppoted <uhppoted.development@gmail.com>"]
maintainers-logins = ["uhppoted", "twystd"]
website = "https://github.com/uhppoted/uhppoted-lib-ada"
tags = ["access-control", "uhppote"]
[origin]
commit = "455e6401096d408cb268fb4e06177b6a3bc53892"
subdir = "./lib/"
url = "git+https://github.com/uhppoted/uhppoted-lib-ada.git"
-83
View File
@@ -1,83 +0,0 @@
description = "Utility Library with streams, processes, logs, serialization, encoders"
name = "utilada"
version = "2.9.0"
authors = ["Stephane.Carrez@gmail.com"]
licenses = "Apache-2.0"
maintainers = ["Stephane.Carrez@gmail.com"]
maintainers-logins = ["stcarrez"]
project-files = ["utilada_conf.gpr", "utilada_core.gpr", "utilada_base.gpr", "utilada_sys.gpr"]
tags = ["logging", "processes", "streams", "json", "beans", "encoders", "decoders"]
website = "https://gitlab.com/stcarrez/ada-util"
long-description = """
[![Build Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/build.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Test Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/tests.json)](https://porion.vacs.fr/porion/projects/view/ada-util/xunits)
[![Coverage](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/coverage.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Documentation Status](https://readthedocs.org/projects/ada-util/badge/?version=latest)](https://ada-util.readthedocs.io/en/latest/?badge=latest)
This Ada library contains various utility packages for building
Ada applications. This includes:
* A logging framework close to Java log4j framework,
* Support for INI and property files,
* A serialization/deserialization framework for XML, JSON, CSV, Forms
* Ada beans framework,
* Encoding/decoding framework (Base16, Base32, Base64, SHA, HMAC-SHA, AES-256),
* A composing stream framework (raw, files, buffers, pipes, sockets, encryption, decryption, LZMA compression, LZMA decompression),
* Several concurrency tools (reference counters, counters, pools, fifos, arrays),
* Process creation and pipes,
* Support for loading shared libraries (on Windows or Unix),
* HTTP client library on top of CURL or AWS.
# Documentation
* [Ada Utility Library Programmer's Guide](https://ada-util.readthedocs.io/en/latest/) [PDF](https://github.com/stcarrez/ada-util/blob/master/docs/utilada-book.pdf)
* [IO stream composition and serialization with Ada Utility Library](https://blog.vacs.fr/vacs/blogs/post.html?post=2022/03/05/IO-stream-composition-and-serialization-with-Ada-Utility-Library)
* [Easy reading and writing files with Ada Utility Library](https://blog.vacs.fr/vacs/blogs/post.html?post=2020/08/09/Easy-reading-and-writing-files-with-Ada-Utility-Library)
* [Process creation in Java and Ada](https://blog.vacs.fr/vacs/blogs/post.html?post=2012/03/16/Process-creation-in-Java-and-Ada)
"""
[gpr-externals]
UTIL_BUILD = ["distrib", "debug", "optimize", "profile", "coverage"]
UTIL_LIBRARY_TYPE = ["relocatable", "static", "static-pic"]
UTIL_OS = ["win32", "win64", "linux32", "linux64", "macos64", "netbsd32", "netbsd64", "freebsd32", "freebsd64", "openbsd32", "openbsd64"]
UTIL_HAS_TIME_64 = ["yes", "no"]
[gpr-set-externals."case(os)".linux."case(word-size)".bits-32]
UTIL_OS = "linux32"
[gpr-set-externals."case(os)".linux."case(word-size)".bits-64]
UTIL_OS = "linux64"
[gpr-set-externals."case(os)".freebsd."case(word-size)".bits-32]
UTIL_OS = "freebsd32"
[gpr-set-externals."case(os)".freebsd."case(word-size)".bits-64]
UTIL_OS = "freebsd64"
[gpr-set-externals."case(os)".openbsd."case(word-size)".bits-32]
UTIL_OS = "openbsd32"
[gpr-set-externals."case(os)".openbsd."case(word-size)".bits-64]
UTIL_OS = "openbsd64"
[gpr-set-externals."case(os)".windows."case(word-size)".bits-32]
UTIL_OS = "win32"
[gpr-set-externals."case(os)".windows."case(word-size)".bits-64]
UTIL_OS = "win64"
[gpr-set-externals."case(os)".macos]
UTIL_OS = "macos64"
[configuration]
disabled = true
[environment]
DYNAMO_BUNDLE_PATH.prepend = "${CRATE_ROOT}/bundles"
[origin]
commit = "bd635f55729b99ca1d2633fb487fe17f935e7d6b"
url = "git+https://gitlab.com/stcarrez/ada-util.git"
@@ -1,47 +0,0 @@
description = "Utility Library REST support on top of AWS"
name = "utilada_aws"
version = "2.9.0"
authors = ["Stephane.Carrez@gmail.com"]
licenses = "Apache-2.0"
maintainers = ["Stephane.Carrez@gmail.com"]
maintainers-logins = ["stcarrez"]
project-files = ["utilada_aws.gpr"]
tags = ["web", "http"]
website = "https://gitlab.com/stcarrez/ada-util"
long-description = """
[![Build Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/build.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Test Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/tests.json)](https://porion.vacs.fr/porion/projects/view/ada-util/xunits)
[![Coverage](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/coverage.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Documentation Status](https://readthedocs.org/projects/ada-util/badge/?version=latest)](https://ada-util.readthedocs.io/en/latest/?badge=latest)
This small library provides an HTTP backend on top of AWS.
It can be used by the `Util.Http` package.
An alternate HTTP backend is provided by CURL with `utilada_curl`.
# Documentation
* [Ada Utility Library Programmer's Guide](https://ada-util.readthedocs.io/en/latest/) [PDF](https://github.com/stcarrez/ada-util/blob/master/docs/utilada-book.pdf)
"""
[[depends-on]]
utilada = "^2.9.0"
aws = "^24.0|^25.0"
[gpr-externals]
UTIL_AWS_IMPL = ["1", "2", "3"]
[gpr-set-externals]
UTIL_AWS_IMPL = "3"
[configuration]
disabled = true
[origin]
commit = "bd635f55729b99ca1d2633fb487fe17f935e7d6b"
subdir = "./aws/"
url = "git+https://gitlab.com/stcarrez/ada-util.git"
@@ -1,45 +0,0 @@
name = "utilada_curl"
version = "2.9.0"
authors = ["Stephane.Carrez@gmail.com"]
licenses = "Apache-2.0"
maintainers = ["Stephane.Carrez@gmail.com"]
maintainers-logins = ["stcarrez"]
project-files = ["utilada_curl.gpr"]
tags = ["web", "http", "rest"]
website = "https://gitlab.com/stcarrez/ada-util"
description = "Utility Library REST support on top of CURL"
long-description = """
[![Build Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/build.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Test Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/tests.json)](https://porion.vacs.fr/porion/projects/view/ada-util/xunits)
[![Coverage](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/coverage.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Documentation Status](https://readthedocs.org/projects/ada-util/badge/?version=latest)](https://ada-util.readthedocs.io/en/latest/?badge=latest)
This small library provides an HTTP backend on top of CURL.
It can be used by the `Util.Http` package.
An alternate HTTP backend is provided by AWS with `utilada_aws`.
# Documentation
* [Ada Utility Library Programmer's Guide](https://ada-util.readthedocs.io/en/latest/) [PDF](https://github.com/stcarrez/ada-util/blob/master/docs/utilada-book.pdf)
"""
[[depends-on]]
utilada = "^2.9.0"
libcurl = "*"
[gpr-externals]
UTIL_BUILD = ["distrib", "debug", "optimize", "profile", "coverage"]
UTIL_LIBRARY_TYPE = ["relocatable", "static", "static-pic"]
[configuration]
disabled = true
[origin]
commit = "bd635f55729b99ca1d2633fb487fe17f935e7d6b"
subdir = "./curl/"
url = "git+https://gitlab.com/stcarrez/ada-util.git"
@@ -1,42 +0,0 @@
description = "Utility Library streams with LZMA support"
name = "utilada_lzma"
version = "2.9.0"
authors = ["Stephane.Carrez@gmail.com"]
licenses = "Apache-2.0"
maintainers = ["Stephane.Carrez@gmail.com"]
maintainers-logins = ["stcarrez"]
project-files = ["utilada_lzma.gpr"]
tags = ["lzma", "streams"]
website = "https://gitlab.com/stcarrez/ada-util"
long-description = """
[![Build Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/build.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Test Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/tests.json)](https://porion.vacs.fr/porion/projects/view/ada-util/xunits)
[![Coverage](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/coverage.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Documentation Status](https://readthedocs.org/projects/ada-util/badge/?version=latest)](https://ada-util.readthedocs.io/en/latest/?badge=latest)
This small library provides LZMA streams.
# Documentation
* [Ada Utility Library Programmer's Guide](https://ada-util.readthedocs.io/en/latest/) [PDF](https://github.com/stcarrez/ada-util/blob/master/docs/utilada-book.pdf)
"""
[[depends-on]]
lzmada = "^1.1.2"
utilada = "^2.9.0"
[gpr-externals]
UTIL_BUILD = ["distrib", "debug", "optimize", "profile", "coverage"]
UTIL_LIBRARY_TYPE = ["relocatable", "static", "static-pic"]
[configuration]
disabled = true
[origin]
commit = "bd635f55729b99ca1d2633fb487fe17f935e7d6b"
subdir = "./lzma/"
url = "git+https://gitlab.com/stcarrez/ada-util.git"
@@ -1,42 +0,0 @@
description = "Utility Library testing framework with Ahven"
long-description = "\n[![Build Status](https://img.shields.io/jenkins/s/https/jenkins.vacs.fr/Ada-Util.svg)](https://jenkins.vacs.fr/job/Ada-Util/)\n[![Test Status](https://img.shields.io/jenkins/t/https/jenkins.vacs.fr/Ada-Util.svg)](https://jenkins.vacs.fr/job/Ada-Util/)\n[![codecov](https://codecov.io/gh/stcarrez/ada-util/branch/master/graph/badge.svg)](https://codecov.io/gh/stcarrez/ada-util)\n\nThis library provides a testing framework on top of Ahven.\nIt provides various testing helper operations to help in\nwriting unit tests.\n\n"
name = "utilada_unit"
version = "2.9.0"
authors = ["Stephane.Carrez@gmail.com"]
licenses = "Apache-2.0"
maintainers = ["Stephane.Carrez@gmail.com"]
maintainers-logins = ["stcarrez"]
project-files = ["utilada_unit.gpr"]
tags = ["testing"]
website = "https://gitlab.com/stcarrez/ada-util"
[[depends-on]]
utilada = "^2.9.0"
[gpr-externals]
UTIL_UNIT = ["ahven-unix", "ahven-windows", "aunit"]
[gpr-set-externals.'case(os)'.windows]
UTIL_UNIT = "ahven-windows"
[gpr-set-externals.'case(os)'.linux]
UTIL_UNIT = "ahven-unix"
[gpr-set-externals.'case(os)'.macos]
UTIL_UNIT = "ahven-unix"
[gpr-set-externals.'case(os)'.freebsd]
UTIL_UNIT = "ahven-unix"
[gpr-set-externals.'case(os)'.openbsd]
UTIL_UNIT = "ahven-unix"
[configuration]
disabled = true
[origin]
commit = "bd635f55729b99ca1d2633fb487fe17f935e7d6b"
subdir = "./unit/"
url = "git+https://gitlab.com/stcarrez/ada-util.git"
@@ -1,42 +0,0 @@
description = "Utility Library serialization with XML/Ada"
name = "utilada_xml"
version = "2.9.0"
authors = ["Stephane.Carrez@gmail.com"]
licenses = "Apache-2.0"
maintainers = ["Stephane.Carrez@gmail.com"]
maintainers-logins = ["stcarrez"]
project-files = ["utilada_xml.gpr"]
tags = ["xml", "serialization"]
website = "https://gitlab.com/stcarrez/ada-util"
long-description = """
[![Build Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/build.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Test Status](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/tests.json)](https://porion.vacs.fr/porion/projects/view/ada-util/xunits)
[![Coverage](https://img.shields.io/endpoint?url=https://porion.vacs.fr/porion/api/v1/projects/ada-util/badges/coverage.json)](https://porion.vacs.fr/porion/projects/view/ada-util/summary)
[![Documentation Status](https://readthedocs.org/projects/ada-util/badge/?version=latest)](https://ada-util.readthedocs.io/en/latest/?badge=latest)
This library provides a serialization framework on top of XML/Ada for Ada Utility Library.
# Documentation
* [Ada Utility Library Programmer's Guide](https://ada-util.readthedocs.io/en/latest/) [PDF](https://github.com/stcarrez/ada-util/blob/master/docs/utilada-book.pdf)
"""
[[depends-on]]
utilada = "^2.9.0"
xmlada = "^24.0|^25.0"
[gpr-externals]
UTIL_BUILD = ["distrib", "debug", "optimize", "profile", "coverage"]
UTIL_LIBRARY_TYPE = ["relocatable", "static", "static-pic"]
[configuration]
disabled = true
[origin]
commit = "bd635f55729b99ca1d2633fb487fe17f935e7d6b"
subdir = "./xml/"
url = "git+https://gitlab.com/stcarrez/ada-util.git"
@@ -1,23 +0,0 @@
name = "uxstrings"
description = "Unicode Extended Strings utilities"
version = "0.9.2+alpha-20260610"
tags = ["unicode", "dynamic", "string"]
authors = ["Pascal Pignard"]
maintainers = ["Pascal Pignard <blady.net@orange.fr>"]
maintainers-logins = ["Blady-Com"]
website = "https://github.com/Blady-Com/UXStrings"
licenses = "CECILL-C"
project-files = ["lib_uxstrings.gpr"]
[[depends-on]]
gnat = ">=13"
# Put in comment since dependancies of SC puzzled Alire
# simple_components = "^4.62.0"
[origin]
commit = "985379d8fef2336d2b28c65569c6b25146de8579"
url = "git+https://github.com/Blady-Com/UXStrings.git"
@@ -1,22 +0,0 @@
name = "uxstrings"
description = "Unicode Extended Strings utilities"
version = "0.9.3+alpha-20260618"
tags = ["unicode", "dynamic", "string"]
authors = ["Pascal Pignard"]
maintainers = ["Pascal Pignard <blady.net@orange.fr>"]
maintainers-logins = ["Blady-Com"]
website = "https://github.com/Blady-Com/UXStrings"
licenses = "CECILL-C"
project-files = ["lib_uxstrings.gpr"]
[[depends-on]]
gnat = ">=13"
simple_components = "^4.62"
[origin]
commit = "ea4110d7a6327cdd099ea68e1b468301d9372abc"
url = "git+https://github.com/Blady-Com/UXStrings.git"