1b8bc0d8aSopenharmony_ciAC_PREREQ(2.69) 2b8bc0d8aSopenharmony_ciAC_INIT([EXIF library], 3b8bc0d8aSopenharmony_ci [0.6.24], 4b8bc0d8aSopenharmony_ci [libexif-devel@lists.sourceforge.net], 5b8bc0d8aSopenharmony_ci [libexif], 6b8bc0d8aSopenharmony_ci [https://libexif.github.io/]) 7b8bc0d8aSopenharmony_ciAC_CONFIG_SRCDIR([libexif/exif-data.h]) 8b8bc0d8aSopenharmony_ciAC_CONFIG_HEADERS([config.h]) 9b8bc0d8aSopenharmony_ciAC_CONFIG_MACRO_DIR([auto-m4]) 10b8bc0d8aSopenharmony_ciAM_INIT_AUTOMAKE([ 11b8bc0d8aSopenharmony_ci -Wall 12b8bc0d8aSopenharmony_ci gnu 13b8bc0d8aSopenharmony_ci 1.14.1 14b8bc0d8aSopenharmony_ci dist-xz 15b8bc0d8aSopenharmony_ci dist-bzip2 16b8bc0d8aSopenharmony_ci dist-zip 17b8bc0d8aSopenharmony_ci check-news 18b8bc0d8aSopenharmony_ci subdir-objects 19b8bc0d8aSopenharmony_ci]) 20b8bc0d8aSopenharmony_ciAM_MAINTAINER_MODE 21b8bc0d8aSopenharmony_ci 22b8bc0d8aSopenharmony_ci# Use the silent-rules feature when possible. 23b8bc0d8aSopenharmony_cim4_ifndef([AM_SILENT_RULES], [m4_define([AM_SILENT_RULES],[])]) 24b8bc0d8aSopenharmony_ciAM_SILENT_RULES([yes]) 25b8bc0d8aSopenharmony_ci 26b8bc0d8aSopenharmony_ciGP_CHECK_SHELL_ENVIRONMENT 27b8bc0d8aSopenharmony_ciGP_CONFIG_MSG([Build]) 28b8bc0d8aSopenharmony_ciGP_CONFIG_MSG([Source code location], [${srcdir}]) 29b8bc0d8aSopenharmony_ci 30b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 31b8bc0d8aSopenharmony_cidnl Advanced information about versioning: 32b8bc0d8aSopenharmony_cidnl * "Writing shared libraries" by Mike Hearn 33b8bc0d8aSopenharmony_cidnl http://plan99.net/~mike/writing-shared-libraries.html 34b8bc0d8aSopenharmony_cidnl * libtool.info chapter "Versioning" 35b8bc0d8aSopenharmony_cidnl * libtool.info chapter "Updating library version information" 36b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 37b8bc0d8aSopenharmony_cidnl Versioning: 38b8bc0d8aSopenharmony_cidnl - CURRENT (Major): Increment if the interface has changes. AGE is always 39b8bc0d8aSopenharmony_cidnl *changed* at the same time. 40b8bc0d8aSopenharmony_cidnl - AGE (Micro): Increment if any interfaces have been added; set to 0 41b8bc0d8aSopenharmony_cidnl if any interfaces have been removed. Removal has 42b8bc0d8aSopenharmony_cidnl precedence over adding, so set to 0 if both happened. 43b8bc0d8aSopenharmony_cidnl It denotes upward compatibility. 44b8bc0d8aSopenharmony_cidnl - REVISION (Minor): Increment any time the source changes; set to 45b8bc0d8aSopenharmony_cidnl 0 if you incremented CURRENT. 46b8bc0d8aSopenharmony_cidnl 47b8bc0d8aSopenharmony_cidnl To summarize. Any interface *change* increment CURRENT. If that interface 48b8bc0d8aSopenharmony_cidnl change does not break upward compatibility (ie it is an addition), 49b8bc0d8aSopenharmony_cidnl increment AGE, Otherwise AGE is reset to 0. If CURRENT has changed, 50b8bc0d8aSopenharmony_cidnl REVISION is set to 0, otherwise REVISION is incremented. 51b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 52b8bc0d8aSopenharmony_cidnl C:A:R 53b8bc0d8aSopenharmony_cidnl 12:0:1 0.6.13 54b8bc0d8aSopenharmony_cidnl 13:1:0 added EXIF_DATA_OPTION_DONT_CHANGE_MAKER_NOTE (for 0.6.14) 55b8bc0d8aSopenharmony_cidnl 14:2:0 added XP_ WinXP tags (for 0.6.15) 56b8bc0d8aSopenharmony_cidnl 14:2:1 0.6.17 57b8bc0d8aSopenharmony_cidnl 15:3:0 added exif_loader_get_buf (for 0.6.18) 58b8bc0d8aSopenharmony_cidnl 15:3:1 0.6.19 59b8bc0d8aSopenharmony_cidnl 15:3:2 0.6.20 60b8bc0d8aSopenharmony_cidnl 15:3:3 0.6.21 61b8bc0d8aSopenharmony_cidnl 15:3:4 0.6.22 62b8bc0d8aSopenharmony_ciLIBEXIF_CURRENT=15 63b8bc0d8aSopenharmony_ciLIBEXIF_AGE=3 64b8bc0d8aSopenharmony_ciLIBEXIF_REVISION=4 65b8bc0d8aSopenharmony_ciAC_SUBST([LIBEXIF_AGE]) 66b8bc0d8aSopenharmony_ciAC_SUBST([LIBEXIF_REVISION]) 67b8bc0d8aSopenharmony_ciAC_SUBST([LIBEXIF_CURRENT]) 68b8bc0d8aSopenharmony_ciAC_SUBST([LIBEXIF_CURRENT_MIN],[`expr $LIBEXIF_CURRENT - $LIBEXIF_AGE`]) 69b8bc0d8aSopenharmony_ciLIBEXIF_VERSION_INFO="$LIBEXIF_CURRENT:$LIBEXIF_REVISION:$LIBEXIF_AGE" 70b8bc0d8aSopenharmony_ciAC_SUBST([LIBEXIF_VERSION_INFO]) 71b8bc0d8aSopenharmony_ci 72b8bc0d8aSopenharmony_ciAC_C_INLINE 73b8bc0d8aSopenharmony_ciAM_PROG_AR 74b8bc0d8aSopenharmony_ciLT_INIT([win32-dll]) 75b8bc0d8aSopenharmony_ciAM_CPPFLAGS="$CPPFLAGS" 76b8bc0d8aSopenharmony_ciGP_CONFIG_MSG([Compiler], [${CC}]) 77b8bc0d8aSopenharmony_ci 78b8bc0d8aSopenharmony_ci 79b8bc0d8aSopenharmony_cidnl -------------------------------------------------------------------- 80b8bc0d8aSopenharmony_cidnl check for "diff" and "diff -u" 81b8bc0d8aSopenharmony_cidnl -------------------------------------------------------------------- 82b8bc0d8aSopenharmony_ci 83b8bc0d8aSopenharmony_ciAC_ARG_VAR([DIFF], [path to diff utility (default: no)]) 84b8bc0d8aSopenharmony_ciAC_PATH_PROG([DIFF], [diff], [no]) 85b8bc0d8aSopenharmony_ciAM_CONDITIONAL([HAVE_DIFF], [test "x$DIFF" != xno]) 86b8bc0d8aSopenharmony_ci 87b8bc0d8aSopenharmony_ciDIFF_U="no" 88b8bc0d8aSopenharmony_ciAS_IF([test "x$DIFF" != xno], [dnl 89b8bc0d8aSopenharmony_ciAC_MSG_CHECKING([whether diff supports -u]) 90b8bc0d8aSopenharmony_ciecho moo > conftest-a.c 91b8bc0d8aSopenharmony_ciecho moo > conftest-b.c 92b8bc0d8aSopenharmony_ciAS_IF([${DIFF} -u conftest-a.c conftest-b.c], [dnl 93b8bc0d8aSopenharmony_ci AC_MSG_RESULT([yes]) 94b8bc0d8aSopenharmony_ci DIFF_U="$DIFF -u" 95b8bc0d8aSopenharmony_ci], [dnl 96b8bc0d8aSopenharmony_ci AC_MSG_RESULT([no]) 97b8bc0d8aSopenharmony_ci]) 98b8bc0d8aSopenharmony_cirm -f conftest-a.c conftest-b.c 99b8bc0d8aSopenharmony_ci]) 100b8bc0d8aSopenharmony_ciAC_SUBST([DIFF_U]) 101b8bc0d8aSopenharmony_ciAM_CONDITIONAL([HAVE_DIFF_U], [test "x$DIFF_U" != xno]) 102b8bc0d8aSopenharmony_ci 103b8bc0d8aSopenharmony_ci 104b8bc0d8aSopenharmony_cidnl -------------------------------------------------------------------- 105b8bc0d8aSopenharmony_ci 106b8bc0d8aSopenharmony_ciAC_SYS_LARGEFILE 107b8bc0d8aSopenharmony_ci 108b8bc0d8aSopenharmony_cidnl Create a stdint.h-like file containing size-specific integer definitions 109b8bc0d8aSopenharmony_cidnl that will always be available 110b8bc0d8aSopenharmony_ciAX_NEED_STDINT_H([libexif/_stdint.h]) 111b8bc0d8aSopenharmony_ci 112b8bc0d8aSopenharmony_ci 113b8bc0d8aSopenharmony_cidnl ------------------------------------------------------------------------ 114b8bc0d8aSopenharmony_cidnl Whether we're supposed to ship binaries in the tarball 115b8bc0d8aSopenharmony_cidnl ------------------------------------------------------------------------ 116b8bc0d8aSopenharmony_ci 117b8bc0d8aSopenharmony_ciship_binaries=false 118b8bc0d8aSopenharmony_ciAC_ARG_ENABLE([ship-binaries], 119b8bc0d8aSopenharmony_ci[AS_HELP_STRING([--enable-ship-binaries], 120b8bc0d8aSopenharmony_ci [Whether to ship binaries in the tarball [default=no]])], [ 121b8bc0d8aSopenharmony_ciAS_VAR_IF([enableval], [yes], [ship_binaries=true]) 122b8bc0d8aSopenharmony_ci]) 123b8bc0d8aSopenharmony_ciAM_CONDITIONAL([SHIP_BINARIES], [$ship_binaries]) 124b8bc0d8aSopenharmony_ciGP_CONFIG_MSG([Ship binaries in tarball], [$ship_binaries]) 125b8bc0d8aSopenharmony_ci 126b8bc0d8aSopenharmony_ci 127b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 128b8bc0d8aSopenharmony_cidnl Whether -lm is required for our math functions 129b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 130b8bc0d8aSopenharmony_ci 131b8bc0d8aSopenharmony_ci# we need sqrt and pow which may be in libm 132b8bc0d8aSopenharmony_ci# We cannot use AC_CHECK_FUNC because if CFLAGS contains 133b8bc0d8aSopenharmony_ci# -Wall -Werror here the check fails because 134b8bc0d8aSopenharmony_ci# char *sqrt() conflicts with double sqrt(double xx) 135b8bc0d8aSopenharmony_ci 136b8bc0d8aSopenharmony_ci# Start by assuming -lm is needed, because it's possible that the little 137b8bc0d8aSopenharmony_ci# test program below will be optimized to in-line floating point code that 138b8bc0d8aSopenharmony_ci# doesn't require -lm, whereas the library itself cannot be so optimized 139b8bc0d8aSopenharmony_ci# (this actually seems to be the case on x86 with gcc 4.2). Assuming the 140b8bc0d8aSopenharmony_ci# reverse means that -lm could be needed but wouldn't be detected below. 141b8bc0d8aSopenharmony_ci 142b8bc0d8aSopenharmony_ciLIBS_orig="$LIBS" 143b8bc0d8aSopenharmony_ciLIBS="$LIBS -lm" 144b8bc0d8aSopenharmony_ciAC_MSG_CHECKING([for math functions in libm]) 145b8bc0d8aSopenharmony_ciAC_LINK_IFELSE([AC_LANG_PROGRAM([ 146b8bc0d8aSopenharmony_ci #include <math.h> 147b8bc0d8aSopenharmony_ci ],[ 148b8bc0d8aSopenharmony_ci double s = sqrt(0); 149b8bc0d8aSopenharmony_ci double p = pow(s,s); 150b8bc0d8aSopenharmony_ci (void) p; 151b8bc0d8aSopenharmony_ci ])], 152b8bc0d8aSopenharmony_ci [AC_MSG_RESULT([yes])], [ 153b8bc0d8aSopenharmony_ci AC_MSG_RESULT([no]) 154b8bc0d8aSopenharmony_ci LIBS="$LIBS_orig" 155b8bc0d8aSopenharmony_ci AC_MSG_CHECKING([for math functions without libm]) 156b8bc0d8aSopenharmony_ci AC_LINK_IFELSE([AC_LANG_PROGRAM([ 157b8bc0d8aSopenharmony_ci #include <math.h> 158b8bc0d8aSopenharmony_ci ],[ 159b8bc0d8aSopenharmony_ci double s = sqrt(0); 160b8bc0d8aSopenharmony_ci double p = pow(s,s); 161b8bc0d8aSopenharmony_ci (void) p; 162b8bc0d8aSopenharmony_ci ])], 163b8bc0d8aSopenharmony_ci [ 164b8bc0d8aSopenharmony_ci AC_MSG_RESULT([yes]) 165b8bc0d8aSopenharmony_ci ],[ 166b8bc0d8aSopenharmony_ci AC_MSG_RESULT([no]) 167b8bc0d8aSopenharmony_ci AC_MSG_ERROR([*** Could not find sqrt() & pow() functions]) 168b8bc0d8aSopenharmony_ci ]) 169b8bc0d8aSopenharmony_ci]) 170b8bc0d8aSopenharmony_ci 171b8bc0d8aSopenharmony_ci# Check whether libfailmalloc is available for tests 172b8bc0d8aSopenharmony_ciCHECK_FAILMALLOC 173b8bc0d8aSopenharmony_ci 174b8bc0d8aSopenharmony_ci# doc support 175b8bc0d8aSopenharmony_ciGP_CHECK_DOC_DIR 176b8bc0d8aSopenharmony_ciGP_CHECK_DOXYGEN 177b8bc0d8aSopenharmony_ci 178b8bc0d8aSopenharmony_ci# Whether to enable the internal docs build. 179b8bc0d8aSopenharmony_ci# 180b8bc0d8aSopenharmony_ci# This takes quite some time due to the generation of lots of call 181b8bc0d8aSopenharmony_ci# graphs, so it is disabled by default. 182b8bc0d8aSopenharmony_ciset_enable_internal_docs=no 183b8bc0d8aSopenharmony_ciAC_ARG_ENABLE([internal-docs], [dnl 184b8bc0d8aSopenharmony_ciAS_HELP_STRING([--enable-internal-docs], 185b8bc0d8aSopenharmony_ci [Build internal code docs if doxygen available])], [ 186b8bc0d8aSopenharmony_cidnl If either --enable-foo nor --disable-foo were given, execute this. 187b8bc0d8aSopenharmony_ciAS_CASE(["$enableval"], 188b8bc0d8aSopenharmony_ci [no|off|false], [set_enable_internal_docs=no], 189b8bc0d8aSopenharmony_ci [yes|on|true], [set_enable_internal_docs=yes]) 190b8bc0d8aSopenharmony_ci]) 191b8bc0d8aSopenharmony_ciAC_MSG_CHECKING([whether to create internal code docs]) 192b8bc0d8aSopenharmony_ciAC_MSG_RESULT([${set_enable_internal_docs}]) 193b8bc0d8aSopenharmony_ciAM_CONDITIONAL([ENABLE_INTERNAL_DOCS], 194b8bc0d8aSopenharmony_ci [test "x${set_enable_internal_docs}" = "xyes"]) 195b8bc0d8aSopenharmony_ci 196b8bc0d8aSopenharmony_ci 197b8bc0d8aSopenharmony_ci# --------------------------------------------------------------------------- 198b8bc0d8aSopenharmony_ci# i18n support 199b8bc0d8aSopenharmony_ci# --------------------------------------------------------------------------- 200b8bc0d8aSopenharmony_ciALL_LINGUAS="be bs cs da de en_AU en_CA en_GB es fr it ja ms nl pl pt pt_BR ru sk sq sr sv tr uk vi zh_CN" 201b8bc0d8aSopenharmony_ciAM_PO_SUBDIRS 202b8bc0d8aSopenharmony_ciGP_GETTEXT_HACK([${PACKAGE}-${LIBEXIF_CURRENT_MIN}], 203b8bc0d8aSopenharmony_ci [Lutz Mueller and others]) 204b8bc0d8aSopenharmony_ciAM_GNU_GETTEXT_VERSION([0.18.3]) 205b8bc0d8aSopenharmony_ciAM_GNU_GETTEXT([external]) 206b8bc0d8aSopenharmony_ciAM_ICONV() 207b8bc0d8aSopenharmony_ciGP_GETTEXT_FLAGS() 208b8bc0d8aSopenharmony_ci 209b8bc0d8aSopenharmony_ci 210b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 211b8bc0d8aSopenharmony_cidnl Thread-safe functions 212b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 213b8bc0d8aSopenharmony_ciAC_MSG_CHECKING([for localtime_s]) 214b8bc0d8aSopenharmony_ciAC_LINK_IFELSE([AC_LANG_PROGRAM([[ 215b8bc0d8aSopenharmony_ci #include <time.h> 216b8bc0d8aSopenharmony_ci]], [[ 217b8bc0d8aSopenharmony_ci localtime_s(NULL, NULL); 218b8bc0d8aSopenharmony_ci]])], [dnl 219b8bc0d8aSopenharmony_ci have_localtime_s="yes" 220b8bc0d8aSopenharmony_ci AC_DEFINE([HAVE_LOCALTIME_S], [1], [Define to 1 if you have localtime_s()]) 221b8bc0d8aSopenharmony_ci], [dnl 222b8bc0d8aSopenharmony_ci have_localtime_s="no" 223b8bc0d8aSopenharmony_ci]) 224b8bc0d8aSopenharmony_ciAC_MSG_RESULT([$have_localtime_s]) 225b8bc0d8aSopenharmony_ci 226b8bc0d8aSopenharmony_ciAC_CHECK_FUNCS([localtime_r]) 227b8bc0d8aSopenharmony_ci 228b8bc0d8aSopenharmony_ci 229b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 230b8bc0d8aSopenharmony_cidnl Compiler/Linker Options and Warnings 231b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 232b8bc0d8aSopenharmony_ciAM_CPPFLAGS="$AM_CPPFLAGS -I\$(top_srcdir)" 233b8bc0d8aSopenharmony_ciAM_CPPFLAGS="$AM_CPPFLAGS -I\$(top_builddir)" 234b8bc0d8aSopenharmony_ciAM_LDFLAGS="$LDFLAGS" 235b8bc0d8aSopenharmony_ciAS_VAR_IF([GCC], [yes], [dnl 236b8bc0d8aSopenharmony_ci AM_CFLAGS="$AM_CFLAGS -ansi -pedantic-errors" 237b8bc0d8aSopenharmony_ci AM_CXXFLAGS="$AM_CXXFLAGS -ansi -pedantic-errors" 238b8bc0d8aSopenharmony_ci AM_CPPFLAGS="$AM_CPPFLAGS -g -Wall -Wmissing-declarations -Wmissing-prototypes" 239b8bc0d8aSopenharmony_ci AM_LDFLAGS="$AM_LDFLAGS -g -Wall" 240b8bc0d8aSopenharmony_ci]) 241b8bc0d8aSopenharmony_ci 242b8bc0d8aSopenharmony_cidnl AC_SUBST([AM_CFLAGS]) 243b8bc0d8aSopenharmony_cidnl AC_SUBST([AM_CXXFLAGS]) 244b8bc0d8aSopenharmony_ciAC_SUBST([AM_CPPFLAGS]) 245b8bc0d8aSopenharmony_ciAC_SUBST([AM_LDFLAGS]) 246b8bc0d8aSopenharmony_ci 247b8bc0d8aSopenharmony_ci 248b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 249b8bc0d8aSopenharmony_cidnl Output files 250b8bc0d8aSopenharmony_cidnl --------------------------------------------------------------------------- 251b8bc0d8aSopenharmony_ciAC_CONFIG_FILES([ 252b8bc0d8aSopenharmony_ci po/Makefile.in 253b8bc0d8aSopenharmony_ci Makefile 254b8bc0d8aSopenharmony_ci libexif.spec 255b8bc0d8aSopenharmony_ci libexif/Makefile 256b8bc0d8aSopenharmony_ci test/Makefile 257b8bc0d8aSopenharmony_ci test/nls/Makefile 258b8bc0d8aSopenharmony_ci m4m/Makefile 259b8bc0d8aSopenharmony_ci doc/Makefile 260b8bc0d8aSopenharmony_ci doc/Doxyfile 261b8bc0d8aSopenharmony_ci doc/Doxyfile-internals 262b8bc0d8aSopenharmony_ci libexif.pc 263b8bc0d8aSopenharmony_ci libexif-uninstalled.pc 264b8bc0d8aSopenharmony_ci binary-dist/Makefile 265b8bc0d8aSopenharmony_ci contrib/Makefile 266b8bc0d8aSopenharmony_ci contrib/examples/Makefile 267b8bc0d8aSopenharmony_ci]) 268b8bc0d8aSopenharmony_ciAC_OUTPUT 269b8bc0d8aSopenharmony_ci 270b8bc0d8aSopenharmony_ciGP_CONFIG_OUTPUT 271