From 758f26aa2dd7447267ac7e08b32ef157fc55a755 Mon Sep 17 00:00:00 2001 From: Patrick Georgi Date: Sat, 27 Sep 2014 11:37:46 +0200 Subject: [PATCH] nvidia/cbootimage: avoid upstream's build system It brings in useless dependencies, a weird autotools configuration, and tons of pain everywhere. Instead just build things ourselves. Change-Id: I67f06e711cb9dcd594363bc1a4f99d3273074549 Signed-off-by: Patrick Georgi Reviewed-on: http://review.coreboot.org/6986 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich --- .gitmodules | 2 +- Makefile.inc | 9 +--- util/nvidia/Makefile.inc | 48 +++++++++++++++++++ util/{nvidia-cbootimage => nvidia/cbootimage} | 0 4 files changed, 50 insertions(+), 9 deletions(-) create mode 100644 util/nvidia/Makefile.inc rename util/{nvidia-cbootimage => nvidia/cbootimage} (100%) diff --git a/.gitmodules b/.gitmodules index a7a9d43217..ee3f1ea9e4 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,5 +4,5 @@ update = none ignore = dirty [submodule "util/nvidia-cbootimage"] - path = util/nvidia-cbootimage + path = util/nvidia/cbootimage url = ../nvidia-cbootimage.git diff --git a/Makefile.inc b/Makefile.inc index 382eead016..d307c60dec 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -308,14 +308,7 @@ $(FLETCHER): $(top)/util/fletcher/fletcher.c CBOOTIMAGE:=$(objutil)/cbootimage/cbootimage -$(CBOOTIMAGE): $(top)/util/nvidia-cbootimage/Makefile - @printf " MAKE $(subst $(obj)/,,$(@))\n" - $(MAKE) -C $(top)/util/nvidia-cbootimage - cp $(top)/util/nvidia-cbootimage/src/cbootimage $@ - -$(top)/util/nvidia-cbootimage/Makefile: - cd $(top)/util/nvidia-cbootimage/; \ - ./autogen.sh >/dev/null +subdirs-y += util/nvidia ####################################################################### # needed objects that every mainboard uses diff --git a/util/nvidia/Makefile.inc b/util/nvidia/Makefile.inc new file mode 100644 index 0000000000..c8be3bbab2 --- /dev/null +++ b/util/nvidia/Makefile.inc @@ -0,0 +1,48 @@ +# copied from cbootimage/src/Makefile.am +CBOOTIMAGE_RAW_SRCS:= \ + cbootimage.c \ + data_layout.c \ + set.c \ + crypto.c \ + aes_ref.c \ + context.c \ + parse.c \ + t132/parse_t132.c \ + t124/parse_t124.c \ + t114/parse_t114.c \ + t30/parse_t30.c \ + t20/parse_t20.c \ + t132/nvbctlib_t132.c \ + t124/nvbctlib_t124.c \ + t114/nvbctlib_t114.c \ + t30/nvbctlib_t30.c \ + t20/nvbctlib_t20.c \ + cbootimage.h \ + context.h \ + crypto.h \ + data_layout.h \ + nvaes_ref.h \ + parse.h \ + set.h \ + t20/nvboot_bct_t20.h \ + t20/nvboot_sdram_param_t20.h \ + t30/nvboot_bct_t30.h \ + t30/nvboot_sdram_param_t30.h \ + t114/nvboot_bct_t114.h \ + t114/nvboot_sdram_param_t114.h \ + t124/nvboot_bct_t124.h \ + t124/nvboot_sdram_param_t124.h \ + t132/nvboot_bct_t132.h \ + t132/nvboot_sdram_param_t132.h + +CBOOTIMAGE_SRCS:=$(addprefix util/nvidia/cbootimage/src/,$(filter %.c,$(CBOOTIMAGE_RAW_SRCS))) +CBOOTIMAGE_OBJS:=$(addprefix $(objutil)/nvidia/cbootimage/,$(patsubst %.c,%.o,$(filter %.c,$(CBOOTIMAGE_RAW_SRCS)))) + +additional-dirs += $(sort $(dir $(CBOOTIMAGE_OBJS))) + +$(objutil)/nvidia/cbootimage/%.o: util/nvidia/cbootimage/src/%.c + gcc -c -o $@ $< + +$(CBOOTIMAGE): $(CBOOTIMAGE_OBJS) + gcc -o $@.tmp $^ -lm + mv $@.tmp $@ diff --git a/util/nvidia-cbootimage b/util/nvidia/cbootimage similarity index 100% rename from util/nvidia-cbootimage rename to util/nvidia/cbootimage