pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/38674: libarchive broken on IRIX



The following reply was made to PR pkg/38674; it has been noted by GNATS.

From: Joerg Sonnenberger <joerg%britannica.bec.de@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: pkg/38674: libarchive broken on IRIX
Date: Tue, 3 Jun 2008 17:02:18 +0200

 --huq684BweRXVnRxX
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 On Sun, May 25, 2008 at 09:00:08PM +0000, Tobias Nygren wrote:
 >  That issue is fixed, but now there is a new problem.
 
 Attached is the version of the upstream patch for testing. 
 
 Joerg
 
 --huq684BweRXVnRxX
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="libarchive-fork.diff"
 
 Index: files/config.h.in
 ===================================================================
 RCS file: /data/repo/netbsd/pkgsrc/archivers/libarchive/files/config.h.in,v
 retrieving revision 1.1.1.7
 diff -u -p -r1.1.1.7 config.h.in
 --- files/config.h.in  25 May 2008 19:41:21 -0000      1.1.1.7
 +++ files/config.h.in  3 Jun 2008 14:32:32 -0000
 @@ -126,6 +126,9 @@
  /* Define to 1 if fnmatch(3) supports the FNM_LEADING_DIR flag */
  #undef HAVE_FNM_LEADING_DIR
  
 +/* Define to 1 if you have the `fork' function. */
 +#undef HAVE_FORK
 +
  /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
  #undef HAVE_FSEEKO
  
 Index: files/configure
 ===================================================================
 RCS file: /data/repo/netbsd/pkgsrc/archivers/libarchive/files/configure,v
 retrieving revision 1.1.1.9
 diff -u -p -r1.1.1.9 configure
 --- files/configure    25 May 2008 19:41:23 -0000      1.1.1.9
 +++ files/configure    3 Jun 2008 14:33:14 -0000
 @@ -24855,7 +24855,7 @@ done
  
  
  
 -for ac_func in chflags chown fchdir fchflags fchmod fchown fcntl fstat
 +for ac_func in chflags chown fchdir fchflags fchmod fchown fcntl fork
  do
  as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
  { echo "$as_me:$LINENO: checking for $ac_func" >&5
 @@ -24953,7 +24953,7 @@ done
  
  
  
 -for ac_func in ftruncate futimes geteuid getopt_long getpid
 +for ac_func in fstat ftruncate futimes geteuid getopt_long getpid
  do
  as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
  { echo "$as_me:$LINENO: checking for $ac_func" >&5
 Index: files/configure.ac
 ===================================================================
 RCS file: /data/repo/netbsd/pkgsrc/archivers/libarchive/files/configure.ac,v
 retrieving revision 1.1.1.8
 diff -u -p -r1.1.1.8 configure.ac
 --- files/configure.ac 25 May 2008 19:41:18 -0000      1.1.1.8
 +++ files/configure.ac 3 Jun 2008 14:32:39 -0000
 @@ -239,8 +239,8 @@ AC_FUNC_STAT
  AC_FUNC_STRERROR_R
  AC_FUNC_STRFTIME
  AC_FUNC_VPRINTF
 -AC_CHECK_FUNCS([chflags chown fchdir fchflags fchmod fchown fcntl fstat])
 -AC_CHECK_FUNCS([ftruncate futimes geteuid getopt_long getpid])
 +AC_CHECK_FUNCS([chflags chown fchdir fchflags fchmod fchown fcntl fork])
 +AC_CHECK_FUNCS([fstat ftruncate futimes geteuid getopt_long getpid])
  AC_CHECK_FUNCS([lchflags lchmod lchown])
  AC_CHECK_FUNCS([lutimes memmove memset mkdir mkfifo mknod])
  AC_CHECK_FUNCS([nl_langinfo pipe poll select setenv setlocale])
 Index: files/libarchive/archive_read_support_compression_program.c
 ===================================================================
 RCS file: 
/data/repo/netbsd/pkgsrc/archivers/libarchive/files/libarchive/archive_read_support_compression_program.c,v
 retrieving revision 1.1.1.3
 diff -u -p -r1.1.1.3 archive_read_support_compression_program.c
 --- files/libarchive/archive_read_support_compression_program.c        25 May 
2008 19:41:25 -0000      1.1.1.3
 +++ files/libarchive/archive_read_support_compression_program.c        3 Jun 
2008 14:33:44 -0000
 @@ -28,7 +28,8 @@ __FBSDID("$FreeBSD: src/lib/libarchive/a
  
  
  /* This capability is only available on POSIX systems. */
 -#if !defined(HAVE_PIPE) || !defined(HAVE_VFORK) || !defined(HAVE_FCNTL)
 +#if !defined(HAVE_PIPE) || !defined(HAVE_FCNTL) || \
 +    !(defined(HAVE_FORK) || defined(HAVE_VFORK))
  
  /*
   * On non-Posix systems, allow the program to build, but choke if
 Index: files/libarchive/archive_write_set_compression_program.c
 ===================================================================
 RCS file: 
/data/repo/netbsd/pkgsrc/archivers/libarchive/files/libarchive/archive_write_set_compression_program.c,v
 retrieving revision 1.1.1.2
 diff -u -p -r1.1.1.2 archive_write_set_compression_program.c
 --- files/libarchive/archive_write_set_compression_program.c   25 May 2008 
19:41:26 -0000      1.1.1.2
 +++ files/libarchive/archive_write_set_compression_program.c   3 Jun 2008 
14:33:46 -0000
 @@ -28,7 +28,9 @@
  __FBSDID("$FreeBSD: 
src/lib/libarchive/archive_write_set_compression_program.c,v 1.1 2007/05/29 
01:00:19 kientzle Exp $");
  
  /* This capability is only available on POSIX systems. */
 -#if !defined(HAVE_PIPE) || !defined(HAVE_VFORK) || !defined(HAVE_FCNTL)
 +#if !defined(HAVE_PIPE) || !defined(HAVE_FCNTL) || \
 +    !(defined(HAVE_FORK) || defined(HAVE_VFORK))
 +#include "archive.h"
  
  /*
   * On non-Posix systems, allow the program to build, but choke if
 Index: files/libarchive/filter_fork.c
 ===================================================================
 RCS file: 
/data/repo/netbsd/pkgsrc/archivers/libarchive/files/libarchive/filter_fork.c,v
 retrieving revision 1.1.1.4
 diff -u -p -r1.1.1.4 filter_fork.c
 --- files/libarchive/filter_fork.c     25 May 2008 19:41:26 -0000      1.1.1.4
 +++ files/libarchive/filter_fork.c     3 Jun 2008 14:33:40 -0000
 @@ -26,7 +26,8 @@
  #include "archive_platform.h"
  
  /* This capability is only available on POSIX systems. */
 -#if defined(HAVE_PIPE) && defined(HAVE_VFORK) && defined(HAVE_FCNTL)
 +#if defined(HAVE_PIPE) && defined(HAVE_FCNTL) && \
 +    (defined(HAVE_FORK) || defined(HAVE_VFORK))
  
  __FBSDID("$FreeBSD: src/lib/libarchive/filter_fork.c,v 1.2 2007/12/30 
04:58:22 kientzle Exp $");
  
 @@ -75,7 +76,11 @@ __archive_create_child(const char *path,
                stdout_pipe[1] = tmp;
        }
  
 +#if HAVE_VFORK
        switch ((child = vfork())) {
 +#else
 +      switch ((child = fork())) {
 +#endif
        case -1:
                goto stdout_opened;
        case 0:
 
 --huq684BweRXVnRxX--
 


Home | Main Index | Thread Index | Old Index