summaryrefslogtreecommitdiff
path: root/src/glsl/Makefile.am
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2013-01-14 16:16:00 -0800
committerMatt Turner <mattst88@gmail.com>2013-01-22 14:33:16 -0800
commitcc9f609cb9175e727b91f8dffa5800818be582da (patch)
treeb85088c889522f1a914f5fd55c24fa3c091248d1 /src/glsl/Makefile.am
parent569f0e400aca0e7bfd13374384fb8d92caf869bc (diff)
downloadmesa-cc9f609cb9175e727b91f8dffa5800818be582da.tar.gz
glsl/build: Don't build builtin_compiler separately if not cross compiling
Reduces the number of times that src/glsl/ is compiled when not cross compiling. Tested-by: Andreas Boll <andreas.boll.dev@gmail.com>
Diffstat (limited to 'src/glsl/Makefile.am')
-rw-r--r--src/glsl/Makefile.am29
1 files changed, 27 insertions, 2 deletions
diff --git a/src/glsl/Makefile.am b/src/glsl/Makefile.am
index fa09c5e508..07fcf96488 100644
--- a/src/glsl/Makefile.am
+++ b/src/glsl/Makefile.am
@@ -19,7 +19,11 @@
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.
+if CROSS_COMPILING
SUBDIRS = builtin_compiler glcpp
+else
+SUBDIRS = glcpp
+endif
AM_CPPFLAGS = \
-I$(top_srcdir)/include \
@@ -56,6 +60,27 @@ glsl_test_SOURCES = \
glsl_test_LDADD = libglsl.la
+if CROSS_COMPILING
+BUILTIN_COMPILER = builtin_compiler/builtin_compiler$(BUILD_EXEEXT)
+else
+BUILTIN_COMPILER = builtincompiler$(BUILD_EXEEXT)
+
+noinst_PROGRAMS = builtincompiler
+noinst_LTLIBRARIES += libglslcore.la
+
+libglslcore_la_SOURCES = \
+ glsl_lexer.ll \
+ glsl_parser.cc \
+ $(LIBGLSL_FILES)
+builtincompiler_SOURCES = \
+ $(top_srcdir)/src/mesa/main/hash_table.c \
+ $(top_srcdir)/src/mesa/program/prog_hash_table.c\
+ $(top_srcdir)/src/mesa/program/symbol_table.c \
+ $(top_srcdir)/src/glsl/builtin_compiler/builtin_stubs.cpp \
+ $(GLSL_COMPILER_CXX_FILES)
+builtincompiler_LDADD = libglslcore.la glcpp/libglcpp.la
+endif
+
# automake <=1.11 and automake >=1.12 have different conventions for naming C++ header files
# made by yacc. To work with both, we write our own rule rather than using automake's.
# When (if) we require automake >=1.12 in configure.ac, this can be removed, and we can use
@@ -66,5 +91,5 @@ glsl_parser.cc glsl_parser.h: glsl_parser.yy
BUILT_SOURCES = glsl_parser.h
CLEANFILES = glsl_lexer.cc glsl_parser.cc $(BUILT_SOURCES) builtin_function.cpp
-builtin_function.cpp: $(srcdir)/builtins/profiles/* $(srcdir)/builtins/ir/* $(srcdir)/builtins/glsl/* $(srcdir)/builtins/tools/generate_builtins.py $(srcdir)/builtins/tools/texture_builtins.py builtin_compiler/builtin_compiler$(BUILD_EXEEXT)
- $(AM_V_GEN) $(PYTHON2) $(PYTHON_FLAGS) $(srcdir)/builtins/tools/generate_builtins.py builtin_compiler/builtin_compiler$(BUILD_EXEEXT) > builtin_function.cpp || rm -f builtin_function.cpp
+builtin_function.cpp: $(srcdir)/builtins/profiles/* $(srcdir)/builtins/ir/* $(srcdir)/builtins/glsl/* $(srcdir)/builtins/tools/generate_builtins.py $(srcdir)/builtins/tools/texture_builtins.py $(BUILTIN_COMPILER)
+ $(AM_V_GEN) $(PYTHON2) $(PYTHON_FLAGS) $(srcdir)/builtins/tools/generate_builtins.py $(builddir)/$(BUILTIN_COMPILER) > builtin_function.cpp || rm -f builtin_function.cpp