On 08/06/2012 11:39 PM, Alan McKinnon wrote:
> On Mon, 06 Aug 2012 23:00:33 +0800
> P Purkayastha<[email protected]>  wrote:
>
>> On 08/06/2012 04:45 PM, Carsten Haitzler (The Rasterman) wrote:
>>> actually both gentoo ebuild users and the tweakers end up on our
>>> doorstep asking us for help with their tweaked builds. on our
>>> irc/email lists. though it's nice to help - we help again and again
>>> and repeat ourselves that those options are for people who know
>>> exactly what they are doing with the option. if u dont know then
>>> accept defaults without a --enable or --disable in sight. :) u do
>>> more than that then deal with your own problems - they never do
>>> though. we end up with them. so the future is many fewer options.
>>> u'll be patching src to change things and that tends to be a
>>> barrier high enough to keep the tweakers out :)
>>>
>>
>> That's not quite true. At least with *good* ebuilds in current
>> Gentoo. *Good* ebuilds themselves provides configure options such
>> that the default configure options are sane. For example look at the
>> default options for evas:
>>
>> ~ยป eix -e evas
>> [I] media-libs/evas
>>        Available versions:  (~)1.0.1 (~)1.1.0 (~)1.2.1
>> (**)9999{tbz2}[1] {X altivec bidi +bmp +cache directfb doc +eet fbcon
>> +fontconfig gif gles +ico +jpeg mmx nls opengl +png +ppm +psd sdl sse
>> sse3 static-libs svg tga +threads tiff xcb xpm}
>>
>>
>> You see all the + things? It means that those configure options (USE
>> flags in Gentoo terminology) are all enabled by default and the rest
>> are disabled by default.
>
> Hmmm, not quite. Those are the defaults for the ebuild only.
>
> The user may well have enabled several of those flags system-wide in
> make.conf, such things as mmx, sdl, sse and xcb. In which case they
> will be enabled regardless of what the ebuild says.


Yes, that's true. But only a ricer will go ahead and enable flags that 
are destructive or not useful. If you have an old enough machine, you 
won't enable sse2, but you will probably enable sse and mmx. That makes 
sense. I don't enable sse3 on my make.conf because my cpu doesn't 
support that instruction set. On the other hand I know that my cpu can 
handle sse2 instructions, so I have enabled it. So, now evas, mplayer, 
etc can all make use of this fact.


> Better to look at other stuff in the ebuild, like this:
>
>
>
> src_configure() {
>          if use X ; then
>                  if use xcb ; then
>                          ewarn "You have enabled both 'X' and 'xcb', so
> we will use" ewarn "X as it's considered the most stable for evas"
>                  fi
>                  MY_ECONF="
>                          --disable-software-xcb
>                          $(use_enable opengl gl-xlib)
>                  "
>          elif use xcb ; then
>                  MY_ECONF="
>                          --disable-gl-xlib
>                          --enable-software-xcb
>                          $(use_enable opengl gl-xcb)
>                  "
>          else
>                  MY_ECONF="
>                          --disable-gl-xlib
>                          --disable-software-xcb
>                          --disable-gl-xcb
>                  "
>          fi


This part is clear. If the user enables xcb (the user will have X 
enabled anyway if he selects the desktop profile), then the ebuild will 
default to X instead of xcb. This is actually good! For instance, 
elementary doesn't work with xcb (so, no 'terminology' for you if you 
forcibly disabled X for e and efl!). If the user doesn't have X, then 
the user doesn't want gl or xcb either.


>
> #               $(use_enable cache metric-cache)
> #               $(use_enable cache word-cache)
>          MY_ECONF+="
>                  --disable-metric-cache
>                  --disable-word-cache
>                  $(use_enable altivec cpu-altivec)
>                  $(use_enable bidi fribidi)
>                  $(use_enable bmp image-loader-bmp)
>                  $(use_enable bmp image-loader-wbmp)
>                  $(use_enable directfb)
>                  $(use_enable doc)
>                  $(use_enable eet font-loader-eet)
>                  $(use_enable eet image-loader-eet)
>                  $(use_enable fbcon fb)
>                  $(use_enable fontconfig)
>                  $(use_enable gles gl-flavor-gles)
>                  $(use_enable gles gles-variety-sgx)
>                  $(use_enable gif image-loader-gif)
>                  $(use_enable ico image-loader-ico)
>                  $(use_enable jpeg image-loader-jpeg)
>                  $(use_enable mmx cpu-mmx)
>                  $(use_enable png image-loader-png)
>                  $(use_enable ppm image-loader-pmaps)
>                  $(use_enable psd image-loader-psd)
>                  $(use_enable sdl software-sdl)
>                  $(use_enable sse cpu-sse)
>                  $(use_enable sse3 cpu-sse3)
>                  $(use_enable svg image-loader-svg)
>                  $(use_enable tga image-loader-tga)
>                  $(use_enable tiff image-loader-tiff)
>                  $(use_enable threads pthreads)
>                  $(use_enable threads async-events)
>                  $(use_enable threads async-preload)
>                  $(use_enable threads async-render)
>                  $(use_enable X software-xlib)
>                  $(use_enable xpm image-loader-xpm)
>                  --enable-evas-magic-debug \
>                  --enable-static-software-generic \
>                  --enable-buffer \
>                  --enable-cpu-c \
>                  --enable-scale-sample \
>                  --enable-scale-smooth \
>                  --enable-convert-8-rgb-332 \
>                  --enable-convert-8-rgb-666 \
>                  --enable-convert-8-rgb-232 \
>                  --enable-convert-8-rgb-222 \
>                  --enable-convert-8-rgb-221 \
>                  --enable-convert-8-rgb-121 \
>                  --enable-convert-8-rgb-111 \
>                  --enable-convert-16-rgb-565 \
>                  --enable-convert-16-rgb-555 \
>                  --enable-convert-16-rgb-444 \
>                  --enable-convert-16-rgb-rot-0 \
>                  --enable-convert-16-rgb-rot-270 \
>                  --enable-convert-16-rgb-rot-90 \
>                  --enable-convert-24-rgb-888 \
>                  --enable-convert-24-bgr-888 \
>                  --enable-convert-32-rgb-8888 \
>                  --enable-convert-32-rgbx-8888 \
>                  --enable-convert-32-bgr-8888 \
>                  --enable-convert-32-bgrx-8888 \
>                  --enable-convert-32-rgb-rot-0 \
>                  --enable-convert-32-rgb-rot-270 \
>                  --enable-convert-32-rgb-rot-90 \
>                  --enable-image-loader-generic \
>                  --disable-image-loader-edb
>                  --disable-static-software-16
>                  --disable-software-16-x11"
>
>          enlightenment_src_configure
> }
>
>
>
>
> There may well be crap in there that makes Raster cringe.

You have to compare this part with the configure.ac in evas to see how 
closely the options matches the suggestions and defaults there.


The ebuilds in enlightenment overlay are not made in random. They are 
actually pretty good and follow the defaults in configure.ac. This is 
true at least for the core packages. I don't know about other packages.


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
enlightenment-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to