[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
10/12: gnu: Add spin2cpp.
From: |
Ricardo Wurmus |
Subject: |
10/12: gnu: Add spin2cpp. |
Date: |
Sun, 1 Jan 2017 12:56:49 +0000 (UTC) |
rekado pushed a commit to branch master
in repository guix.
commit 0a7860c4383b3b891d3d22acfe1c454d74210cd0
Author: Ricardo Wurmus <address@hidden>
Date: Sun Dec 25 21:56:22 2016 +0100
gnu: Add spin2cpp.
* gnu/packages/embedded.scm (spin2cpp): New variable.
---
gnu/packages/embedded.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index e8f8cc8..c78054d 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -614,3 +614,52 @@ code.")
upload binaries to a Parallax Propeller micro-controller.")
(license license:expat))))
+(define-public spin2cpp
+ (package
+ (name "spin2cpp")
+ (version "3.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/totalspectrum/spin2cpp/"
+ "archive/v" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00i8i0dspd5115ggkv5vx2xqb21l6y38wz0bakgby8n3b4k9xnk0"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;; The tests assume that a micro-controller is connected.
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'set-cross-environment-variables
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CROSS_LIBRARY_PATH"
+ (string-append (assoc-ref inputs "propeller-toolchain")
+ "/propeller-elf/lib"))
+ (setenv "CROSS_C_INCLUDE_PATH"
+ (string-append (assoc-ref inputs "propeller-toolchain")
+ "/propeller-elf/include"))
+ #t))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out")
+ "/bin")))
+ (for-each (lambda (file)
+ (install-file (string-append "build/" file)
+ bin))
+ '("testlex" "spin2cpp" "fastspin")))
+ #t)))))
+ (native-inputs
+ `(("bison" ,bison)
+ ("propeller-load" ,propeller-load)
+ ("propeller-toolchain" ,propeller-toolchain)))
+ (home-page "https://github.com/totalspectrum/spin2cpp")
+ (synopsis "Convert Spin code to C, C++, or PASM code")
+ (description "This is a set of tools for converting the Spin language for
+the Parallax Propeller micro-controller into C or C++ code, into PASM, or even
+directly into an executable binary. The binaries produced use LMM PASM, so
+they are much faster than regular Spin bytecodes (but also quite a bit
+larger).")
+ (license license:expat)))
+
- 01/12: gnu: clisp: Use modify-phases syntax., (continued)
- 01/12: gnu: clisp: Use modify-phases syntax., Ricardo Wurmus, 2017/01/01
- 03/12: gnu: Add dummy linker for propeller-elf., Ricardo Wurmus, 2017/01/01
- 12/12: gnu: Add propeller-development-suite., Ricardo Wurmus, 2017/01/01
- 05/12: gnu: Add propeller-gcc., Ricardo Wurmus, 2017/01/01
- 08/12: gnu: Add openspin., Ricardo Wurmus, 2017/01/01
- 09/12: gnu: Add propeller-load., Ricardo Wurmus, 2017/01/01
- 06/12: gnu: Add proplib., Ricardo Wurmus, 2017/01/01
- 02/12: gnu: clisp: Remove timestamps., Ricardo Wurmus, 2017/01/01
- 07/12: gnu: Add propeller-toolchain., Ricardo Wurmus, 2017/01/01
- 11/12: gnu: Add spinsim., Ricardo Wurmus, 2017/01/01
- 10/12: gnu: Add spin2cpp.,
Ricardo Wurmus <=
- 04/12: gnu: Add propeller-binutils., Ricardo Wurmus, 2017/01/01