automake: ask the linker to do garbage collection
[mesa.git] / src / egl / main / Makefile.am
1 # Copyright © 2012 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 if HAVE_XF86VIDMODE
23 EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE
24 endif
25
26 AM_CFLAGS = \
27 -I$(top_srcdir)/include \
28 -I$(top_srcdir)/src/gbm/main \
29 $(DEFINES) \
30 $(VISIBILITY_CFLAGS) \
31 $(EGL_CFLAGS) \
32 -D_EGL_NATIVE_PLATFORM=$(EGL_NATIVE_PLATFORM) \
33 -D_EGL_DRIVER_SEARCH_DIR=\"$(EGL_DRIVER_INSTALL_DIR)\" \
34 -D_EGL_OS_UNIX=1
35
36 lib_LTLIBRARIES = libEGL.la
37
38 libEGL_la_SOURCES = \
39 eglapi.c \
40 eglarray.c \
41 eglconfig.c \
42 eglcontext.c \
43 eglcurrent.c \
44 egldisplay.c \
45 egldriver.c \
46 eglfallbacks.c \
47 eglglobals.c \
48 eglimage.c \
49 egllog.c \
50 eglmisc.c \
51 eglmode.c \
52 eglscreen.c \
53 eglstring.c \
54 eglsurface.c \
55 eglsync.c \
56 eglcompiler.h \
57 eglconfig.h \
58 eglcontext.h \
59 eglcurrent.h \
60 egldefines.h \
61 egldisplay.h \
62 egldriver.h \
63 eglglobals.h \
64 eglimage.h \
65 egllog.h \
66 eglmisc.h \
67 eglmode.h \
68 eglmutex.h \
69 eglscreen.h \
70 eglstring.h \
71 eglsurface.h \
72 eglsync.h
73
74 libEGL_la_LIBADD = \
75 $(EGL_LIB_DEPS)
76 libEGL_la_LDFLAGS = \
77 -no-undefined \
78 -version-number 1:0 \
79 -Wl,-Bsymbolic \
80 $(GC_SECTIONS) \
81 -Wl,--no-undefined
82
83 if HAVE_EGL_PLATFORM_X11
84 AM_CFLAGS += -DHAVE_X11_PLATFORM
85 AM_CFLAGS += $(XCB_DRI2_CFLAGS)
86 libEGL_la_LIBADD += $(XCB_DRI2_LIBS)
87 endif
88
89 if HAVE_EGL_PLATFORM_WAYLAND
90 AM_CFLAGS += -DHAVE_WAYLAND_PLATFORM
91 AM_CFLAGS += $(WAYLAND_CFLAGS)
92 libEGL_la_LIBADD += $(WAYLAND_LIBS)
93 libEGL_la_LIBADD += $(LIBDRM_LIBS)
94 libEGL_la_LIBADD += ../wayland/wayland-drm/libwayland-drm.la
95 endif
96
97 if HAVE_EGL_PLATFORM_DRM
98 AM_CFLAGS += -DHAVE_DRM_PLATFORM
99 libEGL_la_LIBADD += ../../gbm/libgbm.la
100 endif
101
102 if HAVE_EGL_PLATFORM_FBDEV
103 AM_CFLAGS += -DHAVE_FBDEV_PLATFORM
104 endif
105
106 if HAVE_EGL_PLATFORM_NULL
107 AM_CFLAGS += -DHAVE_NULL_PLATFORM
108 endif
109
110 if HAVE_EGL_DRIVER_DRI2
111 AM_CFLAGS += -D_EGL_BUILT_IN_DRIVER_DRI2
112 AM_CFLAGS += -DHAVE_XCB_DRI2
113 libEGL_la_LIBADD += ../drivers/dri2/libegl_dri2.la
114 libEGL_la_LIBADD += $(DLOPEN_LIBS) $(LIBDRM_LIBS)
115 endif
116
117 include $(top_srcdir)/install-lib-links.mk
118
119 pkgconfigdir = $(libdir)/pkgconfig
120
121 pkgconfig_DATA = egl.pc
122
123 khrdir = $(includedir)/KHR
124 khr_HEADERS = $(top_srcdir)/include/KHR/khrplatform.h
125
126 egldir = $(includedir)/EGL
127 egl_HEADERS = \
128 $(top_srcdir)/include/EGL/eglext.h \
129 $(top_srcdir)/include/EGL/egl.h \
130 $(top_srcdir)/include/EGL/eglmesaext.h \
131 $(top_srcdir)/include/EGL/eglplatform.h