compiler: introduce a libcompiler static library
authorEmil Velikov <emil.velikov@collabora.com>
Mon, 23 Nov 2015 17:03:04 +0000 (17:03 +0000)
committerEmil Velikov <emil.l.velikov@gmail.com>
Tue, 26 Jan 2016 16:07:27 +0000 (16:07 +0000)
Currently it's an empty library, although it'll be used to store common
code between GLSL and NIR that is compiler specific (rather than generic
as the one in src/util).

XXX: strictly speaking we could add a python/mako parser to generate the
relevant files instead including builtin_type_macros.h in such a manner.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Acked-by: Jose Fonseca <jfonseca@vmware.com>
configure.ac
src/Makefile.am
src/compiler/Makefile.am [new file with mode: 0644]
src/compiler/Makefile.sources [new file with mode: 0644]
src/compiler/builtin_type_macros.h [moved from src/glsl/nir/builtin_type_macros.h with 100% similarity]
src/glsl/Makefile.sources
src/glsl/builtin_types.cpp
src/glsl/nir/glsl_types.cpp
src/glsl/nir/glsl_types.h

index 8d19dab..dc1e995 100644 (file)
@@ -2436,6 +2436,7 @@ CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS"
 dnl Substitute the config
 AC_CONFIG_FILES([Makefile
                src/Makefile
+               src/compiler/Makefile
                src/egl/Makefile
                src/egl/main/egl.pc
                src/egl/wayland/wayland-drm/Makefile
index 0d49bcd..a0ec401 100644 (file)
@@ -21,6 +21,9 @@
 
 SUBDIRS = . gtest util mapi/glapi/gen mapi
 
+# include only conditionally ?
+SUBDIRS += compiler
+
 if NEED_OPENGL_COMMON
 SUBDIRS += glsl mesa
 endif
diff --git a/src/compiler/Makefile.am b/src/compiler/Makefile.am
new file mode 100644 (file)
index 0000000..8ed8205
--- /dev/null
@@ -0,0 +1,25 @@
+#
+# Copyright (C) 2015 Intel Corporation
+#
+# 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.
+
+include Makefile.sources
+
+EXTRA_DIST = $(LIBCOMPILER_FILES)
diff --git a/src/compiler/Makefile.sources b/src/compiler/Makefile.sources
new file mode 100644 (file)
index 0000000..f154062
--- /dev/null
@@ -0,0 +1,2 @@
+LIBCOMPILER_FILES = \
+       builtin_type_macros.h
index fd28f5c..8b43eb8 100644 (file)
@@ -20,7 +20,6 @@ NIR_GENERATED_FILES = \
 NIR_FILES = \
        nir/glsl_types.cpp \
        nir/glsl_types.h \
-       nir/builtin_type_macros.h \
        nir/nir.c \
        nir/nir.h \
        nir/nir_array.h \
index bbdcd19..4402e28 100644 (file)
@@ -112,7 +112,7 @@ static const struct glsl_struct_field gl_FogParameters_fields[] = {
    glsl_struct_field(glsl_type::float_type, "scale"),
 };
 
-#include "builtin_type_macros.h"
+#include "compiler/builtin_type_macros.h"
 /** @} */
 
 /**
index 44d3056..655d3b1 100644 (file)
@@ -1754,5 +1754,5 @@ glsl_type::coordinate_components() const
 
 #define STRUCT_TYPE(NAME)
 
-#include "builtin_type_macros.h"
+#include "compiler/builtin_type_macros.h"
 /** @} */
index 0b83727..e63d794 100644 (file)
@@ -201,7 +201,7 @@ struct glsl_type {
 #undef  STRUCT_TYPE
 #define STRUCT_TYPE(NAME) \
    static const glsl_type *const struct_##NAME##_type;
-#include "builtin_type_macros.h"
+#include "compiler/builtin_type_macros.h"
    /*@}*/
 
    /**
@@ -787,7 +787,7 @@ private:
 #define DECL_TYPE(NAME, ...) static const glsl_type _##NAME##_type;
 #undef  STRUCT_TYPE
 #define STRUCT_TYPE(NAME)        static const glsl_type _struct_##NAME##_type;
-#include "builtin_type_macros.h"
+#include "compiler/builtin_type_macros.h"
    /*@}*/
 
    /**