Subject: Re: [bug#34189] [PATCH] gnu: Add arcan.

From: Ludovic Courtès <[email-masked]>
Date: Sat, 09 Feb 2019 22:42:29 +0100

Hello!

(Please keep [email-masked] Cc’d.)

L  p R n  d n    <[email-masked]> skribis:

> Ludovic Courtès <[email-masked]> writes:

[...]

>> Did you try vanilla OpenAL instead?  If you have a pointer to a page
>> explaining why this variant is needed, that’d be great!  Also please add
>> a ‘file-name’ for this ‘origin’.
>
> Vanilla OpenAl is used for the biggest part of the build but the patched
> version is needed to build arcan_lwa. I put a link to packaging
> guidelines. Is it enough?

Yes (at least upstream does recognize that it’s “sub-optimal”, so
there’s hope ;-)).

>>> +    (license (list license:gpl2+
>>> +                   license:lgpl2.0
>>> +                   license:bsd-3))))
>>
>> Could you add a comment above explaining the meaning of the list
>> (whether it’s triple-licensed or what)?
>
> I also put a link for that. Licenses here seem a little complexe and a bit
> out of my reach. Should I put all the licenses used in COPYING file?

It is indeed fairly complex.  To make things worse, the ‘COPYING’ file
mixes licenses of arcan itself and licenses of its dependencies.  It
would appear that that the 3 licenses you list above are those that
matter indeed and the combination is presumably GPLv2+.

I think that “LGPL” means ’lgpl2.0+’ though, not ‘lgpl2.0’.  Could you
check whether source files that have a GPL or LGPL license header carry
the “or any later version” wording?

> From 5fba415f14018b66439520eedab1997c688fa158 Mon Sep 17 00:00:00 2001
> From: Lprndn <[email-masked]>
> Date: Thu, 24 Jan 2019 13:29:21 +0100
> Subject: [PATCH] gnu: Add arcan.
>
> * gnu/packages/arcan.scm: New file.

With this patch and the changes below, I get:

--8<---------------cut here---------------start------------->8---
[ 73%] Performing build step for 'openal_lwa'
cd /tmp/guix-build-arcan-0.5.5.2-1.b4dd1fb.drv-0/source/build/openal_lwa_static && /gnu/store/a97p7wsm6y2g3qixx6hl9lzl2g0m3xpb-cmake-3.13.1/bin/cmake -Dmake=make -P /tmp/guix-build-arcan-0.5.5.2-1.b4dd1fb.drv-0/source/build/openal_lwa-prefix/src/openal_lwa-stamp/openal_lwa-build-RelWithDebInfo.cmake
[ 74%] Building C object CMakeFiles/arcan.dir/platform/posix/psep_open.c.o
[ 74%] Building C object CMakeFiles/arcan.dir/platform/agp/glshared.c.o
[ 75%] Building C object CMakeFiles/arcan.dir/platform/agp/shdrmgmt.c.o
CMake Error at /tmp/guix-build-arcan-0.5.5.2-1.b4dd1fb.drv-0/source/build/openal_lwa-prefix/src/openal_lwa-stamp/openal_lwa-build-RelWithDebInfo.cmake:16 (message):
  Command failed: 2

   'make'

  See also

    /tmp/guix-build-arcan-0.5.5.2-1.b4dd1fb.drv-0/source/build/openal_lwa-prefix/src/openal_lwa-stamp/openal_lwa-build-*.log

make[2]: *** [CMakeFiles/openal_lwa.dir/build.make:114: openal_lwa-prefix/src/openal_lwa-stamp/openal_lwa-build] Error 1
make[2]: Leaving directory '/tmp/guix-build-arcan-0.5.5.2-1.b4dd1fb.drv-0/source/build'
make[1]: *** [CMakeFiles/Makefile2:116: CMakeFiles/openal_lwa.dir/all] Error 2
--8<---------------cut here---------------end--------------->8---

And the changes that were needed:

diff --git a/gnu/local.mk b/gnu/local.mk
index 1ea8069308..97962110c4 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -65,6 +65,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/antivirus.scm			\
   %D%/packages/apl.scm				\
   %D%/packages/apr.scm				\
+  %D%/packages/arcan.scm			\
   %D%/packages/aspell.scm			\
   %D%/packages/assembly.scm			\
   %D%/packages/astronomy.scm			\
diff --git a/gnu/packages/arcan.scm b/gnu/packages/arcan.scm
index 9ff72a429b..e706f11edf 100644
--- a/gnu/packages/arcan.scm
+++ b/gnu/packages/arcan.scm
@@ -21,8 +21,6 @@
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
-  #:use-module (guix utils)
-
   #:use-module (gnu packages apr)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages compression)
@@ -38,6 +36,7 @@
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages ruby)
+  #:use-module (gnu packages sqlite)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xdisorg))

Thanks,
Ludo’.