{
  "authors": [
    "Martin Krischik <krischik@users.sourceforge.net>"
  ],
  "build-switches": {
    "*": {
      "ada_version": "Ada2022",
      "source_encoding": "UTF_8"
    },
    "development": {
      "compile_checks": "Warnings",
      "contracts": "Yes",
      "debug_info": "Yes",
      "optimization": "Debug",
      "runtime_checks": "Overflow"
    },
    "release": {
      "compile_checks": "Warnings",
      "contracts": "No",
      "debug_info": "No",
      "optimization": "Performance",
      "runtime_checks": "Default"
    },
    "validation": {
      "compile_checks": "Warnings",
      "contracts": "Yes",
      "debug_info": "Yes",
      "optimization": "Debug",
      "runtime_checks": "Everything"
    }
  },
  "configuration": {
    "variables": {
      "Event_Log_Buffer_Length": {
        "default": 200,
        "first": 1,
        "last": 1024,
        "type": "Integer"
      },
      "Event_Log_Buffer_Size": {
        "default": 0,
        "first": 0,
        "last": 1024,
        "type": "Integer"
      },
      "Variant": {
        "default": "no_tasking",
        "type": "Enum",
        "values": [
          "tasking",
          "no_tasking"
        ]
      }
    }
  },
  "description": "Ada Embedded Library",
  "licenses": "GPL-3.0-or-later",
  "long-description": "\n## AdaCL Embedded - Lightweight Embedded Ada Library\n\nAdaCL-Embedded focuses on embedded and real-time programming on the Raspberry Pi and similar platforms.\n\nIt favours predictability, minimal runtime overhead, and static data structures. Object-oriented programming, unbounded\nstrings, and wide strings are avoided or kept to an absolute minimum.\n\n### Current Features\n\n* **AdaCL.Embedded.Trace** - Interrupt-safe, lightweight tracing facility using a ring buffer.\n\n### Configuration Options\n\n* `Variant`\n  * `no_tasking`  - for the lightest runtimes (no protected objects). Also works well with interrupt-driven runtimes.\n  * `tasking`\t  - for runtimes with tasking support.\n* `Event_Log_Buffer_Length` - maximum length of each trace line (default: 200, min: 1, max: 1024)\n* `Event_Log_Buffer_Size`   - number of entries in the ring buffer (default: 0, max: 1024, min: 0 (buffer disabled))\n\nA text length of 200 is the standart minimum used in the Ada Standart (i.E. `Ada.Text_IO.Get_Line`, exception messages,\netc.pp).\n\nMemory needed is approximately `(Event_Log_Buffer_Length + 4) * Event_Log_Buffer_Size` bytes, plus some overhead for the\nbuffer management. For example: 1024 buffer size with 200 line lenght is about the maximum size that can be used with\nthe static memory of Raspberry Pi Pico. The buffer size can be set to 0 to disable the trace buffer and the related code\ncompletely.\n\nSource: [SourceForge](https://sourceforge.net/p/adacl/git/ci/master/tree/adacl-embedded/src/)\nDocumentation: [GNATdoc](https://adacl-embedded.sourceforge.net/gnatdoc/adael/index.html)\n",
  "maintainers": [
    "Martin Krischik <krischik@users.sourceforge.net>"
  ],
  "maintainers-logins": [
    "krischik"
  ],
  "name": "adacl_embedded",
  "origin": {
    "hashes": [
      "sha256:4feddadbc5e900b65ccfa3bed4a4becb9afb9cc89ac3d865e0ea0ecf9477eee6",
      "sha512:e611feee8b969e7bf3ca61033a70660ae389f06264ed94027d5d12a55ded8f2e9f44088155740182e627431f12b66753745faba18016f431490ce64f6868e43b"
    ],
    "url": "https://sourceforge.net/projects/adacl/files/Alire/adacl_embedded-7.1.1.tgz"
  },
  "tags": [
    "library",
    "embedded",
    "trace",
    "logging",
    "raspberry-pi",
    "ada2022"
  ],
  "version": "7.1.1",
  "website": "https://sourceforge.net/projects/adacl/"
}
