all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Simon South <simon@simonsouth.net>
To: 65807@debbugs.gnu.org
Subject: [bug#65807] [PATCH v2 7/9] gnu: libftdi: Build Python bindings.
Date: Thu,  7 Sep 2023 12:37:56 -0400	[thread overview]
Message-ID: <4d91581c587d44c5c1c6feb63289adaa49dbb865.1694104141.git.simon@simonsouth.net> (raw)
In-Reply-To: <cover.1694104141.git.simon@simonsouth.net>

* gnu/packages/libftdi.scm (libftdi)[outputs]: Add "python".
[arguments]<#:phases>: Add with "install-python-binding" phase.
[native-inputs]: Add python, swig.
---
 gnu/packages/libftdi.scm | 24 +++++++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/libftdi.scm b/gnu/packages/libftdi.scm
index 0a996b05e7..773b0ec73e 100644
--- a/gnu/packages/libftdi.scm
+++ b/gnu/packages/libftdi.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2023 Simon South <simon@simonsouth.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -18,15 +19,19 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages libftdi)
+  #:use-module (guix build utils)
   #:use-module (guix build-system cmake)
   #:use-module (guix download)
   #:use-module (guix gexp)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
+  #:use-module (guix utils)
   #:use-module (gnu packages)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages swig)
   #:use-module (gnu packages textutils))
 
 (define-public libftdi
@@ -42,6 +47,7 @@ (define-public libftdi
                (base32
                 "0x0vncf6i92slgrn0h7ghkskqbglbs534220qa84d0qg114zndpc"))))
     (build-system cmake-build-system)
+    (outputs '("out" "python"))
     (arguments
      (list
       #:configure-flags
@@ -49,10 +55,26 @@ (define-public libftdi
                              #$output "/share/doc/" #$name "-" #$version)
               "-DEXAMPLES=OFF"
               "-DLIB_SUFFIX=''")        ; place libraries in /lib, not /lib64
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'install 'install-python-binding
+            (lambda _
+              (let* ((python-version
+                      #$(version-major+minor (package-version python)))
+                     (python-lib-path
+                      (string-append "/lib/python" python-version)))
+                (mkdir-p (string-append #$output:python "/lib"))
+                (mkdir-p (string-append #$output:python "/share/libftdi"))
+                (rename-file (string-append #$output python-lib-path)
+                             (string-append #$output:python python-lib-path))
+                (rename-file (string-append #$output
+                                            "/share/libftdi/examples")
+                             (string-append #$output:python
+                                            "/share/libftdi/examples"))))))
       #:test-target "check"
       #:tests? #f))                     ; tests fail without access to USB
     (native-inputs
-     (list pkg-config))
+     (list pkg-config python swig))
     (inputs
      (list boost libconfuse))
     (propagated-inputs
-- 
2.40.1





  parent reply	other threads:[~2023-09-07 16:39 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-07 15:43 [bug#65807] [PATCH 0/8] gnu: libftdi: Update to 1.5; other improvements Simon South
2023-09-07 15:45 ` [bug#65807] [PATCH 1/8] gnu: libftdi: Update package style Simon South
2023-09-07 15:45 ` [bug#65807] [PATCH 2/8] gnu: libftdi: Do not build example programs Simon South
2023-09-07 15:45 ` [bug#65807] [PATCH 3/8] gnu: libftdi: Install libraries to /lib instead of /lib64 Simon South
2023-09-07 15:45 ` [bug#65807] [PATCH 4/8] gnu: libftdi: Build ftdi_eeprom Simon South
2023-09-07 15:45 ` [bug#65807] [PATCH 5/8] gnu: libftdi: Build C++ bindings Simon South
2023-09-07 15:45 ` [bug#65807] [PATCH 6/8] gnu: libftdi: Build Python bindings Simon South
2023-09-07 15:45 ` [bug#65807] [PATCH 7/8] gnu: libftdi: Update to 1.5 Simon South
2023-09-07 15:45 ` [bug#65807] [PATCH 8/8] gnu: libftdi: Build API documentation Simon South
2023-09-07 16:37 ` [bug#65807] [PATCH v2 0/9] gnu: libftdi: Update to 1.5; other improvements Simon South
2023-09-07 16:37   ` [bug#65807] [PATCH v2 1/9] gnu: libftdi: Update package style Simon South
2023-09-07 16:37   ` [bug#65807] [PATCH v2 2/9] gnu: libftdi: Use HTTPS for package source Simon South
2023-09-07 16:37   ` [bug#65807] [PATCH v2 3/9] gnu: libftdi: Do not build example programs Simon South
2023-09-07 16:37   ` [bug#65807] [PATCH v2 4/9] gnu: libftdi: Install libraries to /lib instead of /lib64 Simon South
2023-09-07 16:37   ` [bug#65807] [PATCH v2 5/9] gnu: libftdi: Build ftdi_eeprom Simon South
2023-09-07 16:37   ` [bug#65807] [PATCH v2 6/9] gnu: libftdi: Build C++ bindings Simon South
2023-09-07 16:37   ` Simon South [this message]
2023-09-07 16:37   ` [bug#65807] [PATCH v2 8/9] gnu: libftdi: Update to 1.5 Simon South
2023-09-07 16:37   ` [bug#65807] [PATCH v2 9/9] gnu: libftdi: Build API documentation Simon South
2023-09-14 21:38   ` bug#65807: [PATCH 0/8] gnu: libftdi: Update to 1.5; other improvements Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4d91581c587d44c5c1c6feb63289adaa49dbb865.1694104141.git.simon@simonsouth.net \
    --to=simon@simonsouth.net \
    --cc=65807@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.