* [bug#29392] [PATCH 00/11] New scons build system
@ 2017-11-22 8:41 Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (4 more replies)
0 siblings, 5 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 8:41 UTC (permalink / raw)
To: 29392
I have a working scons build system!
I have ported all scons built packages except aria-maestosa to the new build
system. aria-maestosa fails to build even on the current master branch.
I am also unable to build mongodb on my machine. It's probably due to
insufficient memory (I have 4 GB). Somebody should verify that the build works
on their machine. On my machine, it fails with the error:
collect2: error: ld returned 1 exit status
scons: *** [build/opt/mongo/db/pipeline/parsed_add_fields_test] Error 1
scons: building terminated because of errors.
build/opt/mongo/db/pipeline/parsed_add_fields_test failed: Error 1
phase `check' failed after 7004.3 seconds
builder for `/gnu/store/58qhwfl34zk1p10hnhvvpy9w7cv2pgvr-mongodb-3.4.9.drv' failed with exit code 1
@ build-failed /gnu/store/58qhwfl34zk1p10hnhvvpy9w7cv2pgvr-mongodb-3.4.9.drv - 1 builder for `/gnu/store/58qhwfl34zk1p10hnhvvpy9w7cv2pgvr-mongodb-3.4.9.drv' failed with exit code 1
guix build: error: build failed: build of `/gnu/store/58qhwfl34zk1p10hnhvvpy9w7cv2pgvr-mongodb-3.4.9.drv' failed
In the copyright headers of doc/guix.texi, do I need to add @* to the end of
the line?
Arun Isaac (11):
gnu: scons: Update to 3.0.1.
build-system: Add scons-build-system.
gnu: linuxdcpp: Use scons-build-system.
gnu: gpick: Use scons-build-system.
gnu: serf: Use scons-build-system.
gnu: metabat: Use scons-build-system.
gnu: godot: Use scons-build-system.
gnu: pingus: Use scons-build-system.
gnu: klick: Use scons-build-system.
gnu: mongodb: Use scons-build-system.
gnu: pingus: Use HTTPS for home page.
Makefile.am | 3 +
doc/guix.texi | 10 +++
gnu/packages/bioinformatics.scm | 29 +++------
gnu/packages/databases.scm | 8 +--
gnu/packages/direct-connect.scm | 24 ++-----
gnu/packages/game-development.scm | 44 ++++++-------
gnu/packages/games.scm | 14 ++---
gnu/packages/image.scm | 19 ++----
gnu/packages/music.scm | 21 ++-----
gnu/packages/python.scm | 13 ++--
gnu/packages/web.scm | 36 +++--------
guix/build-system/scons.scm | 127 ++++++++++++++++++++++++++++++++++++++
guix/build/scons-build-system.scm | 65 +++++++++++++++++++
13 files changed, 275 insertions(+), 138 deletions(-)
create mode 100644 guix/build-system/scons.scm
create mode 100644 guix/build/scons-build-system.scm
--
2.15.0
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1.
2017-11-22 8:41 [bug#29392] [PATCH 00/11] New scons build system Arun Isaac
@ 2017-11-22 9:34 ` Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 02/11] build-system: Add scons-build-system Arun Isaac
` (9 more replies)
2017-11-25 16:04 ` [bug#29392] [PATCH 00/11] New scons build system Leo Famulari
` (3 subsequent siblings)
4 siblings, 10 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:34 UTC (permalink / raw)
To: 29392
* gnu/packages/python.scm (scons): Update to 3.0.1.
(scons-python2): New variable.
---
gnu/packages/python.scm | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index d46119718..34002245f 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -1371,19 +1371,17 @@ existing ones.")
(define-public scons
(package
(name "scons")
- (version "2.5.1")
+ (version "3.0.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/scons/scons/" version
"/scons-" version ".tar.gz"))
(sha256
(base32
- "1wji1z9jdkhnmm99apx6fhld9cs52rr56aigniyrcsmlwy52298b"))))
+ "0wzid419mlwqw9llrg8gsx4nkzhqy16m4m40r0xnh6cwscw5wir4"))))
(build-system python-build-system)
(arguments
- ;; With Python 3.x, fails to build with a syntax error.
- `(#:python ,python-2
- #:use-setuptools? #f ; still relies on distutils
+ `(#:use-setuptools? #f ; still relies on distutils
#:tests? #f)) ; no 'python setup.py test' command
(home-page "http://scons.org/")
(synopsis "Software construction tool written in Python")
@@ -1395,6 +1393,11 @@ In short, SCons is an easier, more reliable and faster way to build
software.")
(license license:x11)))
+(define-public scons-python2
+ (package
+ (inherit (package-with-python2 scons))
+ (name "scons-python2")))
+
(define-public python-extras
(package
(name "python-extras")
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 02/11] build-system: Add scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
@ 2017-11-22 9:34 ` Arun Isaac
2017-11-26 21:04 ` Leo Famulari
2017-11-22 9:34 ` [bug#29392] [PATCH 03/11] gnu: linuxdcpp: Use scons-build-system Arun Isaac
` (8 subsequent siblings)
9 siblings, 1 reply; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:34 UTC (permalink / raw)
To: 29392
* guix/build-system/scons.scm: New file.
* guix/build/scons-build-system.scm: New file.
* Makefile.am (MODULES): Register them.
* doc/guix.texi (Build Systems): Add scons-build-system.
---
Makefile.am | 3 +
doc/guix.texi | 10 +++
guix/build-system/scons.scm | 127 ++++++++++++++++++++++++++++++++++++++
guix/build/scons-build-system.scm | 65 +++++++++++++++++++
4 files changed, 205 insertions(+)
create mode 100644 guix/build-system/scons.scm
create mode 100644 guix/build/scons-build-system.scm
diff --git a/Makefile.am b/Makefile.am
index eab49181a..24a803a21 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -8,6 +8,7 @@
# Copyright © 2017 Leo Famulari <leo@famulari.name>
# Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+# Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
#
# This file is part of GNU Guix.
#
@@ -94,6 +95,7 @@ MODULES = \
guix/build-system/waf.scm \
guix/build-system/r.scm \
guix/build-system/ruby.scm \
+ guix/build-system/scons.scm \
guix/build-system/texlive.scm \
guix/build-system/trivial.scm \
guix/ftp-client.scm \
@@ -127,6 +129,7 @@ MODULES = \
guix/build/ocaml-build-system.scm \
guix/build/r-build-system.scm \
guix/build/ruby-build-system.scm \
+ guix/build/scons-build-system.scm \
guix/build/texlive-build-system.scm \
guix/build/waf-build-system.scm \
guix/build/haskell-build-system.scm \
diff --git a/doc/guix.texi b/doc/guix.texi
index 2b3ffc9a8..6f93b1c8e 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -42,6 +42,7 @@ Copyright @copyright{} 2017 Hartmut Goebel@*
Copyright @copyright{} 2017 Maxim Cournoyer@*
Copyright @copyright{} 2017 Tobias Geerinckx-Rice@*
Copyright @copyright{} 2017 George Clemmer
+Copyright @copyright{} 2017 Arun Isaac
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -3865,6 +3866,15 @@ Python package is used to run the script can be specified with the
@code{#:python} parameter.
@end defvr
+@defvr {Scheme Variable} scons-build-system
+This variable is exported by @code{(guix build-system scons)}. It
+implements the build procedure used by the @code{scons} software
+construction tool. This build system runs @code{scons} to build the
+package, @code{scons test} to run tests, and then @code{scons install}
+to install the package. Additional flags to be passed to @code{scons}
+can be specified with the @code{#:scons-flags} parameter.
+@end defvr
+
@defvr {Scheme Variable} haskell-build-system
This variable is exported by @code{(guix build-system haskell)}. It
implements the Cabal build procedure used by Haskell packages, which
diff --git a/guix/build-system/scons.scm b/guix/build-system/scons.scm
new file mode 100644
index 000000000..132a2d4df
--- /dev/null
+++ b/guix/build-system/scons.scm
@@ -0,0 +1,127 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
+;;;
+;;; 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 <http://www.gnu.org/licenses/>.
+
+(define-module (guix build-system scons)
+ #:use-module (guix utils)
+ #:use-module (guix packages)
+ #:use-module (guix derivations)
+ #:use-module (guix search-paths)
+ #:use-module (guix build-system)
+ #:use-module (guix build-system gnu)
+ #:use-module (ice-9 match)
+ #:export (%scons-build-system-modules
+ scons-build
+ scons-build-system))
+
+;; Commentary:
+;;
+;; Standard build procedure for applications using 'scons'. This is
+;; implemented as an extension of 'gnu-build-system'.
+;;
+;; Code:
+
+(define %scons-build-system-modules
+ ;; Build-side modules imported by default.
+ `((guix build scons-build-system)
+ ,@%gnu-build-system-modules))
+
+(define* (lower name
+ #:key source inputs native-inputs outputs system target
+ #:allow-other-keys
+ #:rest arguments)
+ "Return a bag for NAME."
+ (define private-keywords
+ '(#:source #:target #:inputs #:native-inputs))
+
+ (and (not target) ;XXX: no cross-compilation
+ (bag
+ (name name)
+ (system system)
+ (host-inputs `(,@(if source
+ `(("source" ,source))
+ '())
+ ,@inputs
+
+ ;; Keep the standard inputs of 'gnu-build-system'.
+ ,@(standard-packages)))
+ (build-inputs `(("scons-python2" ,(module-ref (resolve-interface '(gnu packages python)) 'scons-python2))
+ ,@native-inputs))
+ (outputs outputs)
+ (build scons-build)
+ (arguments (strip-keyword-arguments private-keywords arguments)))))
+
+(define* (scons-build store name inputs
+ #:key
+ (tests? #t)
+ (scons-flags ''())
+ (test-target "test")
+ (phases '(@ (guix build scons-build-system)
+ %standard-phases))
+ (outputs '("out"))
+ (search-paths '())
+ (system (%current-system))
+ (guile #f)
+ (imported-modules %scons-build-system-modules)
+ (modules '((guix build scons-build-system)
+ (guix build utils))))
+ "Build SOURCE using SCONS, and with INPUTS. This assumes that SOURCE
+provides a 'SConstruct' file as its build system."
+ (define builder
+ `(begin
+ (use-modules ,@modules)
+ (scons-build #:name ,name
+ #:source ,(match (assoc-ref inputs "source")
+ (((? derivation? source))
+ (derivation->output-path source))
+ ((source)
+ source)
+ (source
+ source))
+ #:scons-flags ,scons-flags
+ #:system ,system
+ #:test-target ,test-target
+ #:tests? ,tests?
+ #:phases ,phases
+ #:outputs %outputs
+ #:search-paths ',(map search-path-specification->sexp
+ search-paths)
+ #:inputs %build-inputs)))
+
+ (define guile-for-build
+ (match guile
+ ((? package?)
+ (package-derivation store guile system #:graft? #f))
+ (#f ; the default
+ (let* ((distro (resolve-interface '(gnu packages commencement)))
+ (guile (module-ref distro 'guile-final)))
+ (package-derivation store guile system #:graft? #f)))))
+
+ (build-expression->derivation store name builder
+ #:inputs inputs
+ #:system system
+ #:modules imported-modules
+ #:outputs outputs
+ #:guile-for-build guile-for-build))
+
+(define scons-build-system
+ (build-system
+ (name 'scons)
+ (description "The standard scons build system")
+ (lower lower)))
+
+;;; scons.scm ends here
diff --git a/guix/build/scons-build-system.scm b/guix/build/scons-build-system.scm
new file mode 100644
index 000000000..b49e924d9
--- /dev/null
+++ b/guix/build/scons-build-system.scm
@@ -0,0 +1,65 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
+;;;
+;;; 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 <http://www.gnu.org/licenses/>.
+
+(define-module (guix build scons-build-system)
+ #:use-module ((guix build gnu-build-system) #:prefix gnu:)
+ #:use-module (guix build utils)
+ #:export (%standard-phases
+ scons-build))
+
+;; Commentary:
+;;
+;; Builder-side code of the scons build system.
+;;
+;; Code:
+
+(define* (build #:key outputs (scons-flags '()) (parallel-build? #t) #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p out)
+ (zero? (apply system* "scons"
+ (append (if parallel-build?
+ (list "-j" (number->string
+ (parallel-job-count)))
+ (list))
+ scons-flags)))))
+
+(define* (check #:key tests? test-target (scons-flags '()) #:allow-other-keys)
+ "Run the test suite of a given scons application."
+ (cond (tests?
+ (zero? (apply system* "scons" test-target scons-flags)))
+ (else
+ (format #t "test suite not run~%")
+ #t)))
+
+(define* (install #:key outputs (scons-flags '()) #:allow-other-keys)
+ "Install a given scons application."
+ (zero? (apply system* "scons" "install" scons-flags)))
+
+(define %standard-phases
+ (modify-phases gnu:%standard-phases
+ (delete 'configure)
+ (replace 'build build)
+ (replace 'check check)
+ (replace 'install install)))
+
+(define* (scons-build #:key inputs (phases %standard-phases)
+ #:allow-other-keys #:rest args)
+ "Build a given scons application, applying all of PHASES in order."
+ (apply gnu:gnu-build #:inputs inputs #:phases phases args))
+
+;;; scons-build-system.scm ends here
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 03/11] gnu: linuxdcpp: Use scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 02/11] build-system: Add scons-build-system Arun Isaac
@ 2017-11-22 9:34 ` Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 04/11] gnu: gpick: " Arun Isaac
` (7 subsequent siblings)
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:34 UTC (permalink / raw)
To: 29392
* gnu/packages/direct-connect.scm (linuxdcpp): Switch to scons-build-system.
---
gnu/packages/direct-connect.scm | 24 +++++-------------------
1 file changed, 5 insertions(+), 19 deletions(-)
diff --git a/gnu/packages/direct-connect.scm b/gnu/packages/direct-connect.scm
index 6796bf3bc..49cadb5e3 100644
--- a/gnu/packages/direct-connect.scm
+++ b/gnu/packages/direct-connect.scm
@@ -17,7 +17,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages direct-connect)
- #:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
@@ -44,23 +44,10 @@
(sha256
(base32
"12i92hirmwryl1qy0n3jfrpziwzb82f61xca9jcjwyilx502f0b6"))))
- (build-system python-build-system)
+ (build-system scons-build-system)
(arguments
- `(#:python ,python-2
- #:tests? #f ; no tests
- #:phases
- ;; TODO: Add scons-build-system and use it here.
- (modify-phases %standard-phases
- (delete 'configure)
- (replace 'build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (mkdir-p out)
- (zero? (system* "scons" (string-append "PREFIX=" out)
- "-j" (number->string (parallel-job-count)))))))
- (replace 'install
- (lambda _
- (zero? (system* "scons" "install")))))))
+ `(#:scons-flags (list (string-append "PREFIX=" %output))
+ #:tests? #f)) ; no tests
(inputs
`(("boost" ,boost)
("bzip2" ,bzip2)
@@ -71,8 +58,7 @@
(native-inputs
`(("bazaar" ,bazaar)
("gettext-minimal" ,gettext-minimal)
- ("pkg-config" ,pkg-config)
- ("scons" ,scons)))
+ ("pkg-config" ,pkg-config)))
(home-page "https://launchpad.net/linuxdcpp/")
(synopsis "Direct Connect client")
(description "LinuxDC++ is a Direct Connect (DC) client. Direct Connect
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 04/11] gnu: gpick: Use scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 02/11] build-system: Add scons-build-system Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 03/11] gnu: linuxdcpp: Use scons-build-system Arun Isaac
@ 2017-11-22 9:35 ` Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 05/11] gnu: serf: " Arun Isaac
` (6 subsequent siblings)
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:35 UTC (permalink / raw)
To: 29392
* gnu/packages/image.scm (gpick): Switch to scons-build-system.
---
gnu/packages/image.scm | 19 ++++++-------------
1 file changed, 6 insertions(+), 13 deletions(-)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index cb8e387f6..eabd4653f 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -12,7 +12,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 ng0 <ng0@infotropique.org>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
@@ -67,6 +67,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
#:use-module (guix build-system r)
+ #:use-module (guix build-system scons)
#:use-module (srfi srfi-1))
(define-public libpng
@@ -1202,33 +1203,25 @@ medical image data, e.g. magnetic resonance image (MRI) and functional MRI
(sha256
(base32
"0mxvxk15xhk2i5vfavjhnkk4j3bnii0gpf8di14rlbpq070hd5rs"))))
- (build-system python-build-system)
+ (build-system scons-build-system)
(native-inputs
`(("boost" ,boost)
("gettext" ,gnu-gettext)
- ("pkg-config" ,pkg-config)
- ("scons" ,scons)))
+ ("pkg-config" ,pkg-config)))
(inputs
`(("expat" ,expat)
("gtk2" ,gtk+-2)
("lua" ,lua-5.2)))
(arguments
`(#:tests? #f
+ #:scons-flags (list (string-append "DESTDIR=" %output))
#:phases
(modify-phases %standard-phases
(add-before 'build 'fix-lua-reference
(lambda _
(substitute* "SConscript"
(("lua5.2") "lua-5.2"))
- #t))
- (replace 'build
- (lambda _
- (zero? (system* "scons"))))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((dest (assoc-ref outputs "out")))
- (zero? (system* "scons" "install"
- (string-append "DESTDIR=" dest)))))))))
+ #t)))))
(home-page "http://www.gpick.org/")
(synopsis "Color picker")
(description "Gpick is an advanced color picker and palette editing tool.")
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 05/11] gnu: serf: Use scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (2 preceding siblings ...)
2017-11-22 9:35 ` [bug#29392] [PATCH 04/11] gnu: gpick: " Arun Isaac
@ 2017-11-22 9:35 ` Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 06/11] gnu: metabat: " Arun Isaac
` (5 subsequent siblings)
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:35 UTC (permalink / raw)
To: 29392
* gnu/packages/web.scm (serf): Switch to scons-build-system.
---
gnu/packages/web.scm | 36 +++++++++---------------------------
1 file changed, 9 insertions(+), 27 deletions(-)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index a4a8778ef..bf9d7bfdd 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -56,6 +56,7 @@
#:use-module (guix build-system trivial)
#:use-module (guix build-system python)
#:use-module (guix build-system ant)
+ #:use-module (guix build-system scons)
#:use-module (gnu packages)
#:use-module (gnu packages apr)
#:use-module (gnu packages check)
@@ -1068,10 +1069,7 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
version ".tar.bz2"))
(sha256
(base32 "1k47gbgpp52049andr28y28nbwh9m36bbb0g8p0aka3pqlhjv72l"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("scons" ,scons)
- ("python" ,python-2)))
+ (build-system scons-build-system)
(propagated-inputs
`(("apr" ,apr)
("apr-util" ,apr-util)
@@ -1081,13 +1079,14 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
;;("gss" ,gss)
("zlib" ,zlib)))
(arguments
- `(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (srfi srfi-1))
+ `(#: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"))
+ (string-append "ZLIB=" (assoc-ref %build-inputs "zlib"))
+ (string-append "PREFIX=" %output))
#:phases
- ;; TODO: Add scons-build-system and use it here.
(modify-phases %standard-phases
- (delete 'configure)
(add-after 'unpack 'scons-propagate-environment
(lambda _
;; By design, SCons does not, by default, propagate
@@ -1098,21 +1097,6 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
(substitute* "SConstruct"
(("^env = Environment\\(")
"env = Environment(ENV=os.environ, "))))
- (replace 'build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (apr (assoc-ref inputs "apr"))
- (apr-util (assoc-ref inputs "apr-util"))
- (openssl (assoc-ref inputs "openssl"))
- ;;(gss (assoc-ref inputs "gss"))
- (zlib (assoc-ref inputs "zlib")))
- (zero? (system* "scons"
- (string-append "APR=" apr)
- (string-append "APU=" apr-util)
- (string-append "OPENSSL=" openssl)
- ;;(string-append "GSSAPI=" gss)
- (string-append "ZLIB=" zlib)
- (string-append "PREFIX=" out))))))
(add-before 'check 'disable-broken-tests
(lambda _
;; These tests rely on SSL certificates that expired 2017-04-18.
@@ -1139,9 +1123,7 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
(substitute* "test/test_context.c"
(((string-append "SUITE_ADD_TEST\\(suite, " test "\\);")) "")))
broken-tests)
- #t)))
- (replace 'check (lambda _ (zero? (system* "scons" "check"))))
- (replace 'install (lambda _ (zero? (system* "scons" "install")))))))
+ #t))))))
(home-page "https://serf.apache.org/")
(synopsis "High-performance asynchronous HTTP client library")
(description
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 06/11] gnu: metabat: Use scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (3 preceding siblings ...)
2017-11-22 9:35 ` [bug#29392] [PATCH 05/11] gnu: serf: " Arun Isaac
@ 2017-11-22 9:35 ` Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 07/11] gnu: godot: " Arun Isaac
` (4 subsequent siblings)
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:35 UTC (permalink / raw)
To: 29392
* gnu/packages/bioinformatics.scm (metabat): Switch to scons-build-system.
---
gnu/packages/bioinformatics.scm | 29 +++++++++--------------------
1 file changed, 9 insertions(+), 20 deletions(-)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index a8d7361ff..850c7462d 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016 Raoul Bonnal <ilpuccio.febo@gmail.com>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -39,6 +40,7 @@
#:use-module (guix build-system python)
#:use-module (guix build-system r)
#:use-module (guix build-system ruby)
+ #:use-module (guix build-system scons)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
@@ -3439,9 +3441,13 @@ form of assemblies or reads.")
(base32
"1hmvdalz3zj5sqqklg0l4npjdv37cv2hsdi1al9iby2ndxjs1b73"))
(patches (search-patches "metabat-fix-compilation.patch"))))
- (build-system gnu-build-system)
+ (build-system scons-build-system)
(arguments
- `(#:phases
+ `(#:scons-flags
+ (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ (string-append "BOOST_ROOT=" (assoc-ref %build-inputs "boost")))
+ #:tests? #f ;; Tests are run during the build phase.
+ #:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-includes
(lambda _
@@ -3471,30 +3477,13 @@ form of assemblies or reads.")
"/lib'"))
;; Do not distribute README.
(("^env\\.Install\\(idir_prefix, 'README\\.md'\\)") ""))
- #t))
- (delete 'configure)
- (replace 'build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (mkdir (assoc-ref outputs "out"))
- (zero? (system* "scons"
- (string-append
- "PREFIX="
- (assoc-ref outputs "out"))
- (string-append
- "BOOST_ROOT="
- (assoc-ref inputs "boost"))
- "install"))))
- ;; Check and install are carried out during build phase.
- (delete 'check)
- (delete 'install))))
+ #t)))))
(inputs
`(("zlib" ,zlib)
("perl" ,perl)
("samtools" ,samtools)
("htslib" ,htslib)
("boost" ,boost)))
- (native-inputs
- `(("scons" ,scons)))
(home-page "https://bitbucket.org/berkeleylab/metabat")
(synopsis
"Reconstruction of single genomes from complex microbial communities")
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 07/11] gnu: godot: Use scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (4 preceding siblings ...)
2017-11-22 9:35 ` [bug#29392] [PATCH 06/11] gnu: metabat: " Arun Isaac
@ 2017-11-22 9:35 ` Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 08/11] gnu: pingus: " Arun Isaac
` (3 subsequent siblings)
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:35 UTC (permalink / raw)
To: 29392
* gnu/packages/game-development.scm (godot): Switch to scons-build-system.
---
gnu/packages/game-development.scm | 44 +++++++++++++++++----------------------
1 file changed, 19 insertions(+), 25 deletions(-)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index be241cbd3..a98b40c49 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -37,6 +37,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
@@ -1063,12 +1064,25 @@ games.")
(file-name (string-append name "-" version))
(sha256
(base32 "1mz89nafc1m7srbqvy7iagxrxmqvf5hbqi7i0lwaapkx6q0kpkq7"))))
- (build-system gnu-build-system)
+ (build-system scons-build-system)
(arguments
- `(#:tests? #f ; There are no tests
+ `(#:scons-flags (list "platform=x11"
+ ;; Avoid using many of the bundled libs.
+ ;; Note: These options can be found in the SConstruct file.
+ "builtin_freetype=no"
+ "builtin_glew=no"
+ "builtin_libmpdec=no"
+ "builtin_libogg=no"
+ "builtin_libpng=no"
+ "builtin_libtheora=no"
+ "builtin_libvorbis=no"
+ "builtin_libwebp=no"
+ "builtin_openssl=no"
+ "builtin_opus=no"
+ "builtin_zlib=no")
+ #:tests? #f ; There are no tests
#:phases
(modify-phases %standard-phases
- (delete 'configure)
(add-after 'unpack 'scons-use-env
(lambda _
;; Scons does not use the environment variables by default,
@@ -1079,24 +1093,6 @@ games.")
"env_base = Environment(tools=custom_tools)\n"
"env_base = Environment(ENV=os.environ)")))
#t))
- (replace 'build
- (lambda _
- (zero? (system*
- "scons"
- "platform=x11"
- ;; Avoid using many of the bundled libs.
- ;; Note: These options can be found in the SConstruct file.
- "builtin_freetype=no"
- "builtin_glew=no"
- "builtin_libmpdec=no"
- "builtin_libogg=no"
- "builtin_libpng=no"
- "builtin_libtheora=no"
- "builtin_libvorbis=no"
- "builtin_libwebp=no"
- "builtin_openssl=no"
- "builtin_opus=no"
- "builtin_zlib=no"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -1128,8 +1124,7 @@ games.")
Type=Application~%"
out)))
#t))))))
- (native-inputs `(("pkg-config" ,pkg-config)
- ("scons" ,scons)))
+ (native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("alsa-lib" ,alsa-lib)
("freetype" ,freetype)
("glew" ,glew)
@@ -1144,8 +1139,7 @@ games.")
("mesa" ,mesa)
("openssl" ,openssl)
("opusfile" ,opusfile)
- ("pulseaudio" ,pulseaudio)
- ("python2" ,python-2)))
+ ("pulseaudio" ,pulseaudio)))
(home-page "https://godotengine.org/")
(synopsis "Advanced 2D and 3D game engine")
(description
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 08/11] gnu: pingus: Use scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (5 preceding siblings ...)
2017-11-22 9:35 ` [bug#29392] [PATCH 07/11] gnu: godot: " Arun Isaac
@ 2017-11-22 9:35 ` Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 09/11] gnu: klick: " Arun Isaac
` (2 subsequent siblings)
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:35 UTC (permalink / raw)
To: 29392
* gnu/packages/games.scm (pingus): Switch to scons-build-system.
---
gnu/packages/games.scm | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 73ffa74c7..dd0d83538 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -722,7 +722,7 @@ fight Morgoth, the Lord of Darkness.")
(patches (search-patches "pingus-sdl-libs-config.patch"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
- ("scons" ,scons)))
+ ("scons-python2" ,scons-python2)))
(inputs `(("sdl" ,sdl)
("sdl-image" ,sdl-image)
("sdl-mixer" ,sdl-mixer)
@@ -731,15 +731,11 @@ fight Morgoth, the Lord of Darkness.")
("libpng" ,libpng)
("boost" ,boost)))
(arguments
- '(#:tests? #f ; no check target
+ '(#:make-flags (list (string-append "PREFIX=" %output))
+ #:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
- (delete 'configure) ; no configure script
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (zero? (system* "make" "install"
- (string-append "PREFIX="
- (assoc-ref outputs "out")))))))))
+ (delete 'configure)))) ; no configure script
(home-page "http://pingus.seul.org/welcome.html")
(synopsis "Lemmings clone")
(description
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 09/11] gnu: klick: Use scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (6 preceding siblings ...)
2017-11-22 9:35 ` [bug#29392] [PATCH 08/11] gnu: pingus: " Arun Isaac
@ 2017-11-22 9:35 ` Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 10/11] gnu: mongodb: " Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 11/11] gnu: pingus: Use HTTPS for home page Arun Isaac
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:35 UTC (permalink / raw)
To: 29392
* gnu/packages/music.scm (klick): Switch to scons-build-system.
---
gnu/packages/music.scm | 21 ++++++---------------
1 file changed, 6 insertions(+), 15 deletions(-)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 40eab5ba6..9055f6613 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -12,6 +12,7 @@
;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
;;; Copyright © 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -38,6 +39,7 @@
#:use-module (guix build-system ant)
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module (guix build-system waf)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
@@ -508,19 +510,10 @@ audio and video).")
(sha256
(base32
"0hmcaywnwzjci3pp4xpvbijnnwvibz7gf9xzcdjbdca910y5728j"))))
- (build-system gnu-build-system)
+ (build-system scons-build-system)
(arguments
- `(#:tests? #f ;no "check" target
- #:phases
- ;; TODO: Add scons-build-system and use it here.
- (modify-phases %standard-phases
- (delete 'configure)
- (replace 'build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (mkdir-p out)
- (zero? (system* "scons" (string-append "PREFIX=" out))))))
- (replace 'install (lambda _ (zero? (system* "scons" "install")))))))
+ `(#:scons-flags (list (string-append "PREFIX=" %output))
+ #:tests? #f)) ;no "check" target
(inputs
`(("boost" ,boost)
("jack" ,jack-1)
@@ -529,9 +522,7 @@ audio and video).")
("liblo" ,liblo)
("rubberband" ,rubberband)))
(native-inputs
- `(("scons" ,scons)
- ("python" ,python-2)
- ("pkg-config" ,pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(home-page "http://das.nasophon.de/klick/")
(synopsis "Metronome for JACK")
(description
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 10/11] gnu: mongodb: Use scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (7 preceding siblings ...)
2017-11-22 9:35 ` [bug#29392] [PATCH 09/11] gnu: klick: " Arun Isaac
@ 2017-11-22 9:35 ` Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 11/11] gnu: pingus: Use HTTPS for home page Arun Isaac
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:35 UTC (permalink / raw)
To: 29392
* gnu/packages/databases.scm (mongodb): Switch to scons-build-system.
---
gnu/packages/databases.scm | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index db3361eb1..c4c4ef6da 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -98,6 +98,7 @@
#:use-module (guix build-system ruby)
#:use-module (guix build-system cmake)
#:use-module (guix build-system r)
+ #:use-module (guix build-system scons)
#:use-module (guix utils)
#:use-module (srfi srfi-26)
#:use-module (ice-9 match))
@@ -387,7 +388,7 @@ applications.")
(patches
(list
(search-patch "mongodb-support-unknown-linux-distributions.patch")))))
- (build-system gnu-build-system)
+ (build-system scons-build-system)
(inputs
`(("openssl" ,openssl)
("pcre" ,pcre)
@@ -396,9 +397,7 @@ applications.")
("snappy" ,snappy)
("boost" ,boost)))
(native-inputs
- `(("scons" ,scons)
- ("python" ,python-2)
- ("valgrind" ,valgrind)
+ `(("valgrind" ,valgrind)
("perl" ,perl)))
(arguments
`(#:phases
@@ -417,7 +416,6 @@ applications.")
,(format #f "--jobs=~a" (parallel-job-count))
"--ssl")))
(modify-phases %standard-phases
- (delete 'configure) ; There is no configure phase
(add-after 'unpack 'scons-propagate-environment
(lambda _
;; Modify the SConstruct file to arrange for
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 11/11] gnu: pingus: Use HTTPS for home page.
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (8 preceding siblings ...)
2017-11-22 9:35 ` [bug#29392] [PATCH 10/11] gnu: mongodb: " Arun Isaac
@ 2017-11-22 9:35 ` Arun Isaac
9 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-22 9:35 UTC (permalink / raw)
To: 29392
* gnu/packages/games.scm (pingus)[home-page]: Use HTTPS.
---
gnu/packages/games.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index dd0d83538..72cd60c32 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -736,7 +736,7 @@ fight Morgoth, the Lord of Darkness.")
#:phases
(modify-phases %standard-phases
(delete 'configure)))) ; no configure script
- (home-page "http://pingus.seul.org/welcome.html")
+ (home-page "https://pingus.seul.org/welcome.html")
(synopsis "Lemmings clone")
(description
"Pingus is a free Lemmings-like puzzle game in which the player takes
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] New scons build system
2017-11-22 8:41 [bug#29392] [PATCH 00/11] New scons build system Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
@ 2017-11-25 16:04 ` Leo Famulari
2017-11-25 16:05 ` Leo Famulari
` (2 subsequent siblings)
4 siblings, 0 replies; 36+ messages in thread
From: Leo Famulari @ 2017-11-25 16:04 UTC (permalink / raw)
To: Arun Isaac; +Cc: 29392
[-- Attachment #1: Type: text/plain, Size: 590 bytes --]
On Wed, Nov 22, 2017 at 02:11:15PM +0530, Arun Isaac wrote:
> I have a working scons build system!
Awesome!
> I have ported all scons built packages except aria-maestosa to the new build
> system. aria-maestosa fails to build even on the current master branch.
Okay.
> I am also unable to build mongodb on my machine. It's probably due to
> insufficient memory (I have 4 GB). Somebody should verify that the build works
> on their machine. On my machine, it fails with the error:
It failed similarly for me, but at a different point. I'm trying again
after reverting the scons update.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] New scons build system
2017-11-22 8:41 [bug#29392] [PATCH 00/11] New scons build system Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
2017-11-25 16:04 ` [bug#29392] [PATCH 00/11] New scons build system Leo Famulari
@ 2017-11-25 16:05 ` Leo Famulari
2017-11-26 11:17 ` Arun Isaac
2017-11-26 1:26 ` Leo Famulari
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
4 siblings, 1 reply; 36+ messages in thread
From: Leo Famulari @ 2017-11-25 16:05 UTC (permalink / raw)
To: Arun Isaac; +Cc: 29392
[-- Attachment #1: Type: text/plain, Size: 226 bytes --]
On Wed, Nov 22, 2017 at 02:11:15PM +0530, Arun Isaac wrote:
> In the copyright headers of doc/guix.texi, do I need to add @* to the end of
> the line?
Yes, please add it to the penultimate line. That is, the one above
yours.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] New scons build system
2017-11-22 8:41 [bug#29392] [PATCH 00/11] New scons build system Arun Isaac
` (2 preceding siblings ...)
2017-11-25 16:05 ` Leo Famulari
@ 2017-11-26 1:26 ` Leo Famulari
2017-11-26 16:17 ` Ludovic Courtès
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
4 siblings, 1 reply; 36+ messages in thread
From: Leo Famulari @ 2017-11-26 1:26 UTC (permalink / raw)
To: Arun Isaac; +Cc: 29392
[-- Attachment #1: Type: text/plain, Size: 452 bytes --]
On Wed, Nov 22, 2017 at 02:11:15PM +0530, Arun Isaac wrote:
> I am also unable to build mongodb on my machine. It's probably due to
> insufficient memory (I have 4 GB). Somebody should verify that the build works
> on their machine. On my machine, it fails with the error:
It turns out that mongodb's test suite uses 45 GB of storage at its
peak.
But, mongodb does build and pass its test suite with this
scons-build-system if you have enough space.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] New scons build system
2017-11-25 16:05 ` Leo Famulari
@ 2017-11-26 11:17 ` Arun Isaac
0 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-26 11:17 UTC (permalink / raw)
To: Leo Famulari; +Cc: 29392
Leo Famulari <leo@famulari.name> writes:
> On Wed, Nov 22, 2017 at 02:11:15PM +0530, Arun Isaac wrote:
>> In the copyright headers of doc/guix.texi, do I need to add @* to the end of
>> the line?
>
> Yes, please add it to the penultimate line. That is, the one above
> yours.
Is this the only change? Shall I make this change and push all commits?
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] New scons build system
2017-11-26 1:26 ` Leo Famulari
@ 2017-11-26 16:17 ` Ludovic Courtès
2017-11-26 18:51 ` Leo Famulari
0 siblings, 1 reply; 36+ messages in thread
From: Ludovic Courtès @ 2017-11-26 16:17 UTC (permalink / raw)
To: Leo Famulari; +Cc: 29392
Leo Famulari <leo@famulari.name> skribis:
> On Wed, Nov 22, 2017 at 02:11:15PM +0530, Arun Isaac wrote:
>> I am also unable to build mongodb on my machine. It's probably due to
>> insufficient memory (I have 4 GB). Somebody should verify that the build works
>> on their machine. On my machine, it fails with the error:
>
> It turns out that mongodb's test suite uses 45 GB of storage at its
> peak.
As mentioned on IRC, if it’s C++, it makes a huge difference to build
with “-g0” such that object files do not contain debugging info.
Perhaps worth checking if it helps here!
Ludo’.
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] New scons build system
2017-11-26 16:17 ` Ludovic Courtès
@ 2017-11-26 18:51 ` Leo Famulari
0 siblings, 0 replies; 36+ messages in thread
From: Leo Famulari @ 2017-11-26 18:51 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 29392
[-- Attachment #1: Type: text/plain, Size: 845 bytes --]
On Sun, Nov 26, 2017 at 05:17:59PM +0100, Ludovic Courtès wrote:
> Leo Famulari <leo@famulari.name> skribis:
>
> > On Wed, Nov 22, 2017 at 02:11:15PM +0530, Arun Isaac wrote:
> >> I am also unable to build mongodb on my machine. It's probably due to
> >> insufficient memory (I have 4 GB). Somebody should verify that the build works
> >> on their machine. On my machine, it fails with the error:
> >
> > It turns out that mongodb's test suite uses 45 GB of storage at its
> > peak.
>
> As mentioned on IRC, if it’s C++, it makes a huge difference to build
> with “-g0” such that object files do not contain debugging info.
> Perhaps worth checking if it helps here!
Right. Arun, I'm not sure how to apply this flag with Scons. Do we just
pass it to scons-flags? I can try it on my system with lots of storage
space.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 02/11] build-system: Add scons-build-system.
2017-11-22 9:34 ` [bug#29392] [PATCH 02/11] build-system: Add scons-build-system Arun Isaac
@ 2017-11-26 21:04 ` Leo Famulari
0 siblings, 0 replies; 36+ messages in thread
From: Leo Famulari @ 2017-11-26 21:04 UTC (permalink / raw)
To: Arun Isaac; +Cc: 29392
[-- Attachment #1: Type: text/plain, Size: 2797 bytes --]
On Wed, Nov 22, 2017 at 03:04:58PM +0530, Arun Isaac wrote:
> * guix/build-system/scons.scm: New file.
> * guix/build/scons-build-system.scm: New file.
> * Makefile.am (MODULES): Register them.
> * doc/guix.texi (Build Systems): Add scons-build-system.
> --- a/doc/guix.texi
> +++ b/doc/guix.texi
> @@ -42,6 +42,7 @@ Copyright @copyright{} 2017 Hartmut Goebel@*
> Copyright @copyright{} 2017 Maxim Cournoyer@*
> Copyright @copyright{} 2017 Tobias Geerinckx-Rice@*
> Copyright @copyright{} 2017 George Clemmer
> +Copyright @copyright{} 2017 Arun Isaac
Make sure to add a line break (@*) after George's name.
https://www.gnu.org/software/texinfo/manual/texinfo/html_node/Line-Breaks.html
> +@defvr {Scheme Variable} scons-build-system
> +This variable is exported by @code{(guix build-system scons)}. It
> +implements the build procedure used by the @code{scons} software
Here we are not referring to SCons itself, but not a code variable. So,
I think we can skip using @code here.
> +construction tool. This build system runs @code{scons} to build the
> +package, @code{scons test} to run tests, and then @code{scons install}
> +to install the package. Additional flags to be passed to @code{scons}
^
Same here ---------------------------------------------------|
> diff --git a/guix/build-system/scons.scm b/guix/build-system/scons.scm
[...]
> +;; Standard build procedure for applications using 'scons'. This is
I would say SCons instead of 'scons', and anywhere we refer to SCons as
a project rather than a particular program. This is mostly in the
manual, comments, docstrings, etc.
> + (build-inputs `(("scons-python2" ,(module-ref (resolve-interface '(gnu packages python)) 'scons-python2))
> + ,@native-inputs))
Is there a particular reason we use a Python 2 variant of SCons? If so,
can you explain it in a code comment?
> +(define* (scons-build store name inputs
> + #:key
> + (tests? #t)
> + (scons-flags ''())
> + (test-target "test")
> + (phases '(@ (guix build scons-build-system)
> + %standard-phases))
> + (outputs '("out"))
> + (search-paths '())
> + (system (%current-system))
> + (guile #f)
> + (imported-modules %scons-build-system-modules)
> + (modules '((guix build scons-build-system)
> + (guix build utils))))
> + "Build SOURCE using SCONS, and with INPUTS. This assumes that SOURCE
There isn't a variable named 'scons' here, so I think it would be
SCONS-PYTHON2.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] Add scons build system
2017-11-22 8:41 [bug#29392] [PATCH 00/11] New scons build system Arun Isaac
` (3 preceding siblings ...)
2017-11-26 1:26 ` Leo Famulari
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
` (11 more replies)
4 siblings, 12 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
Here is a new patchset with all suggested changes incorporated.
> Make sure to add a line break (@*) after George's name.
Done.
> I would say SCons instead of 'scons', and anywhere we refer to SCons as a
> project rather than a particular program. This is mostly in the manual,
> comments, docstrings, etc.
Done.
> Is there a particular reason we use a Python 2 variant of SCons? If so, can
> you explain it in a code comment?
I have now added a new #:scons parameter so that each package can specify the
version of SCons that is required. This is much like the #:python parameter in
the python build system. I have mentioned the #:scons parameter in the manual
as well.
> Right. Arun, I'm not sure how to apply this flag with Scons. Do we just
> pass it to scons-flags? I can try it on my system with lots of storage
> space.
For mongodb, I have passed "-g0" to scons using "CXXFLAGS=-g0". Now, the build
seems to progress farther, but I still run out of memory. Could you test the
package on your machine?
Arun Isaac (11):
gnu: scons: Update to 3.0.1.
build-system: Add scons-build-system.
gnu: linuxdcpp: Use scons-build-system.
gnu: gpick: Use scons-build-system.
gnu: serf: Use scons-build-system.
gnu: metabat: Use scons-build-system.
gnu: godot: Use scons-build-system.
gnu: pingus: Use scons-build-system.
gnu: klick: Use scons-build-system.
gnu: mongodb: Use scons-build-system.
gnu: pingus: Use HTTPS for home page.
Makefile.am | 3 +
doc/guix.texi | 16 ++++-
gnu/packages/bioinformatics.scm | 30 +++------
gnu/packages/databases.scm | 15 +++--
gnu/packages/direct-connect.scm | 25 ++-----
gnu/packages/game-development.scm | 45 ++++++-------
gnu/packages/games.scm | 14 ++--
gnu/packages/image.scm | 20 ++----
gnu/packages/music.scm | 21 ++----
gnu/packages/python.scm | 13 ++--
gnu/packages/web.scm | 37 +++--------
guix/build-system/scons.scm | 134 ++++++++++++++++++++++++++++++++++++++
guix/build/scons-build-system.scm | 65 ++++++++++++++++++
13 files changed, 297 insertions(+), 141 deletions(-)
create mode 100644 guix/build-system/scons.scm
create mode 100644 guix/build/scons-build-system.scm
--
2.15.0
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 02/11] build-system: Add scons-build-system Arun Isaac
` (10 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/python.scm (scons): Update to 3.0.1.
(scons-python2): New variable.
---
gnu/packages/python.scm | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 7b2268d13..772564dd9 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -1365,19 +1365,17 @@ existing ones.")
(define-public scons
(package
(name "scons")
- (version "2.5.1")
+ (version "3.0.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/scons/scons/" version
"/scons-" version ".tar.gz"))
(sha256
(base32
- "1wji1z9jdkhnmm99apx6fhld9cs52rr56aigniyrcsmlwy52298b"))))
+ "0wzid419mlwqw9llrg8gsx4nkzhqy16m4m40r0xnh6cwscw5wir4"))))
(build-system python-build-system)
(arguments
- ;; With Python 3.x, fails to build with a syntax error.
- `(#:python ,python-2
- #:use-setuptools? #f ; still relies on distutils
+ `(#:use-setuptools? #f ; still relies on distutils
#:tests? #f)) ; no 'python setup.py test' command
(home-page "http://scons.org/")
(synopsis "Software construction tool written in Python")
@@ -1389,6 +1387,11 @@ In short, SCons is an easier, more reliable and faster way to build
software.")
(license license:x11)))
+(define-public scons-python2
+ (package
+ (inherit (package-with-python2 scons))
+ (name "scons-python2")))
+
(define-public python-extras
(package
(name "python-extras")
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 02/11] build-system: Add scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 03/11] gnu: linuxdcpp: Use scons-build-system Arun Isaac
` (9 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* guix/build-system/scons.scm: New file.
* guix/build/scons-build-system.scm: New file.
* Makefile.am (MODULES): Register them.
* doc/guix.texi (Build Systems): Add scons-build-system.
---
Makefile.am | 3 +
doc/guix.texi | 16 ++++-
guix/build-system/scons.scm | 134 ++++++++++++++++++++++++++++++++++++++
guix/build/scons-build-system.scm | 65 ++++++++++++++++++
4 files changed, 217 insertions(+), 1 deletion(-)
create mode 100644 guix/build-system/scons.scm
create mode 100644 guix/build/scons-build-system.scm
diff --git a/Makefile.am b/Makefile.am
index eab49181a..24a803a21 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -8,6 +8,7 @@
# Copyright © 2017 Leo Famulari <leo@famulari.name>
# Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+# Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
#
# This file is part of GNU Guix.
#
@@ -94,6 +95,7 @@ MODULES = \
guix/build-system/waf.scm \
guix/build-system/r.scm \
guix/build-system/ruby.scm \
+ guix/build-system/scons.scm \
guix/build-system/texlive.scm \
guix/build-system/trivial.scm \
guix/ftp-client.scm \
@@ -127,6 +129,7 @@ MODULES = \
guix/build/ocaml-build-system.scm \
guix/build/r-build-system.scm \
guix/build/ruby-build-system.scm \
+ guix/build/scons-build-system.scm \
guix/build/texlive-build-system.scm \
guix/build/waf-build-system.scm \
guix/build/haskell-build-system.scm \
diff --git a/doc/guix.texi b/doc/guix.texi
index 05042cb20..ad517a8a5 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -41,7 +41,8 @@ Copyright @copyright{} 2017 Marius Bakke@*
Copyright @copyright{} 2017 Hartmut Goebel@*
Copyright @copyright{} 2017 Maxim Cournoyer@*
Copyright @copyright{} 2017 Tobias Geerinckx-Rice@*
-Copyright @copyright{} 2017 George Clemmer
+Copyright @copyright{} 2017 George Clemmer@*
+Copyright @copyright{} 2017 Arun Isaac
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -3865,6 +3866,19 @@ Python package is used to run the script can be specified with the
@code{#:python} parameter.
@end defvr
+@defvr {Scheme Variable} scons-build-system
+This variable is exported by @code{(guix build-system scons)}. It
+implements the build procedure used by the SCons software construction
+tool. This build system runs @code{scons} to build the package,
+@code{scons test} to run tests, and then @code{scons install} to install
+the package.
+
+Additional flags to be passed to @code{scons} can be specified with the
+@code{#:scons-flags} parameter. The version of Python used to run SCons
+can be specified by selecting the appropriate SCons package with the
+@code{#:scons} parameter.
+@end defvr
+
@defvr {Scheme Variable} haskell-build-system
This variable is exported by @code{(guix build-system haskell)}. It
implements the Cabal build procedure used by Haskell packages, which
diff --git a/guix/build-system/scons.scm b/guix/build-system/scons.scm
new file mode 100644
index 000000000..da09cc7de
--- /dev/null
+++ b/guix/build-system/scons.scm
@@ -0,0 +1,134 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
+;;;
+;;; 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 <http://www.gnu.org/licenses/>.
+
+(define-module (guix build-system scons)
+ #:use-module (guix utils)
+ #:use-module (guix packages)
+ #:use-module (guix derivations)
+ #:use-module (guix search-paths)
+ #:use-module (guix build-system)
+ #:use-module (guix build-system gnu)
+ #:use-module (ice-9 match)
+ #:export (%scons-build-system-modules
+ scons-build
+ scons-build-system))
+
+;; Commentary:
+;;
+;; Standard build procedure for applications using SCons. This is implemented
+;; as an extension of 'gnu-build-system'.
+;;
+;; Code:
+
+(define %scons-build-system-modules
+ ;; Build-side modules imported by default.
+ `((guix build scons-build-system)
+ ,@%gnu-build-system-modules))
+
+(define (default-scons)
+ "Return the default SCons package."
+ ;; Lazily resolve the binding to avoid a circular dependency.
+ (let ((python (resolve-interface '(gnu packages python))))
+ (module-ref python 'scons)))
+
+(define* (lower name
+ #:key source inputs native-inputs outputs system target
+ (scons (default-scons))
+ #:allow-other-keys
+ #:rest arguments)
+ "Return a bag for NAME."
+ (define private-keywords
+ '(#:source #:target #:scons #:inputs #:native-inputs))
+
+ (and (not target) ;XXX: no cross-compilation
+ (bag
+ (name name)
+ (system system)
+ (host-inputs `(,@(if source
+ `(("source" ,source))
+ '())
+ ,@inputs
+
+ ;; Keep the standard inputs of 'gnu-build-system'.
+ ,@(standard-packages)))
+ (build-inputs `(("scons" ,scons)
+ ,@native-inputs))
+ (outputs outputs)
+ (build scons-build)
+ (arguments (strip-keyword-arguments private-keywords arguments)))))
+
+(define* (scons-build store name inputs
+ #:key
+ (tests? #t)
+ (scons-flags ''())
+ (test-target "test")
+ (phases '(@ (guix build scons-build-system)
+ %standard-phases))
+ (outputs '("out"))
+ (search-paths '())
+ (system (%current-system))
+ (guile #f)
+ (imported-modules %scons-build-system-modules)
+ (modules '((guix build scons-build-system)
+ (guix build utils))))
+ "Build SOURCE using SCons, and with INPUTS. This assumes that SOURCE
+provides a 'SConstruct' file as its build system."
+ (define builder
+ `(begin
+ (use-modules ,@modules)
+ (scons-build #:name ,name
+ #:source ,(match (assoc-ref inputs "source")
+ (((? derivation? source))
+ (derivation->output-path source))
+ ((source)
+ source)
+ (source
+ source))
+ #:scons-flags ,scons-flags
+ #:system ,system
+ #:test-target ,test-target
+ #:tests? ,tests?
+ #:phases ,phases
+ #:outputs %outputs
+ #:search-paths ',(map search-path-specification->sexp
+ search-paths)
+ #:inputs %build-inputs)))
+
+ (define guile-for-build
+ (match guile
+ ((? package?)
+ (package-derivation store guile system #:graft? #f))
+ (#f ; the default
+ (let* ((distro (resolve-interface '(gnu packages commencement)))
+ (guile (module-ref distro 'guile-final)))
+ (package-derivation store guile system #:graft? #f)))))
+
+ (build-expression->derivation store name builder
+ #:inputs inputs
+ #:system system
+ #:modules imported-modules
+ #:outputs outputs
+ #:guile-for-build guile-for-build))
+
+(define scons-build-system
+ (build-system
+ (name 'scons)
+ (description "The standard SCons build system")
+ (lower lower)))
+
+;;; scons.scm ends here
diff --git a/guix/build/scons-build-system.scm b/guix/build/scons-build-system.scm
new file mode 100644
index 000000000..a8760968d
--- /dev/null
+++ b/guix/build/scons-build-system.scm
@@ -0,0 +1,65 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
+;;;
+;;; 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 <http://www.gnu.org/licenses/>.
+
+(define-module (guix build scons-build-system)
+ #:use-module ((guix build gnu-build-system) #:prefix gnu:)
+ #:use-module (guix build utils)
+ #:export (%standard-phases
+ scons-build))
+
+;; Commentary:
+;;
+;; Builder-side code of the SCons build system.
+;;
+;; Code:
+
+(define* (build #:key outputs (scons-flags '()) (parallel-build? #t) #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p out)
+ (zero? (apply system* "scons"
+ (append (if parallel-build?
+ (list "-j" (number->string
+ (parallel-job-count)))
+ (list))
+ scons-flags)))))
+
+(define* (check #:key tests? test-target (scons-flags '()) #:allow-other-keys)
+ "Run the test suite of a given SCons application."
+ (cond (tests?
+ (zero? (apply system* "scons" test-target scons-flags)))
+ (else
+ (format #t "test suite not run~%")
+ #t)))
+
+(define* (install #:key outputs (scons-flags '()) #:allow-other-keys)
+ "Install a given SCons application."
+ (zero? (apply system* "scons" "install" scons-flags)))
+
+(define %standard-phases
+ (modify-phases gnu:%standard-phases
+ (delete 'configure)
+ (replace 'build build)
+ (replace 'check check)
+ (replace 'install install)))
+
+(define* (scons-build #:key inputs (phases %standard-phases)
+ #:allow-other-keys #:rest args)
+ "Build a given SCons application, applying all of PHASES in order."
+ (apply gnu:gnu-build #:inputs inputs #:phases phases args))
+
+;;; scons-build-system.scm ends here
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 03/11] gnu: linuxdcpp: Use scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 02/11] build-system: Add scons-build-system Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 04/11] gnu: gpick: " Arun Isaac
` (8 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/direct-connect.scm (linuxdcpp): Switch to scons-build-system.
---
gnu/packages/direct-connect.scm | 25 ++++++-------------------
1 file changed, 6 insertions(+), 19 deletions(-)
diff --git a/gnu/packages/direct-connect.scm b/gnu/packages/direct-connect.scm
index 6796bf3bc..ac0a49052 100644
--- a/gnu/packages/direct-connect.scm
+++ b/gnu/packages/direct-connect.scm
@@ -17,7 +17,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages direct-connect)
- #:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
@@ -44,23 +44,11 @@
(sha256
(base32
"12i92hirmwryl1qy0n3jfrpziwzb82f61xca9jcjwyilx502f0b6"))))
- (build-system python-build-system)
+ (build-system scons-build-system)
(arguments
- `(#:python ,python-2
- #:tests? #f ; no tests
- #:phases
- ;; TODO: Add scons-build-system and use it here.
- (modify-phases %standard-phases
- (delete 'configure)
- (replace 'build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (mkdir-p out)
- (zero? (system* "scons" (string-append "PREFIX=" out)
- "-j" (number->string (parallel-job-count)))))))
- (replace 'install
- (lambda _
- (zero? (system* "scons" "install")))))))
+ `(#:scons ,scons-python2
+ #:scons-flags (list (string-append "PREFIX=" %output))
+ #:tests? #f)) ; no tests
(inputs
`(("boost" ,boost)
("bzip2" ,bzip2)
@@ -71,8 +59,7 @@
(native-inputs
`(("bazaar" ,bazaar)
("gettext-minimal" ,gettext-minimal)
- ("pkg-config" ,pkg-config)
- ("scons" ,scons)))
+ ("pkg-config" ,pkg-config)))
(home-page "https://launchpad.net/linuxdcpp/")
(synopsis "Direct Connect client")
(description "LinuxDC++ is a Direct Connect (DC) client. Direct Connect
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 04/11] gnu: gpick: Use scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (2 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 03/11] gnu: linuxdcpp: Use scons-build-system Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 05/11] gnu: serf: " Arun Isaac
` (7 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/image.scm (gpick): Switch to scons-build-system.
---
gnu/packages/image.scm | 20 +++++++-------------
1 file changed, 7 insertions(+), 13 deletions(-)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 0e1f02556..dfba83a21 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -12,7 +12,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 ng0 <ng0@infotropique.org>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
@@ -67,6 +67,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
#:use-module (guix build-system r)
+ #:use-module (guix build-system scons)
#:use-module (srfi srfi-1))
(define-public libpng
@@ -1204,33 +1205,26 @@ medical image data, e.g. magnetic resonance image (MRI) and functional MRI
(sha256
(base32
"0mxvxk15xhk2i5vfavjhnkk4j3bnii0gpf8di14rlbpq070hd5rs"))))
- (build-system python-build-system)
+ (build-system scons-build-system)
(native-inputs
`(("boost" ,boost)
("gettext" ,gnu-gettext)
- ("pkg-config" ,pkg-config)
- ("scons" ,scons)))
+ ("pkg-config" ,pkg-config)))
(inputs
`(("expat" ,expat)
("gtk2" ,gtk+-2)
("lua" ,lua-5.2)))
(arguments
`(#:tests? #f
+ #:scons ,scons-python2
+ #:scons-flags (list (string-append "DESTDIR=" %output))
#:phases
(modify-phases %standard-phases
(add-before 'build 'fix-lua-reference
(lambda _
(substitute* "SConscript"
(("lua5.2") "lua-5.2"))
- #t))
- (replace 'build
- (lambda _
- (zero? (system* "scons"))))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((dest (assoc-ref outputs "out")))
- (zero? (system* "scons" "install"
- (string-append "DESTDIR=" dest)))))))))
+ #t)))))
(home-page "http://www.gpick.org/")
(synopsis "Color picker")
(description "Gpick is an advanced color picker and palette editing tool.")
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 05/11] gnu: serf: Use scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (3 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 04/11] gnu: gpick: " Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 06/11] gnu: metabat: " Arun Isaac
` (6 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/web.scm (serf): Switch to scons-build-system.
---
gnu/packages/web.scm | 37 ++++++++++---------------------------
1 file changed, 10 insertions(+), 27 deletions(-)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index b84bbdddd..497bb90ee 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -56,6 +56,7 @@
#:use-module (guix build-system trivial)
#:use-module (guix build-system python)
#:use-module (guix build-system ant)
+ #:use-module (guix build-system scons)
#:use-module (gnu packages)
#:use-module (gnu packages apr)
#:use-module (gnu packages check)
@@ -1068,10 +1069,7 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
version ".tar.bz2"))
(sha256
(base32 "1k47gbgpp52049andr28y28nbwh9m36bbb0g8p0aka3pqlhjv72l"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("scons" ,scons)
- ("python" ,python-2)))
+ (build-system scons-build-system)
(propagated-inputs
`(("apr" ,apr)
("apr-util" ,apr-util)
@@ -1081,13 +1079,15 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
;;("gss" ,gss)
("zlib" ,zlib)))
(arguments
- `(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (srfi srfi-1))
+ `(#:scons ,scons-python2
+ #: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"))
+ (string-append "ZLIB=" (assoc-ref %build-inputs "zlib"))
+ (string-append "PREFIX=" %output))
#:phases
- ;; TODO: Add scons-build-system and use it here.
(modify-phases %standard-phases
- (delete 'configure)
(add-after 'unpack 'scons-propagate-environment
(lambda _
;; By design, SCons does not, by default, propagate
@@ -1098,21 +1098,6 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
(substitute* "SConstruct"
(("^env = Environment\\(")
"env = Environment(ENV=os.environ, "))))
- (replace 'build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (apr (assoc-ref inputs "apr"))
- (apr-util (assoc-ref inputs "apr-util"))
- (openssl (assoc-ref inputs "openssl"))
- ;;(gss (assoc-ref inputs "gss"))
- (zlib (assoc-ref inputs "zlib")))
- (zero? (system* "scons"
- (string-append "APR=" apr)
- (string-append "APU=" apr-util)
- (string-append "OPENSSL=" openssl)
- ;;(string-append "GSSAPI=" gss)
- (string-append "ZLIB=" zlib)
- (string-append "PREFIX=" out))))))
(add-before 'check 'disable-broken-tests
(lambda _
;; These tests rely on SSL certificates that expired 2017-04-18.
@@ -1139,9 +1124,7 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
(substitute* "test/test_context.c"
(((string-append "SUITE_ADD_TEST\\(suite, " test "\\);")) "")))
broken-tests)
- #t)))
- (replace 'check (lambda _ (zero? (system* "scons" "check"))))
- (replace 'install (lambda _ (zero? (system* "scons" "install")))))))
+ #t))))))
(home-page "https://serf.apache.org/")
(synopsis "High-performance asynchronous HTTP client library")
(description
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 06/11] gnu: metabat: Use scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (4 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 05/11] gnu: serf: " Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 07/11] gnu: godot: " Arun Isaac
` (5 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/bioinformatics.scm (metabat): Switch to scons-build-system.
---
gnu/packages/bioinformatics.scm | 30 ++++++++++--------------------
1 file changed, 10 insertions(+), 20 deletions(-)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 833376ac2..ffe0e13ae 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016 Raoul Bonnal <ilpuccio.febo@gmail.com>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -39,6 +40,7 @@
#:use-module (guix build-system python)
#:use-module (guix build-system r)
#:use-module (guix build-system ruby)
+ #:use-module (guix build-system scons)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
@@ -3643,9 +3645,14 @@ form of assemblies or reads.")
(base32
"1hmvdalz3zj5sqqklg0l4npjdv37cv2hsdi1al9iby2ndxjs1b73"))
(patches (search-patches "metabat-fix-compilation.patch"))))
- (build-system gnu-build-system)
+ (build-system scons-build-system)
(arguments
- `(#:phases
+ `(#:scons ,scons-python2
+ #:scons-flags
+ (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ (string-append "BOOST_ROOT=" (assoc-ref %build-inputs "boost")))
+ #:tests? #f ;; Tests are run during the build phase.
+ #:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-includes
(lambda _
@@ -3675,30 +3682,13 @@ form of assemblies or reads.")
"/lib'"))
;; Do not distribute README.
(("^env\\.Install\\(idir_prefix, 'README\\.md'\\)") ""))
- #t))
- (delete 'configure)
- (replace 'build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (mkdir (assoc-ref outputs "out"))
- (zero? (system* "scons"
- (string-append
- "PREFIX="
- (assoc-ref outputs "out"))
- (string-append
- "BOOST_ROOT="
- (assoc-ref inputs "boost"))
- "install"))))
- ;; Check and install are carried out during build phase.
- (delete 'check)
- (delete 'install))))
+ #t)))))
(inputs
`(("zlib" ,zlib)
("perl" ,perl)
("samtools" ,samtools)
("htslib" ,htslib)
("boost" ,boost)))
- (native-inputs
- `(("scons" ,scons)))
(home-page "https://bitbucket.org/berkeleylab/metabat")
(synopsis
"Reconstruction of single genomes from complex microbial communities")
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 07/11] gnu: godot: Use scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (5 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 06/11] gnu: metabat: " Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 08/11] gnu: pingus: " Arun Isaac
` (4 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/game-development.scm (godot): Switch to scons-build-system.
---
gnu/packages/game-development.scm | 45 +++++++++++++++++----------------------
1 file changed, 20 insertions(+), 25 deletions(-)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index be241cbd3..3c544f554 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -37,6 +37,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
@@ -1063,12 +1064,26 @@ games.")
(file-name (string-append name "-" version))
(sha256
(base32 "1mz89nafc1m7srbqvy7iagxrxmqvf5hbqi7i0lwaapkx6q0kpkq7"))))
- (build-system gnu-build-system)
+ (build-system scons-build-system)
(arguments
- `(#:tests? #f ; There are no tests
+ `(#:scons ,scons-python2
+ #:scons-flags (list "platform=x11"
+ ;; Avoid using many of the bundled libs.
+ ;; Note: These options can be found in the SConstruct file.
+ "builtin_freetype=no"
+ "builtin_glew=no"
+ "builtin_libmpdec=no"
+ "builtin_libogg=no"
+ "builtin_libpng=no"
+ "builtin_libtheora=no"
+ "builtin_libvorbis=no"
+ "builtin_libwebp=no"
+ "builtin_openssl=no"
+ "builtin_opus=no"
+ "builtin_zlib=no")
+ #:tests? #f ; There are no tests
#:phases
(modify-phases %standard-phases
- (delete 'configure)
(add-after 'unpack 'scons-use-env
(lambda _
;; Scons does not use the environment variables by default,
@@ -1079,24 +1094,6 @@ games.")
"env_base = Environment(tools=custom_tools)\n"
"env_base = Environment(ENV=os.environ)")))
#t))
- (replace 'build
- (lambda _
- (zero? (system*
- "scons"
- "platform=x11"
- ;; Avoid using many of the bundled libs.
- ;; Note: These options can be found in the SConstruct file.
- "builtin_freetype=no"
- "builtin_glew=no"
- "builtin_libmpdec=no"
- "builtin_libogg=no"
- "builtin_libpng=no"
- "builtin_libtheora=no"
- "builtin_libvorbis=no"
- "builtin_libwebp=no"
- "builtin_openssl=no"
- "builtin_opus=no"
- "builtin_zlib=no"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -1128,8 +1125,7 @@ games.")
Type=Application~%"
out)))
#t))))))
- (native-inputs `(("pkg-config" ,pkg-config)
- ("scons" ,scons)))
+ (native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("alsa-lib" ,alsa-lib)
("freetype" ,freetype)
("glew" ,glew)
@@ -1144,8 +1140,7 @@ games.")
("mesa" ,mesa)
("openssl" ,openssl)
("opusfile" ,opusfile)
- ("pulseaudio" ,pulseaudio)
- ("python2" ,python-2)))
+ ("pulseaudio" ,pulseaudio)))
(home-page "https://godotengine.org/")
(synopsis "Advanced 2D and 3D game engine")
(description
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 08/11] gnu: pingus: Use scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (6 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 07/11] gnu: godot: " Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 09/11] gnu: klick: " Arun Isaac
` (3 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/games.scm (pingus): Switch to scons-build-system.
---
gnu/packages/games.scm | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 565c0e822..a699fadc2 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -808,7 +808,7 @@ fight Morgoth, the Lord of Darkness.")
(patches (search-patches "pingus-sdl-libs-config.patch"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
- ("scons" ,scons)))
+ ("scons-python2" ,scons-python2)))
(inputs `(("sdl" ,sdl)
("sdl-image" ,sdl-image)
("sdl-mixer" ,sdl-mixer)
@@ -817,15 +817,11 @@ fight Morgoth, the Lord of Darkness.")
("libpng" ,libpng)
("boost" ,boost)))
(arguments
- '(#:tests? #f ; no check target
+ '(#:make-flags (list (string-append "PREFIX=" %output))
+ #:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
- (delete 'configure) ; no configure script
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (zero? (system* "make" "install"
- (string-append "PREFIX="
- (assoc-ref outputs "out")))))))))
+ (delete 'configure)))) ; no configure script
(home-page "http://pingus.seul.org/welcome.html")
(synopsis "Lemmings clone")
(description
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 09/11] gnu: klick: Use scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (7 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 08/11] gnu: pingus: " Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 10/11] gnu: mongodb: " Arun Isaac
` (2 subsequent siblings)
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/music.scm (klick): Switch to scons-build-system.
---
gnu/packages/music.scm | 21 ++++++---------------
1 file changed, 6 insertions(+), 15 deletions(-)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 40eab5ba6..9055f6613 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -12,6 +12,7 @@
;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
;;; Copyright © 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -38,6 +39,7 @@
#:use-module (guix build-system ant)
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module (guix build-system waf)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
@@ -508,19 +510,10 @@ audio and video).")
(sha256
(base32
"0hmcaywnwzjci3pp4xpvbijnnwvibz7gf9xzcdjbdca910y5728j"))))
- (build-system gnu-build-system)
+ (build-system scons-build-system)
(arguments
- `(#:tests? #f ;no "check" target
- #:phases
- ;; TODO: Add scons-build-system and use it here.
- (modify-phases %standard-phases
- (delete 'configure)
- (replace 'build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (mkdir-p out)
- (zero? (system* "scons" (string-append "PREFIX=" out))))))
- (replace 'install (lambda _ (zero? (system* "scons" "install")))))))
+ `(#:scons-flags (list (string-append "PREFIX=" %output))
+ #:tests? #f)) ;no "check" target
(inputs
`(("boost" ,boost)
("jack" ,jack-1)
@@ -529,9 +522,7 @@ audio and video).")
("liblo" ,liblo)
("rubberband" ,rubberband)))
(native-inputs
- `(("scons" ,scons)
- ("python" ,python-2)
- ("pkg-config" ,pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(home-page "http://das.nasophon.de/klick/")
(synopsis "Metronome for JACK")
(description
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 10/11] gnu: mongodb: Use scons-build-system.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (8 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 09/11] gnu: klick: " Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 11/11] gnu: pingus: Use HTTPS for home page Arun Isaac
2017-11-28 21:38 ` [bug#29392] [PATCH 00/11] Add scons build system Leo Famulari
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/databases.scm (mongodb): Switch to scons-build-system.
[arguments]: Add "CXXFLAGS=-g0" to common-options.
---
gnu/packages/databases.scm | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index ab4d17479..d0d9be8c0 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -98,6 +98,7 @@
#:use-module (guix build-system ruby)
#:use-module (guix build-system cmake)
#:use-module (guix build-system r)
+ #:use-module (guix build-system scons)
#:use-module ((guix build utils) #:hide (which))
#:use-module (guix utils)
#:use-module (srfi srfi-1)
@@ -398,7 +399,7 @@ applications.")
(patches
(list
(search-patch "mongodb-support-unknown-linux-distributions.patch")))))
- (build-system gnu-build-system)
+ (build-system scons-build-system)
(inputs
`(("openssl" ,openssl)
("pcre" ,pcre)
@@ -410,12 +411,11 @@ applications.")
("zlib" ,zlib)
("snappy" ,snappy)))
(native-inputs
- `(("scons" ,scons)
- ("python" ,python-2)
- ("valgrind" ,valgrind)
+ `(("valgrind" ,valgrind)
("perl" ,perl)))
(arguments
- `(#:phases
+ `(#:scons ,scons-python2
+ #:phases
(let ((common-options
`(;; "--use-system-tcmalloc" TODO: Missing gperftools
"--use-system-pcre"
@@ -435,9 +435,10 @@ applications.")
"--use-system-yaml"
"--disable-warnings-as-errors"
,(format #f "--jobs=~a" (parallel-job-count))
- "--ssl")))
+ "--ssl"
+ ;; Remove debugging information to reduce memory consumption
+ "CXXFLAGS=-g0")))
(modify-phases %standard-phases
- (delete 'configure) ; There is no configure phase
(add-after 'unpack 'scons-propagate-environment
(lambda _
;; Modify the SConstruct file to arrange for
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 11/11] gnu: pingus: Use HTTPS for home page.
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (9 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 10/11] gnu: mongodb: " Arun Isaac
@ 2017-11-28 17:06 ` Arun Isaac
2017-11-28 21:38 ` [bug#29392] [PATCH 00/11] Add scons build system Leo Famulari
11 siblings, 0 replies; 36+ messages in thread
From: Arun Isaac @ 2017-11-28 17:06 UTC (permalink / raw)
To: 29392
* gnu/packages/games.scm (pingus)[home-page]: Use HTTPS.
---
gnu/packages/games.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index a699fadc2..b966ec498 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -822,7 +822,7 @@ fight Morgoth, the Lord of Darkness.")
#:phases
(modify-phases %standard-phases
(delete 'configure)))) ; no configure script
- (home-page "http://pingus.seul.org/welcome.html")
+ (home-page "https://pingus.seul.org/welcome.html")
(synopsis "Lemmings clone")
(description
"Pingus is a free Lemmings-like puzzle game in which the player takes
--
2.15.0
^ permalink raw reply related [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] Add scons build system
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
` (10 preceding siblings ...)
2017-11-28 17:06 ` [bug#29392] [PATCH 11/11] gnu: pingus: Use HTTPS for home page Arun Isaac
@ 2017-11-28 21:38 ` Leo Famulari
2017-11-29 8:19 ` Arun Isaac
11 siblings, 1 reply; 36+ messages in thread
From: Leo Famulari @ 2017-11-28 21:38 UTC (permalink / raw)
To: Arun Isaac; +Cc: 29392
[-- Attachment #1: Type: text/plain, Size: 616 bytes --]
On Tue, Nov 28, 2017 at 10:36:40PM +0530, Arun Isaac wrote:
> Here is a new patchset with all suggested changes incorporated.
Thanks!
> For mongodb, I have passed "-g0" to scons using "CXXFLAGS=-g0". Now, the build
> seems to progress farther, but I still run out of memory. Could you test the
> package on your machine?
I let the build directory grow to 22 GiB before cancelling the build
(it's using lots of storage, but not much RAM). It worked previously,
both before I tested your scons-build-system and using the previous
revision of these patches. So, I think it doesn't matter whether or not
we pass -g0.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] Add scons build system
2017-11-28 21:38 ` [bug#29392] [PATCH 00/11] Add scons build system Leo Famulari
@ 2017-11-29 8:19 ` Arun Isaac
2017-11-29 21:29 ` Leo Famulari
0 siblings, 1 reply; 36+ messages in thread
From: Arun Isaac @ 2017-11-29 8:19 UTC (permalink / raw)
To: Leo Famulari; +Cc: 29392
Leo Famulari <leo@famulari.name> writes:
>> For mongodb, I have passed "-g0" to scons using "CXXFLAGS=-g0". Now, the build
>> seems to progress farther, but I still run out of memory. Could you test the
>> package on your machine?
>
> I let the build directory grow to 22 GiB before cancelling the build
> (it's using lots of storage, but not much RAM). It worked previously,
> both before I tested your scons-build-system and using the previous
> revision of these patches. So, I think it doesn't matter whether or not
> we pass -g0.
So, do I push with the "-g0" flag or without?
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] Add scons build system
2017-11-29 8:19 ` Arun Isaac
@ 2017-11-29 21:29 ` Leo Famulari
2017-11-30 13:40 ` bug#29392: " Arun Isaac
0 siblings, 1 reply; 36+ messages in thread
From: Leo Famulari @ 2017-11-29 21:29 UTC (permalink / raw)
To: Arun Isaac; +Cc: 29392
[-- Attachment #1: Type: text/plain, Size: 801 bytes --]
On Wed, Nov 29, 2017 at 01:49:56PM +0530, Arun Isaac wrote:
> Leo Famulari <leo@famulari.name> writes:
>
> >> For mongodb, I have passed "-g0" to scons using "CXXFLAGS=-g0". Now, the build
> >> seems to progress farther, but I still run out of memory. Could you test the
> >> package on your machine?
> >
> > I let the build directory grow to 22 GiB before cancelling the build
> > (it's using lots of storage, but not much RAM). It worked previously,
> > both before I tested your scons-build-system and using the previous
> > revision of these patches. So, I think it doesn't matter whether or not
> > we pass -g0.
>
> So, do I push with the "-g0" flag or without?
Since it didn't seem to have an effect on the storage requirements
during building, I think you can push without.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 36+ messages in thread
* bug#29392: [PATCH 00/11] Add scons build system
2017-11-29 21:29 ` Leo Famulari
@ 2017-11-30 13:40 ` Arun Isaac
2017-11-30 17:05 ` [bug#29392] " Ludovic Courtès
0 siblings, 1 reply; 36+ messages in thread
From: Arun Isaac @ 2017-11-30 13:40 UTC (permalink / raw)
To: Leo Famulari; +Cc: 29392-done
Leo Famulari <leo@famulari.name> writes:
>> So, do I push with the "-g0" flag or without?
>
> Since it didn't seem to have an effect on the storage requirements
> during building, I think you can push without.
Done.
I have pushed all the patches except the one changing the homepage of
pingus to HTTPS. Their site appears to be down, and I didn't want to
push the change without verifying one last time.
^ permalink raw reply [flat|nested] 36+ messages in thread
* [bug#29392] [PATCH 00/11] Add scons build system
2017-11-30 13:40 ` bug#29392: " Arun Isaac
@ 2017-11-30 17:05 ` Ludovic Courtès
0 siblings, 0 replies; 36+ messages in thread
From: Ludovic Courtès @ 2017-11-30 17:05 UTC (permalink / raw)
To: 29392
Arun Isaac <arunisaac@systemreboot.net> skribis:
> Leo Famulari <leo@famulari.name> writes:
>
>>> So, do I push with the "-g0" flag or without?
>>
>> Since it didn't seem to have an effect on the storage requirements
>> during building, I think you can push without.
>
> Done.
Excellent, thank you Arun!
Ludo’.
^ permalink raw reply [flat|nested] 36+ messages in thread
end of thread, other threads:[~2017-11-30 17:06 UTC | newest]
Thread overview: 36+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-22 8:41 [bug#29392] [PATCH 00/11] New scons build system Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
2017-11-22 9:34 ` [bug#29392] [PATCH 02/11] build-system: Add scons-build-system Arun Isaac
2017-11-26 21:04 ` Leo Famulari
2017-11-22 9:34 ` [bug#29392] [PATCH 03/11] gnu: linuxdcpp: Use scons-build-system Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 04/11] gnu: gpick: " Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 05/11] gnu: serf: " Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 06/11] gnu: metabat: " Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 07/11] gnu: godot: " Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 08/11] gnu: pingus: " Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 09/11] gnu: klick: " Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 10/11] gnu: mongodb: " Arun Isaac
2017-11-22 9:35 ` [bug#29392] [PATCH 11/11] gnu: pingus: Use HTTPS for home page Arun Isaac
2017-11-25 16:04 ` [bug#29392] [PATCH 00/11] New scons build system Leo Famulari
2017-11-25 16:05 ` Leo Famulari
2017-11-26 11:17 ` Arun Isaac
2017-11-26 1:26 ` Leo Famulari
2017-11-26 16:17 ` Ludovic Courtès
2017-11-26 18:51 ` Leo Famulari
2017-11-28 17:06 ` [bug#29392] [PATCH 00/11] Add " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 01/11] gnu: scons: Update to 3.0.1 Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 02/11] build-system: Add scons-build-system Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 03/11] gnu: linuxdcpp: Use scons-build-system Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 04/11] gnu: gpick: " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 05/11] gnu: serf: " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 06/11] gnu: metabat: " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 07/11] gnu: godot: " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 08/11] gnu: pingus: " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 09/11] gnu: klick: " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 10/11] gnu: mongodb: " Arun Isaac
2017-11-28 17:06 ` [bug#29392] [PATCH 11/11] gnu: pingus: Use HTTPS for home page Arun Isaac
2017-11-28 21:38 ` [bug#29392] [PATCH 00/11] Add scons build system Leo Famulari
2017-11-29 8:19 ` Arun Isaac
2017-11-29 21:29 ` Leo Famulari
2017-11-30 13:40 ` bug#29392: " Arun Isaac
2017-11-30 17:05 ` [bug#29392] " Ludovic Courtès
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.