Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 07 Jul 2009 08:38:55 +0200
From:      Bartosz Stec <admin@kkip.pl>
To:        CmdLnKid <cmdlnkid@gmail.com>
Cc:        freebsd-stable@freebsd.org, sulfurfff@gmail.com
Subject:   Re: upgrading ports without recompiling
Message-ID:  <4A52ED7F.5030904@kkip.pl>
In-Reply-To: <alpine.BSF.2.00.0907062211190.95659@qvzrafvba.5c.ybpny>
References:  <ed5c0bbe0907060904m2a93aab7r9b17b8b5529dd8f0@mail.gmail.com>	<4A523185.90007@smo.de> <alpine.BSF.2.00.0907062211190.95659@qvzrafvba.5c.ybpny>

next in thread | previous in thread | raw e-mail | index | archive | help
CmdLnKid pisze:
> On Mon, 6 Jul 2009 13:16 -0000, pj wrote:
>
>> Ishmael F.E. wrote:
>> [...]
>>> .
>>> so, ¿how can I upgrade the ports?
>>> unfortunatley I don't have time to compile my 64bit system
You don't need to compile whole OS to compile ports, if this is what you 
had in mind.
>>
>> Have you looked at the -PP option of portupgrade?
>> I don't know how portmaster handles upgrades using packages only.
>>
>
> You could look into devel/ccache & devel/distcc if you would like to 
> speed up your compile times. Of course your first compile will always 
> be the slowest one but everyone after that will be faster. This is not 
> always advised as a good solution and has been known to throw some 
> pretty weird compiler bugs and also fail while compiling certain ports 
> but that is tweakable through /etc/make.conf*.
>
Well, I heard about some problems with ccache, although I personally 
experienced only one of them - fail when building world on AMD64. Here's 
my make.conf, feel free to give it try after installing ccache (Try to 
set MAKEOPTS = CPU cores +1, and set appropriate CPUTYPE):

    CPUTYPE=athlon64
    MAKEOPTS=-j3

    # USE CCACHE
    .if !defined(NOCCACHE)
    CC=/usr/local/libexec/ccache/world-cc
    CXX=/usr/local/libexec/ccache/world-c++
    .endif

    # default build settings for ports collection
    .if ${.CURDIR:M*/ports/*}
    CFLAGS= -O2 -fno-strict-aliasing -pipe -funroll-loops
    -fomit-frame-pointer
    CXXFLAGS= -O2 -fno-strict-aliasing -pipe -funroll-loops
    .endif

    # default build settings for base system
    .if ${.CURDIR:M*/usr/src/*} || ${.CURDIR:M*/usr/obj/*}
    CFLAGS=-O2 -fno-strict-aliasing -pipe
    COPTFLAGS=-O2 -fno-strict-aliasing -pipe
    CXXFLAGS=${CFLAGS}
    .endif

In case of any problem with specific port (or world) type in shell:

    # setenv NOCCACHE

before build. This should give you maximum compile speed in case when 
package is unavailable while using portupgrade -afP

-- 
Bartosz Stec





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4A52ED7F.5030904>