From owner-freebsd-stable@freebsd.org Mon May 1 08:17:40 2017 Return-Path: Delivered-To: freebsd-stable@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B0290D58E41 for ; Mon, 1 May 2017 08:17:40 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-210-50.reflexion.net [208.70.210.50]) (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 5FE1519C9 for ; Mon, 1 May 2017 08:17:40 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 31330 invoked from network); 1 May 2017 08:17:33 -0000 Received: from unknown (HELO mail-cs-02.app.dca.reflexion.local) (10.81.19.2) by 0 (rfx-qmail) with SMTP; 1 May 2017 08:17:33 -0000 Received: by mail-cs-02.app.dca.reflexion.local (Reflexion email security v8.40.0) with SMTP; Mon, 01 May 2017 04:17:33 -0400 (EDT) Received: (qmail 25477 invoked from network); 1 May 2017 08:17:33 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 1 May 2017 08:17:33 -0000 Received: from [192.168.1.106] (c-76-115-7-162.hsd1.or.comcast.net [76.115.7.162]) by iron2.pdx.net (Postfix) with ESMTPSA id A6F16EC771C; Mon, 1 May 2017 01:17:32 -0700 (PDT) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: Re: GCC + FreeBSD 11.0 Stable - stat.h does not have vm_ooffset_t definition Message-Id: <0630A9BC-429E-49F2-B0A0-2313A925B0B4@dsl-only.net> Date: Mon, 1 May 2017 01:17:31 -0700 Cc: dim@FreeBSD.org, Konstantin Belousov To: Gerald Pfeifer , FreeBSD-STABLE Mailing List X-Mailer: Apple Mail (2.3273) X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 May 2017 08:17:40 -0000 Gerald Pfeifer gerald at pfeifer.com wrote on Sun Apr 30 15:20:35 UTC 2017 : > That, or run the fixinc.sh script in > ./libexec/gcc/$TARGETTRIPLET/$VERSION/install-tools/fixinc.sh. fixinc.sh is designed to be run by (for the */* involved): bootstrap/libexec/gcc/*/*/install-tools/mkheaders and that mkheaders does more than just fixinc.sh as far as changing headers goes, such as limits.h and gsyslmits.h and syslimits.h . In more detail: The mkheaders core loop looks like: for ml in `cat ${itoolsdatadir}/fixinc_list`; do sysroot_headers_suffix=`echo ${ml} | sed -e 's/;.*$//'` multi_dir=`echo ${ml} | sed -e 's/^[^;]*;//'` subincdir=${incdir}${multi_dir} . ${itoolsdatadir}/mkheaders.conf if [ x${STMP_FIXINC} != x ] ; then TARGET_MACHINE="${target}" target_canonical="${target}" \ MACRO_LIST="${itoolsdatadir}/macro_list" \ /bin/sh ./fixinc.sh ${subincdir} \ ${isysroot}${SYSTEM_HEADER_DIR} ${OTHER_FIXINCLUDES_DIRS} rm -f ${subincdir}/syslimits.h if [ -f ${subincdir}/limits.h ]; then mv ${subincdir}/limits.h ${subincdir}/syslimits.h else cp ${itoolsdatadir}/gsyslimits.h ${subincdir}/syslimits.h fi fi cp ${itoolsdatadir}/include${multi_dir}/limits.h ${subincdir} done Note that mkheaders also provides various definitions to fixinc.sh, such as MACRO_LIST . Direct use of fixinc.sh likely requires providing appropriate alternate definitions for such. I'll note that: http://www.linuxfromscratch.org/lfs/view/7.1/chapter06/gcc.html reports as one of its steps (quote): The fixincludes script is known to occasionally erroneously attempt to "fix" the system headers installed so far. As the headers up to this point are known to not require fixing, issue the following command to prevent the fixincludes script from running: sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in (End quote) So seems that disabling fixinc.sh's use is fairly common when the headers are known to "not require fixing" (i.e., are known to already be gcc compliant). This still leaves the limits.h and gsystemlimits.h and syslimits.h code in place but does block most of the activity. === Mark Millard markmi at dsl-only.net