From mboxrd@z Thu Jan 1 00:00:00 1970 From: Theodoros Foradis Subject: [PATCH v2 4/4] gnu: Add arm-none-eabi-toolchain. Date: Mon, 19 Sep 2016 23:23:40 +0300 Message-ID: <20160919202340.4122-5-theodoros.for@openmailbox.org> References: <20160918063513.11027-1-rekado@elephly.net> <20160919202340.4122-1-theodoros.for@openmailbox.org> Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:43911) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bm583-0000rJ-Kk for guix-devel@gnu.org; Mon, 19 Sep 2016 16:25:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bm57z-0003Yw-EY for guix-devel@gnu.org; Mon, 19 Sep 2016 16:25:26 -0400 Received: from smtp1.openmailbox.org ([62.4.1.35]:35890) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bm57z-0003Yb-8z for guix-devel@gnu.org; Mon, 19 Sep 2016 16:25:23 -0400 In-Reply-To: <20160919202340.4122-1-theodoros.for@openmailbox.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: rekado@elephly.net Cc: guix-devel@gnu.org * gnu/packages/embedded.scm (arm-none-eabi-toolchain): New procedure. (arm-none-eabi-toolchain-4.9, arm-none-eabi-toolchain-nano-4.9): New variables. (arm-none-eabi-toolchain-6, arm-none-eabi-toolchain-nano-6): New variables. --- gnu/packages/embedded.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index 29033b9..0adbcfa 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -188,3 +188,39 @@ usable on embedded products.") "--enable-newlib-nano-formatted-io" "--disable-nls")))))) +(define (arm-none-eabi-toolchain xgcc newlib-arm-none-eabi) + (let ((newlib (newlib-arm-none-eabi xgcc))) + (package + (name "arm-none-eabi-toolchain") + (version + (cond ((string=? (package-name newlib) "newlib") + (package-version xgcc)) + ((string=? (package-name newlib) "newlib-nano") + (string-append "nano-" (package-version xgcc))))) + (source #f) + (build-system trivial-build-system) + (arguments '(#:builder (mkdir %output))) + (propagated-inputs + `(("binutils" ,xbinutils-arm-none-eabi) + ("gcc" ,xgcc) + ("newlib" ,newlib))) + (synopsis "Complete GCC tool chain for ARM bare metal development") + (description "This package provides a complete GCC tool chain for ARM +bare metal development. This includes the GCC arm-none-eabi cross compiler and +newlib (or newlib-nano) as the C library. The supported programming languages +are C and C++.") + (home-page (package-home-page xgcc)) + (license (package-license xgcc))))) + +(define-public arm-none-eabi-toolchain-4.9 + (arm-none-eabi-toolchain gcc-arm-none-eabi-4.9 newlib-arm-none-eabi)) + +(define-public arm-none-eabi-toolchain-6 + (arm-none-eabi-toolchain gcc-arm-none-eabi-6 newlib-arm-none-eabi)) + +(define-public arm-none-eabi-toolchain-nano-4.9 + (arm-none-eabi-toolchain gcc-arm-none-eabi-4.9 newlib-nano-arm-none-eabi)) + +(define-public arm-none-eabi-toolchain-nano-6 + (arm-none-eabi-toolchain gcc-arm-none-eabi-6 newlib-nano-arm-none-eabi)) + -- 2.9.3