[PATCH 0/3] gnu: ola: Update to 0.10.8, fixing build.

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Simon South
Owner
unassigned
Submitted by
Simon South
Severity
normal
S
S
Simon South wrote on 18 Dec 2022 19:40
(address . guix-patches@gnu.org)
20221218184000.25671-1-simon@simonsouth.net
Here's a patch series that updates ola, the Open Lighting Architecture for
controlling entertainment-lighting devices, to version 0.10.8. This version
incorporates a fix[0] for building the unit-test suite with recent versions of
gcc that allows the package to build again on Guix[1].

The series also updates the package definition to reflect the modern style.

I've tested these changes on x86-64 and AArch64 and everything appears fine,
though note I don't have any lighting hardware with which to test the software
itself.


[1] It has been failing recently; see for instance

--
Simon South
simon@simonsouth.net


Simon South (3):
gnu: ola: Update to 0.10.8.
gnu: ola: Remove input labels.
gnu: ola: Use gexps.

gnu/packages/lighting.scm | 84 +++++++++++++++++++--------------------
1 file changed, 41 insertions(+), 43 deletions(-)


base-commit: 9cb42f725a2a652bb41e38988d03d7020ccf2aa1
--
2.38.1
S
S
Simon South wrote on 18 Dec 2022 19:46
[PATCH 1/3] gnu: ola: Update to 0.10.8.
(address . 60180@debbugs.gnu.org)
20221218184656.24432-1-simon@simonsouth.net
* gnu/packages/lighting.scm (ola): Update to 0.10.8.
---
gnu/packages/lighting.scm | 82 +++++++++++++++++++--------------------
1 file changed, 39 insertions(+), 43 deletions(-)

Toggle diff (98 lines)
diff --git a/gnu/packages/lighting.scm b/gnu/packages/lighting.scm
index 5850da84d8..5af49eea86 100644
--- a/gnu/packages/lighting.scm
+++ b/gnu/packages/lighting.scm
@@ -36,52 +36,48 @@ (define-module (gnu packages lighting)
#:use-module (gnu packages protobuf))
(define-public ola
- ;; Use a commit that allows building with libmicrohttpd 0.9.71.
- ;; https://github.com/OpenLightingProject/ola/pull/1651
- (let ((commit "5d882936436240b312b3836afd199587beaca840")
- (revision "0"))
- (package
- (name "ola")
- (version (git-version "0.10.7" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/OpenLightingProject/ola")
- (commit commit)))
- (sha256
- (base32 "1bhl3gvmvmnyrygfj13cibf2xirm285m8abjkaxq22hrqbsvab2m"))
- (file-name (git-file-name name version))))
- (build-system gnu-build-system)
- (native-inputs
- (list bison
- cppunit
- flex
- pkg-config
- ;; For git repository bootstrapping.
- autoconf
- automake
- libtool))
- (inputs
- `(("libftdi" ,libftdi)
- ("libmicrohttpd" ,libmicrohttpd)
- ("libusb" ,libusb)
- ("libuuid" ,util-linux "lib")
- ("zlib" ,zlib)))
- (propagated-inputs
- (list protobuf)) ; for pkg-config --libs libola
- (arguments
- `( ;; G++ >= 4.8 macro expansion tracking requires lots of memory, causing
- ;; build to fail on low memory systems. We disable that with the
- ;; following configure flags.
- #:configure-flags (list "CXXFLAGS=-ftrack-macro-expansion=0")))
- (synopsis "Framework for controlling entertainment lighting equipment")
- (description "The Open Lighting Architecture is a framework for lighting
+ (package
+ (name "ola")
+ (version "0.10.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/OpenLightingProject/ola")
+ (commit version)))
+ (sha256
+ (base32 "17dwmjdw87hv314gv5b1rmh5jglz8a0rzw7wj26xn74xw2jvxa6l"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (native-inputs
+ (list bison
+ cppunit
+ flex
+ pkg-config
+ ;; For git repository bootstrapping.
+ autoconf
+ automake
+ libtool))
+ (inputs
+ `(("libftdi" ,libftdi)
+ ("libmicrohttpd" ,libmicrohttpd)
+ ("libusb" ,libusb)
+ ("libuuid" ,util-linux "lib")
+ ("zlib" ,zlib)))
+ (propagated-inputs
+ (list protobuf)) ; for pkg-config --libs libola
+ (arguments
+ `( ;; G++ >= 4.8 macro expansion tracking requires lots of memory, causing
+ ;; build to fail on low memory systems. We disable that with the
+ ;; following configure flags.
+ #:configure-flags (list "CXXFLAGS=-ftrack-macro-expansion=0")))
+ (synopsis "Framework for controlling entertainment lighting equipment")
+ (description "The Open Lighting Architecture is a framework for lighting
control information. It supports a range of protocols and over a dozen USB
devices. It can run as a standalone service, which is useful for converting
signals between protocols, or alternatively using the OLA API, it can be used
as the backend for lighting control software. OLA runs on many different
platforms including ARM, which makes it a perfect fit for low cost Ethernet to
DMX gateways.")
- (home-page "https://www.openlighting.org/ola")
- (license license:lgpl2.1+))))
+ (home-page "https://www.openlighting.org/ola")
+ (license license:lgpl2.1+)))
--
2.38.1
S
S
Simon South wrote on 18 Dec 2022 19:46
[PATCH 2/3] gnu: ola: Remove input labels.
(address . 60180@debbugs.gnu.org)
20221218184656.24432-2-simon@simonsouth.net
* gnu/packages/lighting.scm (ola)[inputs]: Remove input labels.
---
gnu/packages/lighting.scm | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/lighting.scm b/gnu/packages/lighting.scm
index 5af49eea86..d0ad825d10 100644
--- a/gnu/packages/lighting.scm
+++ b/gnu/packages/lighting.scm
@@ -59,11 +59,11 @@ (define-public ola
automake
libtool))
(inputs
- `(("libftdi" ,libftdi)
- ("libmicrohttpd" ,libmicrohttpd)
- ("libusb" ,libusb)
- ("libuuid" ,util-linux "lib")
- ("zlib" ,zlib)))
+ (list libftdi
+ libmicrohttpd
+ libusb
+ `(,util-linux "lib")
+ zlib))
(propagated-inputs
(list protobuf)) ; for pkg-config --libs libola
(arguments
--
2.38.1
S
S
Simon South wrote on 18 Dec 2022 19:46
[PATCH 3/3] gnu: ola: Use gexps.
(address . 60180@debbugs.gnu.org)
20221218184656.24432-3-simon@simonsouth.net
* gnu/packages/lighting.scm (ola)[arguments]: Use gexps.
---
gnu/packages/lighting.scm | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)

Toggle diff (30 lines)
diff --git a/gnu/packages/lighting.scm b/gnu/packages/lighting.scm
index d0ad825d10..6230963a4b 100644
--- a/gnu/packages/lighting.scm
+++ b/gnu/packages/lighting.scm
@@ -19,6 +19,7 @@
(define-module (gnu packages lighting)
#:use-module (guix build-system gnu)
+ #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
@@ -67,10 +68,11 @@ (define-public ola
(propagated-inputs
(list protobuf)) ; for pkg-config --libs libola
(arguments
- `( ;; G++ >= 4.8 macro expansion tracking requires lots of memory, causing
- ;; build to fail on low memory systems. We disable that with the
- ;; following configure flags.
- #:configure-flags (list "CXXFLAGS=-ftrack-macro-expansion=0")))
+ (list
+ ;; G++ >= 4.8 macro expansion tracking requires lots of memory, causing
+ ;; build to fail on low memory systems. We disable that with the
+ ;; following configure flags.
+ #:configure-flags #~(list "CXXFLAGS=-ftrack-macro-expansion=0")))
(synopsis "Framework for controlling entertainment lighting equipment")
(description "The Open Lighting Architecture is a framework for lighting
control information. It supports a range of protocols and over a dozen USB
--
2.38.1
L
L
Ludovic Courtès wrote on 27 Dec 2022 23:46
Re: bug#60180: [PATCH 0/3] gnu: ola: Update to 0.10.8, fixing build.
(name . Simon South)(address . simon@simonsouth.net)(address . 60180-done@debbugs.gnu.org)
871qokbh2i.fsf@gnu.org
Hi,

Simon South <simon@simonsouth.net> skribis:

Toggle quote (4 lines)
> I've tested these changes on x86-64 and AArch64 and everything appears fine,
> though note I don't have any lighting hardware with which to test the software
> itself.

The machine agrees with you. :-)


Toggle quote (4 lines)
> gnu: ola: Update to 0.10.8.
> gnu: ola: Remove input labels.
> gnu: ola: Use gexps.

Applied, thanks!

Ludo’.
Closed
?