Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Jan 2022 10:21:46 -0800
From:      Xin Li <delphij@FreeBSD.org>
To:        Warner Losh <imp@bsdimp.com>, Jessica Clarke <jrtc27@freebsd.org>
Cc:        src-committers <src-committers@freebsd.org>, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org
Subject:   Re: git: 902665210189 - main - libmagic: Remove support for older FreeBSD where xlocale was not available.
Message-ID:  <77ae0cc3-ed4e-5233-f7ae-ea4fe3de1606@FreeBSD.org>
In-Reply-To: <CANCZdfpFrtehUpV6d0hvBFQkV3axSdur5QiKf8abuwOpFHP7eA@mail.gmail.com>
References:  <202201030209.20329qRc018384@gitrepo.freebsd.org> <CANCZdfpFrtehUpV6d0hvBFQkV3axSdur5QiKf8abuwOpFHP7eA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 1/4/22 09:18, Warner Losh wrote:
> This breaks the cross building on linux.  The FREEBSD_XLOCALE_SUPPORT 
> was covering both the case of old FreeBSD as well as the case of 
> building on Linux/macOS. when we cross build, we define 
> __FreeBSD_version to be 0.
> 
> All that really needs protecting is the xlocale.h include though. And 
> that's only needed on Linux / glibc, so the following patch should do 
> the trick:
> 
>   /* Define to 1 if you have the <xlocale.h> header file. */
> +#ifndef linux /* Cross building tools build with glibc on linux */
>   #define HAVE_XLOCALE_H 1
> +#endif
> 
> Any objections to committing that? Or should I create a phab review to 
> discuss?

Ah I didn't know that.  Yes that looks reasonable (I assume you would 
also restore the #ifdef's for HAVE_XLOCAL_H).

Cheers,

> Warner
> 
> 
> On Sun, Jan 2, 2022 at 7:09 PM Xin LI <delphij@freebsd.org 
> <mailto:delphij@freebsd.org>> wrote:
> 
>     The branch main has been updated by delphij:
> 
>     URL:
>     https://cgit.FreeBSD.org/src/commit/?id=90266521018938b7b9f0003ba9a383b6920859e9
>     <https://cgit.FreeBSD.org/src/commit/?id=90266521018938b7b9f0003ba9a383b6920859e9>;
> 
>     commit 90266521018938b7b9f0003ba9a383b6920859e9
>     Author:     Xin LI <delphij@FreeBSD.org>
>     AuthorDate: 2022-01-03 02:05:08 +0000
>     Commit:     Xin LI <delphij@FreeBSD.org>
>     CommitDate: 2022-01-03 02:05:08 +0000
> 
>          libmagic: Remove support for older FreeBSD where xlocale was
>     not available.
> 
>          The MINIMUM_SUPPORTED_OSREL is 1002501 (FreeBSD 10.3), and
>     xlocale is
>          supported there.
> 
>          While I'm there, explicitly use config.h generated with
>     --disable-bzlib
>          --disable-xzlib instead of deleting them manually.
> 
>          MFC after:      2 weeks
>     ---
>       lib/libmagic/config.h | 36 ++++++++++++++++++------------------
>       1 file changed, 18 insertions(+), 18 deletions(-)
> 
>     diff --git a/lib/libmagic/config.h b/lib/libmagic/config.h
>     index 263fdfb571cd..90a9a115420c 100644
>     --- a/lib/libmagic/config.h
>     +++ b/lib/libmagic/config.h
>     @@ -1,13 +1,3 @@
>     -/* $FreeBSD$ */
>     -
>     -/* Get __FreeBSD_version. */
>     -#include <osreldate.h>
>     -
>     -/* Only specific versions of FreeBSD support xlocale */
>     -#if __FreeBSD_version >= 1000002 || (__FreeBSD_version < 1000000 &&
>     __FreeBSD_version >= 900506)
>     -#define FREEBSD_XLOCALE_SUPPORT 1
>     -#endif
>     -
>       /* config.h.  Generated from config.h.in <http://config.h.in>; by
>     configure.  */
>       /* config.h.in <http://config.h.in>.  Generated from configure.ac
>     <http://configure.ac>; by autoheader.  */
> 
>     @@ -17,6 +7,9 @@
>       /* Define in built-in ELF support is used */
>       #define BUILTIN_ELF 1
> 
>     +/* Enable bzlib compression support */
>     +/* #undef BZLIBSUPPORT */
>     +
>       /* Define for ELF core file support */
>       #define ELFCORE 1
> 
>     @@ -26,6 +19,9 @@
>       /* Define to 1 if you have the `asprintf' function. */
>       #define HAVE_ASPRINTF 1
> 
>     +/* Define to 1 if you have the <bzlib.h> header file. */
>     +/* #undef HAVE_BZLIB_H */
>     +
>       /* Define to 1 if you have the `ctime_r' function. */
>       #define HAVE_CTIME_R 1
> 
>     @@ -59,9 +55,7 @@
>       #define HAVE_FORK 1
> 
>       /* Define to 1 if you have the `freelocale' function. */
>     -#ifdef FREEBSD_XLOCALE_SUPPORT
>       #define HAVE_FREELOCALE 1
>     -#endif
> 
>       /* Define to 1 if fseeko (and presumably ftello) exists and is
>     declared. */
>       #define HAVE_FSEEKO 1
>     @@ -87,9 +81,15 @@
>       /* Define to 1 if you have the <inttypes.h> header file. */
>       #define HAVE_INTTYPES_H 1
> 
>     +/* Define to 1 if you have the `bz2' library (-lbz2). */
>     +/* #undef HAVE_LIBBZ2 */
>     +
>       /* Define to 1 if you have the `gnurx' library (-lgnurx). */
>       /* #undef HAVE_LIBGNURX */
> 
>     +/* Define to 1 if you have the `lzma' library (-llzma). */
>     +/* #undef HAVE_LIBLZMA */
>     +
>       /* Define to 1 if you have the `seccomp' library (-lseccomp). */
>       /* #undef HAVE_LIBSECCOMP */
> 
>     @@ -99,6 +99,9 @@
>       /* Define to 1 if you have the `localtime_r' function. */
>       #define HAVE_LOCALTIME_R 1
> 
>     +/* Define to 1 if you have the <lzma.h> header file. */
>     +/* #undef HAVE_LZMA_H */
>     +
>       /* Define to 1 if mbrtowc and mbstate_t are properly declared. */
>       #define HAVE_MBRTOWC 1
> 
>     @@ -121,9 +124,7 @@
>       #define HAVE_MMAP 1
> 
>       /* Define to 1 if you have the `newlocale' function. */
>     -#ifdef FREEBSD_XLOCALE_SUPPORT
>       #define HAVE_NEWLOCALE 1
>     -#endif
> 
>       /* Define to 1 if you have the `pread' function. */
>       #define HAVE_PREAD 1
>     @@ -210,9 +211,7 @@
>       #define HAVE_UNISTD_H 1
> 
>       /* Define to 1 if you have the `uselocale' function. */
>     -#ifdef FREEBSD_XLOCALE_SUPPORT
>       #define HAVE_USELOCALE 1
>     -#endif
> 
>       /* Define to 1 if you have the `utime' function. */
>       #define HAVE_UTIME 1
>     @@ -252,9 +251,7 @@
>       #define HAVE_WORKING_VFORK 1
> 
>       /* Define to 1 if you have the <xlocale.h> header file. */
>     -#ifdef FREEBSD_XLOCALE_SUPPORT
>       #define HAVE_XLOCALE_H 1
>     -#endif
> 
>       /* Define to 1 if you have the <zlib.h> header file. */
>       #define HAVE_ZLIB_H 1
>     @@ -334,6 +331,9 @@
>       # endif
>       #endif
> 
>     +/* Enable xzlib compression support */
>     +/* #undef XZLIBSUPPORT */
>     +
>       /* Enable zlib compression support */
>       #define ZLIBSUPPORT 1
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?77ae0cc3-ed4e-5233-f7ae-ea4fe3de1606>