summaryrefslogtreecommitdiff
path: root/src/GLX/Makefile.am
blob: 9a143bcb186dbdb2787fbe70f4f370b6b551e01e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# Copyright (c) 2013, NVIDIA CORPORATION.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and/or associated documentation files (the
# "Materials"), to deal in the Materials without restriction, including
# without limitation the rights to use, copy, modify, merge, publish,
# distribute, sublicense, and/or sell copies of the Materials, and to
# permit persons to whom the Materials are furnished to do so, subject to
# the following conditions:
#
# The above copyright notice and this permission notice shall be included
# unaltered in all copies or substantial portions of the Materials.
# Any additions, deletions, or changes to the original source files
# must be clearly indicated in accompanying documentation.
#
# If only executable code is distributed, then the accompanying
# documentation must state that "this software is based in part on the
# work of the Khronos Group."
#
# THE MATERIALS ARE 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
# MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.

noinst_HEADERS = \
	libglxabipriv.h \
	libglxcurrent.h \
	libglxmapping.h \
	libglxnoop.h \
	libglxgl.h \
	libglxstring.h \
	libglxthread.h

lib_LTLIBRARIES = libGLX.la

UTIL_DIR = ../util
TRACE_DIR = ../util/trace
UTHASH_DIR = ../util/uthash/src
GL_DISPATCH_DIR = ../GLdispatch
X11GLVND_DIR = ../x11glvnd

# Warning settings
# Include paths
libGLX_la_CFLAGS =  -I$(srcdir)/$(UTHASH_DIR)
libGLX_la_CFLAGS += -I$(srcdir)/$(UTIL_DIR)
libGLX_la_CFLAGS += -I$(srcdir)/$(TRACE_DIR)
libGLX_la_CFLAGS += -I$(srcdir)/$(GL_DISPATCH_DIR)
libGLX_la_CFLAGS += -I$(top_srcdir)/include
libGLX_la_CFLAGS += -I$(srcdir)/$(X11GLVND_DIR)

# Required library flags
libGLX_la_CFLAGS += $(PTHREAD_CFLAGS)

# Required libraries
libGLX_la_LIBADD = -ldl
libGLX_la_LIBADD += $(X11_LIBS)
libGLX_la_LIBADD += $(XEXT_LIBS)
libGLX_la_LIBADD += $(GL_DISPATCH_DIR)/libGLdispatch.la
libGLX_la_LIBADD += $(X11GLVND_DIR)/libx11glvnd_client.la
libGLX_la_LIBADD += $(TRACE_DIR)/libtrace.la

libGLX_la_LDFLAGS = -shared -Wl,-Bsymbolic -version-info 0 $(LINKER_FLAG_NO_UNDEFINED)

BUILT_SOURCES = g_libglxnoop.c

CLEANFILES = $(BUILT_SOURCES)

EXTRA_DIST = gen_stubs.pl glx_funcs.spec

g_libglxnoop.c : gen_stubs.pl glx_funcs.spec
	$(AM_V_GEN)$(PERL) $(srcdir)/gen_stubs.pl "noop" $(srcdir)/glx_funcs.spec > $@

libGLX_la_SOURCES = \
	$(top_srcdir)/src/util/glvnd_pthread.c \
	libglx.c \
	libglxmapping.c \
	libglxstring.c \
	$(UTIL_DIR)/glvnd_genentry.c \
	$(UTIL_DIR)/utils_misc.c \
	g_libglxnoop.c