From 9f3cb56038392e76c001d3da4176d5363186871a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 14 Dec 2020 09:41:36 +0100 Subject: gnu: alsa-modular-synth: Update to 2.2.0. * gnu/packages/audio.scm (alsa-modular-synth): Update to 2.2.0. [arguments]: Remove them all. [source]: Remove patch. [native-inputs]: Remove gcc@5. * gnu/packages/patches/alsa-modular-synth-fix-vocoder.patch: Remove it. * gnu/local.mk (dist_patch_DATA): Remove patch. --- gnu/local.mk | 1 - 1 file changed, 1 deletion(-) (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 18a2389514..7d0458ca05 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -791,7 +791,6 @@ dist_patch_DATA = \ %D%/packages/patches/akonadi-not-relocatable.patch \ %D%/packages/patches/akonadi-timestamps.patch \ %D%/packages/patches/allegro-mesa-18.2.5-and-later.patch \ - %D%/packages/patches/alsa-modular-synth-fix-vocoder.patch \ %D%/packages/patches/amule-crypto-6.patch \ %D%/packages/patches/anki-mpv-args.patch \ %D%/packages/patches/antiword-CVE-2014-8123.patch \ -- cgit v1.2.3 From 5fe87ef51c0b6c41ad8f53579f0fd515f0ab059e Mon Sep 17 00:00:00 2001 From: Tanguy Le Carrour Date: Mon, 14 Dec 2020 09:42:40 +0100 Subject: gnu: Add python-3.9. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python.scm (python-3.9): New variable. * gnu/packages/patches/python-3.9-fix-tests.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/patches/python-3.9-fix-tests.patch | 370 ++++++++++++++++++++++++ gnu/packages/python.scm | 25 ++ 3 files changed, 396 insertions(+) create mode 100644 gnu/packages/patches/python-3.9-fix-tests.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 7d0458ca05..0b4cf23838 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1513,6 +1513,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-3-search-paths.patch \ %D%/packages/patches/python-3-fix-tests.patch \ %D%/packages/patches/python-3.8-fix-tests.patch \ + %D%/packages/patches/python-3.9-fix-tests.patch \ %D%/packages/patches/python-CVE-2018-14647.patch \ %D%/packages/patches/python-aionotify-0.2.0-py3.8.patch \ %D%/packages/patches/python-argcomplete-1.11.1-fish31.patch \ diff --git a/gnu/packages/patches/python-3.9-fix-tests.patch b/gnu/packages/patches/python-3.9-fix-tests.patch new file mode 100644 index 0000000000..dc6b8c4cc8 --- /dev/null +++ b/gnu/packages/patches/python-3.9-fix-tests.patch @@ -0,0 +1,370 @@ +See the discussion about the issues fixed here at: +http://bugs.python.org/issue20868 . + +diff --git a/Lib/ctypes/test/test_callbacks.py b/Lib/ctypes/test/test_callbacks.py +--- a/Lib/ctypes/test/test_callbacks.py ++++ b/Lib/ctypes/test/test_callbacks.py +@@ -3,6 +3,7 @@ import unittest + from ctypes import * + from ctypes.test import need_symbol + import _ctypes_test ++import platform + + class Callbacks(unittest.TestCase): + functype = CFUNCTYPE +@@ -176,6 +177,8 @@ class SampleCallbacksTestCase(unittest.TestCase): + + self.assertLess(diff, 0.01, "%s not less than 0.01" % diff) + ++ @unittest.skipIf(platform.machine() in ['mips64'], ++ "This test fails on this platform") + def test_issue_8959_a(self): + from ctypes.util import find_library + libc_path = find_library("c") +diff --git a/Lib/ctypes/test/test_libc.py b/Lib/ctypes/test/test_libc.py +--- a/Lib/ctypes/test/test_libc.py ++++ b/Lib/ctypes/test/test_libc.py +@@ -2,6 +2,7 @@ import unittest + + from ctypes import * + import _ctypes_test ++import platform + + lib = CDLL(_ctypes_test.__file__) + +@@ -17,6 +18,8 @@ class LibTest(unittest.TestCase): + import math + self.assertEqual(lib.my_sqrt(2.0), math.sqrt(2.0)) + ++ @unittest.skipIf(platform.machine() in ['mips64'], ++ "This test fails on this platform") + def test_qsort(self): + comparefunc = CFUNCTYPE(c_int, POINTER(c_char), POINTER(c_char)) + lib.my_qsort.argtypes = c_void_p, c_size_t, c_size_t, comparefunc +diff --git a/Lib/distutils/tests/test_archive_util.py b/Lib/distutils/tests/test_archive_util.py +--- a/Lib/distutils/tests/test_archive_util.py ++++ b/Lib/distutils/tests/test_archive_util.py +@@ -333,6 +333,7 @@ class ArchiveUtilTestCase(support.TempdirManager, + self.assertEqual(os.path.basename(res), 'archive.tar.xz') + self.assertEqual(self._tarinfo(res), self._created_files) + ++ @unittest.skipIf(True, "getgrgid(0)[0] raises a KeyError on Guix") + def test_make_archive_owner_group(self): + # testing make_archive with owner and group, with various combinations + # this works even if there's not gid/uid support +@@ -362,6 +363,7 @@ class ArchiveUtilTestCase(support.TempdirManager, + + @unittest.skipUnless(ZLIB_SUPPORT, "Requires zlib") + @unittest.skipUnless(UID_GID_SUPPORT, "Requires grp and pwd support") ++ @unittest.skipIf(True, "getgrgid(0)[0] raises a KeyError on Guix") + def test_tarfile_root_owner(self): + tmpdir = self._create_files() + base_name = os.path.join(self.mkdtemp(), 'archive') +diff --git a/Lib/distutils/tests/test_sdist.py b/Lib/distutils/tests/test_sdist.py +--- a/Lib/distutils/tests/test_sdist.py ++++ b/Lib/distutils/tests/test_sdist.py +@@ -443,6 +443,7 @@ class SDistTestCase(BasePyPIRCCommandTestCase): + "The tar command is not found") + @unittest.skipIf(find_executable('gzip') is None, + "The gzip command is not found") ++ @unittest.skipIf(True, "getgrgid(0)[0] raises a KeyError on Guix") + def test_make_distribution_owner_group(self): + # now building a sdist + dist, cmd = self.get_cmd() +diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py +--- a/Lib/test/_test_multiprocessing.py ++++ b/Lib/test/_test_multiprocessing.py +@@ -1473,6 +1473,7 @@ class _TestCondition(BaseTestCase): + if pid is not None: + os.kill(pid, signal.SIGINT) + ++ @unittest.skipIf(True, "This fails for unknown reasons on Guix") + def test_wait_result(self): + if isinstance(self, ProcessesMixin) and sys.platform != 'win32': + pid = os.getpid() +diff --git a/Lib/test/test_asyncio/test_base_events.py b/Lib/test/test_asyncio/test_base_events.py +--- a/Lib/test/test_asyncio/test_base_events.py ++++ b/Lib/test/test_asyncio/test_base_events.py +@@ -1323,6 +1323,8 @@ class BaseEventLoopWithSelectorTests(test_utils.TestCase): + self._test_create_connection_ip_addr(m_socket, False) + + @patch_socket ++ @unittest.skipUnless(support.is_resource_enabled('network'), ++ 'network is not enabled') + def test_create_connection_service_name(self, m_socket): + m_socket.getaddrinfo = socket.getaddrinfo + sock = m_socket.socket.return_value +diff --git a/Lib/test/test_generators.py b/Lib/test/test_generators.py +--- a/Lib/test/test_generators.py ++++ b/Lib/test/test_generators.py +@@ -34,6 +34,7 @@ class SignalAndYieldFromTest(unittest.TestCase): + else: + return "FAILED" + ++ @unittest.skipIf(True, 'Keyboard interrupts do not work in the Guix build environment') + def test_raise_and_yield_from(self): + gen = self.generator1() + gen.send(None) +diff --git a/Lib/test/test_pathlib.py b/Lib/test/test_pathlib.py +--- a/Lib/test/test_pathlib.py ++++ b/Lib/test/test_pathlib.py +@@ -2134,8 +2134,7 @@ class PosixPathTest(_BasePathTest, unittest.TestCase): + self.assertEqual(given, expect) + self.assertEqual(set(p.rglob("FILEd*")), set()) + +- @unittest.skipUnless(hasattr(pwd, 'getpwall'), +- 'pwd module does not expose getpwall()') ++ @unittest.skipIf(True, "Guix builder home is '/' which causes trouble for these tests") + def test_expanduser(self): + P = self.cls + support.import_module('pwd') +diff --git a/Lib/test/test_pdb.py b/Lib/test/test_pdb.py +--- a/Lib/test/test_pdb.py ++++ b/Lib/test/test_pdb.py +@@ -1150,11 +1150,11 @@ def test_pdb_issue_20766(): + > (6)test_function() + -> print('pdb %d: %s' % (i, sess._previous_sigint_handler)) + (Pdb) continue +- pdb 1: ++ pdb 1: Handlers.SIG_IGN + > (5)test_function() + -> sess.set_trace(sys._getframe()) + (Pdb) continue +- pdb 2: ++ pdb 2: Handlers.SIG_IGN + """ + + +diff --git a/Lib/test/test_regrtest.py b/Lib/test/test_regrtest.py +--- a/Lib/test/test_regrtest.py ++++ b/Lib/test/test_regrtest.py +@@ -762,6 +762,7 @@ class ArgsTestCase(BaseTestCase): + output = self.run_tests('--fromfile', filename) + self.check_executed_tests(output, tests) + ++ @unittest.skipIf(True, 'Keyboard interrupts do not work in the Guix build environment.') + def test_interrupted(self): + code = TEST_INTERRUPTED + test = self.create_test('sigint', code=code) +@@ -779,6 +780,7 @@ class ArgsTestCase(BaseTestCase): + % (self.TESTNAME_REGEX, len(tests))) + self.check_line(output, regex) + ++ @unittest.skipIf(True, 'Keyboard interrupts do not work in the Guix build environment.') + def test_slowest_interrupted(self): + # Issue #25373: test --slowest with an interrupted test + code = TEST_INTERRUPTED +diff --git a/Lib/test/test_resource.py b/Lib/test/test_resource.py +--- a/Lib/test/test_resource.py ++++ b/Lib/test/test_resource.py +@@ -145,6 +145,7 @@ class ResourceTest(unittest.TestCase): + + @unittest.skipUnless(hasattr(resource, 'prlimit'), 'no prlimit') + @support.requires_linux_version(2, 6, 36) ++ @unittest.skipIf(True, "Bug: the PermissionError is not raised") + def test_prlimit(self): + self.assertRaises(TypeError, resource.prlimit) + self.assertRaises(ProcessLookupError, resource.prlimit, +diff --git a/Lib/test/test_shutil.py b/Lib/test/test_shutil.py +--- a/Lib/test/test_shutil.py ++++ b/Lib/test/test_shutil.py +@@ -1428,6 +1428,7 @@ class TestArchives(BaseTest, unittest.TestCase): + self.assertRaises(ValueError, make_archive, base_name, 'xxx') + + @support.requires_zlib() ++ @unittest.skipIf(True, "getgrgid(0)[0] raises a KeyError on Guix") + def test_make_archive_owner_group(self): + # testing make_archive with owner and group, with various combinations + # this works even if there's not gid/uid support +@@ -1456,6 +1457,7 @@ class TestArchives(BaseTest, unittest.TestCase): + + + @support.requires_zlib() ++ @unittest.skipIf(True, "getgrgid(0)[0] raises a KeyError on Guix") + @unittest.skipUnless(UID_GID_SUPPORT, "Requires grp and pwd support") + def test_tarfile_root_owner(self): + root_dir, base_dir = self._create_files() +diff --git a/Lib/test/test_unicodedata.py b/Lib/test/test_unicodedata.py +--- a/Lib/test/test_unicodedata.py ++++ b/Lib/test/test_unicodedata.py +@@ -320,6 +320,7 @@ class NormalizationTest(unittest.TestCase): + data = [int(x, 16) for x in data.split(" ")] + return "".join([chr(x) for x in data]) + ++ @unittest.skipIf(True, 'Network is not available in the Guix build environment') + def test_normalization(self): + TESTDATAFILE = "NormalizationTest.txt" + TESTDATAURL = f"http://www.pythontest.net/unicode/{unicodedata.unidata_version}/{TESTDATAFILE}" +diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py +--- a/Lib/test/test_socket.py ++++ b/Lib/test/test_socket.py +@@ -875,6 +875,8 @@ class GeneralModuleTests(unittest.TestCase): + if not fqhn in all_host_names: + self.fail("Error testing host resolution mechanisms. (fqdn: %s, all: %s)" % (fqhn, repr(all_host_names))) + ++ @unittest.skipUnless(support.is_resource_enabled('network'), ++ 'network is not enabled') + def test_host_resolution(self): + for addr in [support.HOSTv4, '10.0.0.1', '255.255.255.255']: + self.assertEqual(socket.gethostbyname(addr), addr) +@@ -1004,6 +1006,8 @@ class GeneralModuleTests(unittest.TestCase): + self.assertWarns(DeprecationWarning, socket.ntohs, k) + self.assertWarns(DeprecationWarning, socket.htons, k) + ++ @unittest.skipUnless(os.path.exists("/etc/services"), ++ "getservbyname uses /etc/services, which is not in the chroot") + def testGetServBy(self): + eq = self.assertEqual + # Find one service that exists, then check all the related interfaces. +@@ -1358,6 +1362,8 @@ class GeneralModuleTests(unittest.TestCase): + raise + self.assertRaises(TypeError, s.ioctl, socket.SIO_LOOPBACK_FAST_PATH, None) + ++ @unittest.skipUnless(os.path.exists("/etc/gai.conf"), ++ "getaddrinfo() will fail") + def testGetaddrinfo(self): + try: + socket.getaddrinfo('localhost', 80) +@@ -1440,6 +1446,8 @@ class GeneralModuleTests(unittest.TestCase): + # only IP addresses are allowed + self.assertRaises(OSError, socket.getnameinfo, ('mail.python.org',0), 0) + ++ @unittest.skipUnless(os.path.exists("/etc/gai.conf"), ++ "getaddrinfo() will fail") + @unittest.skipUnless(support.is_resource_enabled('network'), + 'network is not enabled') + def test_idna(self): +diff --git a/Lib/test/test_spwd.py b/Lib/test/test_spwd.py +--- a/Lib/test/test_spwd.py ++++ b/Lib/test/test_spwd.py +@@ -5,8 +5,7 @@ from test import support + spwd = support.import_module('spwd') + + +-@unittest.skipUnless(hasattr(os, 'geteuid') and os.geteuid() == 0, +- 'root privileges required') ++@unittest.skipUnless(os.path.exists("/etc/shadow"), 'spwd tests require /etc/shadow') + class TestSpwdRoot(unittest.TestCase): + + def test_getspall(self): +@@ -56,8 +55,7 @@ class TestSpwdRoot(unittest.TestCase): + self.assertRaises(TypeError, spwd.getspnam, bytes_name) + + +-@unittest.skipUnless(hasattr(os, 'geteuid') and os.geteuid() != 0, +- 'non-root user required') ++@unittest.skipUnless(os.path.exists("/etc/shadow"), 'spwd tests require /etc/shadow') + class TestSpwdNonRoot(unittest.TestCase): + + def test_getspnam_exception(self): +diff --git a/Lib/test/test_tarfile.py b/Lib/test/test_tarfile.py +--- a/Lib/test/test_tarfile.py ++++ b/Lib/test/test_tarfile.py +@@ -2509,9 +2509,12 @@ def root_is_uid_gid_0(): + import pwd, grp + except ImportError: + return False +- if pwd.getpwuid(0)[0] != 'root': +- return False +- if grp.getgrgid(0)[0] != 'root': ++ try: ++ if pwd.getpwuid(0)[0] != 'root': ++ return False ++ if grp.getgrgid(0)[0] != 'root': ++ return False ++ except KeyError: + return False + return True + +diff --git a/Lib/test/test_threading.py b/Lib/test/test_threading.py +--- a/Lib/test/test_threading.py ++++ b/Lib/test/test_threading.py +@@ -1249,6 +1249,7 @@ class MiscTestCase(unittest.TestCase): + + + class InterruptMainTests(unittest.TestCase): ++ @unittest.skipIf(True, 'Keyboard interrupts do not work in the Guix build container.') + def test_interrupt_main_subthread(self): + # Calling start_new_thread with a function that executes interrupt_main + # should raise KeyboardInterrupt upon completion. +@@ -1260,6 +1261,8 @@ class InterruptMainTests(unittest.TestCase): + t.join() + t.join() + ++ ++ @unittest.skipIf(True, 'Keyboard interrupts do not work in the Guix build container.') + def test_interrupt_main_mainthread(self): + # Make sure that if interrupt_main is called in main thread that + # KeyboardInterrupt is raised instantly. +diff --git a/Tools/scripts/run_tests.py b/Tools/scripts/run_tests.py +--- a/Tools/scripts/run_tests.py ++++ b/Tools/scripts/run_tests.py +@@ -39,7 +39,7 @@ def main(regrtest_args): + if not any(is_multiprocess_flag(arg) for arg in regrtest_args): + args.extend(['-j', '0']) # Use all CPU cores + if not any(is_resource_use_flag(arg) for arg in regrtest_args): +- args.extend(['-u', 'all,-largefile,-audio,-gui']) ++ args.extend(['-u', 'all,-largefile,-audio,-gui,-network']) + args.extend(regrtest_args) + print(' '.join(args)) + if sys.platform == 'win32': +diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py +index 1474624..887f8ee 100644 +--- a/Lib/test/_test_multiprocessing.py ++++ b/Lib/test/_test_multiprocessing.py +@@ -3801,6 +3801,7 @@ class _TestSharedMemory(BaseTestCase): + sms.close() + + @unittest.skipIf(os.name != "posix", "not feasible in non-posix platforms") ++ @unittest.skipUnless(sys.stdin.isatty(), "KeyboardInterrupts require a TTY device") + def test_shared_memory_SharedMemoryServer_ignores_sigint(self): + # bpo-36368: protect SharedMemoryManager server process from + # KeyboardInterrupt signals. +diff --git a/Lib/test/test_signal.py b/Lib/test/test_signal.py +index d41e94b..a1c15e7 100644 +--- a/Lib/test/test_signal.py ++++ b/Lib/test/test_signal.py +@@ -78,6 +78,7 @@ class PosixTests(unittest.TestCase): + self.assertLess(len(s), signal.NSIG) + + @unittest.skipUnless(sys.executable, "sys.executable required.") ++ @unittest.skipUnless(sys.stdin.isatty(), "KeyboardInterrupts require a TTY device") + def test_keyboard_interrupt_exit_code(self): + """KeyboardInterrupt triggers exit via SIGINT.""" + process = subprocess.run( +@@ -128,6 +129,7 @@ class WindowsSignalTests(unittest.TestCase): + signal.signal(7, handler) + + @unittest.skipUnless(sys.executable, "sys.executable required.") ++ @unittest.skipUnless(sys.stdin.isatty(), "KeyboardInterrupts require a TTY device") + def test_keyboard_interrupt_exit_code(self): + """KeyboardInterrupt triggers an exit using STATUS_CONTROL_C_EXIT.""" + # We don't test via os.kill(os.getpid(), signal.CTRL_C_EVENT) here +@@ -1245,6 +1247,7 @@ class StressTest(unittest.TestCase): + + class RaiseSignalTest(unittest.TestCase): + ++ @unittest.skipUnless(sys.stdin.isatty(), "KeyboardInterrupts require a TTY device") + def test_sigint(self): + with self.assertRaises(KeyboardInterrupt): + signal.raise_signal(signal.SIGINT) +@@ -1279,6 +1279,7 @@ class PidfdSignalTest(unittest.TestCase): + hasattr(signal, "pidfd_send_signal"), + "pidfd support not built in", + ) ++ @unittest.skipUnless(sys.stdin.isatty(), "KeyboardInterrupts require a TTY device") + def test_pidfd_send_signal(self): + with self.assertRaises(OSError) as cm: + signal.pidfd_send_signal(0, signal.SIGINT) +diff --git a/Lib/ctypes/test/test_find.py b/Lib/ctypes/test/test_find.py +index 92ac184..49eec2c 100644 +--- a/Lib/ctypes/test/test_find.py ++++ b/Lib/ctypes/test/test_find.py +@@ -116,6 +116,7 @@ class FindLibraryLinux(unittest.TestCase): + with unittest.mock.patch("ctypes.util._findSoname_ldconfig", lambda *args: None): + self.assertNotEqual(find_library('c'), None) + ++ @unittest.skipIf(True, "This fails for unknown reasons on Guix") + def test_find_library_with_ld(self): + with unittest.mock.patch("ctypes.util._findSoname_ldconfig", lambda *args: None), \ + unittest.mock.patch("ctypes.util._findLib_gcc", lambda *args: None): diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 43704bccae..fa9bf10e07 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -520,6 +520,31 @@ data types.") (version-major+minor version) "/site-packages")))))))) +(define-public python-3.9 + (package (inherit python-3.8) + (name "python-next") + (version "3.9.1") + (source (origin + (method url-fetch) + (uri (string-append "https://www.python.org/ftp/python/" + version "/Python-" version ".tar.xz")) + (patches (search-patches + "python-3.9-fix-tests.patch" + "python-3-deterministic-build-info.patch" + "python-3-search-paths.patch")) + (sha256 + (base32 + "1zq3k4ymify5ig739zyvx9s2ainvchxb1zpy139z74krr653y74r")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete the bundled copy of libexpat. + (delete-file-recursively "Modules/expat") + (substitute* "Modules/Setup" + ;; Link Expat instead of embedding the bundled one. + (("^#pyexpat.*") "pyexpat pyexpat.c -lexpat\n")) + #t)))))) + ;; Current 3.x version. (define-public python-3 python-3.8) -- cgit v1.2.3 From 7d9d474dd292884eb628231dbe34b743e6f9bd39 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Dec 2020 10:20:16 +0200 Subject: gnu: Add rust-ndarray-0.12. * gnu/packages/crates-io.scm (rust-ndarray-0.12): New variable. * gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/crates-io.scm | 33 ++++++++++++++++++++ .../patches/rust-ndarray-remove-blas-src-dep.patch | 36 ++++++++++++++++++++++ 3 files changed, 70 insertions(+) create mode 100644 gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 0b4cf23838..59ef362a16 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1592,6 +1592,7 @@ dist_patch_DATA = \ %D%/packages/patches/rust-1.45-linker-locale.patch \ %D%/packages/patches/rust-bootstrap-stage0-test.patch \ %D%/packages/patches/rust-coresimd-doctest.patch \ + %D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \ %D%/packages/patches/rust-nettle-disable-vendor.patch \ %D%/packages/patches/rust-nettle-sys-disable-vendor.patch \ %D%/packages/patches/rust-reproducible-builds.patch \ diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 49f865c841..385160dd90 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -16874,6 +16874,39 @@ IO of Windows's named pipes.") "This package provides a crate to perform natural ordering for Rust.") (license license:expat))) +(define-public rust-ndarray-0.12 + (package + (name "rust-ndarray") + (version "0.12.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "ndarray" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0a5rfwcbqnvbwi3nw5sfz6kf0flhmjxs64s0b4kxc6lhmyl81wvw")) + (patches (search-patches "rust-ndarray-remove-blas-src-dep.patch")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-itertools" ,rust-itertools-0.7) + ("rust-matrixmultiply" ,rust-matrixmultiply-0.1) + ("rust-num-complex" ,rust-num-complex-0.2) + ("rust-cblas-sys" ,rust-cblas-sys-0.1) + ("rust-rustc-serialize" ,rust-rustc-serialize-0.3) + ("rust-serde" ,rust-serde-1)) + #:cargo-development-inputs + (("rust-defmac" ,rust-defmac-0.1) + ("rust-quickcheck" ,rust-quickcheck-0.7) + ("rust-rawpointer" ,rust-rawpointer-0.1)))) + (home-page "https://github.com/rust-ndarray/ndarray") + (synopsis "N-dimensional container for general elements and for numerics") + (description "@code{ndarray} implements an n-dimensional container for +general elements and for numerics.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-net2-0.2 (package (name "rust-net2") diff --git a/gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch b/gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch new file mode 100644 index 0000000000..7221fdd608 --- /dev/null +++ b/gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch @@ -0,0 +1,36 @@ +From ed09f3c91e915c3b436854a7936566edceb3e8de Mon Sep 17 00:00:00 2001 +From: Efraim Flashner +Date: Tue, 15 Dec 2020 10:09:45 +0200 +Subject: [PATCH] remove blas-src dependency + +--- + Cargo.toml | 6 +----- + 1 file changed, 1 insertion(+), 5 deletions(-) + +diff --git a/Cargo.toml b/Cargo.toml +index 1f3e1b6..36bc816 100644 +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -37,10 +37,6 @@ debug = true + name = "ndarray" + test = true + bench = false +-[dependencies.blas-src] +-version = "0.2.0" +-optional = true +-default-features = false + + [dependencies.cblas-sys] + version = "0.1.4" +@@ -78,7 +74,7 @@ default-features = false + version = "0.1" + + [features] +-blas = ["cblas-sys", "blas-src"] ++blas = ["cblas-sys"] + docs = ["rustc-serialize", "serde-1"] + serde-1 = ["serde"] + test = ["test-blas-openblas-sys"] +-- +2.29.2 + -- cgit v1.2.3 From 0510ca15aa395ddd3daf0720b541662671bf14c3 Mon Sep 17 00:00:00 2001 From: Hendursaga Date: Sat, 15 Aug 2020 17:05:57 +0000 Subject: gnu: Add cfunge. * gnu/packages/esolangs.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Signed-off-by: Leo Famulari --- gnu/local.mk | 1 + gnu/packages/esolangs.scm | 51 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 gnu/packages/esolangs.scm (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 59ef362a16..2f267e8aee 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -203,6 +203,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/enlightenment.scm \ %D%/packages/entr.scm \ %D%/packages/erlang.scm \ + %D%/packages/esolangs.scm \ %D%/packages/fabric-management.scm \ %D%/packages/fcitx.scm \ %D%/packages/fcitx5.scm \ diff --git a/gnu/packages/esolangs.scm b/gnu/packages/esolangs.scm new file mode 100644 index 0000000000..3986562d57 --- /dev/null +++ b/gnu/packages/esolangs.scm @@ -0,0 +1,51 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2020 Hendursaga +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages esolangs) + #:use-module (gnu packages ncurses) + #:use-module (guix build-system cmake) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages)) + +(define-public cfunge + (package + (name "cfunge") + (version "0.9.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/VorpalBlade/cfunge") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "18ir0h10vxdb5jb57w5hjbgi8spjxg9x2148agadhhmbhsja02m7")))) + (build-system cmake-build-system) + (arguments + ;; The tests are not designed to be run and evaluated automatically. + '(#:tests? #f)) + (inputs + `(("ncurses" ,ncurses))) + (home-page "https://github.com/VorpalBlade/cfunge") + (synopsis "Fast conforming Befunge93/98/109 interpreter in C") + (description "@command{cfunge} is a fast conforming Befunge93/98/109 interpreter +written in C. It supports several @dfn{fingerprints} (opt-in language extensions +identified by unique ID codes).") + (license license:gpl3))) -- cgit v1.2.3 From 4c66a8deb5f51fd4f944fb62c43aa1e2a477711c Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Sat, 10 Oct 2020 17:41:08 +0000 Subject: gnu: Add aws-checksums. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/c.scm (aws-checksums): New variable. * gnu/packages/patches/aws-checksums-cmake-prefix.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/c.scm | 25 ++++++++++++++++++++++ .../patches/aws-checksums-cmake-prefix.patch | 13 +++++++++++ 3 files changed, 39 insertions(+) create mode 100644 gnu/packages/patches/aws-checksums-cmake-prefix.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 2f267e8aee..0daac5746b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -823,6 +823,7 @@ dist_patch_DATA = \ %D%/packages/patches/avogadro-python-eigen-lib.patch \ %D%/packages/patches/avidemux-install-to-lib.patch \ %D%/packages/patches/awesome-reproducible-png.patch \ + %D%/packages/patches/aws-checksums-cmake-prefix.patch \ %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch \ %D%/packages/patches/bash-completion-directories.patch \ diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm index 628e8c0dad..bb3d90e1cd 100644 --- a/gnu/packages/c.scm +++ b/gnu/packages/c.scm @@ -36,6 +36,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) + #:use-module (gnu packages) #:use-module (gnu packages bootstrap) #:use-module (gnu packages bison) #:use-module (gnu packages check) @@ -559,3 +560,27 @@ portability.") structures, and error handling for the @acronym{AWS,Amazon Web Services} SDK.") (home-page "https://github.com/awslabs/aws-c-common") (license license:asl2.0))) + +(define-public aws-checksums + (package + (name "aws-checksums") + (version "0.1.10") + (source (origin + (method git-fetch) + (uri (git-reference + (url (string-append "https://github.com/awslabs/" name)) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1f9scl5734pgjlsixspwljrrlndzhllwlfygdcr1gx5p0za08zjb")) + (patches (search-patches "aws-checksums-cmake-prefix.patch")))) + (build-system cmake-build-system) + (inputs + `(("aws-c-common" ,aws-c-common))) + (synopsis "Amazon Web Services checksum library") + (description + "This library provides cross-Platform hardware accelerated CRC32c and CRC32 +with fallback to efficient C99 software implementations.") + (home-page "https://github.com/awslabs/aws-checksums") + (license license:asl2.0))) diff --git a/gnu/packages/patches/aws-checksums-cmake-prefix.patch b/gnu/packages/patches/aws-checksums-cmake-prefix.patch new file mode 100644 index 0000000000..f6a5c9ad9c --- /dev/null +++ b/gnu/packages/patches/aws-checksums-cmake-prefix.patch @@ -0,0 +1,13 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -8,6 +8,10 @@ + cmake_policy(SET CMP0069 NEW) # Enable LTO/IPO if available in the compiler, see AwsCFlags + endif() + ++if (DEFINED ENV{CMAKE_PREFIX_PATH}) ++ set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH}) ++endif() ++ + if (DEFINED CMAKE_PREFIX_PATH) + file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH) + endif() -- cgit v1.2.3 From ddab5244dfa85e5ad73da80c3169fe790387743b Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Sat, 10 Oct 2020 17:47:45 +0000 Subject: gnu: Add aws-c-event-stream. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/c.scm (aws-c-event-stream): New variable. * gnu/packages/patches/aws-c-event-stream-cmake-prefix.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/c.scm | 27 ++++++++++++++++++++++ .../patches/aws-c-event-stream-cmake-prefix.patch | 13 +++++++++++ 3 files changed, 41 insertions(+) create mode 100644 gnu/packages/patches/aws-c-event-stream-cmake-prefix.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 0daac5746b..aef413abdf 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -823,6 +823,7 @@ dist_patch_DATA = \ %D%/packages/patches/avogadro-python-eigen-lib.patch \ %D%/packages/patches/avidemux-install-to-lib.patch \ %D%/packages/patches/awesome-reproducible-png.patch \ + %D%/packages/patches/aws-c-event-stream-cmake-prefix.patch \ %D%/packages/patches/aws-checksums-cmake-prefix.patch \ %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch \ diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm index bb3d90e1cd..2ea9c2ac51 100644 --- a/gnu/packages/c.scm +++ b/gnu/packages/c.scm @@ -584,3 +584,30 @@ portability.") with fallback to efficient C99 software implementations.") (home-page "https://github.com/awslabs/aws-checksums") (license license:asl2.0))) + +(define-public aws-c-event-stream + (package + (name "aws-c-event-stream") + (version "0.1.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url (string-append "https://github.com/awslabs/" name)) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1vl9ainc4klv0g9gk1iv4833bsllni6jxn6mwb0fnv2dnlz7zv9q")) + (patches (search-patches "aws-c-event-stream-cmake-prefix.patch")))) + (build-system cmake-build-system) + (propagated-inputs + `(("aws-c-common" ,aws-c-common))) + (inputs + `(("aws-checksums" ,aws-checksums))) + (synopsis "Amazon Web Services client-server message format library") + (description + "This library is a C99 implementation for @acronym{AWS,Amazon Web Services} +event stream encoding, a binary format for bidirectional client-server +communication.") + (home-page "https://github.com/awslabs/aws-c-event-stream") + (license license:asl2.0))) diff --git a/gnu/packages/patches/aws-c-event-stream-cmake-prefix.patch b/gnu/packages/patches/aws-c-event-stream-cmake-prefix.patch new file mode 100644 index 0000000000..79655a910b --- /dev/null +++ b/gnu/packages/patches/aws-c-event-stream-cmake-prefix.patch @@ -0,0 +1,13 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -3,6 +3,10 @@ + cmake_minimum_required (VERSION 3.1) + project (aws-c-event-stream C) + ++if (DEFINED ENV{CMAKE_PREFIX_PATH}) ++ set(CMAKE_PREFIX_PATH $ENV{CMAKE_PREFIX_PATH}) ++endif() ++ + if (DEFINED CMAKE_PREFIX_PATH) + file(TO_CMAKE_PATH "${CMAKE_PREFIX_PATH}" CMAKE_PREFIX_PATH) + endif() -- cgit v1.2.3 From fcf1702196bc7203a15998fb152d7ccadfe3b7ce Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 17 Dec 2020 23:10:15 +0100 Subject: gnu: sudo: Update to 1.9.4p1. * gnu/packages/admin.scm (sudo): Update to 1.9.4p1. [source]: Remove patch. * gnu/packages/patches/sudo-fix-build-without-sendmail.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/admin.scm | 5 +-- .../patches/sudo-fix-build-without-sendmail.patch | 45 ---------------------- 3 files changed, 2 insertions(+), 49 deletions(-) delete mode 100644 gnu/packages/patches/sudo-fix-build-without-sendmail.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index aef413abdf..98590ae8eb 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1449,7 +1449,6 @@ dist_patch_DATA = \ %D%/packages/patches/sdl-pango-matrix_declarations.patch \ %D%/packages/patches/sdl-pango-sans-serif.patch \ %D%/packages/patches/sqlite-hurd.patch \ - %D%/packages/patches/sudo-fix-build-without-sendmail.patch \ %D%/packages/patches/sunxi-tools-remove-sys-io.patch \ %D%/packages/patches/patchutils-test-perms.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 90b09f752d..8f377ea72c 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1398,7 +1398,7 @@ system administrator.") (define-public sudo (package (name "sudo") - (version "1.9.4") + (version "1.9.4p1") (source (origin (method url-fetch) (uri @@ -1408,8 +1408,7 @@ system administrator.") version ".tar.gz"))) (sha256 (base32 - "1w03257akspgkkl757vmpq3p30sb2n6y61hll038mw9sqwnbv4cb")) - (patches (search-patches "sudo-fix-build-without-sendmail.patch")) + "0xyn5z4npg6nmjmgglp7db9sn82rkx52fg1sw6bs8byxzjfhjwhi")) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/patches/sudo-fix-build-without-sendmail.patch b/gnu/packages/patches/sudo-fix-build-without-sendmail.patch deleted file mode 100644 index f40bfe445e..0000000000 --- a/gnu/packages/patches/sudo-fix-build-without-sendmail.patch +++ /dev/null @@ -1,45 +0,0 @@ - -# HG changeset patch -# User Todd C. Miller -# Date 1606767492 25200 -# Node ID 41db1aad85bbce444b511bcb28b9628a0a22fcd9 -# Parent 96a5cfe3c66b6ee84d7f7b6fb26d932f45a44b76 -Fix build when configured using --without-sendmail -Bug #947 - -diff -r 96a5cfe3c66b -r 41db1aad85bb lib/eventlog/eventlog.c ---- a/lib/eventlog/eventlog.c Sun Nov 29 15:11:34 2020 -0700 -+++ b/lib/eventlog/eventlog.c Mon Nov 30 13:18:12 2020 -0700 -@@ -78,7 +78,7 @@ - static FILE *eventlog_stub_open_log(int type, const char *logfile); - static void eventlog_stub_close_log(int type, FILE *fp); - --/* Eventlog config settings */ -+/* Eventlog config settings (default values). */ - static struct eventlog_config evl_conf = { - EVLOG_NONE, /* type */ - EVLOG_SUDO, /* format */ -@@ -91,7 +91,11 @@ - false, /* omit_hostname */ - _PATH_SUDO_LOGFILE, /* logpath */ - "%h %e %T", /* time_fmt */ -+#ifdef _PATH_SUDO_SENDMAIL - _PATH_SUDO_SENDMAIL, /* mailerpath */ -+#else -+ NULL, /* mailerpath (disabled) */ -+#endif - "-t", /* mailerflags */ - NULL, /* mailfrom */ - MAILTO, /* mailto */ -@@ -1436,8 +1440,10 @@ - evl_conf.logpath = _PATH_SUDO_LOGFILE; - if (evl_conf.time_fmt == NULL) - evl_conf.time_fmt = "%h %e %T"; -+#ifdef _PATH_SUDO_SENDMAIL - if (evl_conf.mailerpath == NULL) - evl_conf.mailerpath = _PATH_SUDO_SENDMAIL; -+#endif - if (evl_conf.mailerflags == NULL) - evl_conf.mailerflags = "-t"; - if (evl_conf.mailto == NULL) - -- cgit v1.2.3 From f6f6e1efeecd553c3af4c31695b17fb69849967b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 19 Dec 2020 21:59:03 +0100 Subject: gnu: serf: Build with Python 3. * gnu/packages/patches/serf-python3.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/web.scm (serf)[source](patches): New field. [arguments]: Remove #:scons. --- gnu/local.mk | 1 + gnu/packages/patches/serf-python3.patch | 29 +++++++++++++++++++++++++++++ gnu/packages/web.scm | 4 ++-- 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/serf-python3.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 98590ae8eb..11cb580b92 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1609,6 +1609,7 @@ dist_patch_DATA = \ %D%/packages/patches/sdl-libx11-1.6.patch \ %D%/packages/patches/seed-webkit.patch \ %D%/packages/patches/seq24-rename-mutex.patch \ + %D%/packages/patches/serf-python3.patch \ %D%/packages/patches/sharutils-CVE-2018-1000097.patch \ %D%/packages/patches/shadow-hurd-pctrl.patch \ %D%/packages/patches/shishi-fix-libgcrypt-detection.patch \ diff --git a/gnu/packages/patches/serf-python3.patch b/gnu/packages/patches/serf-python3.patch new file mode 100644 index 0000000000..636f51ed1e --- /dev/null +++ b/gnu/packages/patches/serf-python3.patch @@ -0,0 +1,29 @@ +Fix build with Python 3 scons. + +Patch taken from Arch Linux: +https://github.com/archlinux/svntogit-packages/blob/packages/serf/trunk/scons-python3.patch + +--- serf-1.3.9/SConstruct.orig 2019-07-26 17:49:30.910189251 +0000 ++++ serf-1.3.9/SConstruct 2019-07-26 17:49:54.073821735 +0000 +@@ -163,9 +163,9 @@ + suffix='.def', src_suffix='.h') + }) + +-match = re.search('SERF_MAJOR_VERSION ([0-9]+).*' +- 'SERF_MINOR_VERSION ([0-9]+).*' +- 'SERF_PATCH_VERSION ([0-9]+)', ++match = re.search(b'SERF_MAJOR_VERSION ([0-9]+).*' ++ b'SERF_MINOR_VERSION ([0-9]+).*' ++ b'SERF_PATCH_VERSION ([0-9]+)', + env.File('serf.h').get_contents(), + re.DOTALL) + MAJOR, MINOR, PATCH = [int(x) for x in match.groups()] +@@ -183,7 +183,7 @@ + + unknown = opts.UnknownVariables() + if unknown: +- print 'Warning: Used unknown variables:', ', '.join(unknown.keys()) ++ print ('Warning: Used unknown variables:', ', '.join(unknown.keys())) + + apr = str(env['APR']) + apu = str(env['APU']) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 39820f7572..584003a1cf 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1792,6 +1792,7 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.") (method url-fetch) (uri (string-append "mirror://apache/serf/serf-" version ".tar.bz2")) + (patches (search-patches "serf-python3.patch")) (sha256 (base32 "1k47gbgpp52049andr28y28nbwh9m36bbb0g8p0aka3pqlhjv72l")))) (build-system scons-build-system) @@ -1804,8 +1805,7 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.") ;;("gss" ,gss) ("zlib" ,zlib))) (arguments - `(#:scons ,scons-python2 - #:scons-flags (list (string-append "APR=" (assoc-ref %build-inputs "apr")) + `(#:scons-flags (list (string-append "APR=" (assoc-ref %build-inputs "apr")) (string-append "APU=" (assoc-ref %build-inputs "apr-util")) (string-append "OPENSSL=" (assoc-ref %build-inputs "openssl")) ;; (string-append "GSSAPI=" (assoc-ref %build-inputs "gss")) -- cgit v1.2.3 From b6d96be80c6bc8b11eccbd68ff0824ccaf03f4e5 Mon Sep 17 00:00:00 2001 From: Brett Gilio Date: Sun, 20 Dec 2020 14:57:37 -0600 Subject: gnu: bear: Update to 3.0.4. * gnu/local.mk (bear-disable-preinstall-tests.patch): Add patch. * gnu/packages/build-tools.scm (bear): Reference patch, and update. --- gnu/local.mk | 1 + gnu/packages/build-tools.scm | 44 ++++++++++++++++++++-- .../patches/bear-disable-preinstall-tests.patch | 40 ++++++++++++++++++++ 3 files changed, 81 insertions(+), 4 deletions(-) create mode 100644 gnu/packages/patches/bear-disable-preinstall-tests.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 11cb580b92..d1c8b63fff 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -832,6 +832,7 @@ dist_patch_DATA = \ %D%/packages/patches/bastet-change-source-of-unordered_set.patch \ %D%/packages/patches/bazaar-CVE-2017-14176.patch \ %D%/packages/patches/bc-fix-cross-compilation.patch \ + %D%/packages/patches/bear-disable-preinstall-tests.patch \ %D%/packages/patches/bsd-games-2.17-64bit.patch \ %D%/packages/patches/bsd-games-add-configure-config.patch \ %D%/packages/patches/bsd-games-add-wrapper.patch \ diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 3f140efdb3..63417e5b81 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2018 Tomáš Čech ;;; Copyright © 2018, 2020 Marius Bakke ;;; Copyright © 2018 Alex Vong -;;; Copyright © 2019 Brett Gilio +;;; Copyright © 2019, 2020 Brett Gilio ;;; Copyright © 2019 Jonathan Brielmaier ;;; Copyright © 2020 Leo Prikler ;;; Copyright © 2020 Yuval Kogman @@ -36,18 +36,27 @@ #:use-module (guix git-download) #:use-module (guix build-system cmake) #:use-module (gnu packages) + #:use-module (gnu packages adns) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages cpp) + #:use-module (gnu packages gcc) #:use-module (gnu packages linux) + #:use-module (gnu packages logging) #:use-module (gnu packages lua) #:use-module (gnu packages package-management) #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pretty-print) + #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages regex) + #:use-module (gnu packages rpc) #:use-module (gnu packages sqlite) + #:use-module (gnu packages tls) #:use-module (gnu packages ninja) #:use-module (guix build-system gnu) #:use-module (guix build-system python)) @@ -90,19 +99,46 @@ makes a few sacrifices to acquire fast full and incremental build times.") (define-public bear (package (name "bear") - (version "2.4.4") + (version "3.0.4") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/rizsotto/Bear") (commit version))) (file-name (git-file-name name version)) + (patches (search-patches + "bear-disable-preinstall-tests.patch")) (sha256 (base32 - "184dqjcpxiwcfziyi67zzran2c4fal1r3j8nhjdjadcmfxf4389d")))) + "15r22sbk5bibrhf54lf0shiqw1gnsik24fr5as96w3hnj6iahgwn")))) (build-system cmake-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (add-before 'check 'set-build-environment + (lambda _ + (setenv "CC" "gcc") + #t)) + ;; TODO: Test Configuration is Incomplete + (replace 'check + (lambda _ + (invoke "ctest")))))) (inputs - `(("python" ,python-wrapper))) + `(("c-ares" ,c-ares) + ("fmt" ,fmt) + ("grpc" ,grpc) + ("json-modern-cxx" ,json-modern-cxx) + ("protobuf" ,protobuf) + ("python" ,python-wrapper) + ("re2" ,re2) + ("spdlog" ,spdlog))) + (native-inputs + `(("abseil-cpp" ,abseil-cpp) + ("gcc-9" ,gcc-9) ; for , #44896 + ("googletest" ,googletest) + ("openssl" ,openssl) + ("pkg-config" ,pkg-config) + ("python-lit" ,python-lit) + ("zlib" ,zlib))) (home-page "https://github.com/rizsotto/Bear") (synopsis "Tool for generating a compilation database") (description "A JSON compilation database is used in the Clang project to diff --git a/gnu/packages/patches/bear-disable-preinstall-tests.patch b/gnu/packages/patches/bear-disable-preinstall-tests.patch new file mode 100644 index 0000000000..c65095405f --- /dev/null +++ b/gnu/packages/patches/bear-disable-preinstall-tests.patch @@ -0,0 +1,40 @@ +From d7d0cdd48017679e8529f8475d1b9902944cf243 Mon Sep 17 00:00:00 2001 +From: Brett Gilio +Date: Sun, 20 Dec 2020 14:43:30 -0600 +Subject: [PATCH] Disallow Pre-install Checks + +--- + CMakeLists.txt | 8 -------- + 1 file changed, 8 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 45c6d27..73b4ace 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -58,10 +58,6 @@ ExternalProject_Add(BearSource + -DROOT_INSTALL_PREFIX:PATH=${CMAKE_INSTALL_PREFIX} + -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} + -DENABLE_UNIT_TESTS:BOOL=${ENABLE_UNIT_TESTS} +- TEST_BEFORE_INSTALL +- 1 +- TEST_COMMAND +- ctest # or `ctest -T memcheck` + ) + + # Run the functional tests +@@ -73,12 +69,8 @@ if (ENABLE_FUNC_TESTS) + BearSource + CMAKE_CACHE_ARGS + -DSTAGED_INSTALL_PREFIX:PATH=${STAGED_INSTALL_PREFIX} +- TEST_BEFORE_INSTALL +- 1 + INSTALL_COMMAND + "" +- TEST_COMMAND +- ctest --verbose + ) + endif () + +-- +2.29.2 + -- cgit v1.2.3 From 7eaa2f24ea77cddbb4bbc2d6a6905673a36f8f99 Mon Sep 17 00:00:00 2001 From: John Doe Date: Tue, 15 Dec 2020 10:24:11 +0100 Subject: gnu: libffi: Add unreleased patch to fix float128 on powerpc64le. Fixes . * gnu/packages/patches/libffi-float128-powerpc64le.patch: Import patch file from . * gnu/packages/libffi.scm (libffi)[arguments]: Apply patch conditionally for powerpc64le-* systems in a phase. [inputs]: Add patch as input conditionally for powerpc64le-* systems. * gnu/local.mk (dist_patch_DATA): Add patch file to build system. Signed-off-by: Chris Marusich --- gnu/local.mk | 1 + gnu/packages/libffi.scm | 26 ++++++++-- .../patches/libffi-float128-powerpc64le.patch | 58 ++++++++++++++++++++++ 3 files changed, 80 insertions(+), 5 deletions(-) create mode 100644 gnu/packages/patches/libffi-float128-powerpc64le.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index d1c8b63fff..541fb596f3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1212,6 +1212,7 @@ dist_patch_DATA = \ %D%/packages/patches/julia-SOURCE_DATE_EPOCH-mtime.patch \ %D%/packages/patches/kdbusaddons-kinit-file-name.patch \ %D%/packages/patches/libffi-3.3-powerpc-fixes.patch \ + %D%/packages/patches/libffi-float128-powerpc64le.patch \ %D%/packages/patches/libvirt-create-machine-cgroup.patch \ %D%/packages/patches/libziparchive-add-includes.patch \ %D%/packages/patches/localed-xorg-keyboard.patch \ diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm index d324892330..66239e0363 100644 --- a/gnu/packages/libffi.scm +++ b/gnu/packages/libffi.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2017, 2019, 2020 Marius Bakke ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2019 Maxim Cournoyer +;;; Copyright © 2020 John Doe ;;; ;;; This file is part of GNU Guix. ;;; @@ -57,7 +58,7 @@ ;; compiler. See "ax_cc_maxopt.m4" and "ax_gcc_archflag.m4". #:configure-flags '("--enable-portable-binary" "--without-gcc-arch") - ;; TODO: Inline patch on next rebuild cycle. + ;; TODO: Inline patches on next rebuild cycle. ,@(if (string-prefix? "powerpc-" (or (%current-target-system) (%current-system))) '(#:phases (modify-phases %standard-phases @@ -67,13 +68,28 @@ "powerpc-patch"))) (invoke "patch" "--batch" "-p1" "-i" patch)))))) + '()) + ,@(if (string-prefix? "powerpc64le-" (or (%current-target-system) + (%current-system))) + '(#:phases (modify-phases %standard-phases + (add-after 'unpack 'apply-patch2 + (lambda* (#:key inputs #:allow-other-keys) + (let ((patch (assoc-ref inputs + "powerpc64le-patch"))) + (invoke "patch" "--batch" "-p1" + "-i" patch)))))) '()))) (inputs - (if (string-prefix? "powerpc-" (or (%current-target-system) + (cond + ((string-prefix? "powerpc-" (or (%current-target-system) (%current-system))) - `(("powerpc-patch" ,@(search-patches - "libffi-3.3-powerpc-fixes.patch"))) - '())) + `(("powerpc-patch" ,@(search-patches + "libffi-3.3-powerpc-fixes.patch")))) + ((string-prefix? "powerpc64le-" (or (%current-target-system) + (%current-system))) + `(("powerpc64le-patch" ,@(search-patches + "libffi-float128-powerpc64le.patch")))) + (else '()))) (outputs '("out" "debug")) (synopsis "Foreign function call interface library") (description diff --git a/gnu/packages/patches/libffi-float128-powerpc64le.patch b/gnu/packages/patches/libffi-float128-powerpc64le.patch new file mode 100644 index 0000000000..4fd32b0102 --- /dev/null +++ b/gnu/packages/patches/libffi-float128-powerpc64le.patch @@ -0,0 +1,58 @@ +From de93adfb6f48100946bba2c3abad2a77a0cfde0b Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 24 Nov 2019 09:52:01 +0100 +Subject: [PATCH] ffi_powerpc.h: fix build failure with powerpc7 + +This is a patch pulled down from the following: +https://github.com/buildroot/buildroot/blob/78926f610b1411b03464152472fd430012deb9ac/package/libffi/0004-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch + +This issue is being hit on OpenBMC code when pulling the latest +libffi tag and building on a P8 ppc64le machine. I verified this +patch fixes the issue we are seeing. + +Below is the original commit message: + +Sicne commit 73dd43afc8a447ba98ea02e9aad4c6898dc77fb0, build on powerpc7 +fails on: + +In file included from ../src/powerpc/ffi.c:33:0: +../src/powerpc/ffi_powerpc.h:61:9: error: '_Float128' is not supported on this target + typedef _Float128 float128; + ^~~~~~~~~ + +Fix this build failure by checking for __HAVE_FLOAT128 before using +_Float128, as _Float128 is enabled only on specific conditions, see +output/host/powerpc64-buildroot-linux-gnu/sysroot/usr/include/bits/floatn.h: + + /* Defined to 1 if the current compiler invocation provides a + floating-point type with the IEEE 754 binary128 format, and this glibc + includes corresponding *f128 interfaces for it. */ + #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \ + && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH + # define __HAVE_FLOAT128 1 + #else + # define __HAVE_FLOAT128 0 + #endif + +Fixes: + - http://autobuild.buildroot.org/results/5c9dd8fb3b6a128882b6250f197c80232d8a3b53 + +Signed-off-by: Fabrice Fontaine +Signed-off-by: Andrew Geissler +--- + src/powerpc/ffi_powerpc.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/powerpc/ffi_powerpc.h b/src/powerpc/ffi_powerpc.h +index 8e2f2f0e..960a5c42 100644 +--- a/src/powerpc/ffi_powerpc.h ++++ b/src/powerpc/ffi_powerpc.h +@@ -57,7 +57,7 @@ typedef union + double d; + } ffi_dblfl; + +-#if defined(__FLOAT128_TYPE__) ++#if defined(__FLOAT128_TYPE__) && defined(__HAVE_FLOAT128) + typedef _Float128 float128; + #elif defined(__FLOAT128__) + typedef __float128 float128; -- cgit v1.2.3 From c626e281b4c7b522da6962bc045fe6372b18ac10 Mon Sep 17 00:00:00 2001 From: Simon South Date: Mon, 14 Dec 2020 13:06:44 -0500 Subject: gnu: sdcc: Move to embedded.scm. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/embedded.scm: Add sdcc from sdcc.scm. * gnu/packages/electronics.scm: Update #:use-module directive. * gnu/packages/sdcc.scm: Delete file. * gnu/local.mk: Remove it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 - gnu/packages/electronics.scm | 4 +-- gnu/packages/embedded.scm | 51 ++++++++++++++++++++++++++++ gnu/packages/sdcc.scm | 80 -------------------------------------------- 4 files changed, 53 insertions(+), 83 deletions(-) delete mode 100644 gnu/packages/sdcc.scm (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 541fb596f3..e649594017 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -495,7 +495,6 @@ GNU_SYSTEM_MODULES = \ %D%/packages/screen.scm \ %D%/packages/scribus.scm \ %D%/packages/scsi.scm \ - %D%/packages/sdcc.scm \ %D%/packages/sdl.scm \ %D%/packages/search.scm \ %D%/packages/security-token.scm \ diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index 3f9ca33ede..01796bb91c 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -32,6 +32,7 @@ #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages documentation) + #:use-module (gnu packages embedded) #:use-module (gnu packages gawk) #:use-module (gnu packages glib) #:use-module (gnu packages graphviz) @@ -39,8 +40,7 @@ #:use-module (gnu packages libusb) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) - #:use-module (gnu packages qt) - #:use-module (gnu packages sdcc)) + #:use-module (gnu packages qt)) (define-public libserialport (package diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index dd48fe317e..2d822cecf3 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -40,6 +40,7 @@ #:use-module (gnu packages autotools) #:use-module ((gnu packages base) #:prefix base:) #:use-module (gnu packages bison) + #:use-module (gnu packages boost) #:use-module (gnu packages cross-base) #:use-module (gnu packages dejagnu) #:use-module (gnu packages flex) @@ -1461,3 +1462,53 @@ microcontrollers in the Atmel AVR; Intel MCS-51 (8051); Motorola 68HC08 and 6809; P1516; Padauk PDK13, PDK14 and PDK15; STMicroelectronics ST7 and STM8; and Zilog Z80 families, plus many of their variants.") (license license:gpl2+))) + +(define-public sdcc + (package + (name "sdcc") + (version "3.7.0") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/sdcc/sdcc" + "/" version "/sdcc-src-" version ".tar.bz2")) + (sha256 + (base32 + "13llvx0j3v5qa7qd4fh7nix4j3alpd3ccprxvx163c4q8q4lfkc5")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove non-free source files + (delete-file-recursively "device/non-free") + ;; Remove bundled μCsim source + (delete-file-recursively "sim") + #t)) + (patches (search-patches "sdcc-disable-non-free-code.patch")))) + (build-system gnu-build-system) + (native-inputs + `(("bison" ,bison) + ("boost" ,boost) + ("flex" ,flex) + ("python-2" ,python-2) + ("texinfo" ,texinfo))) + (arguments + `(;; gputils is required for PIC ports + #:configure-flags + '("--disable-pic14-port" "--disable-pic16-port" "--disable-ucsim") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-makefile + (lambda _ + (substitute* (find-files "." "(\\.mk$|\\.in$)") + (("/bin/sh") (which "sh"))) + #t))))) + (home-page "http://sdcc.sourceforge.net") + (synopsis "Small devices C compiler") + (description "SDCC is a retargetable, optimizing Standard C compiler suite +that targets the Intel MCS51-based microprocessors (8031, 8032, 8051, 8052, ...), +Maxim (formerly Dallas) DS80C390 variants, Freescale (formerly Motorola) +HC08-based (hc08, s08), Zilog Z80-based MCUs (z80, z180, gbz80, Rabbit +2000/3000, Rabbit 3000A, TLCS-90) and STMicroelectronics STM8. +Work is in progress on supporting the Microchip PIC16 and PIC18 targets. +It can be retargeted for other microprocessors.") + (license license:gpl2+))) diff --git a/gnu/packages/sdcc.scm b/gnu/packages/sdcc.scm deleted file mode 100644 index 0ce71ed955..0000000000 --- a/gnu/packages/sdcc.scm +++ /dev/null @@ -1,80 +0,0 @@ -;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 David Craven -;;; Copyright © 2018 Tobias Geerinckx-Rice -;;; -;;; This file is part of GNU Guix. -;;; -;;; GNU Guix is free software; you can redistribute it and/or modify it -;;; under the terms of the GNU General Public License as published by -;;; the Free Software Foundation; either version 3 of the License, or (at -;;; your option) any later version. -;;; -;;; GNU Guix is distributed in the hope that it will be useful, but -;;; WITHOUT ANY WARRANTY; without even the implied warranty of -;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;;; GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with GNU Guix. If not, see . - -(define-module (gnu packages sdcc) - #:use-module (gnu packages) - #:use-module (gnu packages bison) - #:use-module (gnu packages boost) - #:use-module (gnu packages flex) - #:use-module (gnu packages python) - #:use-module (gnu packages texinfo) - #:use-module (guix build-system gnu) - #:use-module (guix download) - #:use-module (guix packages) - #:use-module ((guix licenses) #:prefix license:)) - -(define-public sdcc - (package - (name "sdcc") - (version "3.7.0") - (source (origin - (method url-fetch) - (uri (string-append - "mirror://sourceforge/sdcc/sdcc" - "/" version "/sdcc-src-" version ".tar.bz2")) - (sha256 - (base32 - "13llvx0j3v5qa7qd4fh7nix4j3alpd3ccprxvx163c4q8q4lfkc5")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Remove non-free source files - (delete-file-recursively "device/non-free") - ;; Remove bundled μCsim source - (delete-file-recursively "sim") - #t)) - (patches (search-patches "sdcc-disable-non-free-code.patch")))) - (build-system gnu-build-system) - (native-inputs - `(("bison" ,bison) - ("boost" ,boost) - ("flex" ,flex) - ("python-2" ,python-2) - ("texinfo" ,texinfo))) - (arguments - `(;; gputils is required for PIC ports - #:configure-flags - '("--disable-pic14-port" "--disable-pic16-port" "--disable-ucsim") - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-makefile - (lambda _ - (substitute* (find-files "." "(\\.mk$|\\.in$)") - (("/bin/sh") (which "sh"))) - #t))))) - (home-page "http://sdcc.sourceforge.net") - (synopsis "Small devices C compiler") - (description "SDCC is a retargetable, optimizing Standard C compiler suite -that targets the Intel MCS51-based microprocessors (8031, 8032, 8051, 8052, ...), -Maxim (formerly Dallas) DS80C390 variants, Freescale (formerly Motorola) -HC08-based (hc08, s08), Zilog Z80-based MCUs (z80, z180, gbz80, Rabbit -2000/3000, Rabbit 3000A, TLCS-90) and STMicroelectronics STM8. -Work is in progress on supporting the Microchip PIC16 and PIC18 targets. -It can be retargeted for other microprocessors.") - (license license:gpl2+))) -- cgit v1.2.3