Kris Kennaway wrote:
> On Sat, 16 Sep 2000, Steve Kargl wrote:
> > I'm not fluent in FSF configure scripts, but it looks like
> > configure tests the compiler for specific features to determine
> > CPU type.  The gross hack would be to add CPU_TYPE="generic"
> > to /etc/defaults/make.conf, and allow users to define CPU_TYPE
> > in /etc/make.conf.  It appears that for example CPU_TYPE="alpha"
> > is insufficient because each cpu type 21064, 21164, 21264 has
> > tuned asm code.  The bmake file would then have a cascade of
> > #ifdef CPU_TYPE to pull in the right code.
> > 
> > Would a CPU_TYPE variable be useful for others parts of "make world"?
> The issue is that you have all sorts of possibilities like i386, i486,
> pentium, pentiumpro, pentiummmx, k6, ... which you need to specify in
> order of preference. If someone would care to submit example code of how
> to handle this nicely from both the user and makefile perspective I'd be
> grateful :-)

I need to review the gmp documents again, but I not sure
the preference order is much of an issue.  By default,
CPU_TYPE="generic" would build the C code, which should work
on all architectures supported by FreeBSD.  If a user explicitly
sets CPU_TYPE in /etc/make.conf, then the ordering would be
CPU_TYPE then generic.  There is not gray area.  For example,
I have an athlon processor, so libgmp.a would have a preferred
order of athlon, generic.

The question that I don't know the answer to is what happens if
someone really screws up and sets CPU_TYPE to 21264 when
he has an i386.  I suspect that this would break make world, so
it will be easily detected.

Another possibility would be to specify the preference order
in a CPU_ORDER variable.  For example, CPU_ORDER="k6,i386,pentium"
and always add "generic" has the last target.  The major problem
with this is that the parsing of CPU_ORDER suggests that you have
to generate Makefile on the fly otherwise Makefile would be a
big bowl of spaghetti.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to