1AC_INIT([OTS], 2 [6.1.1], 3 [https://github.com/khaledhosny/ots/issues], 4 [ots], 5 [https://github.com/khaledhosny/ots]) 6 7AC_CANONICAL_SYSTEM 8AC_CONFIG_MACRO_DIR([m4]) 9AC_CONFIG_HEADERS([config.h]) 10 11AM_INIT_AUTOMAKE([foreign subdir-objects]) 12AM_SILENT_RULES([yes]) 13 14AC_CYGWIN 15AC_EXEEXT 16AC_OBJEXT 17AC_PROG_CC 18AC_PROG_CXX 19AC_PROG_RANLIB 20PKG_PROG_PKG_CONFIG([0.20]) 21 22AX_CXX_COMPILE_STDCXX([11], [noext], [mandatory]) 23 24if test "$GCC" = yes; then 25 AX_CHECK_COMPILE_FLAG([-fsanitize=address], [ASAN_CFLAGS=-fsanitize=address], :) 26 AX_CHECK_COMPILE_FLAG([-fsanitize=undefined], [UBSAN_CFLAGS=-fsanitize=undefined], :) 27fi 28AC_SUBST(ASAN_CFLAGS) 29AC_SUBST(UBSAN_CFLAGS) 30AM_CONDITIONAL(HAVE_FSANITIZE, [test "x$ASAN_CFLAGS" != "x" -o "x$UBSAN_CFLAGS" != "x"]) 31 32AC_ARG_ENABLE([debug], 33 AS_HELP_STRING([--enable-debug=@<:@yes/no@:>@], 34 [Enable extra debugging information for font 35 sanitization @<:@default=no@:>@])) 36AS_IF([test "x$enable_debug" = "xyes"], [ 37 AC_DEFINE(OTS_DEBUG, 1, [Enable extra debugging information]) 38]) 39 40AC_ARG_ENABLE([graphite], 41 AS_HELP_STRING([--enable-graphite=@<:@yes/no@:>@], 42 [Sanitize Graphite tables @<:@default=yes@:>@])) 43AS_IF([test "x$enable_graphite" != "xno"], [ 44 AC_DEFINE(OTS_GRAPHITE, 1, [Sanitize Graphite tables]) 45]) 46AM_CONDITIONAL(OTS_GRAPHITE, [test "x$enable_graphite" != "xno"]) 47 48have_freetype=false 49PKG_CHECK_MODULES(FREETYPE, [freetype2], [have_freetype=true], :) 50if $have_freetype; then 51 AC_DEFINE(HAVE_FREETYPE, 1, [Have FreeType 2 library]) 52fi 53AM_CONDITIONAL(HAVE_FREETYPE, [$have_freetype]) 54 55have_pthread=false 56AX_PTHREAD([have_pthread=true]) 57if $have_pthread; then 58 GTEST_CPPFLAGS="-DGTEST_HAS_PTHREAD=1" 59else 60 GTEST_CPPFLAGS="-DGTEST_HAS_PTHREAD=0" 61fi 62AC_SUBST([GTEST_CPPFLAGS]) 63 64have_coretext=false 65AC_CHECK_TYPE([CTFontRef], [have_coretext=true], [], [#include <ApplicationServices/ApplicationServices.h>]) 66if $have_coretext; then 67 CORETEXT_CFLAGS= 68 CORETEXT_LIBS="-framework ApplicationServices" 69 AC_DEFINE(HAVE_CORETEXT, 1, [Have Core Text framework]) 70fi 71AC_SUBST(CORETEXT_CFLAGS) 72AC_SUBST(CORETEXT_LIBS) 73AM_CONDITIONAL(HAVE_CORETEXT, [$have_coretext]) 74 75have_win32=false 76AC_CHECK_HEADERS(windows.h, have_win32=true) 77if $have_win32; then 78 AC_DEFINE(HAVE_WIN32, 1, [Have Windows API]) 79fi 80AM_CONDITIONAL(HAVE_WIN32, [$have_win32]) 81 82have_systime=false 83AC_CHECK_HEADER([sys/time.h], [have_systime=true]) 84AM_CONDITIONAL(HAVE_SYSTIME, [$have_systime]) 85 86AC_CONFIG_FILES([Makefile]) 87 88AC_OUTPUT 89