forked from jaegeuk/f2fs-tools
-
Notifications
You must be signed in to change notification settings - Fork 0
/
configure.ac
138 lines (115 loc) · 3.6 KB
/
configure.ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.68])
# Get version from file VERSION
m4_define([f2fs_tools_version], m4_esyscmd([sed -n '1p' VERSION | tr -d '\n']))
m4_define([f2fs_tools_date], m4_esyscmd([sed -n '2p' VERSION | tr -d '\n']))
m4_define([f2fs_tools_gitdate],
m4_esyscmd([git log -1 --pretty=format:%ci 2> /dev/null]))
AC_INIT([F2FS tools], [f2fs_tools_version],
AC_DEFINE([F2FS_TOOLS_VERSION], "f2fs_tools_version", [f2fs-tools version])
AC_DEFINE([F2FS_MAJOR_VERSION], m4_bpatsubst(f2fs_tools_version,
[\([0-9]*\)\(\w\|\W\)*], [\1]),
[Major version for f2fs-tools])
AC_DEFINE([F2FS_MINOR_VERSION], m4_bpatsubst(f2fs_tools_version,
[\([0-9]*\).\([0-9]*\)\(\w\|\W\)*], [\2]),
[Minor version for f2fs-tools])
AC_CHECK_FILE(.git,
AC_DEFINE([F2FS_TOOLS_DATE],
"m4_bpatsubst(f2fs_tools_gitdate,
[\([0-9-]*\)\(\w\|\W\)*], [\1])",
[f2fs-tools date based on Git commits]),
AC_DEFINE([F2FS_TOOLS_DATE],
"f2fs_tools_date",
[f2fs-tools date based on Source releases]))
AC_CONFIG_SRCDIR([config.h.in])
AC_CONFIG_HEADER([config.h])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([foreign tar-pax dist-xz])
AC_CHECK_HEADERS_ONCE([
fcntl.h
mntent.h
stdlib.h
string.h
unistd.h
sys/ioctl.h
sys/mount.h
])
# Test configure options.
AC_ARG_WITH([selinux],
AS_HELP_STRING([--without-selinux],
[Ignore presence of libselinux and disable selinux support]))
AC_ARG_WITH([blkid],
AS_HELP_STRING([--without-blkid],
[Ignore presence of libblkid and disable blkid support]))
# Checks for programs.
AC_PROG_CC
AC_PROG_LIBTOOL
AC_PATH_PROG([LDCONFIG], [ldconfig],
[AC_MSG_ERROR([ldconfig not found])],
[$PATH:/sbin])
# Checks for libraries.
PKG_CHECK_MODULES([libuuid], [uuid])
AS_IF([test "x$with_selinux" != "xno"],
[PKG_CHECK_MODULES([libselinux], [libselinux],
[have_selinux=yes], [have_selinux=no])],
[have_selinux=no]
)
AS_IF([test "x$have_selinux" = "xyes"],
[AC_DEFINE([HAVE_LIBSELINUX], [1], [Use libselinux])],
[AS_IF([test "x$with_selinux" = "xyes"],
[AC_MSG_ERROR([selinux support requested but libselinux not found])]
)]
)
AS_IF([test "x$with_blkid" != "xno"],
[PKG_CHECK_MODULES([libblkid], [blkid],
[have_blkid=yes], [have_blkid=no])],
[have_blkid=no]
)
AS_IF([test "x$have_blkid" = "xyes"],
[AC_DEFINE([HAVE_LIBBLKID], [1], [Use blkid])],
[AS_IF([test "x$with_blkid" = "xyes"],
[AC_MSG_ERROR([blkid support requested but libblkid not found])]
)]
)
# Checks for header files.
AC_CHECK_HEADERS([linux/fs.h linux/blkzoned.h fcntl.h mntent.h stdlib.h string.h \
sys/ioctl.h sys/mount.h unistd.h linux/falloc.h byteswap.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_C_INLINE
AC_TYPE_INT32_T
AC_TYPE_INT8_T
AC_TYPE_SIZE_T
# Checks for library functions.
AC_FUNC_GETMNTENT
AC_CHECK_FUNCS_ONCE([
fallocate
getmntent
memset
])
AS_IF([test "$ac_cv_header_byteswap_h" = "yes"],
[AC_CHECK_DECLS([bswap_64],,,[#include <byteswap.h>])])
# Install directories
#AC_PREFIX_DEFAULT([/usr])
#AC_SUBST([sbindir], [/sbin])
#AC_SUBST([sysconfdir], [/etc])
#AC_SUBST([localstatedir], [/var])
AC_CONFIG_FILES([
Makefile
man/Makefile
lib/Makefile
mkfs/Makefile
fsck/Makefile
tools/Makefile
])
# export library version info for mkfs/libf2fs_format_la
AC_SUBST(FMT_CURRENT, 2)
AC_SUBST(FMT_REVISION, 0)
AC_SUBST(FMT_AGE, 0)
# export library version info for lib/libf2fs_la
AC_SUBST(LIBF2FS_CURRENT, 3)
AC_SUBST(LIBF2FS_REVISION, 0)
AC_SUBST(LIBF2FS_AGE, 0)
AC_OUTPUT