2013-01-05 23:47:50 +00:00
|
|
|
;;; GNU Guix --- Functional package management for GNU
|
2018-01-21 00:42:59 +00:00
|
|
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
2017-09-27 20:04:44 +00:00
|
|
|
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
|
2018-08-27 20:47:14 +00:00
|
|
|
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
2012-11-18 17:35:26 +00:00
|
|
|
;;;
|
2013-01-05 23:47:50 +00:00
|
|
|
;;; This file is part of GNU Guix.
|
2012-11-18 17:35:26 +00:00
|
|
|
;;;
|
2013-01-05 23:47:50 +00:00
|
|
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
2012-11-18 17:35:26 +00:00
|
|
|
;;; 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.
|
|
|
|
;;;
|
2013-01-05 23:47:50 +00:00
|
|
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
2012-11-18 17:35:26 +00:00
|
|
|
;;; 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
|
2013-01-05 23:47:50 +00:00
|
|
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
2012-11-18 17:35:26 +00:00
|
|
|
|
|
|
|
;;;
|
|
|
|
;;; This file defines build jobs for the Hydra continuation integration
|
|
|
|
;;; tool.
|
|
|
|
;;;
|
|
|
|
|
2017-12-13 22:09:27 +00:00
|
|
|
(use-modules (system base compile))
|
|
|
|
|
2018-04-08 22:00:58 +00:00
|
|
|
(eval-when (expand load eval)
|
2013-03-27 23:14:38 +00:00
|
|
|
|
2017-12-13 22:09:27 +00:00
|
|
|
;; Pre-load the compiler so we don't end up auto-compiling it.
|
|
|
|
(compile #t)
|
|
|
|
|
|
|
|
;; Use our very own Guix modules.
|
2013-03-27 23:14:38 +00:00
|
|
|
(set! %fresh-auto-compile #t)
|
|
|
|
|
2018-04-08 15:57:13 +00:00
|
|
|
;; Ignore .go files except for Guile's. This is because our checkout in the
|
|
|
|
;; store has mtime set to the epoch, and thus .go files look newer, even
|
|
|
|
;; though they may not correspond. Use 'reverse' so that /gnu/store/…-guile
|
|
|
|
;; comes before /run/current-system/profile.
|
|
|
|
(set! %load-compiled-path
|
|
|
|
(list
|
|
|
|
(dirname (dirname (search-path (reverse %load-compiled-path)
|
|
|
|
"ice-9/boot-9.go")))))
|
|
|
|
|
2013-03-26 23:24:54 +00:00
|
|
|
(and=> (assoc-ref (current-source-location) 'filename)
|
|
|
|
(lambda (file)
|
2018-06-15 07:33:07 +00:00
|
|
|
(let ((dir (canonicalize-path
|
|
|
|
(string-append (dirname file) "/../.."))))
|
2013-03-26 23:24:54 +00:00
|
|
|
(format (current-error-port) "prepending ~s to the load path~%"
|
|
|
|
dir)
|
|
|
|
(set! %load-path (cons dir %load-path))))))
|
|
|
|
|
2018-11-26 11:22:47 +00:00
|
|
|
(use-modules (gnu ci))
|
2012-11-18 17:35:26 +00:00
|
|
|
|
2012-11-20 23:57:47 +00:00
|
|
|
;; XXX: Debugging hack: since `hydra-eval-guile-jobs' redirects the output
|
|
|
|
;; port to the bit bucket, let us write to the error port instead.
|
|
|
|
(setvbuf (current-error-port) _IOLBF)
|
|
|
|
(set-current-output-port (current-error-port))
|
|
|
|
|
2018-11-26 11:22:47 +00:00
|
|
|
;; Return the procedure from (gnu ci).
|
|
|
|
hydra-jobs
|