[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Are we losing users to Gentoo(tangent)?



m,

> The optimise flags in Gentoo are really just variables you set that are 
> passed to gcc and configure when it compiles the sources out of portage. So 
> if gcc can optimise for ultrasparc or risc, Gentoo should be able to as 
> well.

Do you know how many of these variables are ignored or modified to get
around bugs?

CFLAGS are not magic and can seriously affect system stability...

http://forums.gentoo.org/viewtopic.php?t=5717

Someone please do a number comparison of performance or I'll have to do
it myself :)

> For example, I have the following USE flags set: 
> cdr dga samba jpeg png 3dnow mmx mpeg quicktime truetype xv x86 -alsa

That's more than just compiler flags.
 
> The above determine how apps configure for compiling. I don't use ALSA, so 
> nothing on my system compiles with ALSA support.

Faire enough.
 
> My CFLAGS are:
> 
> -march=athlon-xp -O3 -pipe
> 
> The above are directly passed through to gcc. The man page for gcc has the 
> full list of options you can pass through to it.

Arbitrary specification of CFLAGS is going to break something at some
point. Debian developers continually work around bugs through the use of
these option variables.

While some options are cool to have I would envision the following
system in Debian:

apt-get install xxxx
*under the hood*
a. Extract build info from .deb (more meta-data)
b. Check to see if build style matched /etc/apt/build.conf 
   Could be application specific or global or "theme" specific.
c. If it didn't match then:
   apt-get source xxxxx
   apt-get build-dep xxxxx  <--- Recursion could occur here.
   apt-get build-essential (maybe) <--- Recursion could occur here.
   cd xxxxx's source tree
   dpkg-buildpackage -b 
	= Here is where I add a special interface to debian/rules to 
	= allow the host system to query the packages available levers
	= and twiddle knobs that we can play with. The changes to the
	= the knobs can be stored in /etc/apt/build.conf
	= Default knobs are CC, CFLAGS, CXX, and more...
   cd ..
   dpkg -i xxxxx.deb

Done. Debian already has a configurable source building system :}
And we already distribute a 180MB net-install ISO which we can call 
Debian Stage 3 Build system :}

Note that Danjou worked on a gcc wrapper to do some of this, but I still
think that we need a framework inplace to do the "item" configuration in
a generic fashion...

http://apt-build.tuxfamily.org/

Damn, if it wasn't late into the morning I'd begin hacking on this just
to show the world how easy it would be...

And I'd also finish "ABCDE" for debian (Advanced Build Configuration and
Description Engine). Yes that's a pun on how easy this would be with
debian right now :)

c.



Reply to: