[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
06/12: gnu: Add proplib.
From: |
Ricardo Wurmus |
Subject: |
06/12: gnu: Add proplib. |
Date: |
Sun, 1 Jan 2017 12:56:49 +0000 (UTC) |
rekado pushed a commit to branch master
in repository guix.
commit 0d0079b2c519e3846c4affa33603901bf48b2aa8
Author: Ricardo Wurmus <address@hidden>
Date: Sun Dec 25 21:55:10 2016 +0100
gnu: Add proplib.
* gnu/packages/embedded.scm (proplib): New variable.
---
gnu/packages/embedded.scm | 75 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 75 insertions(+)
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index d75b329..bd155f5 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -451,3 +451,78 @@ with a layered architecture of JTAG interface and TAP
support.")
(home-page "https://github.com/totalspectrum/gcc-propeller")
(synopsis "GCC for the Parallax Propeller"))))
+;; There is no release, so we take the latest version as referenced from here:
+;; https://github.com/dbetz/propeller-gcc
+(define-public proplib
+ (let ((commit "844741fe0ceb140ab2fdf9d0667f68c1c39c31da")
+ (revision "1"))
+ (package
+ (name "proplib")
+ (version (string-append "0.0.0-" revision "." (string-take commit 9)))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/totalspectrum/proplib.git")
+ (commit commit)))
+ (file-name (string-append name "-" commit "-checkout"))
+ (sha256
+ (base32
+ "0q7irf1x8iqx07n7lzksax9armrdkizs49swsz76nbks0mw67wiv"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no tests
+ #:make-flags
+ (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ (string-append "BUILD=" (getcwd) "/build"))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'fix-Makefile
+ (lambda _
+ (substitute* "Makefile"
+ ;; The GCC sources are not part of this package, so we cannot
+ ;; install the out-of-tree license file.
+ (("cp \\.\\..*") "")
+ ;; Control the installation time of the headers.
+ ((" install-includes") ""))
+ #t))
+ ;; The Makefile does not separate building from installation, so we
+ ;; have to create the target directories at build time.
+ (add-before 'build 'create-target-directories
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (zero? (apply system* "make" "install-dirs" make-flags))))
+ (add-before 'build 'set-cross-environment-variables
+ (lambda* (#:key outputs #:allow-other-keys)
+ (setenv "CROSS_LIBRARY_PATH"
+ (string-append (assoc-ref outputs "out")
+ "/propeller-elf/lib:"
+ (or (getenv "CROSS_LIBRARY_PATH") "")))
+ (setenv "CROSS_C_INCLUDE_PATH"
+ (string-append (assoc-ref outputs "out")
+ "/propeller-elf/include:"
+ (or (getenv "CROSS_C_INCLUDE_PATH") "")))
+ #t))
+ (add-after 'build 'build-tiny
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (zero? (apply system* "make" "tiny" make-flags))))
+ ;; The build of the tiny libraries depends on the includes to be
+ ;; available. Since we set CROSS_C_INCLUDE_PATH to the output
+ ;; directory, we have to install the includes first.
+ (add-before 'build-tiny 'install-includes
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (zero? (apply system* "make" "install-includes" make-flags))))
+ (add-after 'install 'install-tiny
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (zero? (apply system* "make" "install-tiny" make-flags)))))))
+ (native-inputs
+ `(("propeller-gcc" ,propeller-gcc)
+ ("propeller-binutils" ,propeller-binutils)
+ ("perl" ,perl)))
+ (home-page "https://github.com/totalspectrum/proplib")
+ (synopsis "C library for the Parallax Propeller")
+ (description "This is a C library for the Parallax Propeller
+micro-controller.")
+ ;; Most of the code is released under the Expat license. Some of the
+ ;; included code is public domain and some changes are BSD licensed.
+ (license license:expat))))
+
- branch master updated (6f7bcaa -> 395bbfd), Ricardo Wurmus, 2017/01/01
- 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 <=
- 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, 2017/01/01
- 04/12: gnu: Add propeller-binutils., Ricardo Wurmus, 2017/01/01