I completely agree.
Building everything shared might speed up the build process a little bit
and save some space, but for the cost of having to handle allot of
rather small shared libraries where which each clashing the symbol space
of any application using these drivers with a bunch of unnecessary symbols.
Building everything as one big blob sounds like the better idea.
Christian.
Am 12.09.2013 02:03, schrieb Marek Olšák:
BTW, the build system fixes would be good to have anyway, but I'm not
an expert on the Mesa build system.
Marek
On Thu, Sep 12, 2013 at 1:51 AM, Marek Olšák <mar...@gmail.com> wrote:
I don't like this. I prefer to have one big blob for whole Mesa as
discussed on Eric's blog:
http://anholt.livejournal.com/43652.html
I have no problem with longer compile times for release builds if I
get a little bit higher CPU performance with link-time optimizations.
And for debug builds, we can stick to standard "-O2 -g" or "-O0 -g".
Marek
On Thu, Sep 12, 2013 at 12:32 AM, Johannes Obermayr
<johannesoberm...@gmx.de> wrote:
[PATCH 01/21] ilo: Fix out-of-tree build.
[PATCH 02/21] Suppress clang's warnings about unused CFLAGS and CXXFLAGS.
[PATCH 03/21] configure.ac: Save user {C,CXX}FLAGS and append them at end.
[PATCH 04/21] radeon: Build and use libradeon the right way.
Link libradeon only once in egl-static
[PATCH 05/21] gallium/targets: Make use of prebuilt libdricommon.la.
Avoid duplicate build.
[PATCH 06/21] Drop support for --enable-static / --disable-shared.
[PATCH 07/21] gallium/auxiliary: Build libgallium shared.
Hundreds of symbols to be PUBLIC. But saves on a full build
19 x ~ 1.8 MB.
[PATCH 08/21] Drop last parts of compatibility for the old Mesa build
I want it to avoid these stupid symlinks while distro build but
with more work on follow-up patches it should be possible to keep
[PATCH 09/21] mapi: Build libglapi always shared.
I assume it could be improved later
[PATCH 10/21] mesa: Build libmesa shared.
Hundreds of PUBLICs but we can get rid of libdricore and get an
libmesadri which depends as well as libmesagallium on a
libmesacore.
This really speeds up build since duplicate build in libdricore
with all PUBLIC can be avoided.
Also dlopen classic drivers should be faster.
[PATCH 11/21] Install all internal shared libs to $(libdir)/mesa-$VERSION.
[PATCH 12/21] Also do it for egl_gallium.so, pipe_*.so and gbm_gallium_drm.
[PATCH 13/21] Makefile.am: s:-no-undefined:-Wl,--no-undefined to make it work.
libtool will set it back to allow_undefined=yes in
func_mode_link ()
otherwise.
[PATCH 14/21] gallium/drivers: Build libs -shared.
[PATCH 15/21] vdpau,xvmc: Add install-data-hooks to remove unneccessary
symlinks.
libvdpau_*.so.1 and libXvMC*.so libs are dlopened by wrappers.
Nothing should link them directly.
[PATCH 16/21] glx: Get rid of libglx.la.
[PATCH 17/21] gbm: Get rid of libgbm_dri.la.
[PATCH 18/21] i915: Conditionally build an i915g driver instead of
[PATCH 19/21] freedreno: Make print_sequence a macro to fix clang.
[PATCH 20/21] freedreno: One Makefile.am with a Makefile.sources is
[PATCH 21/21] clover: Force gcc and g++ to fix clang builds.
openSUSE x86_64 binary RPMs will look like this:
$ du -a etc/ usr/
4 etc/drirc
8 etc/
88 usr/lib64/libXvMCr600.so
140 usr/lib64/libEGL.so.1.0.0
0 usr/lib64/libGL.so.1.2
380 usr/lib64/libGL.so.1.2.0
0 usr/lib64/libGLESv1_CM.so.1
88 usr/lib64/libXvMCr300.so
36 usr/lib64/libXvMCsoftpipe.so
212 usr/lib64/mesa-9.2.0/libllvmpipe.so
608 usr/lib64/mesa-9.2.0/libmesadri.so
324 usr/lib64/mesa-9.2.0/libmesagallium.so
1140 usr/lib64/mesa-9.2.0/libnouveau.so
60 usr/lib64/mesa-9.2.0/libtrace.so
60 usr/lib64/mesa-9.2.0/pipe_r600.so
308 usr/lib64/mesa-9.2.0/libr300.so
20 usr/lib64/mesa-9.2.0/libgalahad.so
16 usr/lib64/mesa-9.2.0/libnoop.so
32 usr/lib64/mesa-9.2.0/librbug.so
60 usr/lib64/mesa-9.2.0/pipe_r300.so
60 usr/lib64/mesa-9.2.0/pipe_radeonsi.so
164 usr/lib64/mesa-9.2.0/egl_gallium.so
152 usr/lib64/mesa-9.2.0/libglapi.so
136 usr/lib64/mesa-9.2.0/libradeonsi.so
16 usr/lib64/mesa-9.2.0/libr300-helper.so
16 usr/lib64/mesa-9.2.0/libidentity.so
8 usr/lib64/mesa-9.2.0/pipe_nouveau.so
184 usr/lib64/mesa-9.2.0/libsvga.so
1888 usr/lib64/mesa-9.2.0/libgallium.so
20 usr/lib64/mesa-9.2.0/gbm_gallium_drm.so
1016 usr/lib64/mesa-9.2.0/libr600.so
20 usr/lib64/mesa-9.2.0/pipe_vmwgfx.so
3228 usr/lib64/mesa-9.2.0/libmesacore.so
152 usr/lib64/mesa-9.2.0/libsoftpipe.so
8 usr/lib64/mesa-9.2.0/pipe_swrast.so
9912 usr/lib64/mesa-9.2.0
0 usr/lib64/libOSMesa.so.8
0 usr/lib64/libxatracker.so.1
64 usr/lib64/dri/swrast_dri.so
184 usr/lib64/dri/nouveau_vieux_dri.so
116 usr/lib64/dri/r600_dri.so
288 usr/lib64/dri/radeon_dri.so
876 usr/lib64/dri/i965_dri.so
320 usr/lib64/dri/r200_dri.so
116 usr/lib64/dri/r300_dri.so
120 usr/lib64/dri/radeonsi_dri.so
72 usr/lib64/dri/nouveau_dri.so
4 usr/lib64/dri/updates/README.updates
8 usr/lib64/dri/updates
324 usr/lib64/dri/i915_dri.so
84 usr/lib64/dri/vmwgfx_dri.so
2576 usr/lib64/dri
28 usr/lib64/libgbm.so.1.0.0
0 usr/lib64/libGL.so.1
8 usr/lib64/libwayland-egl.so.1.0.0
116 usr/lib64/libxatracker.so.1.0.0
32 usr/lib64/libOSMesa.so.8.0.0
28 usr/lib64/libGLESv1_CM.so.1.1.0
0 usr/lib64/libGLESv2.so.2
112 usr/lib64/vdpau/libvdpau_radeonsi.so.1
112 usr/lib64/vdpau/libvdpau_r300.so.1
68 usr/lib64/vdpau/libvdpau_softpipe.so.1
68 usr/lib64/vdpau/libvdpau_nouveau.so.1
112 usr/lib64/vdpau/libvdpau_r600.so.1
476 usr/lib64/vdpau
32 usr/lib64/libGLESv2.so.2.0.0
0 usr/lib64/libEGL.so.1
36 usr/lib64/libXvMCnouveau.so
0 usr/lib64/libwayland-egl.so.1
0 usr/lib64/libgbm.so.1
13980 usr/lib64
28 usr/share/doc/packages/Mesa/COPYING
4 usr/share/doc/packages/Mesa/README.THREADS
8 usr/share/doc/packages/Mesa/README.QUAKE
4 usr/share/doc/packages/Mesa/README.MITS
4 usr/share/doc/packages/Mesa/README.UVD
12 usr/share/doc/packages/Mesa/README.CYGWIN
64 usr/share/doc/packages/Mesa
68 usr/share/doc/packages
72 usr/share/doc
76 usr/share
14060 usr/
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev