git: 930f7ed0ac0a - main - devel/alire: New Port, alr, Ada LIbrary REpository (ALIRE) management tool
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 04 Oct 2023 20:03:06 UTC
The branch main has been updated by fuz:
URL: https://cgit.FreeBSD.org/ports/commit/?id=930f7ed0ac0ad777d9a83b030f7dabe9b6fc883c
commit 930f7ed0ac0ad777d9a83b030f7dabe9b6fc883c
Author: Alastair Hogge <agh@riseup.net>
AuthorDate: 2023-10-04 03:20:12 +0000
Commit: Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2023-10-04 20:01:38 +0000
devel/alire: New Port, alr, Ada LIbrary REpository (ALIRE) management tool
ALIRE: Ada LIbrary REpository tool, alr.
A catalog of ready-to-use Ada/SPARK libraries plus a command-line tool
(alr) to obtain, build, and incorporate them into your own projects. It
aims to fulfill a similar role to Rust’s cargo or OCaml’s opam.
Design principles:
alr is tailored to userspace, in a similar way to Python’s virtualenv. A
project or workspace will contain all its dependencies.
Properties and dependencies of projects are managed through a TOML file.
This file exists locally for working copies of projects, and the Alire
community index stores the files corresponding to its projects.
The complete build environment is automatically set up by Alire, thus
freeing the user from concerns about installation paths. The user simply
adds dependencies to the alire.toml manifest, either from the
command-line (alr with) or a text editor, Alire handles the rest.
WWW: https://github.com/alire-project/alire
PR: 273092
Differential Revision: https://reviews.freebsd.org/D41478
---
devel/Makefile | 1 +
devel/alire/Makefile | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++
devel/alire/distinfo | 3 +++
devel/alire/pkg-descr | 15 +++++++++++++
devel/alire/pkg-plist | 21 ++++++++++++++++++
5 files changed, 101 insertions(+)
diff --git a/devel/Makefile b/devel/Makefile
index a386c5549d8c..e63743be84ad 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -155,6 +155,7 @@
SUBDIR += aifad
SUBDIR += aixlog
SUBDIR += ald
+ SUBDIR += alire
SUBDIR += allegro
SUBDIR += allegro5
SUBDIR += amber
diff --git a/devel/alire/Makefile b/devel/alire/Makefile
new file mode 100644
index 000000000000..342a69fd7d71
--- /dev/null
+++ b/devel/alire/Makefile
@@ -0,0 +1,61 @@
+PORTNAME= alire
+DISTVERSION= 1.2.2
+CATEGORIES= devel
+MASTER_SITES= https://github.com/alire-project/${PORTNAME}/releases/download/v${DISTVERSION}/
+DISTNAME= alr-${DISTVERSION}-full-sources
+
+MAINTAINER= agh@riseup.net
+COMMENT= Ada LIbrary REpository (ALIRE) management tool, alr
+WWW= https://alire.ada.dev/
+
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+BROKEN_i386= segfault: raised STORAGE_ERROR : s-intman.adb:136 explicit raise
+
+BUILD_DEPENDS= gprbuild>0:devel/gprbuild
+
+USES= ada:12,run desktop-file-utils zip
+USE_GCC= yes:build
+
+_GPR_ARGS= -j${MAKE_JOBS_NUMBER} -p -XALIRE_OS=freebsd
+
+WRKSRC= ${WRKDIR}/alr-${DISTVERSION}
+
+OPTIONS_DEFINE= DEBUG DOCS
+OPTIONS_SUB= yes
+
+DOCS_DESC= Install Design and Development documentation
+
+.include <bsd.port.options.mk>
+
+.if empty(PORT_OPTIONS:MDEBUG)
+_GPR_ARGS+= -XALIRE_BUILD_MODE=release
+.else
+WITH_DEBUG= yes
+.endif
+
+do-build:
+ (cd ${WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} gprbuild ${_GPR_ARGS} -P alr_env)
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${WRKSRC}/bin/alr \
+ ${STAGEDIR}${PREFIX}/bin
+ ${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d
+ ${INSTALL_DATA} ${WRKSRC}/scripts/alr-completion.bash \
+ ${STAGEDIR}${PREFIX}/etc/bash_completion.d/
+ ${MKDIR} ${STAGEDIR}${PREFIX}/share/applications
+ ${INSTALL_DATA} ${WRKSRC}/resources/alr.desktop \
+ ${STAGEDIR}${PREFIX}/share/applications
+ ${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps
+ ${INSTALL_DATA} ${WRKSRC}/resources/alr.png \
+ ${STAGEDIR}${PREFIX}/share/pixmaps
+
+do-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ (cd ${WRKSRC}/doc && \
+ ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR})
+
+.include <bsd.port.mk>
diff --git a/devel/alire/distinfo b/devel/alire/distinfo
new file mode 100644
index 000000000000..aa0ad93172dc
--- /dev/null
+++ b/devel/alire/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1691804403
+SHA256 (alr-1.2.2-full-sources.zip) = 8a9efd65a3da4e22ffaf5b146dba8dc125cf4ea26d482a25bcaac85d0d2764d1
+SIZE (alr-1.2.2-full-sources.zip) = 2267709
diff --git a/devel/alire/pkg-descr b/devel/alire/pkg-descr
new file mode 100644
index 000000000000..7b4340358a89
--- /dev/null
+++ b/devel/alire/pkg-descr
@@ -0,0 +1,15 @@
+ALIRE: Ada LIbrary REpository.
+
+A catalog of ready-to-use Ada libraries plus a command-line tool (alr) to
+obtain, build, and use with your own projects.
+
+alr is designed to configure, and deploy custom isolated userspace
+environments, known as a project or workspace. Environments will contain
+all the state, and dependencies it requires for operation.
+
+Properties and dependencies of projects are managed through a TOML file
+(alire.toml, found at the root of Alire workspaces). This file exists locally
+for working copies of projects, and the Alire community index stores the files
+corresponding to its projects.
+
+You can check the environment alr is using with 'alr printenv'
diff --git a/devel/alire/pkg-plist b/devel/alire/pkg-plist
new file mode 100644
index 000000000000..5e6b9951cd10
--- /dev/null
+++ b/devel/alire/pkg-plist
@@ -0,0 +1,21 @@
+bin/alr
+etc/bash_completion.d/alr-completion.bash
+share/applications/alr.desktop
+%%DOCS%%%%DOCSDIR%%/2018-03.alr-draft.pdf
+%%DOCS%%%%DOCSDIR%%/AEPs/aep-0001.md
+%%DOCS%%%%DOCSDIR%%/AEPs/aep-0002.md
+%%DOCS%%%%DOCSDIR%%/alr-logo-black-white.svg
+%%DOCS%%%%DOCSDIR%%/alr-logo-sq.png
+%%DOCS%%%%DOCSDIR%%/alr-logo-white.svg
+%%DOCS%%%%DOCSDIR%%/alr-logo.svg
+%%DOCS%%%%DOCSDIR%%/alr-logo.svg.png
+%%DOCS%%%%DOCSDIR%%/catalog-format-spec.md
+%%DOCS%%%%DOCSDIR%%/classes.graphml
+%%DOCS%%%%DOCSDIR%%/configuration.md
+%%DOCS%%%%DOCSDIR%%/getting-started.md
+%%DOCS%%%%DOCSDIR%%/introduction.md
+%%DOCS%%%%DOCSDIR%%/policies.md
+%%DOCS%%%%DOCSDIR%%/publishing.md
+%%DOCS%%%%DOCSDIR%%/toolchains.md
+%%DOCS%%%%DOCSDIR%%/user-changes.md
+share/pixmaps/alr.png