Oh dear... Adding linaro-toolchain@lists.linaro.org to see what they have to say (and linaro-uefi, because it's useful information for subscribers of that).
Regards, Leif On Tue, Feb 21, 2017 at 08:09:53PM +0000, Evan Lloyd wrote: > To add to Alexei's comments: > It seems there is a bug in the newer GCC Pre-processor that messes with the > file case. > (He is currently checking what file system flags might be affecting that, but > older versions work fine). > > The questions I'd add are: > Is there someone in Linaro who we might discuss the problem with (on the GCC > side)? I think there are Linaro guys involved with it, and they may be able > to tell us it is confusion on our part. > Should we be trying to upstream the fix, or just wait for a new GCC? > > Regards, > Evan > > > > From: Alexei Fedorov > Sent: 21 February 2017 16:37 > To: ard.biesheu...@linaro.org; ryan.har...@linaro.org; > leif.lindh...@linaro.org; Evan Lloyd; Sami Mujawar; Girish Pathak > Cc: Mitch Ishihara; Alexei Fedorov > Subject: Problem with building AML file from Dsdt.asl for Juno > > > Hello, > > > > We are facing a problem when compiling Juno's Dsdt.asl file with the > following GCC builds: > > > > gcc-linaro-5.3.1-2016.05-i686-mingw32_aarch64-elf > > gcc-linaro-6.1.1-2016.08-i686-mingw32_aarch64-elf > > gcc-linaro-6.2.1-2016.11-i686-mingw32_aarch64-elf > > gcc-linaro-6.3.1-2017.02-i686-mingw32_aarch64-elf > > > > which all show a similar error: > > > > ... > Trim --source-code -l -o > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.iiii > > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.iii > "C:\ASL\iasl" > -pk:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.aml > > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.iiii > Error 6126 - Input file does not appear to be an ASL or data table source > file > Intel ACPI Component Architecture > make: *** [Makefile:325: > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\Dsdt.aml] > Error -1 > > > > It looks like the problem is with GCC pre-processor running on Dsdt.i file > (created after > > Trim --asl-file -o > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.i > -i > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\inc.lst > k:\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\Dsdt.asl > > ) > > > > See: > > > "C:\gcc-linaro-6.3.1-2017.02-i686-mingw32_aarch64-elf\bin\aarch64-elf-gcc" -x > c -E -include AutoGen.h -Ik:\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables > -Ik:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\DEBUG > -Ik:\ArmPkg -Ik:\ArmPkg\Include -Ik:\ArmPlatformPkg > -Ik:\ArmPlatformPkg\Include -Ik:\ArmPlatformPkg\ArmVExpressPkg > -Ik:\ArmPlatformPkg\ArmVExpressPkg\Include -Ik:\ArmPlatformPkg\ArmJunoPkg > -Ik:\ArmPlatformPkg\ArmJunoPkg\Include -Ik:\EmbeddedPkg > -Ik:\EmbeddedPkg\Include -Ik:\MdePkg -Ik:\MdePkg\Include > -Ik:\MdePkg\Include\AArch64 -Ik:\MdeModulePkg -Ik:\MdeModulePkg\Include > -Ik:\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTablesk:\Build\ArmJuno\DEBUG_GCC5AARCH64OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.i > > > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.iii > > > > For all GCC versions above, the 1st line of Dsdt.iii lists its name & full > path in lowercase: > > # 1 > "k:\\build\\armjuno\\debug_gcc5\\aarch64\\openplatformpkg\\platforms\\arm\\juno\\acpitables\\acpitables\\output\\dsdt.i" > > > > Compare it with Dsdt.iii after pre-processing by GCC from > gcc-linaro-4.9.4-2017.01-i686-mingw32_aarch64-elf release: > > # 1 > "k:\\Build\\ArmJuno\\DEBUG_GCC49\\AARCH64\\OpenPlatformPkg\\Platforms\\ARM\\Juno\\AcpiTables\\AcpiTables\\OUTPUT\\.\\Dsdt.i" > > > > For GCC 5.3.1 & above Dsdt.iiii created by > > Trim --source-code -l -o > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.iiii > > k:\Build\ArmJuno\DEBUG_GCC5\AARCH64\OpenPlatformPkg\Platforms\ARM\Juno\AcpiTables\AcpiTables\OUTPUT\.\Dsdt.iii > > > > has 0 length, which causes iASL compiler to fail with: > > Error 6126 - Input file does not appear to be an ASL or data table source > file > > > > We've got a workaround solution for that problem which involves modification > of \BaseTools\Conf\build_rule.template: > > > > In ASL section: > [Acpi-Source-Language-File] > <InputFile> > ?.asl, ?.Asl, ?.ASL > > > > by replacing 3 lines as below: > > > <Command.GCC, Command.GCCLD> > # Trim --asl-file -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i -i > $(INC_LIST) ${src} > # "$(ASLPP)" $(ASLPP_FLAGS) $(INC) -I${s_path} > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i > > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii > # Trim --source-code -l -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iiii > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii > "$(ASLPP)" $(ASLPP_FLAGS) $(INC) -I${s_path} ${src} > > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i > Trim --source-code -l -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iiii > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.I > > > > Please share your opinion on that matter. > > > > Alexei. > > > > > > > > > > IMPORTANT NOTICE: The contents of this email and any attachments are > confidential and may also be privileged. If you are not the intended > recipient, please notify the sender immediately and do not disclose the > contents to any other person, use it for any purpose, or store or copy the > information in any medium. Thank you. _______________________________________________ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain