From a0828560b58f6b6c8b400caf0ceee396abc7d4c0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 21 May 2020 11:30:50 +0300 Subject: gnu: boost-for-mysql: Fix building. Co-authored with Jonathan Brielmaier * gnu/packages/boost.scm (boost-for-mysql)[arguments]: Replace inherited 'configure, phase remove references to python and update the substitute regex for boost-1.59. Absorb 'more-bin-sh-patching into 'configure.Adjust make-flags to always pass '--without-python'. [native-inputs]: Remove python. --- gnu/packages/boost.scm | 41 +++++++++++++++++++++++++++++++++++------ 1 file changed, 35 insertions(+), 6 deletions(-) (limited to 'gnu/packages/boost.scm') diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index 2f2ca289ab..d28c58d663 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2019 Mathieu Othacehe ;;; Copyright © 2019, 2020 Giacomo Leidi ;;; Copyright © 2020 Marius Bakke +;;; Copyright © 2020 Jonathan Brielmaier ;;; ;;; This file is part of GNU Guix. ;;; @@ -241,12 +242,40 @@ (define-public boost-for-mysql (arguments (substitute-keyword-arguments (package-arguments boost) ((#:phases phases) `(modify-phases ,phases - ;; This was removed after boost-1.67. - (add-before 'configure 'more-bin-sh-patching - (lambda _ - (substitute* "tools/build/doc/bjam.qbk" - (("/bin/sh") (which "sh"))))) - (delete 'provide-libboost_python))))) + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((icu (assoc-ref inputs "icu4c")) + (out (assoc-ref outputs "out"))) + (substitute* (append + (find-files "tools/build/src/engine/" "execunix\\.c.*") + '("libs/config/configure" + "libs/spirit/classic/phoenix/test/runtest.sh" + "tools/build/doc/bjam.qbk" + "tools/build/src/engine/Jambase")) + (("/bin/sh") (which "sh"))) + + (setenv "SHELL" (which "sh")) + (setenv "CONFIG_SHELL" (which "sh")) + + ,@(if (%current-target-system) + `((call-with-output-file "user-config.jam" + (lambda (port) + (format port + "using gcc : cross : ~a-c++ ;" + ,(%current-target-system))))) + '()) + + (invoke "./bootstrap.sh" + (string-append "--prefix=" out) + ;; Auto-detection looks for ICU only in traditional + ;; install locations. + (string-append "--with-icu=" icu) + "--with-toolset=gcc")))) + (delete 'provide-libboost_python))) + ((#:make-flags make-flags) + `(cons* "--without-python" ,make-flags)))) + (native-inputs + (alist-delete "python" (package-native-inputs boost))) (properties '((hidden? . #t))))) (define-public boost-sync -- cgit v1.2.3