Date: Tue, 4 Jan 2022 10:18:22 -0700 From: Warner Losh <imp@bsdimp.com> To: Xin LI <delphij@freebsd.org>, Jessica Clarke <jrtc27@freebsd.org> Cc: src-committers <src-committers@freebsd.org>, "<dev-commits-src-all@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: <CANCZdfpFrtehUpV6d0hvBFQkV3axSdur5QiKf8abuwOpFHP7eA@mail.gmail.com> In-Reply-To: <202201030209.20329qRc018384@gitrepo.freebsd.org> References: <202201030209.20329qRc018384@gitrepo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--000000000000a0034e05d4c4d3ff Content-Type: text/plain; charset="UTF-8" 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? Warner On Sun, Jan 2, 2022 at 7:09 PM Xin LI <delphij@freebsd.org> wrote: > The branch main has been updated by delphij: > > URL: > 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 by configure. */ > /* config.h.in. Generated from 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 > > --000000000000a0034e05d4c4d3ff Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">This breaks the cross building on linux.=C2=A0 The FREEBSD= _XLOCALE_SUPPORT was covering both the case of old FreeBSD as well as the c= ase of building on Linux/macOS. when we cross build, we define __FreeBSD_ve= rsion to be 0.<div><br></div><div>All that really needs protecting is the x= locale.h include though. And that's only needed on Linux / glibc, so th= e following patch should do the trick:</div><div><br></div><div>=C2=A0/* De= fine to 1 if you have the <xlocale.h> header file. */<br>+#ifndef lin= ux /* Cross building tools build with glibc on linux */<br>=C2=A0#define HA= VE_XLOCALE_H 1<br>+#endif<br></div><div><br></div><div>Any objections to co= mmitting that? Or should I create a phab review to discuss?</div><div><br><= /div><div>Warner</div><div><br></div></div><br><div class=3D"gmail_quote"><= div dir=3D"ltr" class=3D"gmail_attr">On Sun, Jan 2, 2022 at 7:09 PM Xin LI = <<a href=3D"mailto:delphij@freebsd.org">delphij@freebsd.org</a>> wrot= e:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0= .8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">The branch ma= in has been updated by delphij:<br> <br> URL: <a href=3D"https://cgit.FreeBSD.org/src/commit/?id=3D90266521018938b7b= 9f0003ba9a383b6920859e9" rel=3D"noreferrer" target=3D"_blank">https://cgit.= FreeBSD.org/src/commit/?id=3D90266521018938b7b9f0003ba9a383b6920859e9</a><b= r> <br> commit 90266521018938b7b9f0003ba9a383b6920859e9<br> Author:=C2=A0 =C2=A0 =C2=A0Xin LI <delphij@FreeBSD.org><br> AuthorDate: 2022-01-03 02:05:08 +0000<br> Commit:=C2=A0 =C2=A0 =C2=A0Xin LI <delphij@FreeBSD.org><br> CommitDate: 2022-01-03 02:05:08 +0000<br> <br> =C2=A0 =C2=A0 libmagic: Remove support for older FreeBSD where xlocale was = not available.<br> <br> =C2=A0 =C2=A0 The MINIMUM_SUPPORTED_OSREL is 1002501 (FreeBSD 10.3), and xl= ocale is<br> =C2=A0 =C2=A0 supported there.<br> <br> =C2=A0 =C2=A0 While I'm there, explicitly use config.h generated with -= -disable-bzlib<br> =C2=A0 =C2=A0 --disable-xzlib instead of deleting them manually.<br> <br> =C2=A0 =C2=A0 MFC after:=C2=A0 =C2=A0 =C2=A0 2 weeks<br> ---<br> =C2=A0lib/libmagic/config.h | 36 ++++++++++++++++++------------------<br> =C2=A01 file changed, 18 insertions(+), 18 deletions(-)<br> <br> diff --git a/lib/libmagic/config.h b/lib/libmagic/config.h<br> index 263fdfb571cd..90a9a115420c 100644<br> --- a/lib/libmagic/config.h<br> +++ b/lib/libmagic/config.h<br> @@ -1,13 +1,3 @@<br> -/* $FreeBSD$ */<br> -<br> -/* Get __FreeBSD_version. */<br> -#include <osreldate.h><br> -<br> -/* Only specific versions of FreeBSD support xlocale */<br> -#if __FreeBSD_version >=3D 1000002 || (__FreeBSD_version < 1000000 &= amp;& __FreeBSD_version >=3D 900506)<br> -#define FREEBSD_XLOCALE_SUPPORT 1<br> -#endif<br> -<br> =C2=A0/* config.h.=C2=A0 Generated from <a href=3D"http://config.h.in" rel= =3D"noreferrer" target=3D"_blank">config.h.in</a> by configure.=C2=A0 */<br= > =C2=A0/* <a href=3D"http://config.h.in" rel=3D"noreferrer" target=3D"_blank= ">config.h.in</a>.=C2=A0 Generated from <a href=3D"http://configure.ac" rel= =3D"noreferrer" target=3D"_blank">configure.ac</a> by autoheader.=C2=A0 */<= br> <br> @@ -17,6 +7,9 @@<br> =C2=A0/* Define in built-in ELF support is used */<br> =C2=A0#define BUILTIN_ELF 1<br> <br> +/* Enable bzlib compression support */<br> +/* #undef BZLIBSUPPORT */<br> +<br> =C2=A0/* Define for ELF core file support */<br> =C2=A0#define ELFCORE 1<br> <br> @@ -26,6 +19,9 @@<br> =C2=A0/* Define to 1 if you have the `asprintf' function. */<br> =C2=A0#define HAVE_ASPRINTF 1<br> <br> +/* Define to 1 if you have the <bzlib.h> header file. */<br> +/* #undef HAVE_BZLIB_H */<br> +<br> =C2=A0/* Define to 1 if you have the `ctime_r' function. */<br> =C2=A0#define HAVE_CTIME_R 1<br> <br> @@ -59,9 +55,7 @@<br> =C2=A0#define HAVE_FORK 1<br> <br> =C2=A0/* Define to 1 if you have the `freelocale' function. */<br> -#ifdef FREEBSD_XLOCALE_SUPPORT<br> =C2=A0#define HAVE_FREELOCALE 1<br> -#endif<br> <br> =C2=A0/* Define to 1 if fseeko (and presumably ftello) exists and is declar= ed. */<br> =C2=A0#define HAVE_FSEEKO 1<br> @@ -87,9 +81,15 @@<br> =C2=A0/* Define to 1 if you have the <inttypes.h> header file. */<br> =C2=A0#define HAVE_INTTYPES_H 1<br> <br> +/* Define to 1 if you have the `bz2' library (-lbz2). */<br> +/* #undef HAVE_LIBBZ2 */<br> +<br> =C2=A0/* Define to 1 if you have the `gnurx' library (-lgnurx). */<br> =C2=A0/* #undef HAVE_LIBGNURX */<br> <br> +/* Define to 1 if you have the `lzma' library (-llzma). */<br> +/* #undef HAVE_LIBLZMA */<br> +<br> =C2=A0/* Define to 1 if you have the `seccomp' library (-lseccomp). */<= br> =C2=A0/* #undef HAVE_LIBSECCOMP */<br> <br> @@ -99,6 +99,9 @@<br> =C2=A0/* Define to 1 if you have the `localtime_r' function. */<br> =C2=A0#define HAVE_LOCALTIME_R 1<br> <br> +/* Define to 1 if you have the <lzma.h> header file. */<br> +/* #undef HAVE_LZMA_H */<br> +<br> =C2=A0/* Define to 1 if mbrtowc and mbstate_t are properly declared. */<br> =C2=A0#define HAVE_MBRTOWC 1<br> <br> @@ -121,9 +124,7 @@<br> =C2=A0#define HAVE_MMAP 1<br> <br> =C2=A0/* Define to 1 if you have the `newlocale' function. */<br> -#ifdef FREEBSD_XLOCALE_SUPPORT<br> =C2=A0#define HAVE_NEWLOCALE 1<br> -#endif<br> <br> =C2=A0/* Define to 1 if you have the `pread' function. */<br> =C2=A0#define HAVE_PREAD 1<br> @@ -210,9 +211,7 @@<br> =C2=A0#define HAVE_UNISTD_H 1<br> <br> =C2=A0/* Define to 1 if you have the `uselocale' function. */<br> -#ifdef FREEBSD_XLOCALE_SUPPORT<br> =C2=A0#define HAVE_USELOCALE 1<br> -#endif<br> <br> =C2=A0/* Define to 1 if you have the `utime' function. */<br> =C2=A0#define HAVE_UTIME 1<br> @@ -252,9 +251,7 @@<br> =C2=A0#define HAVE_WORKING_VFORK 1<br> <br> =C2=A0/* Define to 1 if you have the <xlocale.h> header file. */<br> -#ifdef FREEBSD_XLOCALE_SUPPORT<br> =C2=A0#define HAVE_XLOCALE_H 1<br> -#endif<br> <br> =C2=A0/* Define to 1 if you have the <zlib.h> header file. */<br> =C2=A0#define HAVE_ZLIB_H 1<br> @@ -334,6 +331,9 @@<br> =C2=A0# endif<br> =C2=A0#endif<br> <br> +/* Enable xzlib compression support */<br> +/* #undef XZLIBSUPPORT */<br> +<br> =C2=A0/* Enable zlib compression support */<br> =C2=A0#define ZLIBSUPPORT 1<br> <br> </blockquote></div> --000000000000a0034e05d4c4d3ff--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfpFrtehUpV6d0hvBFQkV3axSdur5QiKf8abuwOpFHP7eA>