build: Really make the acpi feature disableable

The command "cargo build --no-default-features" does not recursively
disable the default features across the workspace. Instead add an acpi
feature at the top-level, making it default, and then make that feature
conditional on all the crate acpi features.

Signed-off-by: Rob Bradford <robert.bradford@intel.com>
This commit is contained in:
Rob Bradford
2019-09-05 16:29:55 +01:00
committed by Sebastien Boeuf
parent 7688e6e231
commit 9661e8da5d
6 changed files with 11 additions and 7 deletions
+1
View File
@@ -13,6 +13,7 @@ extern crate byteorder;
extern crate kvm_bindings;
extern crate libc;
#[cfg(feature = "acpi")]
extern crate acpi_tables;
extern crate arch_gen;
extern crate kvm_ioctls;
+4 -2
View File
@@ -5,7 +5,9 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE-BSD-3-Clause file.
#[cfg(feature = "acpi")]
mod acpi;
mod gdt;
pub mod interrupts;
pub mod layout;
@@ -127,7 +129,7 @@ pub fn configure_system(
cmdline_size: usize,
num_cpus: u8,
setup_hdr: Option<setup_header>,
serial_enabled: bool,
_serial_enabled: bool,
) -> super::Result<()> {
const KERNEL_BOOT_FLAG_MAGIC: u16 = 0xaa55;
const KERNEL_HDR_MAGIC: u32 = 0x53726448;
@@ -185,7 +187,7 @@ pub fn configure_system(
#[cfg(feature = "acpi")]
{
let rsdp_addr = acpi::create_acpi_tables(guest_mem, num_cpus, serial_enabled);
let rsdp_addr = acpi::create_acpi_tables(guest_mem, num_cpus, _serial_enabled);
params.0.acpi_rsdp_addr = rsdp_addr.0;
}