Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 1 | # -*- Autoconf -*- |
| 2 | # Process this file with autoconf to produce a configure script. |
| 3 | |
| 4 | AC_PREREQ([2.68]) |
Sven-Göran Bergh | dd1ba07 | 2012-12-07 10:20:27 +0900 | [diff] [blame] | 5 | |
| 6 | # Get version from file VERSION |
| 7 | m4_define([f2fs_tools_version], m4_esyscmd([sed -n '1p' VERSION | tr -d '\n'])) |
| 8 | m4_define([f2fs_tools_date], m4_esyscmd([sed -n '2p' VERSION | tr -d '\n'])) |
| 9 | m4_define([f2fs_tools_gitdate], |
| 10 | m4_esyscmd([git log -1 --pretty=format:%ci 2> /dev/null])) |
| 11 | |
| 12 | AC_INIT([F2FS tools], [f2fs_tools_version], |
| 13 | [linux-f2fs-devel@lists.sourceforge.net]) |
| 14 | |
| 15 | AC_DEFINE([F2FS_TOOLS_VERSION], "f2fs_tools_version", [f2fs-tools version]) |
| 16 | AC_DEFINE([F2FS_MAJOR_VERSION], m4_bpatsubst(f2fs_tools_version, |
| 17 | [\([0-9]*\)\(\w\|\W\)*], [\1]), |
| 18 | [Major version for f2fs-tools]) |
| 19 | AC_DEFINE([F2FS_MINOR_VERSION], m4_bpatsubst(f2fs_tools_version, |
| 20 | [\([0-9]*\).\([0-9]*\)\(\w\|\W\)*], [\2]), |
| 21 | [Minor version for f2fs-tools]) |
| 22 | |
| 23 | AC_CHECK_FILE(.git, |
| 24 | AC_DEFINE([F2FS_TOOLS_DATE], |
| 25 | "m4_bpatsubst(f2fs_tools_gitdate, |
| 26 | [\([0-9-]*\)\(\w\|\W\)*], [\1])", |
| 27 | [f2fs-tools date based on Git commits]), |
| 28 | AC_DEFINE([F2FS_TOOLS_DATE], |
| 29 | "f2fs_tools_date", |
| 30 | [f2fs-tools date based on Source releases])) |
| 31 | |
Jaegeuk Kim | e69e437 | 2013-01-25 17:20:16 +0900 | [diff] [blame] | 32 | AC_CONFIG_SRCDIR([config.h.in]) |
Jan Engelhardt | 8471b6a | 2012-12-12 03:59:16 +0100 | [diff] [blame] | 33 | AC_CONFIG_HEADER([config.h]) |
Jaegeuk Kim | e69e437 | 2013-01-25 17:20:16 +0900 | [diff] [blame] | 34 | AC_CONFIG_MACRO_DIR([m4]) |
Jan Engelhardt | ec1a5da | 2012-12-12 03:55:42 +0100 | [diff] [blame] | 35 | AC_CONFIG_AUX_DIR([build-aux]) |
Jan Engelhardt | 2a8c4b1 | 2012-12-12 03:57:11 +0100 | [diff] [blame] | 36 | AM_INIT_AUTOMAKE([foreign tar-pax dist-xz]) |
Jaegeuk Kim | e69e437 | 2013-01-25 17:20:16 +0900 | [diff] [blame] | 37 | |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 38 | AC_CHECK_HEADERS_ONCE([ |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 39 | fcntl.h |
| 40 | mntent.h |
| 41 | stdlib.h |
| 42 | string.h |
| 43 | unistd.h |
| 44 | sys/ioctl.h |
| 45 | sys/mount.h |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 46 | ]) |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 47 | |
| 48 | # Checks for programs. |
| 49 | AC_PROG_CC |
Jaegeuk Kim | e69e437 | 2013-01-25 17:20:16 +0900 | [diff] [blame] | 50 | AC_PROG_LIBTOOL |
| 51 | AC_PATH_PROG([LDCONFIG], [ldconfig], |
| 52 | [AC_MSG_ERROR([ldconfig not found])], |
| 53 | [$PATH:/sbin]) |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 54 | |
| 55 | # Checks for libraries. |
Jan Engelhardt | fe2928a | 2012-12-12 03:53:28 +0100 | [diff] [blame] | 56 | PKG_CHECK_MODULES([libuuid], [uuid]) |
Jaegeuk Kim | de166ee | 2015-12-09 16:18:44 -0800 | [diff] [blame] | 57 | PKG_CHECK_MODULES([libselinux], [libselinux]) |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 58 | |
| 59 | # Checks for header files. |
Sankalp Bose | ba91378 | 2014-07-23 03:28:14 +0300 | [diff] [blame] | 60 | AC_CHECK_HEADERS([linux/fs.h fcntl.h mntent.h stdlib.h string.h \ |
Yann E. MORIN | 3cd5ba1 | 2014-12-25 18:39:19 +0100 | [diff] [blame] | 61 | sys/ioctl.h sys/mount.h unistd.h linux/falloc.h byteswap.h]) |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 62 | |
| 63 | # Checks for typedefs, structures, and compiler characteristics. |
| 64 | AC_C_INLINE |
| 65 | AC_TYPE_INT32_T |
| 66 | AC_TYPE_INT8_T |
| 67 | AC_TYPE_SIZE_T |
| 68 | |
| 69 | # Checks for library functions. |
| 70 | AC_FUNC_GETMNTENT |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 71 | AC_CHECK_FUNCS_ONCE([ |
Gustavo Zacarias | 10f58ff | 2015-03-10 15:53:17 -0300 | [diff] [blame] | 72 | fallocate |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 73 | getmntent |
| 74 | memset |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 75 | ]) |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 76 | |
Yann E. MORIN | 5507020 | 2014-12-25 18:52:00 +0100 | [diff] [blame] | 77 | AS_IF([test "$ac_cv_header_byteswap_h" = "yes"], |
| 78 | [AC_CHECK_DECLS([bswap_64],,,[#include <byteswap.h>])]) |
| 79 | |
Jaegeuk Kim | e69e437 | 2013-01-25 17:20:16 +0900 | [diff] [blame] | 80 | # Install directories |
Anthony G. Basile | d3195bf | 2015-03-07 11:16:54 -0500 | [diff] [blame] | 81 | #AC_PREFIX_DEFAULT([/usr]) |
| 82 | #AC_SUBST([sbindir], [/sbin]) |
| 83 | #AC_SUBST([sysconfdir], [/etc]) |
| 84 | #AC_SUBST([localstatedir], [/var]) |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 85 | AC_CONFIG_FILES([ |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 86 | Makefile |
| 87 | man/Makefile |
Jaegeuk Kim | e69e437 | 2013-01-25 17:20:16 +0900 | [diff] [blame] | 88 | lib/Makefile |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 89 | mkfs/Makefile |
Changman Lee | 7f35b54 | 2013-07-04 17:11:32 +0900 | [diff] [blame] | 90 | fsck/Makefile |
Changman Lee | a0a5567 | 2014-01-10 17:44:59 +0900 | [diff] [blame] | 91 | tools/Makefile |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 92 | ]) |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 93 | |
Jaegeuk Kim | df13791 | 2015-12-09 10:30:25 -0800 | [diff] [blame] | 94 | # export library version info for mkfs/libf2fs_format_la |
| 95 | AC_SUBST(FMT_CURRENT, 0) |
Jaegeuk Kim | 6af2332 | 2016-07-28 13:10:46 -0700 | [diff] [blame] | 96 | AC_SUBST(FMT_REVISION, 2) |
Jaegeuk Kim | df13791 | 2015-12-09 10:30:25 -0800 | [diff] [blame] | 97 | AC_SUBST(FMT_AGE, 0) |
| 98 | |
| 99 | # export library version info for lib/libf2fs_la |
Jaegeuk Kim | 6af2332 | 2016-07-28 13:10:46 -0700 | [diff] [blame] | 100 | AC_SUBST(LIBF2FS_CURRENT, 1) |
| 101 | AC_SUBST(LIBF2FS_REVISION, 0) |
Jaegeuk Kim | df13791 | 2015-12-09 10:30:25 -0800 | [diff] [blame] | 102 | AC_SUBST(LIBF2FS_AGE, 0) |
| 103 | |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 104 | AC_OUTPUT |