distro: Add GNU Make.

* distro/base.scm (gnu-make): New variable.
* distro/make-impure-dirs.patch: New file.
* Makefile.am (nobase_dist_guilemodule_DATA): Add it.
This commit is contained in:
Ludovic Courtès 2012-08-21 18:14:57 +02:00
parent fc484f605c
commit ab77686565
3 changed files with 71 additions and 0 deletions

View file

@ -40,6 +40,7 @@ nobase_dist_guilemodule_DATA = \
distro/guile-1.8-cpp-4.5.patch \
distro/m4-readlink-EINVAL.patch \
distro/m4-s_isdir.patch \
distro/make-impure-dirs.patch \
distro/readline-link-ncurses.patch
nobase_nodist_guilemodule_DATA = $(GOBJECTS)

View file

@ -156,6 +156,36 @@ (define-public m4
(license "GPLv3+")
(home-page "http://www.gnu.org/software/m4/")))
(define-public gnu-make
(package
(name "make")
(version "3.82")
(source (origin
(method http-fetch)
(uri (string-append "http://ftp.gnu.org/gnu/make/make-" version
".tar.bz2"))
(sha256
(base32
"0ri98385hsd7li6rh4l5afcq92v8l2lgiaz85wgcfh4w2wzsghg2"))))
(build-system gnu-build-system)
(native-inputs
`(("patch/impure-dirs"
,(search-path %load-path "distro/make-impure-dirs.patch"))))
(arguments `(#:patches (list (assoc-ref %build-inputs
"patch/impure-dirs"))))
(description "GNU Make, a program controlling the generation of non-source
files from sources")
(long-description
"Make is a tool which controls the generation of executables and other
non-source files of a program from the program's source files.
Make gets its knowledge of how to build your program from a file called the
makefile, which lists each of the non-source files and how to compute it from
other files. When you write a program, you should write a makefile for it, so
that it is possible to use Make to build and install the program.")
(license "GPLv3+")
(home-page "http://www.gnu.org/software/make/")))
(define-public gmp
(package
(name "gmp")

View file

@ -0,0 +1,40 @@
Purity: don't look for library dependencies (of the form `-lfoo') in
/lib and /usr/lib. Likewise, when searching for included Makefiles,
don't look in /usr/include and friends.
Patch from Nixpkgs, by Eelco Dolstra.
diff -rc make-3.81-orig/read.c make-3.81/read.c
*** make-3.81-orig/read.c 2006-03-17 15:24:20.000000000 +0100
--- make-3.81/read.c 2007-05-24 17:16:31.000000000 +0200
***************
*** 99,107 ****
--- 99,109 ----
#endif
INCLUDEDIR,
#ifndef _AMIGA
+ #if 0
"/usr/gnu/include",
"/usr/local/include",
"/usr/include",
+ #endif
#endif
0
};
diff -rc make-3.81-orig/remake.c make-3.81/remake.c
*** make-3.81-orig/remake.c 2006-03-20 03:36:37.000000000 +0100
--- make-3.81/remake.c 2007-05-24 17:06:54.000000000 +0200
***************
*** 1452,1460 ****
--- 1452,1462 ----
static char *dirs[] =
{
#ifndef _AMIGA
+ #if 0
"/lib",
"/usr/lib",
#endif
+ #endif
#if defined(WINDOWS32) && !defined(LIBDIR)
/*
* This is completely up to the user at product install time. Just define