diff --git a/.github/workflows/build-ports.yml b/.github/workflows/build-ports.yml index d7ab656c9..969758e0e 100644 --- a/.github/workflows/build-ports.yml +++ b/.github/workflows/build-ports.yml @@ -58,6 +58,10 @@ jobs: - name: Install Ports uses: melusina-org/setup-macports@v1 + - name: Prefer Quartz to X11 for MacPorts + shell: bash + run: echo '-x11 +no_x11 +quartz' >> /opt/local/etc/macports/variants.conf + - name: Test crate run: ${{env.CHECKS_REPO}}/scripts/gh-build-crate.sh shell: bash diff --git a/index/gi/gid/gid-13.0.0.toml b/index/gi/gid/gid-13.0.0.toml index 75f24a920..8f40d34a4 100644 --- a/index/gi/gid/gid-13.0.0.toml +++ b/index/gi/gid/gid-13.0.0.toml @@ -7,7 +7,17 @@ licenses = "MIT" maintainers = ["gdemont@hotmail.com"] maintainers-logins = ["zertovitch", "Fabien-Chouteau"] project-files = ["gid.gpr"] -tags = ["image", "decoder", "bmp", "gif", "jpeg", "jpg", "pbm", "pgm", "png", "pnm", "ppm", "qoi", "tga", "targa"] +tags = ["image", + "animated", "animation", + "bitmap", + "color", + "decoder", "decoding", "decompress", + "digitization", + "lossless", "lossy", + "rbg", + "steganography", + "transparency", "transparent", + "bmp", "gif", "jpeg", "jpg", "pbm", "pgm", "png", "pnm", "ppm", "qoi", "tga", "targa"] executables = ["to_bmp"] long-description = """  image diff --git a/index/gl/globe_3d/globe_3d-2023.11.12.toml b/index/gl/globe_3d/globe_3d-2023.11.12.toml new file mode 100644 index 000000000..91b964d9a --- /dev/null +++ b/index/gl/globe_3d/globe_3d-2023.11.12.toml @@ -0,0 +1,62 @@ +description = "GLOBE_3D: GL Object Based Engine for 3D" +name = "globe_3d" +version = "2023.11.12" + +licenses = "MIT" +tags = [ "gl", "opengl" ] +website = "https://globe3d.sourceforge.io/" + +authors = ["Gautier de Montmollin"] +maintainers = ["gdemont@hotmail.com"] +maintainers-logins = ["zertovitch"] + +long-description = """ +GLOBE_3D is a free, open-source, real-time 3D Engine written in Ada, based on OpenGL. + +![GLOBE_3D Screenshot](https://a.fsdn.com/con/app/proj/globe3d/screenshots/pure_evil_mini.jpg "Screenshot GLOBE_3D") + +* Real-time rendering +* Full eye movements and rotations ("6D") +* Displays combinations of colours, materials, textures +* Multitexturing +* Transparency +* Portal rendering +* Binary space partition (BSP) +* Collision detection +* Screenshots (.bmp) and video captures (.avi) +* Input-output of 3D objects +* Import from 3D Studio Max, id Software Radiant, VRML, Wavefront formats +* Tests, tools and demos included +""" + +project-files = [ "demo/globe_3d_demos_project_tree.gpr" ] + +executables = [ +"globe_3d_demo", +"mini_3d" +] + +[gpr-externals] +G3D_Build_Mode = ["debug", "fast", "small"] + +[gpr-set-externals] +GID_Build_Mode = "Debug" +Zip_Build_Mode = "Debug" + +[available.'case(os)'] +macos = true +windows = true +'...' = false + +[gpr-set-externals.'case(os)'] +macos = { G3D_OS = "macosx" } +windows = { G3D_OS = "win64" } + +[[depends-on]] +gid = ">=9.0.0" +[[depends-on]] +zipada = "^58.0.0" + +[origin] +url = "https://sourceforge.net/projects/globe3d/files/globe_3d_release_2023-11-12.zip" +hashes = ["sha512:07583710dff561811676fbff13efa5f3444ab7b3654ba088554a668dd66dc837c4416211fb8a8bf3ee0c723f6ff196472ccc1d7abfc6fc5459b5171a851e4f28"] diff --git a/index/he/hex_format/hex_format-0.1.0.toml b/index/he/hex_format/hex_format-0.1.0.toml new file mode 100644 index 000000000..f5b93f4f6 --- /dev/null +++ b/index/he/hex_format/hex_format-0.1.0.toml @@ -0,0 +1,15 @@ +name = "hex_format" +description = "Hexadecimal string formatting for modular types" +version = "0.1.0" + +authors = ["Jeremy Grosser"] +maintainers = ["Jeremy Grosser "] +maintainers-logins = ["JeremyGrosser"] +licenses = "BSD-3-Clause" +website = "https://github.com/JeremyGrosser/hex_format" +tags = ["hex", "pure", "embedded", "string", "text", "format"] + +[origin] +commit = "caa3216179cc892014ce8ee23869fc45061aa54b" +url = "git+https://github.com/JeremyGrosser/hex_format.git" + diff --git a/index/hi/hirtos/hirtos-2.0.0.toml b/index/hi/hirtos/hirtos-2.0.0.toml new file mode 100644 index 000000000..ea5a452a8 --- /dev/null +++ b/index/hi/hirtos/hirtos-2.0.0.toml @@ -0,0 +1,36 @@ +# +# Copyright (c) 2022-2024, German Rivera +# +# SPDX-License-Identifier: Apache-2.0 +# +# NOTE: This crate is not meant to be built with the native compiler. +# A dependency on a cross-compiler must be specified in the client +# crate. See example client crates in the sample_apps folder. +# +name = "hirtos" +description = "High-Integrity RTOS" +version = "2.0.0" +licenses = "Apache-2.0" +website = "https://github.com/jgrivera67/HiRTOS" +tags = ["rtos"] +authors = ["J. German Rivera"] +maintainers = ["J. German Rivera "] +maintainers-logins = ["jgrivera67"] + +[configuration.variables] +Platform = {type = "Enum", values = ["arm_fvp", "esp32_c3"], default = "arm_fvp"} + +[[actions]] +type = "test" +command = ["alr", "build"] +directory = "sample_apps/fvp_armv8r_aarch32_hello" + +[[actions]] +type = "test" +command = ["alr", "build"] +directory = "sample_apps/esp32_c3_hello" + +[origin] +commit = "66847740b093b19386959b0e7b65b0a09172a082" +url = "git+https://github.com/jgrivera67/HiRTOS.git" + diff --git a/index/li/libgtk3/libgtk3-external.toml b/index/li/libgtk3/libgtk3-external.toml index 1ae478bea..ad025fe93 100644 --- a/index/li/libgtk3/libgtk3-external.toml +++ b/index/li/libgtk3/libgtk3-external.toml @@ -8,7 +8,7 @@ maintainers-logins = ["Fabien-Chouteau"] kind = "system" [external.origin."case(distribution)"] "debian|ubuntu" = ["libgtk-3-dev"] -"fedora" = ["gtk3-devel"] +"centos|fedora" = ["gtk3-devel"] arch = ["gtk3"] msys2 = ["mingw-w64-x86_64-gtk3"] homebrew = ["gtk+3"] diff --git a/index/li/libhello/libhello-1.0.1.toml b/index/li/libhello/libhello-1.0.1.toml index 7cb44bf88..97985fa90 100644 --- a/index/li/libhello/libhello-1.0.1.toml +++ b/index/li/libhello/libhello-1.0.1.toml @@ -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: 2024-05-16 13:40 CET \ No newline at end of file +# Last touch: 2024-05-23 17:40 CET \ No newline at end of file diff --git a/index/li/libsimpleio/libsimpleio-2.22357.1.toml b/index/li/libsimpleio/libsimpleio-2.22357.1.toml new file mode 100644 index 000000000..77308fab2 --- /dev/null +++ b/index/li/libsimpleio/libsimpleio-2.22357.1.toml @@ -0,0 +1,148 @@ +name = "libsimpleio" +version = "2.22357.1" +description = "Linux Simple I/O Library" +website = "https://github.com/pmunts/libsimpleio" +authors = ["Philip Munts"] +maintainers = ["Philip Munts "] +maintainers-logins = ["pmunts"] +licenses = "BSD-1-Clause" + +long-description = """ +Introduction +============ + +This crate provides an Ada binding to the [Linux Simple I/O +Library](https://github.com/pmunts/libsimpleio), *aka* **libsimpleio**. + +*Note: This crate includes all of the functionality of the **`mcp2221`** +and **`remoteio`** crates. Unlike those two crates, which can be built +for and used on Linux, MacOS, or Windows targets, this crate can only be +built for and used on Linux targets.* + +Linux Simple I/O Library +======================== + +**libsimpleio** is an attempt to encapsulate (as much as possible) the +ugliness of Linux I/O device access. It provides services for the +following types of I/O devices: + +- [Industrial I/O + Subsystem](https://wiki.analog.com/software/linux/docs/iio/iio) A/D + (Analog to Digital) Converter Devices +- [Industrial I/O + Subsystem](https://wiki.analog.com/software/linux/docs/iio/iio) D/A + (Digital to Analog) Converter Devices +- GPIO (General Purpose Input/Output) Pins +- Raw HID (Human Interface Device) Devices +- I^2^C (Inter-Integrated Circuit) Bus Devices +- PWM (Pulse Width Modulated) Output Devices +- [Remote I/O + Protocol](http://git.munts.com/libsimpleio/doc/RemoteIOProtocol.pdf) + Devices +- Serial Ports +- SPI (Serial Peripheral Interface) Bus Devices +- [Stream Framing + Protocol](http://git.munts.com/libsimpleio/doc/StreamFramingProtocol.pdf) + Devices +- TCP and UDP over IPv4 Network Devices +- Watchdog Timer Devices + +**libsimpleio** exports a small number of C wrapper or shim functions. +These shim functions present a more coherent API (Application +Programming Interface) than Linux kernel **`ioctl()`** services and the +myriad other different Linux device I/O API's. The **libsimpleio** shim +functions are designed to be easily called from Ada, C++, C#, Java, +Free Pascal and other programming languages. + +The **`man`** pages specifying the **libsimpleio** API (Application +Programming Interface) are available for viewing at +. + +Ada Binding for the Linux Simple I/O Library +============================================ + +The Ada binding consists of several software component layers. + +The bottom software component layer consists of the **C shim functions** +discussed in the previous section. + +The next software component layer consists of **binding packages** that +declare the C shim functions as Ada procedures. Each of the binding +packages corresponds to a single C source file (*e.g.* package +**`libadc`** corresponds to **`libadc.c`**). Each of the C shim +functions are declared as external Ada procedures using +**`pragma Import`**. The Ada procedure names do not necessarily match +the C function names (*e.g.* the C function **`ADC_Open()`** is declared +as Ada procedure **`libadc.Open`**). Many of the binding packages also +declare constants as well (*e.g.* **`DIRECTION_INPUT`** in +**`libgpio.ads`**). + +With very few exceptions, you will never need to directly call any of +the procedures nor reference any of the constants declared in the +**`libxxx`** binding packages. + +The next software component layer consists of **object packages** that +declare OOP (Object Oriented Programming) object types and methods for +each of the I/O subsystems. This layer uses Ada interface types, +access-to-interface types, and private tagged records extensively. + +For example, the package **`GPIO`** defines an interface type +**`PinInterface`**, an access to **`PinInterface`** type named +**`Pin`**, and primitive operation subprograms **`Get`** and **`Put`**. + +The child package **`GPIO.libsimpleio`** declares a private tagged +record type **`PinSubclass`** that *implements* **`GPIO.PinInterface`**, +subprograms **`Get`** and **`Put`** that are required to implement +**`GPIO.PinInterface`**, and a constructor function **`Create`** that +returns an **`GPIO.Pin`** access value. + +Every package that implements **`GPIO.PinInterface`** will also declare +a constructor function **`Create`** that returns **`GPIO.Pin`**. + +This architecture allows code similar to the following fragment: + + MyPins : array (1 .. 3) of GPIO.pin; + + GPIO(1) := GPIO.libsimpleio.Create(...); + GPIO(2) := GPIO.UserLED.Create(...); + GPIO(3) := GPIO.PWM.Create(...); + +The three GPIO pins can be stored in the same array and manipulated in +exactly the same manner even though the hardware implementation for each +pin is radically different. + +The topmost software component layer consists of **device packages** +that implement support for particular I/O devices and are built upon the +lower layers. Most of the device packages correspond to integrated +circuits, such as the [PCA9534 +I](https://www.nxp.com/products/interfaces/ic-spi-serial-interface-devices/ic-general-purpose-i-o/8-bit-ic-bus-and-smbus-low-power-i-o-port-with-interrupt:PCA9534)[^2^](https://www.nxp.com/products/interfaces/ic-spi-serial-interface-devices/ic-general-purpose-i-o/8-bit-ic-bus-and-smbus-low-power-i-o-port-with-interrupt:PCA9534)[C +GPIO +expander](https://www.nxp.com/products/interfaces/ic-spi-serial-interface-devices/ic-general-purpose-i-o/8-bit-ic-bus-and-smbus-low-power-i-o-port-with-interrupt:PCA9534). +A few implement support for boards or modules, such the [Grove +Temperature +Sensor](https://www.seeedstudio.com/Grove-Temperature-Sensor.html) +module. +""" + +tags = ["embedded", "linux", "libsimpleio", "remoteio", "beaglebone", +"pocketbeagle", "raspberrypi", "raspberry", "pi", "adc", "dac", "gpio", +"hid", "i2c", "motor", "pwm", "sensor", "serial", "servo", "spi", "stepper", +"watchdog"] + +project-files = ["libsimpleio.gpr"] + +[available."case(os)"] +'linux' = true +"..." = false + +[[actions."case(os)".linux]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch"] + +[origin] +hashes = [ +"sha256:5083af9546061d1e6a7f631c27e6a1ab81bc5cc0795d05d9e98688901e021868", +"sha512:15289e2057ed0e807256180ed3a8b385cab70012810b5b0b88851fa41fc6803068e6909da46dbf954436bb0c9dd362c86516f2f179d0d553c69c58aeb8a63500", +] +url = "https://raw.githubusercontent.com/pmunts/alire-crates/29827b35e2e00fce5d7b27e06e2164fa20ccde54/libsimpleio/libsimpleio-2.22357.1.tbz2" + diff --git a/index/ma/mathpaqs/mathpaqs-20230121.0.0.toml b/index/ma/mathpaqs/mathpaqs-20230121.0.0.toml index 3b91fabe3..0e27034e7 100644 --- a/index/ma/mathpaqs/mathpaqs-20230121.0.0.toml +++ b/index/ma/mathpaqs/mathpaqs-20230121.0.0.toml @@ -14,17 +14,38 @@ Key features of Mathpaqs: * Unconditionally portable (*) * Tests and demos included * **Free**, Open-Source + ___ (*) within limits of compiler's provided integer types and target architecture capacity. """ authors = ["Gautier de Montmollin"] -executables = ["arenstorf", "arithmetic_compression", "biomorph", "champ_vt", "cr_demo", "fractal", "ppm2func", "show_floats_limits", "test_beta", "test_cholesky", "test_copulas", "test_ert", "test_estimators", "test_formulas", "test_gamma", "test_generic_real_linear_equations", "test_normal", "test_pareto", "test_poisson", "test_qr", "test_random_performance", "test_rsa", "test_samples", "test_sparse", "test_u_rand", "test_discrete_random_simulation"] +executables = ["arenstorf", "arithmetic_compression", + "biomorph", "champ_vt", "cr_demo", + "fractal", "ppm2func", "show_floats_limits", + "test_beta", "test_cholesky", "test_copulas", "test_ert", + "test_estimators", "test_formulas", "test_gamma", + "test_generic_real_linear_equations", "test_normal", + "test_pareto", "test_poisson", "test_qr", + "test_random_performance", "test_rsa", + "test_samples", "test_sparse", "test_u_rand", + "test_discrete_random_simulation"] project-files = ["mathpaqs.gpr", "mathpaqs_test.gpr"] licenses = "MIT" maintainers = ["alejandro@mosteo.com"] maintainers-logins = ["mosteo", "zertovitch"] -tags = ["mathematics", "numerics", "algebra", "matrix", "probability", "statistics", "runge", "kutta", "runge-kutta"] +tags = ["algebra", + "contour", "contour-plot", + "formula-parser", + "fractal", + "kutta", + "linear-algebra", "mathematics", "matrix", + "numerics", + "pareto", + "poisson", + "polynomial", "probability", + "random", "rational", "runge", "runge-kutta", + "statistics"] [origin] url = "https://sourceforge.net/projects/mathpaqs/files/mathpaqs_2023_01_21.zip" diff --git a/index/mc/mcp2221/mcp2221-2.22357.1.toml b/index/mc/mcp2221/mcp2221-2.22357.1.toml new file mode 100644 index 000000000..ead047c60 --- /dev/null +++ b/index/mc/mcp2221/mcp2221-2.22357.1.toml @@ -0,0 +1,89 @@ +name = "mcp2221" +version = "2.22357.1" +description = "MCP2221 USB Raw HID I/O Expander Library for GNAT Ada" +website = "https://github.com/pmunts/libsimpleio" +authors = ["Philip Munts"] +maintainers = ["Philip Munts "] +maintainers-logins = ["pmunts"] +licenses = "BSD-1-Clause" + +long-description = """ +This crate contains a subset of the [**Linux Simple I/O +Library**](https://github.com/pmunts/libsimpleio) Ada packages that are +relevant for building programs for the MCP2221 USB Raw HID I/O expander. + +This crate can be built for Linux, MacOS, or Windows targets. + +The [MCP2221A](https://www.microchip.com/en-us/product/MCP2221A) is a +[PIC16F1455](https://www.microchip.com/en-us/product/PIC16F1455) +microcontroller that has been preprogrammed with firmware to implement +*two* USB devices: a USB serial port and a raw HID device that acts as +an I/O expander providing one +[I](https://i2c.info/)[^2^](https://i2c.info/)[C](https://i2c.info/) bus +controller (master only) and four +[GPIO](https://en.wikipedia.org/wiki/General-purpose_input/output) pins +(**`GP0`**, **`GP1`**, **`GP2`**, and **`GP3`**). + +The GPIO pins **`GP1`**, **`GP2`**, and **`GP3`** can be configured for +some alternate functions, including 10-bit A/D inputs or 5-bit D/A +outputs: + +**`GP1`**: **`GPIO ADC1`**\ +**`GP2`**: **`GPIO ADC2 DAC1`**\ +**`GP3`**: **`GPIO ADC3 DAC2`** + +The MCP2221A replaces an earlier part, the MCP2221. The only difference +between the older MCP2221 and the newer MCP2221A is that the latter +supports some higher baud rates on the USB serial port device. Since +this crate only deals with the raw HID I/O expander functions, it will +work fine with either the older MCP2221 or the newer MCP2221A. +""" + +tags = ["embedded", "linux", "mcp2221", "adc", "dac", "gpio", "i2c", "motor", +"pwm", "sensor", "serial", "servo", "spi", "stepper"] + +project-files = ["mcp2221.gpr"] + +[available."case(os)"] +'linux|macos|windows' = true +"..." = false + +# Linux needs libhidapi and libusb crates + +[[depends-on]] +[depends-on."case(os)"."linux"] +libhidapi = "*" + +[[depends-on]] +[depends-on."case(os)"."linux"] +libusb = "*" + +# macOS needs hidapi and libusb crates + +[[depends-on]] +[depends-on."case(distribution)"."homebrew|macports"] +libhidapi = "*" + +[[depends-on]] +[depends-on."case(distribution)"."homebrew|macports"] +libusb = "*" + +[[actions."case(os)".linux]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.linux"] + +[[actions."case(os)".macos]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.macos"] + +[[actions."case(os)".windows]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.windows"] + +[origin] +hashes = [ +"sha256:7acba0fa24337fae37c817acd2e63a752df5b7a95c242f954bbf5339b51982d9", +"sha512:bf077e26c525f950e92f71303a44d001883a83bf02fefd1629f5af17e37fabbeb59acdcaedbab0a014b4ff6c10944588ab97209da2d35e55199a842e4acba567", +] +url = "https://raw.githubusercontent.com/pmunts/alire-crates/1884de293676770c7567193e566ec867deb4a43f/mcp2221/mcp2221-2.22357.1.tbz2" + diff --git a/index/re/remoteio/remoteio-2.22357.1.toml b/index/re/remoteio/remoteio-2.22357.1.toml new file mode 100644 index 000000000..9704a4904 --- /dev/null +++ b/index/re/remoteio/remoteio-2.22357.1.toml @@ -0,0 +1,83 @@ +name = "remoteio" +version = "2.22357.1" +description = "Remote I/O Protocol Client Library for GNAT Ada" +website = "https://github.com/pmunts/libsimpleio" +authors = ["Philip Munts"] +maintainers = ["Philip Munts "] +maintainers-logins = ["pmunts"] +licenses = "BSD-1-Clause" + +long-description = """ +This crate contains a subset of the [**Linux Simple I/O +Library**](https://github.com/pmunts/libsimpleio) Ada packages that are +relevant for building [**Remote I/O +Protocol**](http://git.munts.com/libsimpleio/doc/RemoteIOProtocol.pdf) +client programs. + +This crate can be built for Linux, MacOS, or Windows targets. + +The **Remote I/O Protocol** is a lightweight message protocol for +performing remote I/O operations. The protocol is implemented using a +request/reply pattern, where the master device (*e.g.* a Linux computer) +transmits an I/O request in a 64-byte message to the slave device +(*e.g.* a single chip microcontroller). The slave device performs the +requested I/O operation and returns an I/O response in a 64-byte message +back to the master device. + +The protocol is kept as simple as possible (exactly one 64-byte request +message and one 64- byte response message) to allow using low end single +chip microcontrollers such as the +[PIC16F1455](https://www.microchip.com/en-us/product/PIC16F1455) for the +slave device. Although particularly suited for USB raw HID devices, this +protocol can use any transport mechanism that can reliably transmit and +receive 64-byte messages. +""" + +tags = ["embedded", "linux", "remoteio", "adc", "dac", "gpio", "i2c", "motor", +"pwm", "sensor", "serial", "servo", "spi", "stepper"] + +project-files = ["remoteio.gpr"] + +[available."case(os)"] +'linux|macos|windows' = true +"..." = false + +# Linux needs libhidapi and libusb crates + +[[depends-on]] +[depends-on."case(os)"."linux"] +libhidapi = "*" + +[[depends-on]] +[depends-on."case(os)"."linux"] +libusb = "*" + +# macOS needs hidapi and libusb crates + +[[depends-on]] +[depends-on."case(distribution)"."homebrew|macports"] +libhidapi = "*" + +[[depends-on]] +[depends-on."case(distribution)"."homebrew|macports"] +libusb = "*" + +[[actions."case(os)".linux]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.linux"] + +[[actions."case(os)".macos]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.macos"] + +[[actions."case(os)".windows]] +type = "post-fetch" +command = ["sh", "-c", "./postfetch.windows"] + +[origin] +hashes = [ +"sha256:28437dc9111f1f7cfd11a938470028cb0d67ebf517a5381deb116b82008f8b57", +"sha512:9599c7d5fd65156655023be72f9ecf54508009edd5a191fb97d1264cc4117c1523720177786b20901a5a66eef3e778b8e4b920774e066f0d26f88a5c2fb12778", +] +url = "https://raw.githubusercontent.com/pmunts/alire-crates/ff212101fe88398db9884d01bebc606aa6bd0a17/remoteio/remoteio-2.22357.1.tbz2" +