acpi: fix build with new iasl compiler

iasl versions starting with 20120320
(git commit 7fd09d993580e22a096a1b21d2a356d89e702153) enable
a preprocessor by default, which currently strips out
comments from the input. Happily the next release,
20120420, includes an option to disable the preprocessor.
Test and use this option when available.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
diff --git a/Makefile b/Makefile
index dfdec5c..849824d 100644
--- a/Makefile
+++ b/Makefile
@@ -221,11 +221,14 @@
 
 ################ DSDT build rules
 
+iasl-option=$(shell if "$(1)" "$(2)" -h > /dev/null 2>&1 \
+    ; then echo "$(2)"; else echo "$(3)"; fi ;)
+
 $(OUT)%.hex: src/%.dsl ./tools/acpi_extract_preprocess.py ./tools/acpi_extract.py
 	@echo "  Compiling IASL $@"
 	$(Q)cpp -P $< > $(OUT)$*.dsl.i.orig
 	$(Q)$(PYTHON) ./tools/acpi_extract_preprocess.py $(OUT)$*.dsl.i.orig > $(OUT)$*.dsl.i
-	$(Q)$(IASL) -vs -l -tc -p $(OUT)$* $(OUT)$*.dsl.i
+	$(Q)$(IASL) $(call iasl-option,$(IASL),-Pn,) -vs -l -tc -p $(OUT)$* $(OUT)$*.dsl.i
 	$(Q)$(PYTHON) ./tools/acpi_extract.py $(OUT)$*.lst > $(OUT)$*.off
 	$(Q)cat $(OUT)$*.off > $@