pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

devel/alire: add alire-2.0.0-beta1



Module Name:	pkgsrc-wip
Committed By:	Dmytro Kazankov <dmytro.kazankov%gmail.com@localhost>
Pushed By:	dkazankov
Date:		Tue Feb 13 17:33:59 2024 +0200
Changeset:	618025f6d82d25e5b12622ec5990d8a8274126f4

Modified Files:
	Makefile
Added Files:
	alire/DESCR
	alire/Makefile
	alire/PLIST
	alire/buildlink3.mk
	alire/distinfo
	alire/files/buildlink.cgpr
	alire/patches/patch-alire.gpr
	alire/patches/patch-alire__common.gpr
	alire/patches/patch-alr.gpr
	alire/patches/patch-alr__env.gpr
	alire/patches/patch-src_alire_alire-platforms.ads
	alire/patches/patch-src_alire_os__netbsd_alire-check__absolute__path.adb
	alire/patches/patch-src_alire_os__netbsd_alire-platforms-current__netbsd.adb
	alire/patches/patch-src_alire_os__netbsd_alire-platforms-folders__netbsd.adb
	alire/version.mk

Log Message:
devel/alire: add alire-2.0.0-beta1

ALIRE: Ada LIbrary REpository

A catalog of ready-to-use Ada 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.

The package needs gcc13-gnat and gprbuild packages to build and uses gcc.mk from gcc13-gnat directory
instead of pkgsrc's. Thus it reqires wip path replacement (also in files/ directory) if
moving to main pkgsrc.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=618025f6d82d25e5b12622ec5990d8a8274126f4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                                           |   1 +
 alire/DESCR                                        |   5 +
 alire/Makefile                                     |  63 +++++++++
 alire/PLIST                                        |   2 +
 alire/buildlink3.mk                                |  15 +++
 alire/distinfo                                     |  13 ++
 alire/files/buildlink.cgpr                         | 143 +++++++++++++++++++++
 alire/patches/patch-alire.gpr                      |  24 ++++
 alire/patches/patch-alire__common.gpr              |  14 ++
 alire/patches/patch-alr.gpr                        |  14 ++
 alire/patches/patch-alr__env.gpr                   |  14 ++
 alire/patches/patch-src_alire_alire-platforms.ads  |  14 ++
 ...lire_os__netbsd_alire-check__absolute__path.adb |  14 ++
 ..._os__netbsd_alire-platforms-current__netbsd.adb |  41 ++++++
 ..._os__netbsd_alire-platforms-folders__netbsd.adb |  41 ++++++
 alire/version.mk                                   |   3 +
 16 files changed, 421 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index ba0901902b..744ea7037c 100644
--- a/Makefile
+++ b/Makefile
@@ -133,6 +133,7 @@ SUBDIR+=	aldo
 SUBDIR+=	aldumb
 SUBDIR+=	alertmanager
 SUBDIR+=	alive
+SUBDIR+=	alire
 SUBDIR+=	alsa-lib-git
 SUBDIR+=	alsa-plugins
 SUBDIR+=	alsa-plugins-jack
diff --git a/alire/DESCR b/alire/DESCR
new file mode 100644
index 0000000000..b177247a4a
--- /dev/null
+++ b/alire/DESCR
@@ -0,0 +1,5 @@
+ALIRE: Ada LIbrary REpository
+
+A catalog of ready-to-use Ada 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.
diff --git a/alire/Makefile b/alire/Makefile
new file mode 100644
index 0000000000..ecef23d119
--- /dev/null
+++ b/alire/Makefile
@@ -0,0 +1,63 @@
+# $NetBSD: Makefile,v 1.0 2023/12/27 13:30:00 dkazankov Exp $
+
+.include "version.mk"
+PKGNAME=alire-${ALIRE_VERSION}
+
+CATEGORIES=	devel
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	https://github.com/alire-project/alire
+COMMENT=	Ada LIbrary REpository
+LICENSE=	gnu-gpl-v3
+
+USE_LANGUAGES=	ada
+
+.include "../../mk/bsd.prefs.mk"
+
+DISTNAME=	${PKGNAME}
+DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
+GITHUB_TAG=	v${ALIRE_VERSION}-beta1
+MASTER_SITES=	${MASTER_SITE_GITHUB:=alire-project/}
+
+USE_TOOLS+=	git
+
+NO_CONFIGURE=	yes
+
+GCC_REQD+=	13
+.include "../../wip/gcc13-gnat/gcc.mk"
+
+.include "../../wip/gprbuild/buildlink3.mk"
+
+MAKE_ENV+=		ALIRE_OS=netbsd
+MAKE_PROGRAM=		gprbuild
+MAKE_FILE=		alr_env
+MAKE_FLAGS=		-j0 -p -P
+BUILD_MAKE_FLAGS=	--config=${PKGDIR}/files/buildlink.cgpr
+
+GENERATE_PLIST+= \
+	cd ${DESTDIR}${PREFIX} && \
+	${FIND} bin \( -type f -or -type l \) -print | ${SORT};
+
+post-extract:
+	${RUN} \
+	cd ${WRKSRC} \
+	&& git init \
+	&& git config submodule.recurse true \
+	&& git remote add origin ${MASTER_SITE_GITHUB:=alire-project/}alire.git \
+	&& git fetch origin tag ${GITHUB_TAG} --no-tags \
+	&& git checkout tags/${GITHUB_TAG} -f \
+	&& git submodule init \
+	&& git submodule update
+
+do-build:
+	${RUN} \
+	cd ${WRKSRC} \
+	&& env ${MAKE_ENV} \
+	    ${MAKE_PROGRAM} ${MAKE_FLAGS} ${MAKE_FILE} ${BUILD_MAKE_FLAGS}
+
+do-install:
+	${RUN} \
+	cd ${WRKSRC} \
+	&& mkdir -p ${DESTDIR}${PREFIX}/bin \
+	&& install -m0755 bin/alr ${DESTDIR}${PREFIX}/bin
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/alire/PLIST b/alire/PLIST
new file mode 100644
index 0000000000..d9e4d5a4cd
--- /dev/null
+++ b/alire/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD$
+bin/alr
diff --git a/alire/buildlink3.mk b/alire/buildlink3.mk
new file mode 100644
index 0000000000..1a712a3c8a
--- /dev/null
+++ b/alire/buildlink3.mk
@@ -0,0 +1,15 @@
+# $NetBSD: buildlink3.mk,v 1.0 2023/12/27 13:30:00 dkazankov Exp $
+
+BUILDLINK_TREE+=	alire
+
+.if !defined(ALIRE_BUILDLINK3_MK)
+ALIRE_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.alire+=	alire>=2.0
+BUILDLINK_ABI_DEPENDS.alire+=	alire>=2.0.0
+BUILDLINK_PKGSRCDIR.alire=	../../wip/alire
+BUILDLINK_DEPMETHOD.alire?=	build
+
+.endif
+
+BUILDLINK_TREE+=	-alire
diff --git a/alire/distinfo b/alire/distinfo
new file mode 100644
index 0000000000..7be30ea632
--- /dev/null
+++ b/alire/distinfo
@@ -0,0 +1,13 @@
+$NetBSD$
+
+BLAKE2s (alire-2.0.0.tar.gz) = 3007620776346e821b18fc293c2c3819f296d411270b5ca0943225ffb5f4aacc
+SHA512 (alire-2.0.0.tar.gz) = 02740884625791cb1af2492b9953926de89677020f8209de356a91934c60bfb73792824064d0ada6067d1000f2acf8fa2edaf0f87e54870a40dc0c81702070f2
+Size (alire-2.0.0.tar.gz) = 923553 bytes
+SHA1 (patch-alire.gpr) = 571c790ca413b971dd5d676ced8188ed1761b687
+SHA1 (patch-alire__common.gpr) = e1cba2d47d48557b3002ad1f8ced0a5ba6af69f2
+SHA1 (patch-alr.gpr) = 5068ad3dc2efef1aa33dbc57debea6e872f9f70f
+SHA1 (patch-alr__env.gpr) = ec6b800d341aff7cf308457f0dda60bb5cc6a508
+SHA1 (patch-src_alire_alire-platforms.ads) = 49c9173a337855e143c4388ca4510054006d4f11
+SHA1 (patch-src_alire_os__netbsd_alire-check__absolute__path.adb) = f7893dabd3d51d64c708aa690d0c46136ffebc67
+SHA1 (patch-src_alire_os__netbsd_alire-platforms-current__netbsd.adb) = b2e1ca596d451a365a7cc567447a1590eb8325d7
+SHA1 (patch-src_alire_os__netbsd_alire-platforms-folders__netbsd.adb) = 8d1b95a40e5073ce090d8e5b715f1192170a5966
diff --git a/alire/files/buildlink.cgpr b/alire/files/buildlink.cgpr
new file mode 100644
index 0000000000..92477f512c
--- /dev/null
+++ b/alire/files/buildlink.cgpr
@@ -0,0 +1,143 @@
+configuration project default is
+   for Target use "x86_64-netbsd";
+   for Canonical_Target use "x86_64-netbsd";
+   for Inherit_Source_Path ("C++") use ("C");
+   for Inherit_Source_Path ("Asm_Cpp") use ("Asm");
+   for Default_Language use "Ada";
+   
+   for Archive_Builder  use ("ar", "cr");
+   for Archive_Builder_Append_Option use ("q");
+   for Archive_Indexer  use ("ranlib");
+   for Archive_Suffix   use ".a";
+   
+   for Symbolic_Link_Supported use "true";
+   for Library_Major_Minor_Id_Supported use "true";
+   for Library_Builder  use "/usr/pkgsrc/wip/alire/work/.buildlink/libexec/gprbuild/gprlib";
+   for Library_Support  use "full";
+   for Shared_Library_Prefix use "lib";
+   for Shared_Library_Minimum_Switches use ("-shared");
+   for Library_Version_Switches use ("-Wl,-soname,");
+
+   for Shared_Library_Suffix use ".so";
+   for Library_Auto_Init_Supported use "true";
+   for Run_Path_Option  use ("-Wl,-z,origin,-rpath,");
+   for Run_Path_Origin use "$ORIGIN";
+   for Library_Encapsulated_Supported use "true";
+   for Library_Encapsulated_Options use ("-shared", "-static-libgcc");
+   
+   for Toolchain_Version ("Ada") use "GNAT 13.2.0";
+   for Runtime_Dir       ("Ada") use "/usr/pkgsrc/wip/alire/work/.buildlink/gcc13-gnat/lib/gcc/x86_64--netbsd/13.2.0";
+
+   package Builder is
+      for Executable_Suffix use "";
+   end Builder;
+
+   package Compiler is
+      for Driver                   ("Ada") use "/usr/pkgsrc/wip/alire/work/.gcc/bin/gcc";
+      for Driver              ("C") use "/usr/pkgsrc/wip/alire/work/.gcc/bin/gcc";
+      for Driver              ("C++") use "/usr/pkgsrc/wip/alire/work/.gcc/bin/g++";
+      for Language_Kind            ("Ada") use "unit_based";
+      for Dependency_Kind          ("Ada") use "ALI_File";
+      for Leading_Required_Switches        ("Ada") use
+      ("-c", "-x", "ada", "-gnatA")
+             & Compiler'Leading_Required_Switches ("Ada");
+
+      for Mapping_File_Switches    ("Ada") use ("-gnatem=");
+      for Mapping_Spec_Suffix      ("Ada") use "%s";
+      for Mapping_Body_Suffix      ("Ada") use "%b";
+      for Config_File_Switches     ("Ada") use ("-gnatec=");
+      for Include_Path_File     ("Ada") use "ADA_PRJ_INCLUDE_FILE";
+      
+      for Multi_Unit_Switches ("Ada") use ("-gnateI");
+      for Multi_Unit_Object_Separator ("Ada") use "~";
+      for Config_Body_File_Name ("Ada") use
+           "pragma Source_File_Name_Project (%u, Body_File_Name => ""%f"");";
+      for Config_Spec_File_Name ("Ada") use
+           "pragma Source_File_Name_Project (%u, Spec_File_Name => ""%f"");";
+      for Config_Body_File_Name_Index ("Ada") use
+           "pragma Source_File_Name_Project (%u, Body_File_Name => ""%f"", Index => %i);";
+      for Config_Spec_File_Name_Index ("Ada") use
+           "pragma Source_File_Name_Project (%u, Spec_File_Name => ""%f"", Index => %i);";
+      for Config_Body_File_Name_Pattern ("Ada") use
+           "pragma Source_File_Name_Project " &
+           "  (Body_File_Name  => ""*%b""," &
+           "   Casing          => %c," &
+           "   Dot_Replacement => ""%d"");";
+      for Config_Spec_File_Name_Pattern ("Ada") use
+           "pragma Source_File_Name_Project " &
+           "  (Spec_File_Name  => ""*%s""," &
+           "   Casing          => %c," &
+           "   Dot_Replacement => ""%d"");";
+      for Config_File_Unique    ("Ada") use "False";
+      for Leading_Required_Switches ("Ada") use
+        Compiler'Leading_Required_Switches ("Ada") & ("--RTS=/usr/pkgsrc/wip/alire/work/.buildlink/gcc13-gnat/lib/gcc/x86_64--netbsd/13.2.0");
+        
+      for Leading_Required_Switches   ("C") use
+         ("-c", "-x", "c") & Compiler'Leading_Required_Switches ("C");
+      for Include_Switches_Via_Spec   ("C") use ("cc1", "-I");
+      for Max_Command_Line_Length use "8192";
+      for Response_File_Format    ("C") use "GCC_GNU";
+      for Dependency_Switches ("C") use ("-MMD", "-MF", "");
+      for PIC_Option ("C") use ("-fPIC");
+      
+      for Leading_Required_Switches   ("C++") use
+        ("-c", "-x", "c++") &
+        Compiler'Leading_Required_Switches ("C++");
+      for Dependency_Switches ("C++") use ("-MMD", "-MF", "");
+      for Include_Switches_Via_Spec ("C++") use ("cc1plus", "-I");
+      for Max_Command_Line_Length use "8192";
+      for Response_File_Format    ("C++") use "GCC_GNU";
+      for PIC_Option      ("C++") use ("-fPIC");
+   end Compiler;
+
+   package Naming is
+      for Spec_Suffix ("Ada") use ".ads";
+      for Body_Suffix ("Ada") use ".adb";
+
+      for Body_Suffix ("Asm") use ".s";
+      for Body_Suffix ("Asm2") use ".asm";
+      for Body_Suffix ("Asm_Cpp") use ".S";
+
+      for Body_Suffix ("C") use ".c";
+      for Spec_Suffix ("C") use ".h";
+
+      for Spec_Suffix ("C++") use ".hh";
+      for Body_Suffix ("C++") use ".cpp";
+
+      for Body_Suffix ("Fortran") use ".f";
+
+      for Casing use "lowercase";
+      for Dot_Replacement use "-";
+   end Naming;
+
+   package Binder is
+      for Objects_Path_File     ("Ada") use "ADA_PRJ_OBJECTS_FILE";
+      for Driver         ("Ada") use
+          "/usr/pkgsrc/wip/alire/work/.buildlink/libexec/gprbuild/gprbind";
+      for Required_Switches ("Ada") use
+        Binder'Required_Switches ("Ada") & ("--RTS=/usr/pkgsrc/wip/alire/work/.buildlink/gcc13-gnat/lib/gcc/x86_64--netbsd/13.2.0");
+   end Binder;
+   
+   package Linker is
+      for Map_File_Option         use "-Wl,-Map,";
+      for Driver use Compiler'Driver ("Ada");
+      for Driver use Compiler'Driver ("C++");
+      for Response_File_Format use "GNU";
+      for Max_Command_Line_Length use "8192";
+   end Linker;
+
+   package Clean is
+      for Source_Artifact_Extensions ("Ada") use (".dg", ".rep");
+      for Object_Artifact_Extensions ("Ada") use (".s", ".ci", ".gcno", ".su");
+
+      for Source_Artifact_Extensions ("C")   use (".gli");
+      for Object_Artifact_Extensions ("C")   use (".s", "ci", ".gcno", ".su");
+
+      for Source_Artifact_Extensions ("C++") use (".gli");
+      for Object_Artifact_Extensions ("C++") use (".s", "ci", ".gcno", ".su");
+      --  Remove the files generated by gnatinspect (in the context of GPS)
+      for Artifacts_In_Object_Dir use Clean'Artifacts_In_Object_Dir
+         & ("gnatinspect.*");
+   end Clean;
+   
+end default;
diff --git a/alire/patches/patch-alire.gpr b/alire/patches/patch-alire.gpr
new file mode 100644
index 0000000000..ad67b166a1
--- /dev/null
+++ b/alire/patches/patch-alire.gpr
@@ -0,0 +1,24 @@
+$NetBSD: patch-alire.gpr,v 1.0 2023/12/27 22:00:00 dkazankov Exp $
+
+Add NetBSD support
+
+--- alire.gpr.orig	2023-10-19 15:04:21.000000000 +0000
++++ alire.gpr
+@@ -28,6 +28,7 @@ library project Alire is
+ 
+    case Alire_Common.Host_Os is
+       when "freebsd" => Src_Dirs := Src_Dirs & ("src/alire/os_freebsd");
++      when "netbsd" => Src_Dirs := Src_Dirs & ("src/alire/os_netbsd");
+       when "linux"   => Src_Dirs := Src_Dirs & ("src/alire/os_linux");
+       when "macos"   => Src_Dirs := Src_Dirs & ("src/alire/os_macos");
+       when "windows" => Src_Dirs := Src_Dirs & ("src/alire/os_windows");
+@@ -38,6 +39,9 @@ library project Alire is
+          when "freebsd" =>
+             for body ("Alire.Platforms.Current") use "alire-platforms-current__freebsd.adb";
+             for body ("Alire.Platforms.Folders") use "alire-platforms-folders__freebsd.adb";
++         when "netbsd" =>
++            for body ("Alire.Platforms.Current") use "alire-platforms-current__netbsd.adb";
++            for body ("Alire.Platforms.Folders") use "alire-platforms-folders__netbsd.adb";
+          when "linux" =>
+             for body ("Alire.Platforms.Current") use "alire-platforms-current__linux.adb";
+             for body ("Alire.Platforms.Folders") use "alire-platforms-folders__linux.adb";
diff --git a/alire/patches/patch-alire__common.gpr b/alire/patches/patch-alire__common.gpr
new file mode 100644
index 0000000000..c9801ccbec
--- /dev/null
+++ b/alire/patches/patch-alire__common.gpr
@@ -0,0 +1,14 @@
+$NetBSD: patch-alire__common.gpr,v 1.0 2023/12/27 22:00:00 dkazankov Exp $
+
+Add NetBSD support
+
+--- alire_common.gpr.orig	2023-10-19 15:04:21.000000000 +0000
++++ alire_common.gpr
+@@ -4,6 +4,7 @@ abstract project Alire_Common is
+ 
+    type Host_OSes is ("linux",
+                       "freebsd",
++                      "netbsd",
+                       "macos",
+                       "windows");
+ 
diff --git a/alire/patches/patch-alr.gpr b/alire/patches/patch-alr.gpr
new file mode 100644
index 0000000000..ce44be4aa4
--- /dev/null
+++ b/alire/patches/patch-alr.gpr
@@ -0,0 +1,14 @@
+$NetBSD: patch-alr.gpr,v 1.0 2023/12/27 22:00:00 dkazankov Exp $
+
+Add NetBSD support
+
+--- alr.gpr.orig	2023-10-19 15:04:21.000000000 +0000
++++ alr.gpr
+@@ -14,6 +14,7 @@ project Alr is
+ 
+    case Alire_Common.Host_Os is
+       when "freebsd" => Src_Dirs := Src_Dirs & ("src/alr/os_linux");
++      when "netbsd" => Src_Dirs := Src_Dirs & ("src/alr/os_linux");
+       when "linux"   => Src_Dirs := Src_Dirs & ("src/alr/os_linux");
+       when "macos"   => Src_Dirs := Src_Dirs & ("src/alr/os_macos");
+       when "windows" => Src_Dirs := Src_Dirs & ("src/alr/os_windows");
diff --git a/alire/patches/patch-alr__env.gpr b/alire/patches/patch-alr__env.gpr
new file mode 100644
index 0000000000..f6f6ada461
--- /dev/null
+++ b/alire/patches/patch-alr__env.gpr
@@ -0,0 +1,14 @@
+$NetBSD: patch-alr__env.gpr,v 1.0 2023/12/27 22:00:00 dkazankov Exp $
+
+Add NetBSD support
+
+--- alr_env.gpr.orig	2023-10-19 15:04:21.000000000 +0000
++++ alr_env.gpr
+@@ -36,6 +36,7 @@ aggregate project Alr_Env is
+ 
+    case Alire_Common.Host_Os is
+       when "freebsd" => for External ("GNATCOLL_OS") use "unix";
++      when "netbsd" => for External ("GNATCOLL_OS") use "unix";
+       when "linux"   => for External ("GNATCOLL_OS") use "unix";
+       when "macos"   => for External ("GNATCOLL_OS") use "osx";
+       when "windows" => for External ("GNATCOLL_OS") use "windows";
diff --git a/alire/patches/patch-src_alire_alire-platforms.ads b/alire/patches/patch-src_alire_alire-platforms.ads
new file mode 100644
index 0000000000..61adc99f3a
--- /dev/null
+++ b/alire/patches/patch-src_alire_alire-platforms.ads
@@ -0,0 +1,14 @@
+$NetBSD: patch-src_alire_alire-platforms.ads,v 1.0 2023/12/27 22:00:00 dkazankov Exp $
+
+Add NetBSD support
+
+--- src/alire/alire-platforms.ads.orig	2023-10-19 15:04:21.000000000 +0000
++++ src/alire/alire-platforms.ads
+@@ -21,6 +21,7 @@ package Alire.Platforms with Preelaborat
+    --  See e.g. https://stackoverflow.com/a/45125525/761390
+ 
+    type Operating_Systems is (FreeBSD,
++                              NetBSD,
+                               Linux,
+                               MacOS,
+                               Windows,
diff --git a/alire/patches/patch-src_alire_os__netbsd_alire-check__absolute__path.adb b/alire/patches/patch-src_alire_os__netbsd_alire-check__absolute__path.adb
new file mode 100644
index 0000000000..214a82d121
--- /dev/null
+++ b/alire/patches/patch-src_alire_os__netbsd_alire-check__absolute__path.adb
@@ -0,0 +1,14 @@
+$NetBSD: patch-src_alire_os__netbsd_alire-check__absolute__path.adb,v 1.0 2023/12/27 22:00:00 dkazankov Exp $
+
+Add NetBSD support
+
+--- /dev/null	2023-12-27 21:54:28.155585723 +0200
++++ src/alire/os_netbsd/alire-check_absolute_path.adb	2023-10-19 18:04:21.000000000 +0300
+@@ -0,0 +1,7 @@
++separate (Alire)
++function Check_Absolute_Path (Path : Any_Path) return Boolean is
++begin
++   return (Path'Length >= 1
++            and then
++           Path (Path'First) = GNAT.OS_Lib.Directory_Separator);
++end Check_Absolute_Path;
diff --git a/alire/patches/patch-src_alire_os__netbsd_alire-platforms-current__netbsd.adb b/alire/patches/patch-src_alire_os__netbsd_alire-platforms-current__netbsd.adb
new file mode 100644
index 0000000000..e43641503e
--- /dev/null
+++ b/alire/patches/patch-src_alire_os__netbsd_alire-platforms-current__netbsd.adb
@@ -0,0 +1,41 @@
+$NetBSD: patch-src_alire_os__netbsd_alire-platforms-current__netbsd.adb,v 1.0 2023/12/27 22:00:00 dkazankov Exp $
+
+Add NetBSD support
+
+--- /dev/null	2023-12-27 21:54:28.155585723 +0200
++++ src/alire/os_netbsd/alire-platforms-current__netbsd.adb	2023-12-27 21:51:57.420839908 +0200
+@@ -0,0 +1,34 @@
++
++package body Alire.Platforms.Current is
++
++   --  NetBSD implementation (identical to FreeBSD)
++
++   ---------------------------
++   -- Detected_Distribution --
++   ---------------------------
++
++   function Detected_Distribution return Platforms.Distributions is
++      (Platforms.Distro_Unknown);
++
++   -----------------------
++   -- Distribution_Root --
++   -----------------------
++
++   function Distribution_Root return Absolute_Path
++   is ("/");
++
++   ----------------------
++   -- Load_Environment --
++   ----------------------
++
++   procedure Load_Environment (Ctx : in out Alire.Environment.Context)
++   is null;
++
++   ----------------------
++   -- Operating_System --
++   ----------------------
++
++   function Operating_System return Alire.Platforms.Operating_Systems
++   is (Alire.Platforms.NetBSD);
++
++end Alire.Platforms.Current;
diff --git a/alire/patches/patch-src_alire_os__netbsd_alire-platforms-folders__netbsd.adb b/alire/patches/patch-src_alire_os__netbsd_alire-platforms-folders__netbsd.adb
new file mode 100644
index 0000000000..aa33b291b1
--- /dev/null
+++ b/alire/patches/patch-src_alire_os__netbsd_alire-platforms-folders__netbsd.adb
@@ -0,0 +1,41 @@
+$NetBSD: patch-src_alire_os__netbsd_alire-platforms-folders__netbsd.adb,v 1.0 2023/12/27 22:00:00 dkazankov Exp $
+
+Add NetBSD support
+
+--- /dev/null	2023-12-27 21:54:28.155585723 +0200
++++ src/alire/os_netbsd/alire-platforms-folders__netbsd.adb	2023-10-19 18:04:21.000000000 +0300
+@@ -0,0 +1,34 @@
++with Ada.Directories;
++
++with Alire.Platforms.Common;
++
++package body Alire.Platforms.Folders is
++
++   --  Linux implementation
++
++   -----------
++   -- Cache --
++   -----------
++
++   function Cache return Absolute_Path is (Common.XDG_Cache_Folder);
++
++   -----------
++   -- Config--
++   -----------
++
++   function Config return Absolute_Path is (Common.XDG_Config_Folder);
++
++   ----------
++   -- Home --
++   ----------
++
++   function Home return Absolute_Path is (Common.Unix_Home_Folder);
++
++   ----------
++   -- Temp --
++   ----------
++
++   function Temp return Absolute_Path
++   is (Ada.Directories.Full_Name (Common.Unix_Temp_Folder));
++
++end Alire.Platforms.Folders;
diff --git a/alire/version.mk b/alire/version.mk
new file mode 100644
index 0000000000..e6a9471d59
--- /dev/null
+++ b/alire/version.mk
@@ -0,0 +1,3 @@
+# $NetBSD: version.mk,v 1.0 2023/12/27 13:30:00 dkazankov Exp $
+
+ALIRE_VERSION:=	2.0.0


Home | Main Index | Thread Index | Old Index