The decompressors linked into stage0 end up in the variable DECOMPRESSORS in arch/x86/Makefile. They absolutely do no belong there because they're not arch specific. lib/Makefile has a variable COMPRESSORS with identical content, but that variable is completely unused. Move DECOMPRESSORS to lib/Makefile and kill the unused one.
Build and boot tested on qemu.
Signed-off-by: Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net
Index: corebootv3-makefile_compression_fix/lib/Makefile =================================================================== --- corebootv3-makefile_compression_fix/lib/Makefile (Revision 777) +++ corebootv3-makefile_compression_fix/lib/Makefile (Arbeitskopie) @@ -19,12 +19,12 @@ ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ##
-COMPRESSORS := +DECOMPRESSORS := ifeq ($(CONFIG_COMPRESSION_LZMA),y) -COMPRESSORS += lzma.o +DECOMPRESSORS += lzma.o endif ifeq ($(CONFIG_COMPRESSION_NRV2B),y) -COMPRESSORS += nrv2b.o +DECOMPRESSORS += nrv2b.o endif
# Index: corebootv3-makefile_compression_fix/arch/x86/Makefile =================================================================== --- corebootv3-makefile_compression_fix/arch/x86/Makefile (Revision 777) +++ corebootv3-makefile_compression_fix/arch/x86/Makefile (Arbeitskopie) @@ -39,14 +39,6 @@ LARFILES_NOCOMPRESS := coreboot.initram:normal/initram option_table:normal/option_table LARFILES_COMPRESSIBLE := coreboot.stage2:normal/stage2
-DECOMPRESSORS := -ifeq ($(CONFIG_COMPRESSION_LZMA),y) -DECOMPRESSORS += lzma.o -endif -ifeq ($(CONFIG_COMPRESSION_NRV2B),y) -DECOMPRESSORS += nrv2b.o -endif - COMPRESSFLAG := ifeq ($(CONFIG_DEFAULT_COMPRESSION_LZMA),y) COMPRESSFLAG := -C lzma