guix-commits
[Top][All Lists]
Advanced

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

01/02: gnu: ola: Build with libmicrohttpd 0.9.71.


From: guix-commits
Subject: 01/02: gnu: ola: Build with libmicrohttpd 0.9.71.
Date: Sun, 16 Aug 2020 06:18:20 -0400 (EDT)

nckx pushed a commit to branch master
in repository guix.

commit 784e7d7ae9840b4d38379e587dd181a9490cd101
Author: Tobias Geerinckx-Rice <me@tobias.gr>
AuthorDate: Sun Aug 16 12:08:37 2020 +0200

    gnu: ola: Build with libmicrohttpd 0.9.71.
    
    * gnu/packages/lighting.scm (ola)[source]: Update to 0.10.7-0.5d88293.
    [source]: Use GIT-FETCH & GIT-FILE-NAME.  Remove patch.
    [native-inputs]: Add autoconf, automake, and libtool.
    * gnu/packages/patches/ola-readdir-r.patch: Delete file.
    * gnu/local.mk (dist_patch_DATA): Remove it.
---
 gnu/local.mk                             |  1 -
 gnu/packages/lighting.scm                | 88 ++++++++++++++++++--------------
 gnu/packages/patches/ola-readdir-r.patch | 62 ----------------------
 3 files changed, 49 insertions(+), 102 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 87bd709..db0f73d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1355,7 +1355,6 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/ocaml-dose3-dont-make-printconf.patch   \
   %D%/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch   \
   %D%/packages/patches/omake-fix-non-determinism.patch \
-  %D%/packages/patches/ola-readdir-r.patch                     \
   %D%/packages/patches/openbabel-fix-crash-on-nwchem-output.patch      \
   %D%/packages/patches/opencascade-oce-glibc-2.26.patch                \
   %D%/packages/patches/opencv-fix-build-of-grfmt_jpeg2000.cpp.patch    \
diff --git a/gnu/packages/lighting.scm b/gnu/packages/lighting.scm
index 1811042..027c08b 100644
--- a/gnu/packages/lighting.scm
+++ b/gnu/packages/lighting.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
-;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -19,10 +19,11 @@
 
 (define-module (gnu packages lighting)
   #:use-module (guix build-system gnu)
-  #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (gnu packages)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
@@ -35,46 +36,55 @@
   #:use-module (gnu packages protobuf))
 
 (define-public ola
-  (package
-    (name "ola")
-    (version "0.10.7")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append
-                    
"https://github.com/OpenLightingProject/ola/releases/download/";
-                    version "/ola-" version ".tar.gz"))
-              (patches (search-patches "ola-readdir-r.patch"))
-              (sha256
-               (base32
-                "181imc9qkjm2m1iwrb5ixsckx893nc6qwjfzacsjlqp0jlnj8rca"))))
-    (build-system gnu-build-system)
-    (native-inputs
-     `(("bison" ,bison)
-       ("cppunit" ,cppunit)
-       ("flex" ,flex)
-       ("pkg-config" ,pkg-config)))
-    (inputs
-     `(("libftdi" ,libftdi)
-       ("libmicrohttpd" ,libmicrohttpd)
-       ("libusb" ,libusb)
-       ("libuuid" ,util-linux "lib")
-       ("zlib" ,zlib)))
-    (propagated-inputs
-     ;; Ola 0.10.5 only supports protobuf 2.x, and building it with 3.x breaks.
-     ;; XXX Remove protobuf-2 when it is no longer needed.
-     `(("protobuf" ,protobuf-2))) ;; 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
+  ;; 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
+       `(("bison" ,bison)
+         ("cppunit" ,cppunit)
+         ("flex" ,flex)
+         ("pkg-config" ,pkg-config)
+
+         ;; For git repository bootstrapping.
+         ("autoconf" ,autoconf)
+         ("automake" ,automake)
+         ("libtool" ,libtool)))
+      (inputs
+       `(("libftdi" ,libftdi)
+         ("libmicrohttpd" ,libmicrohttpd)
+         ("libusb" ,libusb)
+         ("libuuid" ,util-linux "lib")
+         ("zlib" ,zlib)))
+      (propagated-inputs
+       ;; Ola 0.10.5 only supports protobuf 2.x, and building it with 3.x 
breaks.
+       ;; XXX Remove protobuf-2 when it is no longer needed.
+       `(("protobuf" ,protobuf-2))) ;; 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+))))
diff --git a/gnu/packages/patches/ola-readdir-r.patch 
b/gnu/packages/patches/ola-readdir-r.patch
deleted file mode 100644
index b4bd981..0000000
--- a/gnu/packages/patches/ola-readdir-r.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-Fix build failure caused by use of the deprecated readdir_r(3) while
-building with -Werror=deprecated-declarations
-
-Patch copied from upstream source repository:
-https://github.com/daveol/ola/commit/9d8575ff38f76df698ea8889e07a3dee8f21bd68
-
-From 9d8575ff38f76df698ea8889e07a3dee8f21bd68 Mon Sep 17 00:00:00 2001
-From: Dave Olsthoorn <dave.olsthoorn@gmail.com>
-Date: Wed, 2 Mar 2016 11:22:17 +0100
-Subject: [PATCH] Use readdir instead of readdir_r
-
-This replacec the use of readdir_r with readdir since readdir seems to
-be both dangarous and deprecated in newer versions of glibc.
-
-This fixes #1055
----
- common/file/Util.cpp | 17 ++++++++---------
- 1 file changed, 8 insertions(+), 9 deletions(-)
-
-diff --git a/common/file/Util.cpp b/common/file/Util.cpp
-index e2261fd..0ffddd3 100644
---- a/common/file/Util.cpp
-+++ b/common/file/Util.cpp
-@@ -128,30 +128,29 @@ bool FindMatchingFiles(const string &directory,
-   FindClose(h_find);
- #else
-   DIR *dp;
--  struct dirent dir_ent;
--  struct dirent *dir_ent_p;
-+  struct dirent *dir_ent;
-   if ((dp = opendir(directory.data())) == NULL) {
-     OLA_WARN << "Could not open " << directory << ":" << strerror(errno);
-     return false;
-   }
- 
--  if (readdir_r(dp, &dir_ent, &dir_ent_p)) {
--    OLA_WARN << "readdir_r(" << directory << "): " << strerror(errno);
-+  if ((dir_ent = readdir(dp)) == NULL) {
-+    OLA_WARN << "readdir(" << directory << "): " << strerror(errno);
-     closedir(dp);
-     return false;
-   }
- 
--  while (dir_ent_p != NULL) {
-+  while (dir_ent != NULL) {
-     vector<string>::const_iterator iter;
-     for (iter = prefixes.begin(); iter != prefixes.end(); ++iter) {
--      if (!strncmp(dir_ent_p->d_name, iter->data(), iter->size())) {
-+      if (!strncmp(dir_ent->d_name, iter->data(), iter->size())) {
-         std::ostringstream str;
--        str << directory << PATH_SEPARATOR << dir_ent_p->d_name;
-+        str << directory << PATH_SEPARATOR << dir_ent->d_name;
-         files->push_back(str.str());
-       }
-     }
--    if (readdir_r(dp, &dir_ent, &dir_ent_p)) {
--      OLA_WARN << "readdir_r(" << directory << "): " << strerror(errno);
-+    if ((dir_ent = readdir(dp)) == NULL) {
-+      OLA_WARN << "readdir(" << directory << "): " << strerror(errno);
-       closedir(dp);
-       return false;
-     }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]