Top posting as I'm not really replying to your statements directly.

I do agree with everything you said, and raster and I have had this
good-natured argument about Gentoo before. I don't know if 
the argument was won but it sure wasn't by me :-)

I just wanted to add that for the most part devs out there do a good job of 
writing code and build systems. For the most part ebuild
maintainers do an equally good job of keeping ebuilds straight (we'll
ignore the exceptions, they will always be around).

I use source distros wherever I can - Gentoo and FreeBSD. So I need
clear and explicit ./configure options without automagic dependencies.
I want to tweak software builds to support the things I want to support
in a nice safe manner without being beholden to whatever a binary
distro packager thinks I should have (I'm old school in that regard and
not likely to change...)

Maybe the things I want are at odds with most of the rest of the
planet. e17 is well-behaved when it comes to being built, but sadly not
everything else out there has the same quality levels. If you use
Gentoo, you likely know how much automagic build crazy is in the world
(and why it is an evil that must be driven from the world and burnt to
a cinder)



On Tue, 07 Aug 2012 00:08:06 +0800
P Purkayastha <ppu...@gmail.com> wrote:

> On 08/06/2012 11:39 PM, Alan McKinnon wrote:
> > On Mon, 06 Aug 2012 23:00:33 +0800
> > P Purkayastha<ppu...@gmail.com>  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 enlightenment-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-users



-- 
Alan McKinnon
alan.mckin...@gmail.com


------------------------------------------------------------------------------
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
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to