mapi: Inline glapi/tests/Makefile.
[mesa.git] / src / mapi / Makefile.am
1 # Copyright © 2013, 2014 Intel Corporation
2 #
3 # Permission is hereby granted, free of charge, to any person obtaining a
4 # copy of this software and associated documentation files (the "Software"),
5 # to deal in the Software without restriction, including without limitation
6 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
7 # and/or sell copies of the Software, and to permit persons to whom the
8 # Software is furnished to do so, subject to the following conditions:
9 #
10 # The above copyright notice and this permission notice (including the next
11 # paragraph) shall be included in all copies or substantial portions of the
12 # Software.
13 #
14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
20 # IN THE SOFTWARE.
21
22 SUBDIRS = glapi/gen .
23 TESTS =
24
25 TOP = $(top_srcdir)
26
27 BUILT_SOURCES =
28 CLEANFILES = $(BUILT_SOURCES)
29
30 lib_LTLIBRARIES =
31 check_PROGRAMS =
32 pkgconfigdir = $(libdir)/pkgconfig
33 pkgconfig_DATA =
34
35 AM_CFLAGS = $(PTHREAD_CFLAGS)
36 AM_CPPFLAGS = \
37 $(DEFINES) \
38 $(SELINUX_CFLAGS) \
39 -I$(top_srcdir)/include \
40 -I$(top_srcdir)/src/mapi \
41 -I$(top_builddir)/src/mapi
42
43 GLAPI = $(top_srcdir)/src/mapi/glapi
44 include Makefile.sources
45 include glapi/Makefile.sources
46 include glapi/gen/glapi_gen.mk
47
48 if HAVE_SHARED_GLAPI
49 SUBDIRS += shared-glapi/tests
50
51 BUILT_SOURCES += shared-glapi/glapi_mapi_tmp.h
52
53 lib_LTLIBRARIES += shared-glapi/libglapi.la
54 shared_glapi_libglapi_la_SOURCES = $(MAPI_GLAPI_FILES)
55 shared_glapi_libglapi_la_CPPFLAGS = \
56 $(AM_CPPFLAGS) \
57 -DMAPI_MODE_GLAPI \
58 -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"
59 shared_glapi_libglapi_la_LIBADD = \
60 $(PTHREAD_LIBS) \
61 $(SELINUX_LIBS)
62 shared_glapi_libglapi_la_LDFLAGS = \
63 -no-undefined \
64 $(GC_SECTIONS) \
65 $(LD_NO_UNDEFINED)
66
67 shared-glapi/glapi_mapi_tmp.h : $(GLAPI)/gen/gl_and_es_API.xml $(glapi_gen_mapi_deps)
68 $(call glapi_gen_mapi,$<,shared-glapi)
69 endif
70
71 if HAVE_OPENGL
72 noinst_LTLIBRARIES = glapi/libglapi.la
73
74 if HAVE_X86_ASM
75 if HAVE_X86_64_ASM
76 GLAPI_ASM_SOURCES = $(X86_64_API)
77 else
78 GLAPI_ASM_SOURCES = $(X86_API)
79 endif
80 endif
81 if HAVE_SPARC_ASM
82 GLAPI_ASM_SOURCES = $(SPARC_API)
83 endif
84
85 glapi_libglapi_la_SOURCES = $(GLAPI_UTIL_SOURCES)
86 glapi_libglapi_la_CPPFLAGS = \
87 $(AM_CPPFLAGS) \
88 -I$(top_srcdir)/src/mapi/glapi \
89 -I$(top_srcdir)/src/mesa
90
91 if HAVE_SHARED_GLAPI
92 glapi_libglapi_la_SOURCES += $(MAPI_BRIDGE_FILES)
93 glapi_libglapi_la_CPPFLAGS += \
94 -DMAPI_MODE_BRIDGE \
95 -DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
96 else
97 glapi_libglapi_la_CPPFLAGS += \
98 -DMAPI_MODE_UTIL
99 glapi_libglapi_la_SOURCES += \
100 $(GLAPI_SOURCES) \
101 $(GLAPI_ASM_SOURCES) \
102 $(MAPI_UTIL_FILES)
103
104 TESTS += glapi-test
105 check_PROGRAMS += glapi-test
106
107 glapi_test_SOURCES = glapi/tests/check_table.cpp
108 glapi_test_CPPFLAGS = \
109 $(AM_CPPFLAGS) \
110 -I$(top_srcdir)/src/gtest/include
111
112 glapi_test_LDADD = \
113 $(top_builddir)/src/mapi/glapi/libglapi.la \
114 $(top_builddir)/src/gtest/libgtest.la
115 endif
116 endif
117
118 if HAVE_OPENGL_ES1
119 TESTS += es1api/ABI-check
120
121 BUILT_SOURCES += es1api/glapi_mapi_tmp.h
122
123 pkgconfig_DATA += es1api/glesv1_cm.pc
124
125 GLES_includedir = $(includedir)/GLES
126 GLES_include_HEADERS = \
127 $(top_srcdir)/include/GLES/egl.h \
128 $(top_srcdir)/include/GLES/gl.h \
129 $(top_srcdir)/include/GLES/glext.h \
130 $(top_srcdir)/include/GLES/glplatform.h
131
132 lib_LTLIBRARIES += es1api/libGLESv1_CM.la
133
134 es1api_libGLESv1_CM_la_SOURCES = entry.c es1api/glapi_mapi_tmp.h
135 es1api_libGLESv1_CM_la_CFLAGS = \
136 $(AM_CFLAGS) \
137 $(VISIBILITY_CFLAGS)
138 es1api_libGLESv1_CM_la_CPPFLAGS = \
139 $(AM_CPPFLAGS) \
140 -DMAPI_MODE_BRIDGE \
141 -DMAPI_ABI_HEADER=\"es1api/glapi_mapi_tmp.h\"
142 es1api_libGLESv1_CM_la_LIBADD = $(GLESv1_CM_LIB_DEPS)
143 es1api_libGLESv1_CM_la_LDFLAGS = \
144 -no-undefined \
145 -version-number 1:1 \
146 $(GC_SECTIONS) \
147 $(LD_NO_UNDEFINED)
148
149 if HAVE_SHARED_GLAPI
150 es1api_libGLESv1_CM_la_LIBADD += shared-glapi/libglapi.la
151 endif
152
153 es1api/glapi_mapi_tmp.h: glapi/gen/gl_and_es_API.xml $(glapi_gen_mapi_deps)
154 $(call glapi_gen_mapi,$<,es1api)
155 endif
156
157 if HAVE_OPENGL_ES2
158 TESTS += es2api/ABI-check
159
160 BUILT_SOURCES += es2api/glapi_mapi_tmp.h
161
162 pkgconfig_DATA += es2api/glesv2.pc
163
164 GLES2_includedir = $(includedir)/GLES2
165 GLES2_include_HEADERS = \
166 $(top_srcdir)/include/GLES2/gl2.h \
167 $(top_srcdir)/include/GLES2/gl2ext.h \
168 $(top_srcdir)/include/GLES2/gl2platform.h
169 GLES3_includedir = $(includedir)/GLES3
170 GLES3_include_HEADERS = \
171 $(top_srcdir)/include/GLES3/gl3.h \
172 $(top_srcdir)/include/GLES3/gl31.h \
173 $(top_srcdir)/include/GLES3/gl3ext.h \
174 $(top_srcdir)/include/GLES3/gl3platform.h
175
176 lib_LTLIBRARIES += es2api/libGLESv2.la
177
178 es2api_libGLESv2_la_SOURCES = entry.c es2api/glapi_mapi_tmp.h
179 es2api_libGLESv2_la_CFLAGS = \
180 $(AM_CFLAGS) \
181 $(VISIBILITY_CFLAGS)
182 es2api_libGLESv2_la_CPPFLAGS = \
183 $(AM_CPPFLAGS) \
184 -DMAPI_MODE_BRIDGE \
185 -DMAPI_ABI_HEADER=\"es2api/glapi_mapi_tmp.h\"
186 es2api_libGLESv2_la_LIBADD = $(GLESv2_LIB_DEPS)
187 es2api_libGLESv2_la_LDFLAGS = \
188 -no-undefined \
189 -version-number 2 \
190 $(GC_SECTIONS) \
191 $(LD_NO_UNDEFINED)
192
193 if HAVE_SHARED_GLAPI
194 es2api_libGLESv2_la_LIBADD += shared-glapi/libglapi.la
195 endif
196
197 es2api/glapi_mapi_tmp.h: glapi/gen/gl_and_es_API.xml $(glapi_gen_mapi_deps)
198 $(call glapi_gen_mapi,$<,es2api)
199 endif
200
201 if HAVE_OPENVG
202 SUBDIRS += vgapi
203 endif
204
205 include $(top_srcdir)/install-lib-links.mk