portmaster, portupgrade, etc

Steve Kargl sgk at troutmask.apl.washington.edu
Thu Oct 5 14:51:18 UTC 2017


On Thu, Oct 05, 2017 at 11:35:58AM +0300, Konstantin Belousov wrote:
> On Wed, Oct 04, 2017 at 05:27:11PM -0700, Don Lewis wrote:
> > > The system in question is my last i686 laptop, which I 
> > > use for libm development and testing.  Once I cannot use
> > > that laptop (whether hardware failure or inability to 
> > > update the installed ports), I'll stop worrying about a
> > > functional libm on 32-bit hardware.
> > 
> > As an aside, this sort of thing could be done in an i386 VM or maybe an
> > i386 jail on amd64 hardware.
> 
> You do not need even a jail for this. Base cc -m32 works on amd64 for
> long time, and 32bit binaries can be executed from host environment,
> assuming all third-party libs are provided somewhere in the 32bit
> variant.
> 
> The environment with regard to the hardware configuration should be
> identical to modern i386-arch machine with SSE2.  Incompatibilities are
> considered as bugs and are usually fixed fast when reported.

Does this required WITH_LIB32=yes in src.conf?

More concerning is that the FPU on i686 is set-up in npx to
use 53-bit precision instead of 64-bit.  See x86/fpu.h where
there is a large comment and the settings

#define __INITIAL_FPUCW__       0x037F
#define __INITIAL_FPUCW_I386__  0x127F
#define __INITIAL_NPXCW__       __INITIAL_FPUCW_I386__

Does cc -m32 on amd64 cause the amd64 fpu to act (exactly?) like
and i387?

-- 
Steve
20170425 https://www.youtube.com/watch?v=VWUpyCsUKR4
20161221 https://www.youtube.com/watch?v=IbCHE-hONow


More information about the freebsd-ports mailing list