Commit | Line | Data |
---|---|---|
d42e7319 JB |
1 | AC_INIT([libhybris], [0.1.0]) |
2 | AC_CONFIG_SRCDIR([Makefile.am]) | |
3 | AC_CONFIG_HEADERS(config.h) | |
4 | AM_INIT_AUTOMAKE([dist-bzip2 subdir-objects]) | |
5 | m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) | |
6 | ||
7 | # If library source has changed since last release, increment revision | |
8 | # If public symbols have been added, removed or changed since last release, | |
9 | # increment current and set revision to 0 | |
10 | # If public symbols have been added since last release, increment age | |
11 | # If public symbols have been removed since last release, set age to 0 | |
12 | m4_define([hybris_lt_current], [1]) | |
13 | m4_define([hybris_lt_revision], [0]) | |
14 | m4_define([hybris_lt_age], [0]) | |
15 | ||
16 | AC_PROG_CC | |
17 | AC_PROG_CXX | |
18 | AM_PROG_CC_C_O | |
19 | AC_GNU_SOURCE | |
20 | AC_DISABLE_STATIC | |
21 | AC_PROG_LIBTOOL | |
22 | ||
23 | AC_SUBST(CFLAGS) | |
24 | AC_SUBST(CPPFLAGS) | |
25 | AC_SUBST(LDFLAGS) | |
26 | ||
27 | PKG_PROG_PKG_CONFIG | |
28 | ||
29 | LT_CURRENT=hybris_lt_current | |
30 | LT_REVISION=hybris_lt_revision | |
31 | LT_AGE=hybris_lt_age | |
32 | AC_SUBST([LT_CURRENT]) | |
33 | AC_SUBST([LT_REVISION]) | |
34 | AC_SUBST([LT_AGE]) | |
35 | ||
36 | AC_CHECK_LIB(dl, dlopen, dummy=yes, AC_MSG_ERROR(dynamic linking loader is required)) | |
37 | AC_CHECK_LIB(rt, clock_gettime, dummy=yes, AC_MSG_ERROR(librt is required)) | |
38 | ||
39 | AC_ARG_ENABLE(debug, | |
40 | [ --enable-debug Enable debug build (default=disabled)], | |
41 | [debug=$enableval], | |
42 | [debug="no"]) | |
43 | AM_CONDITIONAL( [WANT_DEBUG], [test x"$debug" = x"yes"]) | |
44 | ||
45 | AC_ARG_ENABLE(trace, | |
46 | [ --enable-trace Enable TRACE statements (default=disabled)], | |
47 | [trace=$enableval], | |
48 | [trace="no"]) | |
49 | AM_CONDITIONAL( [WANT_TRACE], [test x"$trace" = x"yes"]) | |
50 | ||
51 | AC_ARG_ENABLE(mesa, | |
52 | [ --enable-mesa Enable mesa headers (default=disabled)], | |
53 | [mesa=$enableval], | |
54 | [mesa="no"]) | |
55 | AM_CONDITIONAL( [WANT_MESA], [test x"$mesa" = x"yes"]) | |
56 | ||
57 | AC_ARG_ENABLE(wayland, | |
58 | [ --enable-wayland Enable wayland support (default=disabled)], | |
59 | [wayland=$enableval | |
60 | PKG_CHECK_MODULES(WAYLAND_CLIENT, wayland-client,, exit) | |
61 | PKG_CHECK_MODULES(WAYLAND_SERVER, wayland-server,, exit) | |
62 | WAYLAND_PREFIX=`$PKG_CONFIG --variable=prefix wayland-client` | |
63 | ||
64 | AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner],, [${WAYLAND_PREFIX}/bin$PATH_SEPARATOR$PATH]) | |
65 | AC_DEFINE(WANT_WAYLAND, [], [We want Wayland support]) | |
66 | ], | |
67 | [wayland="no"]) | |
68 | AM_CONDITIONAL( [WANT_WAYLAND], [test x"$wayland" = x"yes"]) | |
69 | ||
70 | ||
71 | AC_ARG_ENABLE(arch, | |
72 | [ --enable-arch[=arch] Compile specific CPU target(default=arm) | |
73 | arm: compile for ARM | |
74 | x86: Compile for x86], | |
75 | [ if test "x$enableval" = "xarm" ; then | |
76 | arch="arm" | |
77 | elif test "x$enableval" = "xx86" ; then | |
78 | arch="x86" | |
79 | else | |
80 | echo | |
81 | echo "Error!" | |
82 | echo "Unknown architecture' type" | |
83 | exit 1 | |
84 | fi | |
85 | ], | |
86 | [arch="arm"] | |
87 | ) | |
88 | AM_CONDITIONAL([WANT_ARCH_ARM], [test x$arch = xarm]) | |
89 | AM_CONDITIONAL([WANT_ARCH_X86], [test x$arch = xx86]) | |
90 | ||
91 | DEFAULT_EGL_PLATFORM="null" | |
92 | AC_ARG_WITH(default-egl-platform, | |
93 | [ --with-default-egl-platform=NAME Use NAME as default EGL platform if not specified by environment ], | |
94 | [ DEFAULT_EGL_PLATFORM="$withval" ], | |
95 | [ ]) | |
96 | AC_SUBST(DEFAULT_EGL_PLATFORM) | |
97 | ||
98 | DEFAULT_HYBRIS_LD_LIBRARY_PATH="/vendor/lib:/system/lib" | |
99 | AC_ARG_WITH(default-hybris-ld-library-path, | |
100 | [ --with-default-hybris-ld-library-path=PATH1:PATH2:... Use PATH1:PATH2 for default HYBRIS_LD_LIBRARY_PATH if not specified by environment ], | |
101 | [ DEFAULT_HYBRIS_LD_LIBRARY_PATH="$withval" ], | |
102 | [ ]) | |
103 | AC_SUBST(DEFAULT_HYBRIS_LD_LIBRARY_PATH) | |
104 | ||
105 | ||
106 | android_headers_path="" | |
107 | AC_ARG_WITH(android-headers, | |
108 | [ --with-android-headers=DIR Use android headers available in DIR. See utils/extract-headers.sh ], | |
109 | [ | |
110 | if [ ! test -e $withval/android-version.h ]; then | |
111 | echo "Error! missing android-version.h in android header path" | |
112 | exit 1 | |
113 | fi | |
114 | rm -f include/android | |
115 | ln -sf $withval include/android | |
116 | android_headers_path="$withval" | |
117 | ||
118 | # According to http://en.wikipedia.org/wiki/Android_version_history#Version_history_by_API_level | |
119 | android_headers_major=`grep -E "define ANDROID_VERSION_MAJOR " $android_headers_path/android-version.h | sed "s|^\#define ANDROID_VERSION_MAJOR \(.*\)$|\1|g"` | |
120 | ||
121 | android_headers_minor=`grep -E "define ANDROID_VERSION_MINOR " $android_headers_path/android-version.h | sed "s|^\#define ANDROID_VERSION_MINOR \(.*\)$|\1|g"` | |
122 | ||
123 | android_headers_patch=`grep -E "define ANDROID_VERSION_PATCH " $android_headers_path/android-version.h | sed "s|^\#define ANDROID_VERSION_PATCH \(.*\)$|\1|g"` | |
124 | ||
125 | if [ test "x$android_headers_major" = x ]; then | |
126 | echo "Error! Was unable to locate define ANDROID_VERSION_MAJOR in $android_headers_path/android-version.h" | |
127 | fi | |
128 | ||
129 | AC_SUBST(ANDROID_VERSION_MAJOR, [$android_headers_major]) | |
130 | AC_SUBST(ANDROID_VERSION_MINOR, [$android_headers_minor]) | |
131 | AC_SUBST(ANDROID_VERSION_PATCH, [$android_headers_patch]) | |
132 | ||
133 | echo "Android headers version is $android_headers_major.$android_headers_minor.$android_headers_patch" | |
134 | ], | |
135 | [ | |
136 | echo "Error! need to provide path to Android headers --with-android-headers=DIR. See utils/extract-headers.sh" | |
137 | exit 1 | |
138 | ] | |
139 | ) | |
140 | ||
141 | # Add automake tests for version/API needs here that you need in code, including test .am's | |
142 | ||
143 | AM_CONDITIONAL([HAS_ANDROID_4_2_0], [test $android_headers_major -ge 4 -a $android_headers_minor -ge 2 ]) | |
144 | AM_CONDITIONAL([HAS_ANDROID_4_1_0], [test $android_headers_major -ge 4 -a $android_headers_minor -ge 1 ]) | |
145 | AM_CONDITIONAL([HAS_ANDROID_4_0_0], [test $android_headers_major -ge 4 -a $android_headers_minor -ge 0 ]) | |
146 | AM_CONDITIONAL([HAS_ANDROID_2_3_0], [test $android_headers_major -ge 2 -a $android_headers_minor -ge 3 ]) | |
147 | ||
148 | AM_CONDITIONAL([HAS_LIBNFC_NXP_HEADERS], [test -f ${android_headers_path}/libnfc-nxp/phLibNfc.h]) | |
149 | ||
150 | AC_CONFIG_FILES([ | |
151 | Makefile | |
152 | properties/Makefile | |
153 | properties/libandroid-properties.pc | |
154 | common/Makefile | |
155 | common/gingerbread/Makefile | |
156 | common/ics/Makefile | |
157 | common/jb/Makefile | |
158 | egl/egl.pc | |
159 | egl/Makefile | |
160 | egl/platforms/Makefile | |
161 | egl/platforms/common/Makefile | |
162 | egl/platforms/common/hybris-egl-platform.pc | |
163 | egl/platforms/null/Makefile | |
164 | egl/platforms/fbdev/Makefile | |
165 | egl/platforms/wayland/Makefile | |
166 | egl/platforms/hwcomposer/Makefile | |
167 | egl/platforms/hwcomposer/hwcomposer-egl.pc | |
168 | glesv1/glesv1_cm.pc | |
169 | glesv1/Makefile | |
170 | glesv2/glesv2.pc | |
171 | glesv2/Makefile | |
172 | hardware/Makefile | |
173 | hardware/libhardware.pc | |
174 | libnfc_nxp/Makefile | |
175 | libnfc_nxp/libnfc_nxp.pc | |
176 | libnfc_ndef_nxp/Makefile | |
177 | libnfc_ndef_nxp/libnfc_ndef_nxp.pc | |
178 | libsync/Makefile | |
179 | libsync/libsync.pc | |
180 | ui/Makefile | |
181 | sf/Makefile | |
182 | sf/libsf.pc | |
183 | input/Makefile | |
184 | input/libis.pc | |
185 | camera/Makefile | |
186 | camera/libcamera.pc | |
187 | include/Makefile | |
188 | utils/Makefile | |
189 | tests/Makefile | |
190 | ]) | |
191 | ||
192 | AM_COND_IF([WANT_WAYLAND], [AC_CONFIG_FILES([egl/platforms/common/wayland-egl.pc])]) | |
193 | AC_OUTPUT | |
194 | ||
195 | echo | |
196 | echo "------------------------------------------------------------------------" | |
197 | echo "$PACKAGE_NAME $PACKAGE_VERSION" | |
198 | echo "------------------------------------------------------------------------" | |
199 | echo | |
200 | echo "Configuration Options:" | |
201 | echo | |
202 | echo " debug build.............: $debug" | |
203 | echo | |
204 | echo " trace...................: $trace" | |
205 | echo | |
206 | echo " prefix..................: $prefix" | |
207 | echo | |
208 | echo " arch ..................: $arch" | |
209 | echo | |
210 | echo " headers path ...........: $android_headers_path" | |
211 | echo | |
212 | echo " default egl platform ...: $DEFAULT_EGL_PLATFORM" | |
213 | echo | |
214 | echo " default ld_library_path.: $DEFAULT_HYBRIS_LD_LIBRARY_PATH" | |
215 | echo | |
216 | echo "------------------------------------------------------------------------" | |
217 | echo | |
218 | echo "Now type 'make' to compile and 'make install' to install this package." | |
219 |