configure.ac 5.34 KB
Newer Older
Nikos Skalkotos's avatar
Nikos Skalkotos committed
1
AC_PREREQ(2.59)
2
AC_INIT(snf-image, 0.6, synnefo@lists.grnet.gr)
Nikos Skalkotos's avatar
Nikos Skalkotos committed
3
4
5
6
7
8
9

AC_CONFIG_AUX_DIR(autotools)
AC_CONFIG_SRCDIR(configure)

AM_INIT_AUTOMAKE([1.9 foreign tar-ustar -Wall -Wno-portability])
AM_INIT_AUTOMAKE([subdir-objects])

10
11
12
13
14
15
AC_ARG_ENABLE([network_backend],
   AS_HELP_STRING([--enable-network-backend],
    [enable support for network-hosted images
    (this depends on cURL)])
)

Nikos Skalkotos's avatar
Nikos Skalkotos committed
16
17
# --with-progress-monitor
AC_ARG_WITH([progress-monitor],
18
19
  [AS_HELP_STRING([--with-progress-monitor=PRGRM],
    [name of the progress-monitor program []])],
20
21
    [if test "$withval" != "yes" -a "$withval" != "no"; then
         AC_PATH_PROG(PROGRESS_MONITOR, ["$withval"], [], [$PATH:/usr/sbin:/sbin])
22
         if test -z "$PROGRESS_MONITOR" ; then
23
             AC_MSG_FAILURE([Could not find progress-monitor: $withval.])
24
         fi
25
26
27
     elif test "$withval" != "no"; then
         AC_MSG_ERROR([you must specify a value for progress-monitor if --with-progress-monitor is specified])
    fi]
Nikos Skalkotos's avatar
Nikos Skalkotos committed
28
29
)

30
31
32
33
34
35
36
37
38
39
40
41
# --with-unattend-file
AC_ARG_WITH([unattend-file],
  [AS_HELP_STRING([--with-unattend-file=UNATTEND_PATH],
    [path to unattend.xml windows setup file []])],
    [if test "$withval" != "yes" -a "$withval" != "no"; then
	AC_SUBST(UNATTEND, "$withval")
        AC_MSG_NOTICE(using unattend file: $withval)
     elif test "$withval" != "no"; then
         AC_MSG_ERROR([you must specify an Unattend.xml file if --with-unattend-file is specified])
    fi]
)

42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# --with-multistrap-config
AC_ARG_WITH([multistrap-config],
  [AS_HELP_STRING([--with-multistrap-config=MULTISTRAP_CONFIG_PATH],
      [path to a multistrap configuration file
      [SYSCONFDIR/snf-image/multistrap.conf]]
    )],
    [if test "$withval" != "yes" -a "$withval" != "no"; then
	multistrap_config="$withval"
        AC_MSG_NOTICE(using multistrap configuration file: $withval)
     elif test "$withval" != "no"; then
         AC_MSG_ERROR([you must specify an configuration file if --with-multistrap-config is specified])
    fi],
    [multistrap_config="$sysconfdir/snf-image/multistrap.conf"]
)
AC_SUBST(MULTISTRAP_CONFIG, $multistrap_config)
Nikos Skalkotos's avatar
Nikos Skalkotos committed
57

58
59
60
61
62
# --with-helper-dir
AC_ARG_WITH([helper-dir],
    [AS_HELP_STRING([--with-helper-dir=DIR],
        [top-level directory to host the helper VM
        [LOCALSTATEDIR/lib/snf-image/helper]]
63
    )],
64
65
66
67
    [helper_dir="$withval"],
    [helper_dir="$localstatedir/lib/snf-image/helper"])
AC_SUBST(HELPER_DIR, $helper_dir)

68
69
70
71
72
73
74
75
76
77
# --with-helper-cache-dir
AC_ARG_WITH([helper-cache-dir],
    [AS_HELP_STRING([--with-helper-cache-dir=DIR],
        [top-level directory to host the helper VM cache files
        [LOCALSTATEDIR/cache/snf-image/helper]]
    )],
    [helper_cache_dir="$withval"],
    [helper_cache_dir="$localstatedir/cache/snf-image/helper"])
AC_SUBST(HELPER_CACHE_DIR, $helper_cache_dir)

78
79
80
81
82
83
84
85
# --with-helper-img
AC_ARG_WITH([helper-img],
    [AS_HELP_STRING([--with-helper-img=IMG_PATH],
        [Path to helper VM image [HELPERDIR/image]]
    )],
    [helper_img="$withval"],
    [helper_img="$helper_dir/image"])
AC_SUBST(HELPER_IMG, $helper_img)
86

87
# --with-helper-kernel
88
AC_ARG_WITH([helper-kernel],
89
    [AS_HELP_STRING([--with-helper-kernel=KERNEL_PATH],
90
        [Path to the helper VM kernel [HELPERDIR/kernel]]
91
92
    )],
    [helper_ernel="$withval"],
93
    [helper_kernel="$helper_dir/kernel"])
94
95
96
AC_SUBST(HELPER_KERNEL, ${helper_kernel})

# --with-helper-initrd..
97
AC_ARG_WITH([helper-initrd],
98
    [AS_HELP_STRING([--with-helper-initrd=INITRD_PATH],
99
        [Path to the helper VM initial ramdist [HELPERDIR/initrd]]
100
101
    )],
    [helper_initrd="$withval"],
102
    [helper_initrd="$helper_dir/initrd"])
103
104
AC_SUBST(HELPER_INITRD, ${helper_initrd})

Nikos Skalkotos's avatar
Nikos Skalkotos committed
105
106
107
# --with-os-dir=...
AC_ARG_WITH([os-dir],
    [AS_HELP_STRING([--with-os-dir=DIR],
108
        [top-level OS directory under which to install [DATADIR/ganeti/os]]
Nikos Skalkotos's avatar
Nikos Skalkotos committed
109
110
111
112
113
114
115
116
117
    )],
    [os_dir="$withval"],
    [os_dir="$datadir/ganeti/os"])
AC_SUBST(OS_DIR, $os_dir)

# --with-default-dir=...
AC_ARG_WITH([default-dir],
    [AS_HELP_STRING([--with-default-dir=DIR],
        [top-level default config directory under which to install]
118
        [ [SYSCONFDIR/default]]
Nikos Skalkotos's avatar
Nikos Skalkotos committed
119
120
121
122
123
124
125
126
127
128
129
130
131
    )],
    [default_dir="$withval"],
    [default_dir="$sysconfdir/default"])
AC_SUBST(DEFAULT_DIR, $default_dir)

# Check common programs
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_AWK
AC_PROG_MKDIR_P

AC_PATH_PROG(LOSETUP, [losetup], [], [$PATH:/usr/sbin:/sbin])
if test -z "$LOSETUP" ; then
132
  AC_MSG_ERROR([losetup not found in $PATH:/usr/sbin:/sbin])
Nikos Skalkotos's avatar
Nikos Skalkotos committed
133
134
135
136
fi

AC_PATH_PROG(KPARTX, [kpartx], [], [$PATH:/usr/sbin:/sbin])
if test -z "$KPARTX" ; then
137
  AC_MSG_ERROR([kpartx not found in $PATH:/usr/sbin:/sbin])
Nikos Skalkotos's avatar
Nikos Skalkotos committed
138
139
140
141
fi

AC_PATH_PROG(SFDISK, [sfdisk], [], [$PATH:/usr/sbin:/sbin])
if test -z "$SFDISK" ; then
142
143
144
  AC_MSG_ERROR([sfdisk not found in $PATH:/usr/sbin:/sbin])
fi

145
146
147
148
149
AC_PATH_PROG(QEMU_IMG, [qemu-img], [], [$PATH:/usr/sbin:/sbin])
if test -z "$QEMU_IMG" ; then
  AC_MSG_ERROR([qemu-img not found in $PATH:/usr/sbin:/sbin])
fi

150
151
152
153
154
AC_PATH_PROG(INSTALL_MBR, [install-mbr], [], [$PATH:/usr/sbin:/sbin])
if test -z "$INSTALL_MBR" ; then
  AC_MSG_ERROR([install-mbr not found in $PATH:/usr/sbin:/sbin])
fi

155
156
157
AC_PATH_PROG(TIMEOUT, [timeout], [], [$PATH:/usr/sbin:/sbin])
if test -z "$TIMEOUT" ; then
  AC_MSG_ERROR([timeout not found in $PATH:/usr/sbin:/sbin])
Nikos Skalkotos's avatar
Nikos Skalkotos committed
158
159
fi

160
161
162
AC_PATH_PROG(CURL, [curl], [], [$PATH:/usr/sbin:/sbin])
if test -z "$CURL" ; then
  AC_MSG_ERROR([curl not found in $PATH:/usr/sbin:/sbin])
Nikos Skalkotos's avatar
Nikos Skalkotos committed
163
164
fi

Nikos Skalkotos's avatar
Nikos Skalkotos committed
165
166
167
168
169
170
171
172
AC_CONFIG_FILES([
    Makefile
])

AC_OUTPUT

# vim: set sta sts=4 shiftwidth=4 sw=4 et ai :