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 | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 57 | |
| 58 | # Checks for header files. |
Sankalp Bose | 92a65a4 | 2014-07-23 03:28:14 +0300 | [diff] [blame] | 59 | AC_CHECK_HEADERS([linux/fs.h fcntl.h mntent.h stdlib.h string.h \ |
Changman Lee | 9a5808c | 2014-11-04 18:10:54 +0900 | [diff] [blame] | 60 | sys/ioctl.h sys/mount.h unistd.h linux/falloc.h]) |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 61 | |
| 62 | # Checks for typedefs, structures, and compiler characteristics. |
| 63 | AC_C_INLINE |
| 64 | AC_TYPE_INT32_T |
| 65 | AC_TYPE_INT8_T |
| 66 | AC_TYPE_SIZE_T |
| 67 | |
| 68 | # Checks for library functions. |
| 69 | AC_FUNC_GETMNTENT |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 70 | AC_CHECK_FUNCS_ONCE([ |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 71 | getmntent |
| 72 | memset |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 73 | ]) |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 74 | |
Jaegeuk Kim | e69e437 | 2013-01-25 17:20:16 +0900 | [diff] [blame] | 75 | # Install directories |
| 76 | AC_PREFIX_DEFAULT([/usr]) |
| 77 | AC_SUBST([sbindir], [/sbin]) |
| 78 | AC_SUBST([sysconfdir], [/etc]) |
| 79 | AC_SUBST([localstatedir], [/var]) |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 80 | AC_CONFIG_FILES([ |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 81 | Makefile |
| 82 | man/Makefile |
Jaegeuk Kim | e69e437 | 2013-01-25 17:20:16 +0900 | [diff] [blame] | 83 | lib/Makefile |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 84 | mkfs/Makefile |
Changman Lee | 7f35b54 | 2013-07-04 17:11:32 +0900 | [diff] [blame] | 85 | fsck/Makefile |
Changman Lee | a0a5567 | 2014-01-10 17:44:59 +0900 | [diff] [blame] | 86 | tools/Makefile |
Jan Engelhardt | b1bce4d | 2012-12-12 03:52:24 +0100 | [diff] [blame] | 87 | ]) |
Mike Frysinger | 0903d1e | 2012-10-30 07:38:59 +0900 | [diff] [blame] | 88 | |
Jaegeuk Kim | 036d45e | 2012-10-26 21:56:34 +0900 | [diff] [blame] | 89 | AC_OUTPUT |