RPM Community Forums

Mailing List Message of <rpm-users>

Re: RPM 5.1b2 available for testing

From: Jeff Johnson <n3npq@mac.com>
Date: Sat 12 Apr 2008 - 21:19:17 CEST
Message-Id: <9B5373E6-E9EC-4608-BDFC-4DE819D83C98@mac.com>

On Apr 12, 2008, at 2:54 PM, Stefan Westmeier wrote:

> Applying the following quick hacks the package builds under cygwin.
>
>
> --- misc/glob.h.orig    2008-04-12 20:28:15.823000000 +0200
> +++ misc/glob.h 2008-04-12 20:29:01.621000000 +0200
> @@ -157,27 +157,6 @@
>     `glob' returns GLOB_ABEND; if it returns zero, the error is  
> ignored.
>     If memory cannot be allocated for PGLOB, GLOB_NOSPACE is returned.
>     Otherwise, `glob' returns zero.  */
> -#if defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS != 64
> -extern int glob __P ((__const char *__pattern, int __flags,
> -                     int (*__errfunc) (__const char *, int),
> -                     glob_t *__pglob));
> -
> -/* Free storage allocated in PGLOB by a previous `glob' call.  */
> -extern void globfree __P ((glob_t *__pglob));
> -#else
> -# if defined(__GNUC__) && __GNUC__ >= 2
> -extern int glob __P ((__const char *__pattern, int __flags,
> -                     int (*__errfunc) (__const char *, int),
> -                     glob_t *__pglob)) __asm__ ("glob64");
> -
> -extern void globfree __P ((glob_t *__pglob)) __asm__ ("globfree64");
> -# else
> -#  define glob glob64
> -#  define globfree globfree64
> -#  define glob_t glob64_t
> -# endif
> -#endif
> -
>  #ifdef _LARGEFILE64_SOURCE
>  /*@-protoparammatch -type @*/
>  extern int glob64 __P ((__const char *__pattern, int __flags,
> --- rpmio/fts.h.orig    2008-04-12 19:26:30.607000000 +0200
> +++ rpmio/fts.h 2008-04-12 19:26:39.766000000 +0200
> @@ -36,10 +36,6 @@
>  #include <features.h>
>  #else
>  #   define __THROW
> -#if defined(hpux) || defined(__hpux)
> -# define       _INCLUDE_POSIX_SOURCE
> -# define       _LARGEFILE64_SOURCE
> -#endif
>  #endif
>  #include <sys/types.h>
> Make check delivers the following results:
>
> make[3]: Entering directory `/cygdrive/c/Users/st/SWDevelopment/ 
> rpm-5.1b2/rpmio'
> Skipping rpmtar tests: /home/st/SWDevelopment/rpm-5.1b2/rpmio/ 
> rpmtar is not executable
> Testing rpmdigest features
> open of /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest failed: No  
> such file or directory
> open of /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest failed: No  
> such file or directory
> /usr/bin/md5sum: /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest:  
> No such file or directory
> open of /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest failed: No  
> such file or directory
> /usr/bin/sha1sum: /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest:  
> No such file or directory
> open of /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest failed: No  
> such file or directory
> /usr/bin/sha224sum: /home/st/SWDevelopment/rpm-5.1b2/rpmio/ 
> rpmdigest: No such file or directory
> open of /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest failed: No  
> such file or directory
> /usr/bin/sha256sum: /home/st/SWDevelopment/rpm-5.1b2/rpmio/ 
> rpmdigest: No such file or directory
> open of /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest failed: No  
> such file or directory
> /usr/bin/sha384sum: /home/st/SWDevelopment/rpm-5.1b2/rpmio/ 
> rpmdigest: No such file or directory
> open of /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmdigest failed: No  
> such file or directory
> /usr/bin/sha512sum: /home/st/SWDevelopment/rpm-5.1b2/rpmio/ 
> rpmdigest: No such file or directory
> Testing pcregrep
> rpmgrep 5.1b2 (without PCRE)
> error: ^(?:pattern)$: regcomp failed: repetition-operator operand  
> invalid
> pcregrep: Error in command-line regex at offset 0: (null)
> error: ^(?:Pattern)$: regcomp failed: repetition-operator operand  
> invalid
> pcregrep: Error in command-line regex at offset 0: (null)
> error: ^(?:complete pair\nof lines)$: regcomp failed: repetition- 
> operator operand invalid
> pcregrep: Error in command-line regex at offset 0: (null)
> error: ^(?:\QAB.VE\E)$: regcomp failed: repetition-operator operand  
> invalid
> pcregrep: Error in command-line regex at offset 0: (null)
> Files ./testdata/grepoutput and testtry differ
> FAIL: RunGrepTest
> ===================================
> 1 of 1 tests failed
> Please report to rpm-devel@rpm5.org
> ===================================
> make[3]: *** [check-TESTS] Error 1
> make[3]: Leaving directory `/cygdrive/c/Users/st/SWDevelopment/ 
> rpm-5.1b2/rpmio'
> make[2]: *** [check-am] Error 2
> make[2]: Leaving directory `/cygdrive/c/Users/st/SWDevelopment/ 
> rpm-5.1b2/rpmio'
> make[1]: *** [check] Error 2
> make[1]: Leaving directory `/cygdrive/c/Users/st/SWDevelopment/ 
> rpm-5.1b2/rpmio'
> make: *** [check-recursive] Error 1
>
>
>
>
>
> From: n3npq@mac.com
> Subject: Re: RPM 5.1b2 available for testing
> Date: Sat, 12 Apr 2008 13:36:07 -0400
> To: rpm-users@rpm5.org
>
>
> On Apr 12, 2008, at 1:27 PM, Stefan Westmeier wrote:
> Compiling it under cygwin results in:
>
> ../rpmio/.libs/librpmio.a(rpmrpc.o): In function `Globfree':
> /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmrpc.c:1765: undefined  
> reference to `globfree64'
> /home/st/SWDevelopment/rpm-5.1b2/rpmio/rpmrpc.c:1765: undefined  
> reference to `globfree64'
>
>
> You should be using misc/glob.c because rpm depends rather intimately
> on a GNU extension that uses these vectors in the glob_t structure:
>
>     /* If the GLOB_ALTDIRFUNC flag is set, the following  
> functions       are used instead of the normal file access  
> functions.  */    void (*gl_closedir) __PMT ((void *));    struct  
> dirent *(*gl_readdir) __PMT ((void *));    __ptr_t (*gl_opendir)  
> __PMT ((__const char *));    int (*gl_lstat) __PMT ((__const char  
> *, struct stat *));    int (*gl_stat) __PMT ((__const char *,  
> struct stat *));
>
> Guessing from the "64" in globfree64() you have managed to
> define _LARGEFILE64_SOURCE, but perhaps are mixing
> which glob.h is included, or can see the _LARGEFILE64_SOURCE define.
>
> 73 de Jeff
Received on Sat Apr 12 21:19:56 2008
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.