diff options
author | Emil Velikov <[email protected]> | 2014-11-10 18:59:34 +0000 |
---|---|---|
committer | Emil Velikov <[email protected]> | 2014-11-26 20:09:09 +0000 |
commit | c642e87d9f423c78bf631410e858f675292ba0c4 (patch) | |
tree | 085800f7016c2f621169166d3638bd4dcfc379ab /src/gallium/auxiliary | |
parent | 86a51eb86177971d9a0c0f0028cc143b13486a07 (diff) |
auxiliary/vl: rework the build of the VL code
Rather than shoving all the VL code for non-VL targets, increasing
their size, just split it out and use it when needed. This gives us
the side effect of building vl_winsys_dri.c once, dropping a few
automake warnings, and reducing the size of the dri modules as below
text data bss dec hex filename
5850573 187549 1977928 8016050 7a50b2 before/nouveau_dri.so
5508486 187100 391240 6086826 5ce0aa after/nouveau_dri.so
The above data is for a nouveau + swrast + kms_swrast 'megadriver'.
v2: Do not include the vl sources in the auxiliary library.
v3: Rebase. Add nine.
Cc: Christian König <[email protected]>
Signed-off-by: Emil Velikov <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary')
-rw-r--r-- | src/gallium/auxiliary/Android.mk | 2 | ||||
-rw-r--r-- | src/gallium/auxiliary/Makefile.am | 26 | ||||
-rw-r--r-- | src/gallium/auxiliary/Makefile.sources | 1 | ||||
-rw-r--r-- | src/gallium/auxiliary/SConscript | 2 |
4 files changed, 26 insertions, 5 deletions
diff --git a/src/gallium/auxiliary/Android.mk b/src/gallium/auxiliary/Android.mk index 2e7d7a8c701..0bc18317086 100644 --- a/src/gallium/auxiliary/Android.mk +++ b/src/gallium/auxiliary/Android.mk @@ -30,7 +30,7 @@ include $(CLEAR_VARS) LOCAL_SRC_FILES := \ $(C_SOURCES) \ - $(VL_SOURCES) + $(VL_STUB_SOURCES) LOCAL_C_INCLUDES := \ $(GALLIUM_TOP)/auxiliary/util \ diff --git a/src/gallium/auxiliary/Makefile.am b/src/gallium/auxiliary/Makefile.am index 8010d9b2ae4..4085e510bd1 100644 --- a/src/gallium/auxiliary/Makefile.am +++ b/src/gallium/auxiliary/Makefile.am @@ -18,7 +18,6 @@ AM_CXXFLAGS = $(VISIBILITY_CXXFLAGS) libgallium_la_SOURCES = \ $(C_SOURCES) \ - $(VL_SOURCES) \ $(GENERATED_SOURCES) if HAVE_MESA_LLVM @@ -52,6 +51,28 @@ noinst_LTLIBRARIES += libgalliumvl_stub.la libgalliumvl_stub_la_SOURCES = \ $(VL_STUB_SOURCES) +if NEED_GALLIUM_VL + +noinst_LTLIBRARIES += libgalliumvl.la + +libgalliumvl_la_CFLAGS = \ + $(AM_CFLAGS) \ + $(VL_CFLAGS) \ + $(LIBDRM_CFLAGS) \ + $(GALLIUM_PIPE_LOADER_DEFINES) \ + -DPIPE_SEARCH_DIR=\"$(libdir)/gallium-pipe\" + +if HAVE_GALLIUM_STATIC_TARGETS +libgalliumvl_la_CFLAGS += \ + -DGALLIUM_STATIC_TARGETS=1 + +endif # HAVE_GALLIUM_STATIC_TARGETS + +libgalliumvl_la_SOURCES = \ + $(VL_SOURCES) + +endif + EXTRA_DIST = \ Android.mk SConscript \ indices/u_indices.c \ @@ -62,5 +83,4 @@ EXTRA_DIST = \ util/u_format.csv \ util/u_format_pack.py \ util/u_format_parse.py \ - util/u_format_table.py \ - vl/vl_winsys_dri.c + util/u_format_table.py diff --git a/src/gallium/auxiliary/Makefile.sources b/src/gallium/auxiliary/Makefile.sources index eefb013630f..862626461b1 100644 --- a/src/gallium/auxiliary/Makefile.sources +++ b/src/gallium/auxiliary/Makefile.sources @@ -335,6 +335,7 @@ VL_SOURCES := \ vl/vl_video_buffer.h \ vl/vl_vlc.h \ vl/vl_winsys.h \ + vl/vl_winsys_dri.c \ vl/vl_zscan.c \ vl/vl_zscan.h diff --git a/src/gallium/auxiliary/SConscript b/src/gallium/auxiliary/SConscript index 0acd3c7d285..6cb6b8c6565 100644 --- a/src/gallium/auxiliary/SConscript +++ b/src/gallium/auxiliary/SConscript @@ -36,7 +36,7 @@ env.Depends('util/u_format_table.c', [ source = env.ParseSourceList('Makefile.sources', [ 'C_SOURCES', - 'VL_SOURCES', + 'VL_STUB_SOURCES', 'GENERATED_SOURCES' ]) |