From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:403:478a::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id IFSSJhjWL2VReAAA9RJhRA:P1 (envelope-from ) for ; Wed, 18 Oct 2023 14:56:56 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:478a::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id IFSSJhjWL2VReAAA9RJhRA (envelope-from ) for ; Wed, 18 Oct 2023 14:56:56 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 356A0662DB for ; Wed, 18 Oct 2023 14:56:55 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20230601 header.b=OHmCiokQ; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1697633816; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=qb1zxa/QVY/gMxUguP/8bSOCuXUHEaHiJJmsJ3UjhS0=; b=CR08lcfV6MW5tUPlhG1kRmnuHvq1ST/e8rtdV2FClEVYoDhPsPKyuYhLEmECQP8ZY7Uf1I hppRSWfIEwnZW/VuI0qv8zpUU9eeSQ74ufOmJzgVRtQno2lXyGa3SZFh1RFKZKpzVTOXIK Hf/xwhWIPMPhniKMKeUviJkyfZJP/9aPoPIjNSR/v/IG9iatfKR2xkXsnxEeLN6PKHMgHc ajeP8D1HPT7NeyhMWr8+AVGIO9BSYqup0MR0F3TXHCDKre5ywb0iqEwQ2Iq8bE4xAfXHSa lZWmXuYukt6JOtu8MD7xkSOYLdylNEihVyWp1pwWQkqv+DAq5RqS3ADLl5JJcg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1697633816; a=rsa-sha256; cv=none; b=Sq29wPN3iv6hF1csU0MZ2S2xJo5b+GykOPFWxM1y+4PxEHcO8/0USz2r4SXuJQbo1clYMg aZBOjPB5QrEPkQYIYZJCYDRnSexrTZnosC1yVSgQQjgCjidmYnfDNhesNy85n3shropR7U tkk19YmtP10XbyYj1kUnfbZYG7bhcSgfUJfu6c2TKP1xwyDvXabC07lGWTzUS3Z2jOI4Y7 mm1IE5/jtHax/mliG3kUgv/AYpM05QnTQSo6z8bVQwNEWGAc1PUP1CJGenkD05lJ3QiQsa d+4IhJnEAJESbW+H7eD5rU+aUs0C9dG/HcorHL0TnkIVW6YAg9Mzb3+n+SB7+A== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20230601 header.b=OHmCiokQ; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qt66M-0002v1-Ao; Wed, 18 Oct 2023 08:56:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qt66J-0002uq-Ua for guix-patches@gnu.org; Wed, 18 Oct 2023 08:56:39 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qt66J-0005qh-La for guix-patches@gnu.org; Wed, 18 Oct 2023 08:56:39 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qt66g-0007PQ-3x; Wed, 18 Oct 2023 08:57:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#64345] [PATCH v3] gnu: Add reduce-csl. References: <87a63626656b03bea4fca6a8d969007076ea9310.1688017118.git.nigko.yerden@gmail.com> In-Reply-To: <87a63626656b03bea4fca6a8d969007076ea9310.1688017118.git.nigko.yerden@gmail.com> Resent-From: Nigko Yerden Original-Sender: "Debbugs-submit" Resent-CC: andreas@enge.fr, efraim@flashner.co.il, bavier@posteo.net, guix-patches@gnu.org Resent-Date: Wed, 18 Oct 2023 12:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 64345 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 64345@debbugs.gnu.org Cc: Nigko Yerden , Andreas Enge , Efraim Flashner , Eric Bavier X-Debbugs-Original-Xcc: Andreas Enge , Efraim Flashner , Eric Bavier Received: via spool by 64345-submit@debbugs.gnu.org id=B64345.169763377728424 (code B ref 64345); Wed, 18 Oct 2023 12:57:02 +0000 Received: (at 64345) by debbugs.gnu.org; 18 Oct 2023 12:56:17 +0000 Received: from localhost ([127.0.0.1]:33431 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qt65v-0007OM-LG for submit@debbugs.gnu.org; Wed, 18 Oct 2023 08:56:17 -0400 Received: from mail-lf1-x142.google.com ([2a00:1450:4864:20::142]:52511) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qt65s-0007O6-2x for 64345@debbugs.gnu.org; Wed, 18 Oct 2023 08:56:14 -0400 Received: by mail-lf1-x142.google.com with SMTP id 2adb3069b0e04-507bd64814fso2603044e87.1 for <64345@debbugs.gnu.org>; Wed, 18 Oct 2023 05:55:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1697633739; x=1698238539; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=qb1zxa/QVY/gMxUguP/8bSOCuXUHEaHiJJmsJ3UjhS0=; b=OHmCiokQsdR8oVXu2cOpPyBzotZ3L0uPxPvNM8TDvetXHfIwbUvtoI8m1owonaU29q Hp/EccGXnFXerWeoOEKnx7bbCeCbQ+T1imIAe2w3h7XdkVva9ALp2QxQ3lWETjBbfdbL 6S9wgYm5Z4IBhH5gzKkUliQjDRN8ZN8BzG3XEOHhC7mXSuLBeL+Vj592FW76mEe0XI8r s/pW+NZHaylc0MGJKto/M0CkQFmQ6z257lpFzdhaielvWfXOqjnMhxLLCX0ZpMuCmaqS 2lkI+uXBu9tMjqNZH/phIHGVv6UF3RrOyEopNpKsVd0K+ksDic3u4g9g5Xna7KjvBuMH HhGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697633739; x=1698238539; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=qb1zxa/QVY/gMxUguP/8bSOCuXUHEaHiJJmsJ3UjhS0=; b=LMJF8e32RBw6/1qwxyDgiOE9kbSL/0EHXVIJ2IpL43gzQVstUHlPEbTSQZ6fa2X7Mp HzrCgFrdk5w/5o0vp55XxyCbhbx6AoizMFYOzTTCasua9LUd0AJb/8s3i5mP4fU5vNyb 0zDU9YdcxPcjcK6aJVZ2AjiRhAt4Xm+zr60Gl2bslsGRy/huaVywdoGr7TbBS9TzA1rh QgAEU7bUwXXtHHsEON3Xnp1wZgrm6Hhcp9CfQW+n6Tb/zDeeGe/SoNZsIZCwjjKdch9F kPhXD4H7aX2f4vI6bf+2AIckr4w+aZx1ywJ0Wsr5eRR+L7Lfg/XC16n2PylTiVjt9iQd pTCw== X-Gm-Message-State: AOJu0YylSHEV63H78K2vbCQsr9TYSdD3XdpvifE81x2V2OuYHyR5pc6I 9ggOQS+WqTpN2BnUt/lkgjYU24jmJ7JCWg== X-Google-Smtp-Source: AGHT+IH0WwLrNavrS/79FhBcOaLYk7b2rMWr6TR7HM0RH4WFWuMY3H7ZAGknoIZmGQjWWMNVcX+XNw== X-Received: by 2002:a19:f015:0:b0:507:a8cd:6c90 with SMTP id p21-20020a19f015000000b00507a8cd6c90mr3963573lfc.51.1697633738912; Wed, 18 Oct 2023 05:55:38 -0700 (PDT) Received: from localhost.localdomain ([188.68.131.75]) by smtp.gmail.com with ESMTPSA id bp41-20020a05651215a900b004f86d3e52c0sm688546lfb.4.2023.10.18.05.55.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Oct 2023 05:55:38 -0700 (PDT) From: Nigko Yerden Date: Wed, 18 Oct 2023 17:54:03 +0500 Message-ID: X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Spam-Score: 4.34 X-Migadu-Queue-Id: 356A0662DB X-Migadu-Scanner: mx0.migadu.com X-Migadu-Spam-Score: 4.34 X-TUID: UgaTS3uFgYSt * gnu/packages/maths.scm (reduce-csl): New variable. --- This patch introduces Reduce, a general purpose computer algebra system similar to Maxima. The package is built successfully on x86_64_linux (natively), armhf-linux and aarch64-linux (via 'guix build --system=...' command) architectures. Reduce became build-reproducible since the upstream revision 6601, but the current "stable" snapshot 6547 is not reproducible. The source code contains bundled fox and editline libraries as well as their adjustments, which are difficult to remove. Also it contains libffi (can be replaced by libffi from guix repo), crlibm and softfloat (currently are not present in guix repo) libraries. gnu/packages/maths.scm | 107 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 683acd96e1..89127c9e0e 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -62,6 +62,7 @@ ;;; Copyright © 2023 Jake Leporte ;;; Copyright © 2023 Camilo Q.S. (Distopico) ;;; Copyright © 2023 David Elsing +;;; Copyright © 2023 Nigko Yerden ;;; ;;; This file is part of GNU Guix. ;;; @@ -4761,6 +4762,112 @@ (define-public wxmaxima full text searching.") (license license:gpl2+))) +(define-public reduce-csl + (package + (name "reduce-csl") + (version "6547") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/reduce-algebra/snapshot_" + "2023-03-08" "/Reduce-svn" version "-src.tar.gz")) + (sha256 + (base32 + "1a559s4ff5askifyha6fi8qvxjkya1n3ziypig2rgi6q62nbx418")) + (modules '((guix build utils))) + ;; remove binaries and unnecessary parts + ;; to ensure we build from source files only + (snippet '(map delete-file-recursively + (append (find-files "csl/generated-c" "\\.img$") + '("psl" "vsl" + "jlisp" + "jslisp" + "libedit" + "macbuild" + "MacPorts" + "mac-universal" + "reduce2" + "winbuild64" + "common-lisp" + "contrib" + "generic/qreduce" + "web/htdocs/images/Thumbs.db") + (find-files "csl" + "^(embedded|new-embedded|winbuild|support-packages)$" + #:directories? #t) + (find-files "libraries" + "^(original|wineditline|libffi-for-mac)$" + #:directories? #t)))))) + (build-system gnu-build-system) + (arguments + (list #:tests? #f + #:configure-flags + #~(list "--without-autogen" + ;; fix conflict with internal build name determination + "--build=" "--with-csl" + (string-append "CXXFLAGS=-I" + #$freetype + "/include/freetype2")) + #:make-flags #~(list "csl") + #:phases #~(modify-phases %standard-phases + (add-before 'patch-source-shebangs 'autogen + (lambda _ + (invoke "sh" "autogen.sh"))) + (add-after 'install 'fix-install + (lambda _ + (delete-file-recursively (string-append #$output + "/man")) + (delete-file (string-append #$output "/share/man")) + (copy-file "bin/rfcsl" + (string-append #$output "/bin/rfcsl")) + (let ((.desktop-file + "debianbuild/reduce/debian/redcsl.desktop") + (icon "debianbuild/reduce/debian/reduce.png")) + (substitute* .desktop-file + (("Exec=/.*/(redcsl[ \t]+.*)" _ exec) + (string-append "Exec=" exec))) + (install-file .desktop-file + (string-append #$output + "/share/applications")) + (install-file icon + (string-append #$output + "/share/icons/hicolor/32x32/apps"))) + (rename-file "generic/newfront/redfront.1" + "generic/newfront/rfcsl.1") + (map (lambda (file) + (invoke "gzip" file) + (install-file (string-append file ".gz") + (string-append #$output + "/share/man/man1"))) + '("csl/cslbase/redcsl.1" + "generic/newfront/rfcsl.1")) + (with-directory-excursion #$output + (map (lambda (dir) + (map (lambda (file) + (chmod file #o444)) + (find-files dir))) + '("share/man/man1" "share/doc/reduce" + "share/reduce/fonts")))))))) + (native-inputs (list which autoconf automake libtool)) + (inputs + ;; bundled libraries: fox (adjusted) editline (adjusted) + ;; libffi crlibm softfloat + (list ncurses freetype libxft libx11 libxext)) + (synopsis "Portable general-purpose computer algebra system") + (description + "REDUCE is a portable general-purpose computer algebra system. It is a +system for doing scalar, vector and matrix algebra by computer, which also +supports arbitrary precision numerical approximation and interfaces to gnuplot +to provide graphics. It can be used interactively for simple calculations but +also provides a full programming language, with a syntax similar to other +modern programming languages. REDUCE supports alternative user interfaces +including Run-REDUCE, TeXmacs and GNU Emacs. This package provides Codemist +Standard Lisp (CSL) version of REDUCE. It uses gnuplot program, if installed, +to make figures.") + (home-page "https://reduce-algebra.sourceforge.io/") + (license (license:non-copyleft "file://README" + "See README in the deistribution.")))) + (define-public armadillo (package (name "armadillo") base-commit: 1076f32111e512ed437f135c9eb6ce2daaafd623 -- 2.41.0