unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Theodoros Foradis <theodoros.for@openmailbox.org>
To: guix-devel@gnu.org
Subject: [PATCH v2 3/4] gnu: Add newlib-arm-none-eabi.
Date: Tue, 20 Sep 2016 13:50:14 +0300	[thread overview]
Message-ID: <20160920105015.1783-4-theodoros.for@openmailbox.org> (raw)
In-Reply-To: <20160920105015.1783-1-theodoros.for@openmailbox.org>

* gnu/packages/embedded.scm (newlib-arm-none-eabi): New procedure.
(newlib-nano-arm-none-eabi): New procedure.
---
 gnu/packages/embedded.scm | 59 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)

diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 56fbafb..29033b9 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -129,3 +129,62 @@
                       (cons
                        (search-patch "gcc-6-cross-environment-variables.patch")
                        (search-patches "gcc-6-arm-none-eabi-multilib.patch"))))))))
+
+(define (newlib-arm-none-eabi xgcc)
+  (package
+    (name "newlib")
+    (version "2.4.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "ftp://sourceware.org/pub/newlib/newlib-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "01i7qllwicf05vsvh39qj7qp5fdifpvvky0x95hjq39mbqiksnsl"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:out-of-source? #t
+       #:configure-flags '("--target=arm-none-eabi"
+                           "--enable-newlib-io-long-long"
+                           "--enable-newlib-register-fini"
+                           "--disable-newlib-supplied-syscalls"
+                           "--disable-nls")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-shell-shebangs
+           (lambda _
+             (for-each patch-makefile-SHELL
+                       (find-files "." "Makefile.in")))))))
+    (native-inputs
+     `(("xbinutils" ,xbinutils-arm-none-eabi)
+       ("xgcc" ,xgcc)
+       ("texinfo" ,texinfo)))
+    (home-page "http://www.sourceware.org/newlib/")
+    (synopsis "C library for use on embedded systems")
+    (description "Newlib is a C library intended for use on embedded
+systems.  It is a conglomeration of several library parts that are easily
+usable on embedded products.")
+    (license (license:non-copyleft
+              "https://www.sourceware.org/newlib/COPYING.NEWLIB"))))
+
+(define (newlib-nano-arm-none-eabi xgcc)
+  (package
+    (inherit (newlib-arm-none-eabi xgcc))
+    (name "newlib-nano")
+    (arguments
+     (substitute-keyword-arguments (package-arguments (newlib-arm-none-eabi xgcc))
+       ((#:configure-flags flags)
+        ``("--target=arm-none-eabi"
+           "--enable-multilib"
+           "--disable-newlib-supplied-syscalls"
+           "--enable-newlib-reent-small"
+           "--disable-newlib-fvwrite-in-streamio"
+           "--disable-newlib-fseek-optimization"
+           "--disable-newlib-wide-orient"
+           "--enable-newlib-nano-malloc"
+           "--disable-newlib-unbuf-stream-opt"
+           "--enable-lite-exit"
+           "--enable-newlib-global-atexit"
+           "--enable-newlib-nano-formatted-io"
+           "--disable-nls"))))))
+
-- 
2.9.3

  parent reply	other threads:[~2016-09-20 10:51 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-18  6:35 [PATCH 0/3] Add GCC cross compiler for arm-none-eabi Ricardo Wurmus
2016-09-18  6:35 ` [PATCH 1/3] gnu: Add arm-none-eabi cross compiler Ricardo Wurmus
2016-09-21  8:34   ` Ludovic Courtès
2016-09-18  6:35 ` [PATCH 2/3] gnu: Add newlib-arm-none-eabi Ricardo Wurmus
2016-09-21  8:38   ` Ludovic Courtès
2016-09-18  6:35 ` [PATCH 3/3] gnu: Add newlib-nano-arm-none-eabi Ricardo Wurmus
2016-09-21  8:40   ` Ludovic Courtès
2016-10-02 18:47     ` Ricardo Wurmus
2016-09-19 20:23 ` [PATCH v2 0/4] Add GCC cross compiler for arm-none-eabi Theodoros Foradis
2016-09-19 20:23   ` [PATCH v2 1/4] gnu: Add arm-none-eabi cross compiler Theodoros Foradis
2016-09-19 20:23   ` [PATCH v2 2/4] gnu: Add arm-none-eabi-gcc-6 and patches Theodoros Foradis
2016-10-10 20:22     ` Ricardo Wurmus
2016-09-19 20:23   ` [PATCH v2 3/4] gnu: Add newlib-arm-none-eabi Theodoros Foradis
2016-09-19 20:23   ` [PATCH v2 4/4] gnu: Add arm-none-eabi-toolchain Theodoros Foradis
2016-09-27  9:03   ` [PATCH v2 0/4] Add GCC cross compiler for arm-none-eabi Ludovic Courtès
2016-09-29  9:24     ` Ricardo Wurmus
2016-09-29 17:39       ` Theodoros Foradis
2016-10-10 18:09       ` Theodoros Foradis
2016-10-10 18:23         ` Ricardo Wurmus
2016-10-11 15:50           ` theodoros.for
2016-10-16 10:01           ` Ricardo Wurmus
2016-10-23 17:01             ` Theodoros Foradis
2016-11-26  8:55               ` Ricardo Wurmus
2016-09-20 10:50 ` [PATCH v2 0/1] " Theodoros Foradis
2016-09-20 10:50   ` [PATCH v2 1/4] gnu: Add arm-none-eabi cross compiler Theodoros Foradis
2016-09-20 10:50   ` [PATCH v2 2/4] gnu: Add arm-none-eabi-gcc-6 and patches Theodoros Foradis
2016-09-20 10:50   ` Theodoros Foradis [this message]
2016-09-20 10:50   ` [PATCH v2 4/4] gnu: Add arm-none-eabi-toolchain Theodoros Foradis
2016-09-21  8:30 ` [PATCH 0/3] Add GCC cross compiler for arm-none-eabi 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

  List information: https://guix.gnu.org/

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

  git send-email \
    --in-reply-to=20160920105015.1783-4-theodoros.for@openmailbox.org \
    --to=theodoros.for@openmailbox.org \
    --cc=guix-devel@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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).