summaryrefslogtreecommitdiffstats
path: root/src/glsl/glcpp
diff options
context:
space:
mode:
authorJon TURNEY <[email protected]>2012-06-28 23:15:48 +0100
committerJon TURNEY <[email protected]>2012-07-13 12:43:41 +0100
commit68e04cc6014bf7a2c9bd0b3b783b4ec12aa2e824 (patch)
tree41ca584f01c57b781d41d703f044f4452ba4e644 /src/glsl/glcpp
parent284325d97b3049e59e64daf784e2b3858f0ffcf5 (diff)
automake: convert libglsl
v2: Use AM_V_GEN to silence generated code rules. Add BUILT_SOURCES to CLEANFILES v3: - Fix an accidental // in a path - Use automake make rules for lex/yacc rather than writing our own - Update .gitignore appropriately - Build a libglcpp convenience library rather than awkwardly including the files in libglsl and delegating the generation - Remove libglsl.a compatibility link on clean v4: - Automake's rules for lex/yacc make .cc if source is .ll or .yy, and apparently we must use those extensions "because of scons", so update everywhere glsl_parser.cpp -> glsl_parser.cc and glsl_lexer.cpp -> glsl_lexer.cc. This fixes 'make tarballs' and building with dricore enabled. Signed-off-by: Jon TURNEY <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Tested-by: Matt Turner <[email protected]>
Diffstat (limited to 'src/glsl/glcpp')
-rw-r--r--src/glsl/glcpp/.gitignore1
-rw-r--r--src/glsl/glcpp/Makefile.am57
2 files changed, 58 insertions, 0 deletions
diff --git a/src/glsl/glcpp/.gitignore b/src/glsl/glcpp/.gitignore
index 24a7119caa4..64033e2aacb 100644
--- a/src/glsl/glcpp/.gitignore
+++ b/src/glsl/glcpp/.gitignore
@@ -4,3 +4,4 @@ glcpp-parse.output
glcpp-parse.c
glcpp-parse.h
tests/*.out
+/Makefile
diff --git a/src/glsl/glcpp/Makefile.am b/src/glsl/glcpp/Makefile.am
new file mode 100644
index 00000000000..e7d5d2ca346
--- /dev/null
+++ b/src/glsl/glcpp/Makefile.am
@@ -0,0 +1,57 @@
+
+# Copyright © 2012 Jon TURNEY
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+# IN THE SOFTWARE.
+
+# Hack to make some of the non-automake variables work.
+TOP=$(top_builddir)
+
+GLSL_SRCDIR=$(top_srcdir)/src/glsl
+include ../Makefile.sources
+
+AM_CFLAGS = \
+ -I$(top_srcdir)/include \
+ -I$(top_srcdir)/src/mapi \
+ -I$(top_srcdir)/src/mesa/ \
+ $(LIBRARY_INCLUDES) \
+ $(DEFINES) \
+ $(LIBRARY_DEFINES) \
+ $(API_DEFINES)
+
+AM_YFLAGS = -v -d
+AM_LFLAGS = --nounistd -o$(LEX_OUTPUT_ROOT).c
+
+noinst_LTLIBRARIES = libglcpp.la
+noinst_PROGRAMS = glcpp
+
+libglcpp_la_SOURCES = \
+ glcpp-lex.l \
+ glcpp-parse.y \
+ $(LIBGLCPP_FILES)
+
+glcpp_SOURCES = \
+ ../ralloc.c \
+ $(top_srcdir)/src/mesa/program/hash_table.c \
+ glcpp.c
+
+glcpp_LDADD = libglcpp.la
+
+BUILT_SOURCES = glcpp-lex.c glcpp-parse.c glcpp-parse.h
+CLEANFILES = $(BUILT_SOURCES)