From owner-svn-src-head@FreeBSD.ORG Tue Jan 13 20:37:58 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 36F78A1A; Tue, 13 Jan 2015 20:37:58 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0901592E; Tue, 13 Jan 2015 20:37:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t0DKbvUh009966; Tue, 13 Jan 2015 20:37:57 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t0DKbvb1009965; Tue, 13 Jan 2015 20:37:57 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201501132037.t0DKbvb1009965@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Tue, 13 Jan 2015 20:37:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r277147 - head/lib/libmagic X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Jan 2015 20:37:58 -0000 Author: dim Date: Tue Jan 13 20:37:57 2015 New Revision: 277147 URL: https://svnweb.freebsd.org/changeset/base/277147 Log: Since the merge of file 5.21 in r276415 and r276416, stable/9 and stable/10 cannot be built from FreeBSD 8.x. This is because the build-tools stage requires libmagic, but lib/libmagic/config.h was generated on head, and it now enables using the xlocale.h APIs, which are not supported on 8.x (and on 9.x before __FreeBSD_version 900506). See also the start of this thread on -stable: https://lists.freebsd.org/pipermail/freebsd-stable/2015-January/081521.html To fix this, conditionalize the use of xlocale.h APIs to make bootstrapping from older FreeBSD versions work correctly. Reviewed by: delphij MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D1518 Modified: head/lib/libmagic/config.h Modified: head/lib/libmagic/config.h ============================================================================== --- head/lib/libmagic/config.h Tue Jan 13 19:54:47 2015 (r277146) +++ head/lib/libmagic/config.h Tue Jan 13 20:37:57 2015 (r277147) @@ -1,5 +1,13 @@ /* $FreeBSD$ */ +/* Get __FreeBSD_version. */ +#include + +/* 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. */ @@ -48,7 +56,9 @@ #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 @@ -102,7 +112,9 @@ #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 @@ -195,7 +207,9 @@ #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 @@ -235,7 +249,9 @@ #define HAVE_WORKING_VFORK 1 /* Define to 1 if you have the header file. */ +#ifdef FREEBSD_XLOCALE_SUPPORT #define HAVE_XLOCALE_H 1 +#endif /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1