Date: Wed, 11 May 2011 23:59:45 -0700 From: Jeremy Chadwick <freebsd@jdc.parodius.com> To: joerg_surmann <joerg_surmann@snafu.de> Cc: freebsd-stable@freebsd.org Subject: Re: can't update libzip-0.9.3 to libzip-0.10 Message-ID: <20110512065945.GA55199@icarus.home.lan> In-Reply-To: <4DCB81EF.2080104@snafu.de> References: <4DCB7962.6090706@snafu.de> <20110512061312.GA54574@icarus.home.lan> <4DCB81EF.2080104@snafu.de>
next in thread | previous in thread | raw e-mail | index | archive | help
--FCuugMFkClbJLl1L
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
On Thu, May 12, 2011 at 08:45:03AM +0200, joerg_surmann wrote:
> Hey Jeremy,
>
> Ok i'll put the files in a attachment
> on the end from this email.
[...snip...]
[attachment: zipconf.h]
Oh dear. I'm not sure what to make of this:
> #ifndef _HAD_ZIPCONF_H
> #define _HAD_ZIPCONF_H
>
> /*
> zipconf.h -- platform specific include file
>
> This file was generated automatically by ./make_zipconf.sh
> based on ../config.h.
> */
>
> #define LIBZIP_VERSION "0.10"
> #define LIBZIP_VERSION_MAJOR 0
> #define LIBZIP_VERSION_MINOR 10
> #define LIBZIP_VERSION_MICRO 0
>
> #include <inttypes.h>
>
> typedef signed char int8_t;
> #define ZIP_INU8_MAX SCHAR_MAX
>
> typedef unsigned char uint8_t;
> #define ZIP_?INU8_MAX ?CHAR_MAX
>
> typedef shor? int16_t;
> #define ZIP_INU16_MIN ?CHAR_MIN
> #define ZIP_INU16_MAX ?CHAR_MAX
>
> typedef unsigned shor? uint16_t;
> #define ZIP_?INU16_MAX ?CHAR_MAX
>
> typedef in? int32_t;
> #define ZIP_INU32_MIN ?CHAR_MIN
> #define ZIP_INU32_MAX ?CHAR_MAX
>
> typedef unsigned in? uint32_t;
> #define ZIP_?INU32_MAX ?CHAR_MAX
>
> typedef long int64_t;
> #define ZIP_INU64_MIN SLONG_MIN
> #define ZIP_INU64_MAX SLONG_MAX
>
> typedef unsigned long uint64_t;
> #define ZIP_?INU64_MAX ?LONG_MAX
>
>
> #endif /* zipconf.h */
All of these values have a "?" injected in them, at seemingly randomly
places. This is the problem, and why the C compiler is throwing errors.
I don't know how or why this is happening. There could be many things
going on that might explain it. Worst case would be odd/awkward
hardware failure (bad RAM would show something like this), corrupt
filesystem, a disk going bad silently ("bit rot"), etc..
My initial guess -- because this port uses a GNU autoconf script -- is
that it's obtaining the types for things incorrectly.
Are you using any sort of LC_CTYPE or LANG setting in your dotfiles that
gets propagated to the root environment (during su, sudo, etc.)? I see
that you're in .de which is why I ask.
I've attached a zipconf.h file from my system. You can compare the
differences; it should be obvious. My system does not have "?"
characters injected into the typedefs, but more importantly (and this is
indeed important!), the types it detects/uses are completely different.
I'm not sure what's going on with your system, but it almost implies
that you have a separate set of include files that are "trumping" or
"overriding" the FreeBSD base system defaults.
--
| Jeremy Chadwick jdc@parodius.com |
| Parodius Networking http://www.parodius.com/ |
| UNIX Systems Administrator Mountain View, CA, USA |
| Making life hard for others since 1977. PGP 4BD6C0CB |
--FCuugMFkClbJLl1L--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110512065945.GA55199>
