ConditionalWait moved to Core & add check for how many locks we're keeping
[platform/core/uifw/dali-core.git] / build / tizen / configure.ac
1 # Copyright (c) 2014 Samsung Electronics Co., Ltd.
2
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6
7 # http://www.apache.org/licenses/LICENSE-2.0
8
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15
16 m4_define([dali_version],[0.1.1])
17 AC_INIT([dali], [dali_version])
18 AM_INIT_AUTOMAKE([-Wall foreign])
19
20 AC_PROG_CXX
21 AC_PROG_LIBTOOL
22 AC_PROG_MKDIR_P
23
24 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
25
26 LT_INIT
27
28 DALI_VERSION=dali_version
29 AC_SUBST(DALI_VERSION)
30
31 DALI_CFLAGS=-DPLATFORM_TIZEN
32
33 AC_ARG_ENABLE(exportall,
34               [AC_HELP_STRING([--enable-exportall],
35                               [enables the exporting of all the symbols in the library])],
36               [enable_exportall=yes],
37               [enable_exportall=no])
38
39 AC_ARG_ENABLE([debug],
40               [AC_HELP_STRING([--enable-debug],
41                               [Turns on debugging])],
42               [enable_debug=$enableval],
43               [enable_debug=no])
44
45 AC_ARG_ENABLE([emscripten],
46               [AC_HELP_STRING([--enable-emscripten],
47                               [Emscripten builds])],
48               [enable_emscripten=$enableval],
49               [enable_emscripten=no])
50
51 AC_ARG_ENABLE([backtrace],
52               [AC_HELP_STRING([--enable-backtrace],
53                               [Backtrace for exceptions])],
54               [enable_backtrace=$enableval],
55               [enable_backtrace=yes])
56
57 AC_ARG_ENABLE([lock_backtrace],
58               [AC_HELP_STRING([--enable-lock-backtrace],
59                               [Backtrace for when more than 1 lock is held on the same thread])],
60               [enable_lock_backtrace=$enableval],
61               [enable_lock_backtrace=no])
62
63 if test "x$enable_debug" = "xyes"; then
64   DALI_CFLAGS="$DALI_CFLAGS -DDEBUG_ENABLED"
65 fi
66
67 if test "x$enable_debug" = "xno" -a "x$enable_exportall" = "xno"; then
68   DALI_CFLAGS="$DALI_CFLAGS -fvisibility=hidden -DHIDE_DALI_INTERNALS"
69 fi
70
71 if test "x$enable_emscripten" = "xyes"; then
72   DALI_CFLAGS="$DALI_CFLAGS -DEMSCRIPTEN -std=c++11"
73   # Automatically turn off backtrace support
74   enable_backtrace="no"
75   enable_lock_backtrace="no"
76 fi
77
78 # Must come after Emscripten feature test
79 if test "x$enable_lock_backtrace" = "xyes"; then
80   DALI_CFLAGS="$DALI_CFLAGS -DLOCK_BACKTRACE_ENABLED"
81   enable_backtrace="yes"
82 fi
83
84 # Must come after Emscripten & locks backtrace feature test
85 if test "x$enable_backtrace" = "xyes"; then
86   DALI_CFLAGS="$DALI_CFLAGS -DBACKTRACE_ENABLED"
87 fi
88
89 if test x$DALI_DATA_RW_DIR != x; then
90   dataReadWriteDir=$DALI_DATA_RW_DIR
91 else
92   dataReadWriteDir=${prefix}/share/dali/
93 fi
94
95 if test x$DALI_DATA_RO_DIR != x; then
96   dataReadOnlyDir=$DALI_DATA_RO_DIR
97 else
98   dataReadOnlyDir=${prefix}/share/dali/
99 fi
100
101 DALI_CFLAGS="$DALI_CFLAGS -I${includedir}"
102 DALI_LDFLAGS="-L${libdir}"
103
104 AC_SUBST(dataReadWriteDir)
105 AC_SUBST(dataReadOnlyDir)
106 AC_SUBST(DALI_CFLAGS)
107 AC_SUBST(DALI_LDFLAGS)
108
109 # Specify the include directory for development headers
110 devincludepath=${includedir}
111 AC_SUBST(devincludepath)
112
113 AC_CONFIG_FILES([
114  Makefile
115  dali-core/Makefile
116  dali-core.pc
117 ])
118
119 AC_OUTPUT
120
121 echo "
122 Configuration
123 -------------
124   Prefix:                           $prefix
125   Debug Build:                      $enable_debug
126   Data Dir (Read/Write):            $dataReadWriteDir
127   Data Dir (Read Only):             $dataReadOnlyDir
128   Emscripten:                       $enable_emscripten
129   Backtrace:                        $enable_backtrace
130   ScopedLock Backtrace:             $enable_lock_backtrace
131 "