guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

07/07: gnu: Add asl.


From: guix-commits
Subject: 07/07: gnu: Add asl.
Date: Mon, 18 Sep 2023 17:43:18 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 3d8d67ef6928f5d81118c97f03372cd341eab8b0
Author: Simon South <simon@simonsouth.net>
AuthorDate: Sat Sep 9 19:07:37 2023 -0400

    gnu: Add asl.
    
    * gnu/packages/assembly.scm (asl): New variable.
    
    Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
 gnu/packages/assembly.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)

diff --git a/gnu/packages/assembly.scm b/gnu/packages/assembly.scm
index fef2181e6e..37b5712d81 100644
--- a/gnu/packages/assembly.scm
+++ b/gnu/packages/assembly.scm
@@ -13,6 +13,7 @@
 ;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
 ;;; Copyright © 2022 Felix Gruber <felgru@posteo.net>
 ;;; Copyright © 2022 Andy Tai <atai@atai.org>
+;;; Copyright © 2023 Simon South <simon@simonsouth.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -33,6 +34,7 @@
   #:use-module (guix build-system meson)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
+  #:use-module ((guix build utils) #:select (parallel-job-count))
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
@@ -55,10 +57,69 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages sphinx)
   #:use-module (gnu packages shells)
+  #:use-module (gnu packages tex)
   #:use-module (gnu packages xml)
   #:use-module ((guix utils)
                 #:select (%current-system cc-for-target)))
 
+(define-public asl
+  (let ((build "247"))
+    (package
+      (name "asl")
+      (version (string-append "1.42-beta-" build))
+      (source
+       (origin
+         (method url-fetch)
+         (uri (string-append
+               "http://john.ccac.rwth-aachen.de:8000/ftp/as/source/c_version/";
+               "asl-current-142-bld" build ".tar.bz2"))
+         (sha256
+          (base32 "1qgz5yzg50vpwzrjqvw8bgnvm67dqhfb8ldxyqwaqmrj3icshp5s"))))
+      (build-system gnu-build-system)
+      (arguments
+       (list
+        #:make-flags #~(list "V=1")     ; ensures output during "check" phase
+        #:phases
+        #~(modify-phases %standard-phases
+            (delete 'bootstrap)
+            (replace 'configure
+              (lambda* (#:key target #:allow-other-keys)
+                (copy-file "Makefile.def-samples/Makefile.def-unknown-linux"
+                           "Makefile.def")
+
+                ;; Use the cross-compilation tools when cross-compiling.
+                (when #$(%current-target-system)
+                  (substitute* "Makefile.def"
+                    (("^(TARG_(CC|LD) = ).*" all prefix)
+                     (string-append prefix target "-gcc\n"))))
+
+                ;; Set the output directories appropriately.
+                (substitute* "Makefile.def"
+                  (("^(DOCDIR = ).*" all prefix)
+                   (string-append prefix #$output:doc "/share/doc/" #$name))
+                  (("/usr/local")
+                   #$output))))
+            (add-after 'check 'build-doc
+              (lambda* (#:key parallel-build? #:allow-other-keys)
+                (invoke "make"
+                        "-j" (if parallel-build?
+                                 (number->string (parallel-job-count))
+                                 "1")
+                        "docs"))))
+        #:test-target "test"))
+      (native-inputs
+       (list (texlive-updmap.cfg (list texlive-german texlive-hyperref))))
+      (outputs '("out" "doc"))
+      (home-page "http://john.ccac.rwth-aachen.de:8000/as/";)
+      (synopsis
+       "AS macro cross-assembler for microprocessors and microcontrollers")
+      (description
+       "AS is a portable macro cross-assembler targeting a wide range of
+microprocessors and microcontrollers, including devices from Intel, Motorola,
+MOS Technology, Hitachi, Fujitsu, NEC, Texas Instruments, Zilog and many other
+manufacturers.")
+      (license (list license:gpl2 license:gpl3)))))
+
 (define-public nasm
   (package
     (name "nasm")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]