Back up the legacy codes of wl_vk_thread to unused.
[platform/core/uifw/libtpl-egl.git] / configure.ac
1 #                                               -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3
4 AC_PREREQ([2.69])
5 AC_INIT([libtpl-egl], [TPL_VERSION_MAJOR.TPL_VERSION_MINOR.TPL_VERSION_PATCH])
6 AC_CONFIG_SRCDIR([src/tpl.c])
7 AC_CONFIG_HEADERS([config.h])
8 AM_INIT_AUTOMAKE([foreign dist-bzip2 subdir-objects])
9
10 # Initialize libtool
11 LT_PREREQ([2.2])
12 LT_INIT([disable-static])
13
14 # Initialize version macros
15 AC_SUBST(TPL_VERSION_MAJOR)
16 AC_SUBST(TPL_VERSION_MINOR)
17 AC_SUBST(TPL_VERSION_PATCH)
18 AC_SUBST(WL_EGL_VERSION_MAJOR)
19 AC_SUBST(WL_EGL_VERSION_MINOR)
20 AC_SUBST(WL_EGL_VERSION_PATCH)
21 AC_SUBST(WL_EGL_TIZEN_VERSION_MAJOR)
22 AC_SUBST(WL_EGL_TIZEN_VERSION_MINOR)
23 AC_SUBST(WL_EGL_TIZEN_VERSION_PATCH)
24 # Checks for programs.
25 AC_PROG_CXX
26 AC_PROG_CC
27 AC_PATH_PROG([WL_SCANNER], [wayland-scanner])
28 if test -z "$WL_SCANNER"; then
29         AC_MSG_ERROR([wayland-scanner is not found])
30 fi
31
32 # Checks for libraries.
33 AC_CHECK_LIB([dl], [dlopen])
34 AC_CHECK_LIB([pthread], [pthread_create])
35
36 # Checks for header files.
37 AC_CHECK_HEADERS([fcntl.h stddef.h stdint.h stdlib.h string.h unistd.h])
38
39 # pkg-config
40 PKG_PROG_PKG_CONFIG
41 if test "${PKG_CONFIG}" = "" ; then
42    AC_MSG_ERROR([pkg-config tool not found. Install it or set PKG_CONFIG environment variable to that path tool. Exiting...])
43 fi
44
45 PKG_CHECK_MODULES([TPL_ESSENTIAL], [libtbm])
46
47 # Checks for features
48 AC_ARG_WITH([arch],
49    [AS_HELP_STRING([--with-arch=armv7l|aarch64],[Set target architecture.])],
50    [],
51    [])
52
53 AS_IF([test "${with_arch}" = "aarch64"],
54           [TPL_CFLAGS+=" -DARM_ATOMIC_OPERATION "],
55           [])
56
57 AC_ARG_WITH([wayland],
58    [AS_HELP_STRING([--with-wayland=yes|no],[Sets the backend of tpl as wayland. @<:@default=enabled@:>@])],
59    [],
60    [with_wayland=yes])
61
62 AS_IF([test "${with_wayland}" = "yes" || test "${with_wayland}" = "1"],
63           [PKG_CHECK_MODULES([TPL_WL],
64            [libtdm-client wayland-tbm-client wayland-tbm-server
65            tizen-surface-client glib-2.0 wayland-egl presentation-time-client wayland-egl-backend
66            linux-explicit-synchronization-unstable-v1-client])
67            TPL_CFLAGS+="$TPL_WL_CFLAGS"
68            TPL_CFLAGS+=" -DTPL_WINSYS_WL=1 "
69            TPL_LIBS+="$TPL_WL_LIBS"],
70            [])
71
72 AM_CONDITIONAL([WITH_WAYLAND], [test "${with_wayland}" = "yes" || test "${with_wayland}" = "1"])
73
74 AC_ARG_WITH([tbm],
75    [AS_HELP_STRING([--with-tbm=yes|no],[Sets the backend of tpl as tbm. @<:@default=enabled@:>@])],
76    [],
77    [with_tbm=yes])
78
79 AS_IF([test "${with_tbm}" = "yes" || test "${with_tbm}" = "1"],
80           [TPL_CFLAGS+=" -DTPL_WINSYS_TBM=1 "],
81           [])
82
83 AM_CONDITIONAL([WITH_TBM], [test "${with_tbm}" = "yes" || test "${with_tbm}" = "1"])
84
85 AC_ARG_ENABLE([wayland-thread],
86    [AS_HELP_STRING([--enable-wayland-thread=yes|no],[Sets the backend of tpl as wayland-thread.])],
87    [],
88    [])
89
90 AS_IF([test "${enable_wayland_thread}" = "yes" || test "${enable_wayland_thread}" = "1"],
91           [TPL_CFLAGS+=" -DWL_THREAD_DEFAULT_ENABLE=1 "],
92           [])
93
94 AM_CONDITIONAL([ENABLE_WAYLAND_THREAD], [test "${enable_wayland_thread}" = "yes" || test "${enable_wayland_thread}" = "1"])
95
96 AC_ARG_ENABLE([dlog],
97    [AS_HELP_STRING([--enable-dlog=yes|no],[Enable dlog. @<:@default=enabled@:>@])],
98    [],
99    [enable_dlog=yes])
100
101 AS_IF([test "${enable_dlog}" = "yes" || test "${enable_dlog}" = "1"],
102           [PKG_CHECK_MODULES([DLOG], [dlog])
103            TPL_CFLAGS+="$DLOG_CFLAGS"
104            TPL_CFLAGS+=" -DDLOG_DEFAULT_ENABLE "
105            TPL_LIBS+="$DLOG_LIBS"
106            WL_EGL_TIZEN_CFLAGS+="$DLOG_CFLAGS"
107            WL_EGL_TIZEN_LIBS+="$DLOG_LIBS"],
108           [])
109
110 AM_CONDITIONAL([ENABLE_DLOG], [test "${enable_dlog}" = "yes" || test "${enable_dlog}" = "1"])
111
112 AC_ARG_ENABLE([dlog-default],
113    [AS_HELP_STRING([--enable-dlog-default=yes|no],[Enable printing dlog by default. @<:@default=disabled@:>@])],
114    [],
115    [])
116
117 AS_IF([test "${enable_dlog_default}" = "yes" || test "${enable_dlog_default}" = "1"],
118           [TPL_CFLAGS+=" -DLOG_DEFAULT_ENABLE "],
119           [])
120
121 AM_CONDITIONAL([ENABLE_DLOG_DEFAULT], [test "${enable_dlog_default}" = "yes" || test "${enable_dlog_default}" = "1"])
122
123 AC_ARG_ENABLE([dump],
124    [AS_HELP_STRING([--enable-dump=yes|no],[Enable creating dump by default. @<:@default=disabled@:>@])],
125    [],
126    [])
127
128 AS_IF([test "${enable_dump}" = "yes" || test "${enable_dump}" = "1"],
129           [TPL_CFLAGS+=" -DDEFAULT_DUMP_ENABLE "],
130           [])
131
132 AM_CONDITIONAL([ENABLE_DUMP], [test "${enable_dump}" = "yes" || test "${enable_dump}" = "1"])
133
134 AC_ARG_ENABLE([object-hash-check],
135    [AS_HELP_STRING([--enable-object-hash-check=yes|no],[Enable object hash check. @<:@default=disabled@:>@])],
136    [],
137    [])
138
139 AS_IF([test "${enable_object_hash_check}" = "yes" || test "${enable_object_hash_check}" = "1"],
140           [TPL_CFLAGS+=" -DOBJECT_HASH_CHECK "],
141           [])
142
143 AM_CONDITIONAL([ENABLE_OBJECT_HASH_CHECK], [test "${enable_object_hash_check}" = "yes" || test "${enable_object_hash_check}" = "1"])
144
145 AC_ARG_ENABLE([ttrace],
146    [AS_HELP_STRING([--enable-ttrace=yes|no],[Enable ttrace.])],
147    [],
148    [])
149
150 AS_IF([test "${enable_ttrace}" = "yes" || test "${enable_ttrace}" = "1"],
151           [PKG_CHECK_MODULES([TTRACE], [ttrace])
152           TPL_CFLAGS+="$TTRACE_CFLAGS"
153           TPL_CFLAGS+=" -DTTRACE_ENABLE=1 "
154           TPL_LIBS+="$TTRACE_LIBS"],
155           [])
156
157 AM_CONDITIONAL([ENABLE_TTRACE], [test "${enable_ttrace}" = "yes" || test "${enable_ttrace}" = "1"])
158
159 AC_ARG_WITH([utest],
160    [AS_HELP_STRING([--with-utest=yes|no],[Build tpl unit test. @<:@default=disabled@:>@])],
161    [],
162    [])
163
164 # TODO: Apply pkgconfig on gtest
165 AS_IF([test "${with_utest}" = "yes" || test "${with_utest}" = "1"],
166           [TPL_TEST_CFLAGS=
167            TPL_TEST_LIBS+="-lgtest"],
168           [])
169
170 AM_CONDITIONAL([WITH_UTEST], [test "${with_utest}" = "yes" || test "${with_utest}" = "1"])
171
172 AC_ARG_ENABLE([gcov],
173    [AS_HELP_STRING([--enable-gcov=yes|no],[Enable gcov.])],
174    [],
175    [])
176
177 # TODO: Apply pkgconfig on gcov
178 AS_IF([test "${enable_gcov}" = "yes" || test "${enable_gcov}" = "1"],
179           [TPL_CFLAGS+=" -fprofile-arcs -ftest-coverage"
180            TPL_LIBS+=" -lgcov "
181            WL_EGL_CFLAGS+=" -fprofile-arcs -ftest-coverage"
182            WL_EGL_LIBS+=" -lgcov "
183            WL_EGL_TIZEN_CFLAGS+=" -fprofile-arcs -ftest-coverage"
184            WL_EGL_TIZENLIBS+=" -lgcov ",
185           ])
186
187 AM_CONDITIONAL([ENABLE_GCOV], [test "${enable_gcov}" = "yes" || test "${enable_gcov}" = "1"])
188
189 TPL_CFLAGS+="$TPL_ESSENTIAL_CFLAGS"
190 TPL_LIBS+="$TPL_ESSENTIAL_LIBS"
191
192 AC_SUBST([TPL_CFLAGS])
193 AC_SUBST([TPL_LIBS])
194
195 AC_SUBST([WL_EGL_CFLAGS])
196 AC_SUBST([WL_EGL_LIBS])
197
198 AC_SUBST([WL_EGL_TIZEN_CFLAGS])
199 AC_SUBST([WL_EGL_TIZEN_LIBS])
200
201 # Checks for typedefs, structures, and compiler characteristics.
202 AC_C_INLINE
203 AC_TYPE_INT32_T
204 AC_TYPE_INT64_T
205 AC_TYPE_SIZE_T
206 AC_TYPE_SSIZE_T
207 AC_TYPE_UINT32_T
208 AC_TYPE_UINT64_T
209 AC_TYPE_UINT8_T
210
211 # Checks for library functions.
212 AC_FUNC_MALLOC
213 AC_FUNC_STRERROR_R
214 AC_CHECK_FUNCS([clock_gettime memset])
215
216 # Set output files
217 AC_CONFIG_FILES([
218                                  Makefile
219                                  src/Makefile
220                                  src/wayland-egl-tizen/Makefile
221                                  pkgconfig/Makefile
222                                  pkgconfig/tpl-egl.pc
223                                  pkgconfig/wayland-egl-tizen.pc
224                                  ])
225
226 AM_COND_IF([WITH_UTEST],
227                    [AC_SUBST([TPL_TEST_CFLAGS])
228                         AC_SUBST([TPL_TEST_LIBS])
229                         AC_CONFIG_FILES([tc/Makefile])
230                    ])
231
232 AC_OUTPUT
233