;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2020 Maxim Cournoyer ;;; ;;; 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 (tests offload) #:use-module (guix scripts offload) #:use-module (srfi srfi-64)) (test-begin "offload") (define-syntax-rule (expose-internal-definitions s1 s2 ...) (begin (define s1 (@@ (guix scripts offload) s1)) (define s2 (@@ (guix scripts offload) s2)) ...)) (expose-internal-definitions machine-matches? build-requirements-system build-requirements-features build-machine-system build-machine-systems %build-machine-system %build-machine-systems build-machine-features) (define (deprecated-build-machine system) (build-machine (name "m1") (user "dummy") (host-key "some-key") (system system))) (define (new-build-machine systems) (build-machine (name "m1") (user "dummy") (host-key "some-key") (systems systems))) ;;; Test that deprecated build-machine definitions still work. (test-assert (machine-matches? (deprecated-build-machine "i686-linux") (build-requirements (system "i686-linux")))) (test-assert (machine-matches? (new-build-machine '("i686-linux")) (build-requirements (system "i686-linux")))) ;;; A build machine can act as more than one system type, thanks to QEMU ;;; emulation. (test-assert (machine-matches? (new-build-machine '("armhf-linux" "aarch64-linux" "i686-linux" "x86_64-linux")) (build-requirements (system "armhf-linux")))) scm?id=09d62629a91b7623ed9c86f4d52db32682ec88a0'>guix: search-paths: Fix obj-c++ search paths....* guix/search-paths.scm ($OBJCPLUS_INCLUDE_PATH): Also search 'include/c++'. Change-Id: I403674038c1c3bf1251c710031496363c924f19a Efraim Flashner 2024-08-31gnu: gcc: Support objc, objc++ by default....* gnu/packages/gcc.scm (gcc-4.7)[configure-flags]: Adjust the enable-languages flag to also enable objc, obj-c++. (gcc-objc-4.8, gcc-objc-4.9, gcc-objc-5, gcc-objc-6, gcc-objc-7, gcc-objc-8, gcc-objc-9, gcc-objc-10, gcc-objc-11, gcc-objc-12, gcc-objc, gcc-objc++-4.8, gcc-objc++-4.9, gcc-objc++-5, gcc-objc++-6, gcc-objc++-7, gcc-objc++-8, gcc-objc++-9, gcc-objc++-10, gcc-objc++-11, gcc-objc++-12, gcc-objc++, %objc-search-paths, %objc++-search-paths): Remove variables. * guix/search-paths.scm ($OBJC_INCLUDE_PATH, $OBJCPLUS_INCLUDE_PATH): New variables. (%gcc-search-paths): Include $OBJC_INCLUDE_PATH, $OBJCPLUS_INCLUDE_PATH. Change-Id: Ib4cd176eb88c733a82f2d31e8cc45b9c61720f8f Efraim Flashner 2024-08-31gnu: libxslt: Set search-paths for XML and SGML catalogs....According to xsltproc manpage it supports both XML_CATALOG_FILES and SGML_CATALOG_FILES for catalog lookup. Since the native-search-paths field is not thunked, doing (package-native-search-paths libxslt) can lead to module import cycles so we define a %libxslt-search-paths variable to avoid this kind of trouble. * guix/search-paths.scm (%libxslt-search-paths): New variable. * gnu/packages/xml.scm (libxslt)[native-search-paths]: Set to %libxslt-search-paths. * gnu/packages/perl.scm (perl-app-xml-docbook-builder)[native-search-paths]: Ditto. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Bruno Victal 2024-08-31search-paths: Add $XML_CATALOG_FILES and $SGML_CATALOG_FILES....These variables are used by some packages for XML/SGML catalog lookups. * guix/search-paths ($XML_CATALOG_FILES, $SGML_CATALOG_FILES): New variable, extracted from … * gnu/packages/xml.scm (libxml2, opensp)[native-search-paths]: … here. Refer to the variables from (guix search-paths) respectively. * gnu/packages/perl.scm (perl-app-xml-docbook-builder)[native-search-paths]: Use $XML_CATALOG_FILES. * doc/guix.texi (Search Paths): Update documentation to reflect changes. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Bruno Victal 2023-10-04search-paths: Add GCC search paths....* guix/search-paths.scm ($C_INCLUDE_PATH, $CPLUS_INCLUDE_PATH) ($LIBRARY_PATH, %gcc-search-paths): New variables. Maxim Cournoyer 2023-09-12search-paths: Add $TZDIR....* guix/search-paths.scm ($TZDIR): New search path. Maxim Cournoyer 2023-03-06gnu: perl-extutils-pkgconfig: Support cross-compilation....* guix/search-paths.scm ($PKG_CONFIG_PATH): New variable. * gnu/packages/pkg-config.scm (%pkg-config): Use it. * gnu/packages/perl.scm (perl-extutils-pkgconfig-for-target): New procedure. (perl-extutils-pkgconfig): Turn into a syntax that conditionally expands to... (cross-perl-extutils-pkgconfig): ... this when %current-target-system is set, or... (%perl-extutils-pkgconfig): ... this in a native compilation context. [arguments]: New field. [propagated-inputs]: Turn into... [native-inputs]: ... this. [native-search-paths]: New field. Maxim Cournoyer