From: Maxime Devos <maximedevos@telenet.be>
To: Morgan.J.Smith@outlook.com, 48767@debbugs.gnu.org
Subject: [bug#48767] [PATCH 6/6] gnu: Add msp430lib.
Date: Sun, 26 Sep 2021 18:31:44 +0200 [thread overview]
Message-ID: <ac28008de79705a3eaca71f51c91fdbcce6d8596.camel@telenet.be> (raw)
In-Reply-To: <SN6PR05MB40310196EAD67B1772A298FDC5A69@SN6PR05MB4031.namprd05.prod.outlook.com>
[-- Attachment #1: Type: text/plain, Size: 4433 bytes --]
Morgan.J.Smith@outlook.com schreef op zo 26-09-2021 om 10:51 [-0400]:
> From: Morgan Smith <Morgan.J.Smith@outlook.com>
>
> * gnu/packages/debug.scm (msp430lib): New variable.
> ---
> gnu/packages/debug.scm | 57 ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 57 insertions(+)
>
> diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
> index 7363d45c43..263a72e5ce 100644
> --- a/gnu/packages/debug.scm
> +++ b/gnu/packages/debug.scm
> @@ -36,6 +36,7 @@
> #:use-module (gnu packages autotools)
> #:use-module (gnu packages base)
> #:use-module (gnu packages bash)
> + #:use-module (gnu packages boost)
> #:use-module (gnu packages bison)
> #:use-module (gnu packages c)
> #:use-module (gnu packages check)
> @@ -789,3 +790,59 @@ debugger with support for programming, disassembly and reverse
> engineering.")
> (home-page "https://github.com/dlbeer/mspdebug")
> (license license:gpl2+)))
> +
> +(define (version-with-underscores version)
> + (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version))
> +
> +(define-public msp430lib
> + (package
> + (name "msp430lib")
> + (version "3.15.1.1")
> + (source (origin
> + (method url-fetch/zipbomb)
> + (uri (string-append
> + "https://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSPDS/"
> + (version-with-underscores (version-major+minor+point version))
> + "_001/export/MSPDebugStack_OS_Package_"
> + (version-with-underscores version) ".zip"))
> + (sha256
> + (base32
> + "1j5sljqwc20zrb50mrji4mnmw5i680qc7n0lb0pakrrxqjc9m9g3"))))
> + (build-system gnu-build-system)
> + (arguments
> + `(#:make-flags
> + (list
> + (string-append "BOOST_DIR=" (assoc-ref %build-inputs "boost"))
> + (string-append "HIDOBJ=-I" (assoc-ref %build-inputs "hidapi") "/include/hidapi"
> + " -lhidapi-libusb"))
> + #:tests? #f
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure)
> + (add-before 'build 'fix-hidapi-includes
> + (lambda _
> + (substitute*
> + '("ThirdParty/BSL430_DLL/BSL430_DLL/Physical_Interfaces/MSPBSL_PhysicalInterfaceUSB.h"
> + "DLL430_v3/src/TI/DLL430/HidUpdateManager.cpp")
> + (("hidapi.h") "hidapi/hidapi.h"))))
> + (replace 'install
> + (lambda* (#:key outputs #:allow-other-keys)
> + (install-file "libmsp430.so"
> + (string-append (assoc-ref outputs "out") "/lib")))))))
> + (inputs
> + `(("boost" ,boost)
> + ("hidapi" ,hidapi)
> + ("libusb" ,libusb)))
> + (native-search-paths
> + (list (search-path-specification
> + ;; Used by mspdebug. mspdebug has a few different drivers it can
> + ;; use to interact with MSP430's so this is an optional dependency
> + (variable "MSPDEBUG_TILIB_PATH")
> + (files '("lib")))))
> + (home-page "https://www.ti.com/tool/MSPDS")
> + (synopsis "Library used to program and debug MSP430 microcontrollers")
> + (description "This library facilitates communication between a host computer and certain
> +MSP430 debuggers. It is also know as @acronym{MSPDS, MSP430 Debug Stack}.
> +This is an optional dependency of mspdebug (which calls this library
> +@code{tilib})")
> + (license license:bsd-3)))
I downloaded the ZIP and opened MSPDebugStackOpenSourcePackage_manifest.html, and noted:
[...] No reverse engineering, decompilation, or disassembly of this software is permitted with respect to any [...]
which isn't BSD-3, and isn't free software. I also see BSD-3 in that file.
We would need to carefully check what conditions apply to the parts of MSPDS that
are used here, and remove the non-free components.
I noticed PLATFORM := $(shell uname -s) and ifeq ($(PLATFORM),Linux) in a Makefile.
I expect that won't work on the Hurd. Maybe make that unconditional. I also noticed
CXX:=g++. Possibly some substitutions or (setenv "CXX" (cxx-for-target)) are required
to make the package cross-compilable.
There is a blob in Bios/include/UifBiosCore.h. Possibly it can simply be removed.
Greetings,
Maxime
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
prev parent reply other threads:[~2021-09-26 16:33 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20210926145155.966-1-Morgan.J.Smith@outlook.com>
2021-09-26 14:51 ` [bug#48767] [PATCH 2/6] gnu: Add gcc-msp430 Morgan.J.Smith
2021-09-26 15:51 ` Maxime Devos
2021-09-26 14:51 ` [bug#48767] [PATCH 3/6] gnu: Add newlib-msp430 Morgan.J.Smith
2021-09-26 16:04 ` Maxime Devos
2021-09-26 14:51 ` [bug#48767] [PATCH 4/6] gnu: Add msp430-toolchain Morgan.J.Smith
2021-09-26 16:08 ` Maxime Devos
2021-09-26 14:51 ` [bug#48767] [PATCH 5/6] gnu: Add gdb-msp430 Morgan.J.Smith
2021-09-26 16:16 ` Maxime Devos
2021-09-26 14:51 ` [bug#48767] [PATCH 6/6] gnu: Add msp430lib Morgan.J.Smith
2021-09-26 16:31 ` Maxime Devos [this message]
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=ac28008de79705a3eaca71f51c91fdbcce6d8596.camel@telenet.be \
--to=maximedevos@telenet.be \
--cc=48767@debbugs.gnu.org \
--cc=Morgan.J.Smith@outlook.com \
/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.