From: Nikita Karetnikov <nikita@karetnikov.org>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: bug-guix@gnu.org
Subject: Re: Porting to mips64el
Date: Fri, 15 Feb 2013 15:11:45 -0500 [thread overview]
Message-ID: <87liapfib6.fsf@karetnikov.org> (raw)
In-Reply-To: <87pq03b04k.fsf@gnu.org> ("Ludovic Courtès"'s message of "(unknown date)")
[-- Attachment #1.1: Type: text/plain, Size: 2169 bytes --]
> Actually, even better would be do that in host code, as done with
> ‘glibc-dynamic-linker’:
What do you mean by "host code"?
The attached recipe raises the following:
make: *** No rule to make target `defconfig'. Stop.
[...]
starting phase `build'
Backtrace:
In ice-9/boot-9.scm:
157: 12 [catch #t #<catch-closure 10501880> ...]
In unknown file:
?: 11 [apply-smob/1 #<catch-closure 10501880>]
In ice-9/boot-9.scm:
63: 10 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
421: 9 [eval # #]
In ice-9/boot-9.scm:
2131: 8 [save-module-excursion #<procedure 104c9120 at ice-9/boot-9.scm:3711:3 ()>]
3716: 7 [#<procedure 104c9120 at ice-9/boot-9.scm:3711:3 ()>]
1456: 6 [%start-stack load-stack ...]
1461: 5 [#<procedure 10518750 ()>]
In unknown file:
?: 4 [primitive-load "/nix/store/imhxpwyqxwq08jlck0js0hl55f7c27cx-linux-libre-headers-3.3.8-guile-builder"]
In ice-9/eval.scm:
376: 3 [eval # ()]
In srfi/srfi-1.scm:
830: 2 [every1 #<procedure 106b7430 at /nix/store/dqrq0a7g4jimfsqrmk6w8pdjfi83598z-module-import/guix/build/gnu-build-system.scm:297:9 (expr)> ...]
In /nix/store/dqrq0a7g4jimfsqrmk6w8pdjfi83598z-module-import/guix/build/gnu-build-system.scm:
301: 1 [#<procedure 106b7430 at /nix/store/dqrq0a7g4jimfsqrmk6w8pdjfi83598z-module-import/guix/build/gnu-build-system.scm:297:9 (expr)> #]
In unknown file:
?: 0 [#f # ...]
ERROR: In procedure #f:
ERROR: Wrong type to apply: #f
note: keeping build directory `/tmp/nix-build-linux-libre-headers-3.3.8.drv-1'
builder for `/nix/store/302naw10n689ada24wccppryw2rjf63c-linux-libre-headers-3.3.8.drv' failed with exit code 1
@ build-failed /nix/store/302naw10n689ada24wccppryw2rjf63c-linux-libre-headers-3.3.8.drv /nix/store/67hlf49g6k116zvmvipxc9p935w6zyzw-linux-libre-headers-3.3.8 1 builder for `/nix/store/302naw10n689ada24wccppryw2rjf63c-linux-libre-headers-3.3.8.drv' failed with exit code 1
cannot build derivation `/nix/store/402il7xq9z418zjnp3il9ih73v12slv3-linux-libre-headers-3.3.8.drv': 1 dependencies couldn't be built
error: build failed: build of
`/nix/store/402il7xq9z418zjnp3il9ih73v12slv3-linux-libre-headers-3.3.8.drv'
failed
[-- Attachment #1.2: linux.scm --]
[-- Type: text/plain, Size: 12207 bytes --]
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;;
;;; 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 (gnu packages linux)
#:use-module (guix licenses)
#:use-module (gnu packages)
#:use-module ((gnu packages compression)
#:renamer (symbol-prefix-proc 'guix:))
#:use-module (gnu packages flex)
#:use-module (gnu packages libusb)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu))
(define (system->linux-architecture arch)
(let ((arch (car (string-split arch #\-))))
(cond ((string=? arch "i686") "i386")
((string-prefix? "mips" arch) "mips")
(else arch))))
(define-public linux-libre-headers
(let* ((version* "3.3.8")
(build-phase
(lambda (arch)
`(lambda _
(setenv "ARCH" ,(system->linux-architecture arch))
(format #t "`ARCH' set to `~a'~%" (getenv "ARCH")))
(and (zero? (system* "make" "defconfig"))
(zero? (system* "make" "mrproper" "headers_check")))))
(install-phase
`(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(and (zero? (system* "make"
(string-append "INSTALL_HDR_PATH=" out)
"headers_install"))
(mkdir (string-append out "/include/config"))
(call-with-output-file
(string-append out
"/include/config/kernel.release")
(lambda (p)
(format p "~a-default~%" ,version*))))))))
(package
(name "linux-libre-headers")
(version version*)
(source (origin
(method url-fetch)
(uri (string-append
"http://linux-libre.fsfla.org/pub/linux-libre/releases/3.3.8-gnu/linux-libre-"
version "-gnu.tar.xz"))
(sha256
(base32
"0jkfh0z1s6izvdnc3njm39dhzp1cg8i06jv06izwqz9w9qsprvnl"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl)))
(arguments
`(#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1))
#:phases (alist-replace
'build ,(build-phase (%current-system))
(alist-replace
'install ,install-phase
(alist-delete 'configure %standard-phases)))
#:tests? #f))
(synopsis "GNU Linux-Libre kernel headers")
(description "Headers of the Linux-Libre kernel.")
(license gpl2)
(home-page "http://www.gnu.org/software/linux-libre/"))))
(define-public linux-pam
(package
(name "linux-pam")
(version "1.1.6")
(source
(origin
(method url-fetch)
(uri (list (string-append "http://www.linux-pam.org/library/Linux-PAM-"
version ".tar.bz2")
(string-append "mirror://kernel.org/linux/libs/pam/library/Linux-PAM-"
version ".tar.bz2")))
(sha256
(base32
"1hlz2kqvbjisvwyicdincq7nz897b9rrafyzccwzqiqg53b8gf5s"))))
(build-system gnu-build-system)
(inputs
`(("flex" ,flex)
;; TODO: optional dependencies
;; ("libxcrypt" ,libxcrypt)
;; ("cracklib" ,cracklib)
))
(arguments
;; XXX: Tests won't run in chroot, presumably because /etc/pam.d
;; isn't available.
'(#:tests? #f))
(home-page "http://www.linux-pam.org/")
(synopsis "Pluggable authentication modules for Linux")
(description
"A *Free* project to implement OSF's RFC 86.0.
Pluggable authentication modules are small shared object files that can
be used through the PAM API to perform tasks, like authenticating a user
at login. Local and dynamic reconfiguration are its key features")
(license bsd-3)))
(define-public psmisc
(package
(name "psmisc")
(version "22.20")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/psmisc/psmisc/psmisc-"
version ".tar.gz"))
(sha256
(base32
"052mfraykmxnavpi8s78aljx8w87hyvpx8mvzsgpjsjz73i28wmi"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)))
(home-page "http://psmisc.sourceforge.net/")
(synopsis
"set of utilities that use the proc filesystem, such as fuser, killall, and pstree")
(description
"This PSmisc package is a set of some small useful utilities that
use the proc filesystem. We're not about changing the world, but
providing the system administrator with some help in common tasks.")
(license gpl2+)))
(define-public util-linux
(package
(name "util-linux")
(version "2.21")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/utils/"
name "/v" version "/"
name "-" version ".2" ".tar.xz"))
(sha256
(base32
"1rpgghf7n0zx0cdy8hibr41wvkm2qp1yvd8ab1rxr193l1jmgcir"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--disable-use-tty-group")
#:phases (alist-cons-after
'install 'patch-chkdupexe
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* (string-append out "/bin/chkdupexe")
;; Allow 'patch-shebang' to do its work.
(("@PERL@") "/bin/perl"))))
%standard-phases)))
(inputs `(("zlib" ,guix:zlib)
("ncurses" ,ncurses)
("perl" ,perl)))
(home-page "https://www.kernel.org/pub/linux/utils/util-linux/")
(synopsis
"util-linux is a random collection of utilities for the Linux kernel")
(description
"util-linux is a random collection of utilities for the Linux kernel.")
;; Note that util-linux doesn't use the same license for all the
;; code. GPLv2+ is the default license for a code without an
;; explicitly defined license.
(license (list gpl3+ gpl2+ gpl2 lgpl2.0+
bsd-4 public-domain))))
(define-public procps
(package
(name "procps")
(version "3.2.8")
(source (origin
(method url-fetch)
(uri (string-append "http://procps.sourceforge.net/procps-"
version ".tar.gz"))
(sha256
(base32
"0d8mki0q4yamnkk4533kx8mc0jd879573srxhg6r2fs3lkc6iv8i"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)
("patch/make-3.82" ,(search-patch "procps-make-3.82.patch"))))
(arguments
'(#:patches (list (assoc-ref %build-inputs "patch/make-3.82"))
#:phases (alist-replace
'configure
(lambda* (#:key outputs #:allow-other-keys)
;; No `configure', just a single Makefile.
(let ((out (assoc-ref outputs "out")))
(substitute* "Makefile"
(("/usr/") "/")
(("--(owner|group) 0") "")
(("ldconfig") "true")
(("^LDFLAGS[[:blank:]]*:=(.*)$" _ value)
;; Add libproc to the RPATH.
(string-append "LDFLAGS := -Wl,-rpath="
out "/lib" value))))
(setenv "CC" "gcc"))
(alist-replace
'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(and (zero?
(system* "make" "install"
(string-append "DESTDIR=" out)))
;; Sanity check.
(zero?
(system* (string-append out "/bin/ps")
"--version")))))
%standard-phases))
;; What did you expect? Tests?
#:tests? #f))
(home-page "http://procps.sourceforge.net/")
(synopsis
"Utilities that give information about processes using the /proc filesystem")
(description
"procps is the package that has a bunch of small useful utilities
that give information about processes using the Linux /proc file system.
The package includes the programs ps, top, vmstat, w, kill, free,
slabtop, and skill.")
(license gpl2)))
(define-public usbutils
(package
(name "usbutils")
(version "006")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/utils/usb/usbutils/"
"usbutils-" version ".tar.xz"))
(sha256
(base32
"03pd57vv8c6x0hgjqcbrxnzi14h8hcghmapg89p8k5zpwpkvbdfr"))))
(build-system gnu-build-system)
(inputs
`(("libusb" ,libusb) ("pkg-config" ,pkg-config)))
(home-page "http://www.linux-usb.org/")
(synopsis
"Tools for working with USB devices, such as lsusb")
(description
"Tools for working with USB devices, such as lsusb.")
(license gpl2+)))
(define-public e2fsprogs
(package
(name "e2fsprogs")
(version "1.42.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/e2fsprogs/e2fsprogs-"
version ".tar.gz"))
(sha256
(base32
"0ibkkvp6kan0hn0d1anq4n2md70j5gcm7mwna515w82xwyr02rfw"))))
(build-system gnu-build-system)
(inputs `(("util-linux" ,util-linux)
("pkg-config" ,pkg-config)))
(arguments
'(#:phases (alist-cons-before
'configure 'patch-shells
(lambda _
(substitute* "configure"
(("/bin/sh (.*)parse-types.sh" _ dir)
(string-append (which "sh") " " dir
"parse-types.sh")))
(substitute* (find-files "." "^Makefile.in$")
(("#!/bin/sh")
(string-append "#!" (which "sh")))))
%standard-phases)
;; FIXME: Tests work by comparing the stdout/stderr of programs, that
;; they fail because we get an extra line that says "Can't check if
;; filesystem is mounted due to missing mtab file".
#:tests? #f))
(home-page "http://e2fsprogs.sourceforge.net/")
(synopsis "Tools for creating and checking ext2/ext3/ext4 filesystems")
(description
"This package provides tools for manipulating ext2/ext3/ext4 file systems.")
(license (list gpl2 ; programs
lgpl2.0 ; libext2fs
x11)))) ; libuuid
[-- Attachment #2: Type: application/pgp-signature, Size: 835 bytes --]
next prev parent reply other threads:[~2013-02-15 20:11 UTC|newest]
Thread overview: 102+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-24 19:43 mips64el: No such file or directory: "/nix/store/*-glibc-2.13.drv" Nikita Karetnikov
2012-12-30 15:17 ` Ludovic Courtès
2012-12-30 16:14 ` Nikita Karetnikov
2012-12-30 17:58 ` Ludovic Courtès
2012-12-30 20:40 ` Nikita Karetnikov
2012-12-30 21:20 ` Ludovic Courtès
2012-12-30 22:43 ` Nikita Karetnikov
2012-12-31 12:21 ` Ludovic Courtès
2013-01-08 13:26 ` Porting to mips64el (was: mips64el: No such file or directory: "/nix/store/*-glibc-2.13.drv") Nikita Karetnikov
2013-01-08 13:34 ` Porting to mips64el Ludovic Courtès
2013-01-08 14:52 ` Nikita Karetnikov
2013-01-08 16:30 ` Ludovic Courtès
2013-01-08 18:18 ` Nikita Karetnikov
2013-01-08 20:50 ` Ludovic Courtès
2013-01-09 15:53 ` Nikita Karetnikov
2013-01-09 21:42 ` Ludovic Courtès
2013-01-11 4:08 ` Nikita Karetnikov
2013-01-11 13:28 ` Ludovic Courtès
2013-01-11 21:49 ` Nikita Karetnikov
2013-01-11 23:44 ` Ludovic Courtès
2013-01-12 14:49 ` Nikita Karetnikov
2013-01-12 15:06 ` Ludovic Courtès
2013-01-12 15:46 ` Nikita Karetnikov
2013-01-12 21:01 ` Ludovic Courtès
2013-01-12 23:00 ` Nikita Karetnikov
2013-01-13 20:49 ` Ludovic Courtès
2013-01-19 16:49 ` Nikita Karetnikov
2013-01-19 17:45 ` Ludovic Courtès
2013-01-20 7:39 ` Nikita Karetnikov
2013-01-20 14:33 ` Ludovic Courtès
2013-01-22 22:51 ` Nikita Karetnikov
2013-01-23 5:01 ` Nikita Karetnikov
2013-01-23 15:35 ` Ludovic Courtès
2013-01-23 22:08 ` Nikita Karetnikov
2013-01-24 15:56 ` Ludovic Courtès
2013-01-26 4:33 ` Nikita Karetnikov
2013-01-26 21:37 ` Ludovic Courtès
2013-01-27 5:47 ` Nikita Karetnikov
2013-01-27 21:15 ` Ludovic Courtès
2013-01-28 5:51 ` Nikita Karetnikov
2013-01-28 12:59 ` Ludovic Courtès
2013-01-29 17:57 ` Nikita Karetnikov
2013-01-29 21:00 ` Ludovic Courtès
2013-01-29 21:59 ` Nikita Karetnikov
2013-01-29 22:02 ` Ludovic Courtès
2013-01-29 23:29 ` Nikita Karetnikov
2013-01-30 20:58 ` Ludovic Courtès
2013-01-30 23:03 ` Nikita Karetnikov
2013-01-31 12:50 ` Ludovic Courtès
2013-01-31 19:32 ` Nikita Karetnikov
2013-01-31 22:08 ` Ludovic Courtès
2013-02-01 23:43 ` Nikita Karetnikov
2013-02-02 10:09 ` Ludovic Courtès
2013-02-02 12:32 ` Nikita Karetnikov
2013-02-02 17:34 ` Ludovic Courtès
2013-02-02 20:47 ` Nikita Karetnikov
2013-02-03 18:00 ` Ludovic Courtès
2013-02-05 20:53 ` Nikita Karetnikov
2013-02-05 22:00 ` Ludovic Courtès
2013-02-06 9:27 ` Nikita Karetnikov
2013-02-06 14:26 ` Ludovic Courtès
2013-02-08 22:43 ` Nikita Karetnikov
2013-02-08 23:11 ` Ludovic Courtès
2013-02-11 20:50 ` Ludovic Courtès
2013-02-11 21:34 ` Andreas Enge
2013-02-11 22:10 ` Ludovic Courtès
2013-02-12 2:37 ` Nikita Karetnikov
2013-02-12 2:42 ` Nikita Karetnikov
2013-02-12 7:43 ` Nikita Karetnikov
2013-02-14 7:50 ` Nikita Karetnikov
2013-02-14 11:33 ` Ludovic Courtès
2013-02-15 20:11 ` Nikita Karetnikov [this message]
2013-02-16 21:07 ` Ludovic Courtès
2013-02-19 9:49 ` Nikita Karetnikov
2013-02-19 10:19 ` Ludovic Courtès
2013-02-12 9:57 ` Ludovic Courtès
2013-02-13 5:35 ` Nikita Karetnikov
2013-02-13 14:43 ` Ludovic Courtès
2013-02-19 11:05 ` Nikita Karetnikov
2013-02-19 12:54 ` Andreas Enge
2013-02-19 16:54 ` Ludovic Courtès
2013-02-19 18:20 ` Andreas Enge
2013-02-19 18:44 ` Nikita Karetnikov
2013-02-19 21:26 ` Ludovic Courtès
2013-02-20 9:30 ` Andreas Enge
2013-02-20 11:40 ` Ludovic Courtès
2013-02-20 16:25 ` Andreas Enge
2013-02-20 17:05 ` Ludovic Courtès
2013-02-20 17:42 ` Nikita Karetnikov
2013-02-20 19:24 ` Andreas Enge
2013-02-20 20:03 ` Ludovic Courtès
2013-02-20 23:38 ` Porting to anything Andreas Enge
2013-02-21 9:36 ` Ludovic Courtès
2013-02-21 9:56 ` Andreas Enge
2013-02-21 16:48 ` Porting to mips64el Nikita Karetnikov
2013-02-21 18:44 ` Nikita Karetnikov
2013-02-21 21:47 ` Nikita Karetnikov
2013-02-23 18:53 ` Andreas Enge
2013-02-23 18:56 ` Ludovic Courtès
2013-03-03 15:01 ` Nikita Karetnikov
2013-03-03 21:26 ` Ludovic Courtès
2013-01-23 15:33 ` Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87liapfib6.fsf@karetnikov.org \
--to=nikita@karetnikov.org \
--cc=bug-guix@gnu.org \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.