print "--extraldflags=\tadd extra linking options to default LDFLAGS settings. (Default: none)\n";
print "--objdir=\tspecify directory where to store object files. (Defaults: current build dir)\n";
print "--kernel_build=\tthe directory containing the kernel object tree you wish to\n\t\tcompile against. (Default: /lib/modules/`uname -r`/build\n\t\tif available or /usr/src/linux as fallback)\n";
print "--kernel_src=\tthe directory containing the kernel source you wish to\n\t\tcompile against. (Default: /lib/modules/`uname -r`/source\n\t\tif available or \$kernel_build as fallback)\n";
print "--incdir=\tthe base directory for include files. (Default: {prefix}/include)\n";
print "--ccsincdir=\tthe base directory for ccs include files. (Default: ./config/libs/libccsconfdb)\n";
print "--ccslibdir=\tthe base directory for ccs libraries. (Default: ./config/libs/libccsconfdb)\n";
print "--cmanincdir=\tthe base directory for cman include files. (Default: ./cman/lib)\n";
print "--cmanlibdir=\tthe base directory for cman libraries. (Default: ./cman/lib)\n";
print "--dlmincdir=\tthe base directory for dlm include files. (Default: ./dlm/libdlm)\n";
print "--dlmlibdir=\tthe base directory for dlm libraries. (Default: ./dlm/libdlm)\n";
print "--dlmcontrolincdir=\tthe base directory for dlmcontrol include files. (Default: ./dlm/libdlmcontrol)\n";
print "--dlmcontrollibdir=\tthe base directory for dlmcontrol libraries. (Default: ./dlm/libdlmcontrol)\n";
print "--fenceincdir=\tthe base directory for fence include files. (Default: ./fence/libfence)\n";
print "--fencelibdir=\tthe base directory for fence libraries. (Default: ./fence/libfence)\n";
print "--volidincdir=\tthe base directory for volume_id include files. (Default: {incdir})\n";
print "--volidlibdir=\tthe base directory for volume_id libraries. (Default: {libdir})\n";
print "--ncursesincdir=\tthe base directory for ncurses include files. (Default: {incdir})\n";
print "--ncurseslibdir=\tthe base directory for ncurses libraries. (Default: {libdir})\n";
print "--slangincdir=\tthe base directory for S-Lang include files. (Default: {incdir})\n";
print "--slanglibdir=\tthe base directory for S-Lang libraries. (Default: {libdir})\n";
print "--readlineincdir=\tthe base directory for readline include files. (Default: {incdir})\n";
print "--readlinelibdir=\tthe base directory for readline libraries. (Default: {libdir})\n";
print "--corosyncincdir=\tthe base directory for corosync include files. (Default: {incdir})\n";
print "--corosynclibdir=\tthe base directory for corosync libraries. (Default: {libdir}/corosync)\n";
print "--openaisincdir=\tthe base directory for openais include files. (Default: {incdir})\n";
print "--openaislibdir=\tthe base directory for openais libraries. (Default: {libdir}/openais)\n";
print "--corosyncbin=\tlocation of corosync executable file. (Default: /usr/sbin/corosync)\n";
print "--nssincdir=\tthe base directory for libnss include files. (Default: {incdir}/nss3)\n";
print "--nsslibdir=\tthe base directory for libnss libraries. (Default: {libdir})\n";
print "--nsprincdir=\tthe base directory for libnspr include files. (Default: {incdir}/nspr4)\n";
print "--nsprlibdir=\tthe base directory for libnspr libraries. (Default: {libdir})\n";
print "--virtincdir=\tthe base directory for libvirt include files. (Default: {incdir}/libvirt)\n";
print "--virtlibdir=\tthe base directory for libvirt libraries. (Default: {libdir})\n";
print "--xenincdir=\tthe base directory for xen include files. (Default: {incdir}/xen)\n";
print "--xenlibdir=\tthe base directory for xen libraries. (Default: {libdir})\n";
print "--ldapincdir=\tthe base directory for ldap include files. (Default: {incdir})\n";
print "--ldaplibdir=\tthe base directory for ldap libraries. (Default: {libdir})\n";
print "--fence_agents=\tlist of fence agents to configure. (Default: all)\n";
print "\t\tUse --fence_agents=help for a list\n";
print "--fenceagentslibdir=\tspecify directory where to install common fence python lib. (Default: /usr/share/fence)\n";
print "--enable_crack_of_the_day\tEnable build of highly experimental features that rely on code that is not yet available for general use. (Default: no)\n";
print "--enable_contrib\tEnable build of community contributed code/tools. (Default: no)\n";
print "--enable_legacy_code\tEnable build of old/obsolete/unsupported code/tools. (Default: no)\n";
- print "--enable_xen\tEnable building of Xen-specific pieces\n";
+ print "--enable_virt\tEnable building of virtualization code (Default: disabled\n";
print "--without_ccs\tDisable ccs building (Default: enabled)\n";
print "--without_cman\tDisable cman building (Default: enabled)\n";
print "--without_dlm\tDisable dlm building (Default: enabled)\n";
print "--without_group\tDisable group building (Default: enabled)\n";
print "--without_fence\tDisable fence building (Default: enabled)\n";
print "--without_gfs\tDisable gfs building (Default: enabled)\n";
print "--without_gfs2\tDisable gfs2 building (Default: enabled)\n";
print "--without_gnbd\tDisable gnbd building (Default: enabled)\n";
print "--without_rgmanager\tDisable rgmanager building (Default: enabled)\n";
print "--without_bindings\tDisable perl/python bindings building (Default: enabled)\n";
print "--without_kernel_modules\tDisable kernel modules building (Default: enabled)\n";
print "--disable_kernel_check\tDisable kernel version check (Default: enabled)\n";
exit $ret;
}
sub kernel_version {
my $makefile_path = shift;
my $required_version = shift;
print "\nChecking kernel:\n";
# add autoconf to the path
$makefile_path .= '/Makefile';
my @version = split /\./, $required_version;
if ( -f $makefile_path ) {
# open the toplevel Makefile to feth VERSION, PATCHLEVEL and SUBLEVEL
open MAKEFILE, '<', $makefile_path;
while (<MAKEFILE>) {
$build_version = $1 if /^VERSION = (\d+)/;
$build_patchlevel = $1 if /^PATCHLEVEL = (\d+)/;
$build_sublevel = $1 if /^SUBLEVEL = (\d+)/;
last if (defined $build_version && defined $build_patchlevel && defined $build_sublevel);
}
close MAKEFILE;
# Warn and continue if kernel version was not found
if (!$build_version || !$build_patchlevel || !$build_sublevel) {
print " WARNING: Could not determine kernel version.\n";
print " Build might fail!\n";
return 1;
}
# checking VERSION, PATCHLEVEL and SUBLEVEL for the supplied kernel
if ($build_version >= $version[0] &&
$build_patchlevel >= $version[1] &&
$build_sublevel >= $version[2]) {
print " Current kernel version appears to be OK\n";