Subject: bug#40026: closed (Re: [bug#40026] Add "xa" assembler)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 11 Mar 2020 19:44:01 +0000

Your bug report

#40026: Add "xa" assembler

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
40026: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=40026
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#40026] Add "xa" assembler
From: Christopher Lemmer Webber <[email-masked]>
To: Leo Famulari <[email-masked]>
Cc: [email-masked]
Date: Wed, 11 Mar 2020 15:43:54 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Forgot to send to close it out!

Subject: Add "xa" assembler
From: Christopher Lemmer Webber <[email-masked]>
To: [email-masked]
Date: Wed, 11 Mar 2020 12:11:35 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello!  New patch, new patch.  It's been a while for me.

This is for the 6502 "xa" assembler.  It's necessary for use with the
"vice" emulator, which I've been also trying to package, but is also
useful standalone.

>From f9a241faa405bb695b4e13175722014f8a291410 Mon Sep 17 00:00:00 2001
From: Christopher Lemmer Webber <[email-masked]>
Date: Wed, 11 Mar 2020 11:14:59 -0400
Subject: [PATCH] gnu: Add xa.

* gnu/packages/assembly.scm (xa): New variable.
---
 gnu/packages/assembly.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/assembly.scm b/gnu/packages/assembly.scm
index 1ad49baf8e..ec1ed50b2d 100644
--- a/gnu/packages/assembly.scm
+++ b/gnu/packages/assembly.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2019 Guy Fleury Iteriteka <[email-masked]>
 ;;; Copyright © 2019 Andy Tai <[email-masked]>
 ;;; Copyright © 2020 Jakub Kądziołka <[email-masked]>
+;;; Copyright © 2020 Christopher Lemmer Webber <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -342,3 +343,32 @@ Supported architectures are:
 @item spc700
 @end itemize")
     (license license:gpl2)))
+
+(define-public xa
+  (package
+    (name "xa")
+    (version "2.3.10")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://www.floodgap.com/retrotech/xa"
+                                  "/dists/xa-" version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0y5sd247g11jfk5msxy91hz2nhpy7smj125dzfyfhjsjnqk5nyw6"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f   ; TODO: custom test harness, not sure how it works
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure))            ; no "configure" script
+       #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))))
+    (native-inputs `(("perl" ,perl)))
+    (home-page "https://www.floodgap.com/retrotech/xa/")
+    (synopsis "High-speed, two-pass portable cross-assembler")
+    (description
+     "xa is a high-speed, two-pass portable cross-assembler.
+It understands mnemonics and generates code for NMOS 6502s (such
+as 6502A, 6504, 6507, 6510, 7501, 8500, 8501, 8502 ...),
+ CMOS 6502s (65C02 and Rockwell R65C02) and the 65816.")
+    (license license:gpl2)))
-- 
2.25.1