* Updated checkinstall 1.6.2, and added a patch to make it compile on

Glibc 2.11.

svn path=/nixpkgs/trunk/; revision=19868
This commit is contained in:
Eelco Dolstra 2010-02-08 15:39:51 +00:00
parent b34165054d
commit 8b5d0c8de5
2 changed files with 81 additions and 3 deletions

View File

@ -3,11 +3,11 @@
assert stdenv.isLinux && stdenv ? glibc;
stdenv.mkDerivation {
name = "checkinstall-1.6.2pre20081116";
name = "checkinstall-1.6.2";
src = fetchurl {
url = http://nixos.org/tarballs/checkinstall-1.6.2pre20081116.tar.bz2;
sha256 = "0k8i551rcn2g0jxskq2sgy4m85irdf5zsl2q4w9b7npgnybkzsmb";
url = http://www.asic-linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.2.tar.gz;
sha256 = "1x4kslyvfd6lm6zd1ylbq2pjxrafb77ydfjaqi16sa5qywn1jqfw";
};
patches = [
@ -26,6 +26,9 @@ stdenv.mkDerivation {
# Support Glibc >= 2.8.
./glibc-check.patch
# Fix a `conflicting types for 'scandir'' error on Glibc 2.11.
./scandir.patch
];
buildInputs = [gettext];

View File

@ -0,0 +1,75 @@
diff -rc -x '*~' checkinstall-1.6.2-orig/installwatch/installwatch.c checkinstall-1.6.2/installwatch/installwatch.c
*** checkinstall-1.6.2-orig/installwatch/installwatch.c 2008-11-16 17:20:53.000000000 +0100
--- checkinstall-1.6.2/installwatch/installwatch.c 2010-02-08 16:35:17.000000000 +0100
***************
*** 100,106 ****
static int (*true_lxstat)(int,const char *,struct stat *);
static int (*true_scandir)( const char *,struct dirent ***,
int (*)(const struct dirent *),
! int (*)(const void *,const void *));
static int (*true_symlink)(const char *, const char *);
static int (*true_truncate)(const char *, TRUNCATE_T);
static int (*true_unlink)(const char *);
--- 100,106 ----
static int (*true_lxstat)(int,const char *,struct stat *);
static int (*true_scandir)( const char *,struct dirent ***,
int (*)(const struct dirent *),
! int (*)(const struct dirent **,const struct dirent **));
static int (*true_symlink)(const char *, const char *);
static int (*true_truncate)(const char *, TRUNCATE_T);
static int (*true_unlink)(const char *);
***************
*** 120,126 ****
static struct dirent64 *(*true_readdir64)(DIR *dir);
static int (*true_scandir64)( const char *,struct dirent64 ***,
int (*)(const struct dirent64 *),
! int (*)(const void *,const void *));
static int (*true_xstat64)(int,const char *, struct stat64 *);
static int (*true_lxstat64)(int,const char *, struct stat64 *);
static int (*true_truncate64)(const char *, __off64_t);
--- 120,126 ----
static struct dirent64 *(*true_readdir64)(DIR *dir);
static int (*true_scandir64)( const char *,struct dirent64 ***,
int (*)(const struct dirent64 *),
! int (*)(const struct dirent64 **,const struct dirent64 **));
static int (*true_xstat64)(int,const char *, struct stat64 *);
static int (*true_lxstat64)(int,const char *, struct stat64 *);
static int (*true_truncate64)(const char *, __off64_t);
***************
*** 3077,3085 ****
return result;
}
! int scandir( const char *dir,struct dirent ***namelist,
int (*select)(const struct dirent *),
! int (*compar)(const void *,const void *) ) {
int result;
if (!libc_handle)
--- 3077,3085 ----
return result;
}
! int scandir( const char * dir,struct dirent ***namelist,
int (*select)(const struct dirent *),
! int (*compar)(const struct dirent **,const struct dirent **) ) {
int result;
if (!libc_handle)
***************
*** 3691,3697 ****
int scandir64( const char *dir,struct dirent64 ***namelist,
int (*select)(const struct dirent64 *),
! int (*compar)(const void *,const void *) ) {
int result;
if (!libc_handle)
--- 3691,3697 ----
int scandir64( const char *dir,struct dirent64 ***namelist,
int (*select)(const struct dirent64 *),
! int (*compar)(const struct dirent64 **,const struct dirent64 **) ) {
int result;
if (!libc_handle)