From owner-freebsd-ports@FreeBSD.ORG Sun Jul 29 21:34:40 2012 Return-Path: Delivered-To: freebsd-ports@FreeBSD.org Received: from mx2.freebsd.org (mx2.freebsd.org [IPv6:2001:4f8:fff6::35]) by hub.freebsd.org (Postfix) with ESMTP id 8E3FA106564A for ; Sun, 29 Jul 2012 21:34:40 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from opti.dougb.net (hub.freebsd.org [IPv6:2001:4f8:fff6::36]) by mx2.freebsd.org (Postfix) with ESMTP id 2F29A14DAC6; Sun, 29 Jul 2012 21:34:40 +0000 (UTC) Message-ID: <5015AC6F.2040001@FreeBSD.org> Date: Sun, 29 Jul 2012 14:34:39 -0700 From: Doug Barton Organization: http://SupersetSolutions.com/ User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:14.0) Gecko/20120728 Thunderbird/14.0 MIME-Version: 1.0 To: Gerald Pfeifer References: <4FD004F7.6090401@FreeBSD.org> <4FD37AD7.7010304@FreeBSD.org> <4FFC5189.1000102@dougbarton.us> In-Reply-To: X-Enigmail-Version: 1.4.2 OpenPGP: id=1A1ABC84 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-ports@FreeBSD.org Subject: Re: lang/gcc46 building stuff in $TMPDIR X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 29 Jul 2012 21:34:40 -0000 On 07/29/2012 13:50, Gerald Pfeifer wrote: > On Sat, 9 Jun 2012, Doug Barton wrote: >>> Are you saying you actually noticed some leftovers in /tmp, or that >>> there "just" has been more at certain points in time than you would >>> expect? >> I finally had time to watch this closely, and found the culprit(s). >> While building the port creates a lot of files in /tmp (I think it's >> actually $TMP, not $TMPDIR). A lot of them are *.s files, most of which >> are small, but one of which grew to over 64M, which is what caused my >> build to fail. It also creates a variety of other files, including .o, >> .c, .ld, .le, .zip, etc. >> >> The java OPTION also creates some pretty big jar directories, I had one >> grow to 49M, which didn't crash my build, but might blow up someone with >> a smaller /tmp. >> >> My suggestion would be to create a directory in $WRKDIR and assign $TMP >> (or whatever the right envar is) to it. > > That could be done, but has one significant drawback: those of us > who have /tmp on fastest storage, and $WRKDIR on slower storage, > could lose a lot of speed. Have you measured that? > Also, while I understand your situation, I am very hesitant to change > any defaults given that I have not seen any other user reports, not > even upstream. It's doubtful that others have a tiny /tmp like I do, but reproducing the problem is trivial. > Note: according to the GCC documentation > > If `TMPDIR' is set, it specifies the directory to use for temporary > files. GCC uses temporary files to hold the output of one stage of > compilation which is to be used as input to the next stage: for > example, the output of the preprocessor, which is the input to the > compiler proper. > > Does it make a difference for you if you set TMPDIR to some location > where you have more storage? Obviously. :) > On Tue, 10 Jul 2012, Doug Barton wrote: >> Just tried building the latest, same error. Did I misunderstand that >> something was supposed to be different? > > I believe lang/gcc47 has seen a split of one large, automatically > generated, source file which is what you may have run into. I haven't gotten into 47 yet. > Another might be reducing the amount of parallel building on your > system. > > Finally, you indicated that you also saw Java create a large > temporary file. If you want to avoid building Java, the GCC > ports have an option to disable Java. Let me actually take > this as a trigger to convert this to the new options framework. Reducing functionality to handle build infrastructure problems is not a desirable solution. But thanks for the response in any case. :) Doug -- I am only one, but I am one. I cannot do everything, but I can do something. And I will not let what I cannot do interfere with what I can do. -- Edward Everett Hale, (1822 - 1909)