On Wed, Aug 29, 2012 at 09:38:00PM -0400, Kevin O'Connor wrote: > Hi Michael, > > I was running through the SeaBIOS release checks when I found that the > new iasl-option code in the Makefile seems to choke on older versions > of iasl (for example, version 20120123 as shipped with fc13). Can you > verify if the iasl detection still works properly for you with the > patch below? > > -Kevin
So I think using -h is a bad idea: it failed once it might fail again. How about the following patch instead? Tested with latest iasl from git (which needs -Pn) and with F17 version (which does not). --> Makefile: fix iasl option detection IASL option detection relied on iasl -h exit status which is not very robust: -h is not expected to be used from scripts. In particular combination of -h with any option seems to succeed with some old versions of iasl (e.g. version 20120123 as shipped with fc13). Instead, supply a dummy input file and run iasl on it to test option support. Signed-off-by: Michael S. Tsirkin <m...@redhat.com> --- diff --git a/Makefile b/Makefile index 72ee152..0ab9f9f 100644 --- a/Makefile +++ b/Makefile @@ -221,14 +221,15 @@ $(OUT)vgabios.bin: $(OUT)vgabios.bin.raw tools/buildrom.py ################ DSDT build rules -iasl-option=$(shell if "$(1)" "$(2)" -h > /dev/null 2>&1 \ - ; then echo "$(2)"; else echo "$(3)"; fi ;) +iasl-option=$(shell cp src/iasl-test.dsl $(1)/iasl-test.dsl; \ + if "$(2)" "$(3)" $(1)/iasl-test.dsl > /dev/null 2>&1 \ + ; then echo "$(3)"; else echo "$(4)"; 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) $(call iasl-option,$(IASL),-Pn,) -vs -l -tc -p $(OUT)$* $(OUT)$*.dsl.i + $(Q)$(IASL) $(call iasl-option,$(OUT),$(IASL),-Pn,) -vs -l -tc -p $(OUT)$* $(OUT)$*.dsl.i $(Q)$(PYTHON) ./tools/acpi_extract.py $(OUT)$*.lst > $(OUT)$*.off $(Q)cat $(OUT)$*.off > $@ diff --git a/src/iasl-test.dsl b/src/iasl-test.dsl index e69de29..1a8b95e 100644 --- a/src/iasl-test.dsl +++ b/src/iasl-test.dsl @@ -0,0 +1,6 @@ +DefinitionBlock ("iasl-test.aml", "TEST", 0x01, "TSTC", "TESTIASLCMP", 0x1) +{ + + Device (TEST) { + } +} _______________________________________________ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios