2 # Process this file with autoconf to produce a configure script.
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])
12 LT_INIT([disable-static])
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.
27 AC_PATH_PROG([WL_SCANNER], [wayland-scanner])
28 if test -z "$WL_SCANNER"; then
29 AC_MSG_ERROR([wayland-scanner is not found])
32 # Checks for libraries.
33 AC_CHECK_LIB([dl], [dlopen])
34 AC_CHECK_LIB([pthread], [pthread_create])
36 # Checks for header files.
37 AC_CHECK_HEADERS([fcntl.h stddef.h stdint.h stdlib.h string.h unistd.h])
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...])
45 PKG_CHECK_MODULES([TPL_ESSENTIAL], [libtbm])
49 [AS_HELP_STRING([--with-arch=armv7l|aarch64],[Set target architecture.])],
53 AS_IF([test "${with_arch}" = "aarch64"],
54 [TPL_CFLAGS+=" -DARM_ATOMIC_OPERATION "],
57 AC_ARG_WITH([wayland],
58 [AS_HELP_STRING([--with-wayland=yes|no],[Sets the backend of tpl as wayland. @<:@default=enabled@:>@])],
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"],
72 AM_CONDITIONAL([WITH_WAYLAND], [test "${with_wayland}" = "yes" || test "${with_wayland}" = "1"])
75 [AS_HELP_STRING([--with-tbm=yes|no],[Sets the backend of tpl as tbm. @<:@default=enabled@:>@])],
79 AS_IF([test "${with_tbm}" = "yes" || test "${with_tbm}" = "1"],
80 [TPL_CFLAGS+=" -DTPL_WINSYS_TBM=1 "],
83 AM_CONDITIONAL([WITH_TBM], [test "${with_tbm}" = "yes" || test "${with_tbm}" = "1"])
85 AC_ARG_ENABLE([wayland-thread],
86 [AS_HELP_STRING([--enable-wayland-thread=yes|no],[Sets the backend of tpl as wayland-thread.])],
90 AS_IF([test "${enable_wayland_thread}" = "yes" || test "${enable_wayland_thread}" = "1"],
91 [TPL_CFLAGS+=" -DWL_THREAD_DEFAULT_ENABLE=1 "],
94 AM_CONDITIONAL([ENABLE_WAYLAND_THREAD], [test "${enable_wayland_thread}" = "yes" || test "${enable_wayland_thread}" = "1"])
97 [AS_HELP_STRING([--enable-dlog=yes|no],[Enable dlog. @<:@default=enabled@:>@])],
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"],
110 AM_CONDITIONAL([ENABLE_DLOG], [test "${enable_dlog}" = "yes" || test "${enable_dlog}" = "1"])
112 AC_ARG_ENABLE([dlog-default],
113 [AS_HELP_STRING([--enable-dlog-default=yes|no],[Enable printing dlog by default. @<:@default=disabled@:>@])],
117 AS_IF([test "${enable_dlog_default}" = "yes" || test "${enable_dlog_default}" = "1"],
118 [TPL_CFLAGS+=" -DLOG_DEFAULT_ENABLE "],
121 AM_CONDITIONAL([ENABLE_DLOG_DEFAULT], [test "${enable_dlog_default}" = "yes" || test "${enable_dlog_default}" = "1"])
123 AC_ARG_ENABLE([dump],
124 [AS_HELP_STRING([--enable-dump=yes|no],[Enable creating dump by default. @<:@default=disabled@:>@])],
128 AS_IF([test "${enable_dump}" = "yes" || test "${enable_dump}" = "1"],
129 [TPL_CFLAGS+=" -DDEFAULT_DUMP_ENABLE "],
132 AM_CONDITIONAL([ENABLE_DUMP], [test "${enable_dump}" = "yes" || test "${enable_dump}" = "1"])
134 AC_ARG_ENABLE([object-hash-check],
135 [AS_HELP_STRING([--enable-object-hash-check=yes|no],[Enable object hash check. @<:@default=disabled@:>@])],
139 AS_IF([test "${enable_object_hash_check}" = "yes" || test "${enable_object_hash_check}" = "1"],
140 [TPL_CFLAGS+=" -DOBJECT_HASH_CHECK "],
143 AM_CONDITIONAL([ENABLE_OBJECT_HASH_CHECK], [test "${enable_object_hash_check}" = "yes" || test "${enable_object_hash_check}" = "1"])
145 AC_ARG_ENABLE([ttrace],
146 [AS_HELP_STRING([--enable-ttrace=yes|no],[Enable ttrace.])],
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"],
157 AM_CONDITIONAL([ENABLE_TTRACE], [test "${enable_ttrace}" = "yes" || test "${enable_ttrace}" = "1"])
160 [AS_HELP_STRING([--with-utest=yes|no],[Build tpl unit test. @<:@default=disabled@:>@])],
164 # TODO: Apply pkgconfig on gtest
165 AS_IF([test "${with_utest}" = "yes" || test "${with_utest}" = "1"],
167 TPL_TEST_LIBS+="-lgtest"],
170 AM_CONDITIONAL([WITH_UTEST], [test "${with_utest}" = "yes" || test "${with_utest}" = "1"])
172 AC_ARG_ENABLE([gcov],
173 [AS_HELP_STRING([--enable-gcov=yes|no],[Enable gcov.])],
177 # TODO: Apply pkgconfig on gcov
178 AS_IF([test "${enable_gcov}" = "yes" || test "${enable_gcov}" = "1"],
179 [TPL_CFLAGS+=" -fprofile-arcs -ftest-coverage"
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 ",
187 AM_CONDITIONAL([ENABLE_GCOV], [test "${enable_gcov}" = "yes" || test "${enable_gcov}" = "1"])
189 TPL_CFLAGS+="$TPL_ESSENTIAL_CFLAGS"
190 TPL_LIBS+="$TPL_ESSENTIAL_LIBS"
192 AC_SUBST([TPL_CFLAGS])
195 AC_SUBST([WL_EGL_CFLAGS])
196 AC_SUBST([WL_EGL_LIBS])
198 AC_SUBST([WL_EGL_TIZEN_CFLAGS])
199 AC_SUBST([WL_EGL_TIZEN_LIBS])
201 # Checks for typedefs, structures, and compiler characteristics.
211 # Checks for library functions.
214 AC_CHECK_FUNCS([clock_gettime memset])
220 src/wayland-egl-tizen/Makefile
223 pkgconfig/wayland-egl-tizen.pc
226 AM_COND_IF([WITH_UTEST],
227 [AC_SUBST([TPL_TEST_CFLAGS])
228 AC_SUBST([TPL_TEST_LIBS])
229 AC_CONFIG_FILES([tc/Makefile])