summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Georgi <patrick.georgi@coresystems.de>2010-04-16 22:48:57 +0000
committerPatrick Georgi <patrick.georgi@coresystems.de>2010-04-16 22:48:57 +0000
commita2acbc70a3eb6544a9909e71939633cf160b082e (patch)
tree0068aec0ceee60e2535e802cb79f00d2538cfa67
parent83cce3e8def1a87bff94ba1ab3f94a2eaf85af6a (diff)
downloadcoreboot-a2acbc70a3eb6544a9909e71939633cf160b082e.tar.xz
Build utils into their source directory equivalent in
the build tree. Allow separate build tree for utils Use separate build tree for utils in abuild Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5453 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
-rw-r--r--Makefile15
-rw-r--r--src/arch/i386/Makefile.bootblock.inc2
-rw-r--r--src/arch/i386/Makefile.inc12
-rwxr-xr-xutil/abuild/abuild7
-rw-r--r--util/cbfstool/Makefile.inc36
-rw-r--r--util/sconfig/Makefile.inc12
6 files changed, 43 insertions, 41 deletions
diff --git a/Makefile b/Makefile
index f3a4fbf549..bbad332945 100644
--- a/Makefile
+++ b/Makefile
@@ -36,7 +36,8 @@ export top := $(PWD)
export src := src
export srck := $(top)/util/kconfig
export obj ?= build
-export objk := $(obj)/util/kconfig
+export objutil ?= $(obj)/util
+export objk := $(objutil)/kconfig
export KERNELVERSION := 4.0
@@ -58,7 +59,7 @@ endif
endif
CPP:= $(CC) -x assembler-with-cpp -DASSEMBLY -E
-ROMCC:= $(obj)/romcc
+ROMCC:= $(objutil)/romcc/romcc
HOSTCC = gcc
HOSTCXX = g++
HOSTCFLAGS := -I$(srck) -I$(objk) -g
@@ -145,14 +146,14 @@ $(obj)/config.h:
#######################################################################
# Build the tools
-CBFSTOOL:=$(obj)/util/cbfstool/cbfstool
+CBFSTOOL:=$(objutil)/cbfstool/cbfstool
# needed objects that every mainboard uses
# Creation of these is architecture and mainboard independent
-$(obj)/mainboard/$(MAINBOARDDIR)/static.c: $(src)/mainboard/$(MAINBOARDDIR)/devicetree.cb $(obj)/util/sconfig/sconfig
+$(obj)/mainboard/$(MAINBOARDDIR)/static.c: $(src)/mainboard/$(MAINBOARDDIR)/devicetree.cb $(objutil)/sconfig/sconfig
@printf " SCONFIG $(subst $(src)/,,$(<))\n"
mkdir -p $(obj)/mainboard/$(MAINBOARDDIR)
- $(obj)/util/sconfig/sconfig $(MAINBOARDDIR) $(obj)/mainboard/$(MAINBOARDDIR)
+ $(objutil)/sconfig/sconfig $(MAINBOARDDIR) $(obj)/mainboard/$(MAINBOARDDIR)
objs:=$(obj)/mainboard/$(MAINBOARDDIR)/static.o
initobjs:=
@@ -286,7 +287,7 @@ endif
prepare:
mkdir -p $(obj)
- mkdir -p $(obj)/util/kconfig/lxdialog $(obj)/util/cbfstool
+ mkdir -p $(objutil)/kconfig/lxdialog $(objutil)/cbfstool $(objutil)/romcc $(objutil)/options
test -n "$(alldirs)" && mkdir -p $(alldirs) || true
$(obj)/build.h: .xcompile
@@ -355,7 +356,7 @@ endif
ifeq ($(_OS),CYGWIN_)
STACK=-Wl,--stack,16384000
endif
-$(obj)/romcc: $(top)/util/romcc/romcc.c
+$(objutil)/romcc/romcc: $(top)/util/romcc/romcc.c
@printf " HOSTCC $(subst $(obj)/,,$(@)) (this may take a while)\n"
@# Note: Adding -O2 here might cause problems. For details see:
@# http://www.coreboot.org/pipermail/coreboot/2010-February/055825.html
diff --git a/src/arch/i386/Makefile.bootblock.inc b/src/arch/i386/Makefile.bootblock.inc
index 43ad0523ed..ca9ef79a28 100644
--- a/src/arch/i386/Makefile.bootblock.inc
+++ b/src/arch/i386/Makefile.bootblock.inc
@@ -65,7 +65,7 @@ $(obj)/mainboard/$(MAINBOARDDIR)/bootblock.s: $(obj)/bootblock/bootblock.c
@printf " CC $(subst $(obj)/,,$(@))\n"
$(CC) -MMD -x assembler-with-cpp -DASSEMBLY -E -I$(src)/include -I$(src)/arch/i386/include -I$(obj) -I$(obj)/bootblock -include $(obj)/config.h -I. -I$(src) $< -o $@
-$(obj)/mainboard/$(MAINBOARDDIR)/bootblock.inc: $(src)/arch/i386/init/$(subst ",,$(CONFIG_BOOTBLOCK_SOURCE)) $(obj)/romcc
+$(obj)/mainboard/$(MAINBOARDDIR)/bootblock.inc: $(src)/arch/i386/init/$(subst ",,$(CONFIG_BOOTBLOCK_SOURCE)) $(ROMCC)
@printf " ROMCC $(subst $(obj)/,,$(@))\n"
$(CC) -MM -MT$(obj)/mainboard/$(MAINBOARDDIR)/bootblock.inc \
$< > $(obj)/mainboard/$(MAINBOARDDIR)/bootblock.inc.d
diff --git a/src/arch/i386/Makefile.inc b/src/arch/i386/Makefile.inc
index 273564653e..1c3d0df22b 100644
--- a/src/arch/i386/Makefile.inc
+++ b/src/arch/i386/Makefile.inc
@@ -59,15 +59,15 @@ endif
#######################################################################
# i386 specific tools
-$(obj)/option_table.h: $(obj)/build_opt_tbl $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout
+$(obj)/option_table.h: $(objutil)/options/build_opt_tbl $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout
@printf " OPTION $(subst $(obj)/,,$(@))\n"
- $(obj)/build_opt_tbl --config $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout --header $(obj)/option_table.h
+ $(objutil)/options/build_opt_tbl --config $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout --header $(obj)/option_table.h
-$(obj)/option_table.c: $(obj)/build_opt_tbl $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout
+$(obj)/option_table.c: $(objutil)/options/build_opt_tbl $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout
@printf " OPTION $(subst $(obj)/,,$(@))\n"
- $(obj)/build_opt_tbl --config $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout --option $(obj)/option_table.c
+ $(objutil)/options/build_opt_tbl --config $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout --option $(obj)/option_table.c
-$(obj)/build_opt_tbl: $(top)/util/options/build_opt_tbl.c $(top)/src/include/pc80/mc146818rtc.h $(top)/src/include/boot/coreboot_tables.h
+$(objutil)/options/build_opt_tbl: $(top)/util/options/build_opt_tbl.c $(top)/src/include/pc80/mc146818rtc.h $(top)/src/include/boot/coreboot_tables.h
@printf " HOSTCC $(subst $(obj)/,,$(@))\n"
$(HOSTCC) $(HOSTCFLAGS) $< -o $@
@@ -164,7 +164,7 @@ endif
ifeq ($(CONFIG_ROMCC),y)
ROMCCFLAGS ?= -mcpu=p2 -O2
-$(obj)/mainboard/$(MAINBOARDDIR)/romstage.inc: $(src)/mainboard/$(MAINBOARDDIR)/romstage.c $(obj)/romcc $(OPTION_TABLE_H) $(obj)/build.h $(obj)/config.h
+$(obj)/mainboard/$(MAINBOARDDIR)/romstage.inc: $(src)/mainboard/$(MAINBOARDDIR)/romstage.c $(ROMCC) $(OPTION_TABLE_H) $(obj)/build.h $(obj)/config.h
printf " ROMCC romstage.inc\n"
$(ROMCC) -c -S $(ROMCCFLAGS) -D__PRE_RAM__ -I. $(INCLUDES) $< -o $@
else
diff --git a/util/abuild/abuild b/util/abuild/abuild
index 811a32cbfc..851f1a374d 100755
--- a/util/abuild/abuild
+++ b/util/abuild/abuild
@@ -156,6 +156,7 @@ function create_config
[ "$update" = "true" ] && mv ${build_dir}/coreboot.rom coreboot.rom.tmp
$MAKE distclean obj=${build_dir}
mkdir -p ${build_dir}
+ mkdir -p $TARGET/sharedutils
[ "$update" = "true" ] && mv coreboot.rom.tmp ${build_dir}/coreboot.rom
if [ "$CONFIG" != "" ]; then
@@ -204,8 +205,8 @@ function create_config
fi
fi
- #yes "" | $MAKE oldconfig -j $cpus obj=${build_dir} &> ${build_dir}/config.log
- yes "" | $MAKE oldconfig obj=${build_dir} &> ${build_dir}/config.log
+ #yes "" | $MAKE oldconfig -j $cpus obj=${build_dir} objutil=$TARGET/sharedutils &> ${build_dir}/config.log
+ yes "" | $MAKE oldconfig obj=${build_dir} objutil=$TARGET/sharedutils &> ${build_dir}/config.log
ret=$?
mv .config.old $TARGET/${VENDOR}_${MAINBOARD}/config.in
if [ $ret -eq 0 ]; then
@@ -264,7 +265,7 @@ function compile_target
CURR=$( pwd )
#stime=`perl -e 'print time();' 2>/dev/null || date +%s`
build_dir=$TARGET/${VENDOR}_${MAINBOARD}
- eval $MAKE $silent -j $cpus obj=${build_dir} \
+ eval $MAKE $silent -j $cpus obj=${build_dir} objutil=$TARGET/sharedutils \
&> ${build_dir}/make.log
ret=$?
mv .config ${build_dir}/config.build
diff --git a/util/cbfstool/Makefile.inc b/util/cbfstool/Makefile.inc
index d2af3d61ac..ad2e1200ae 100644
--- a/util/cbfstool/Makefile.inc
+++ b/util/cbfstool/Makefile.inc
@@ -15,38 +15,38 @@ cbfsobj += cbfstool.o
CBFSTOOLFLAGS=-DCOMPACT -g
-$(obj)/util/cbfstool:
+$(objutil)/cbfstool:
mkdir -p $@
-$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/%.c
- printf " HOSTCC $(subst $(obj)/,,$(@))\n"
+$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/%.c
+ printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
$(HOSTCC) $(CBFSTOOLFLAGS) $(HOSTCFLAGS) -c -o $@ $<
-$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/%.cc
- printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
+$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/%.cc
+ printf " HOSTCXX $(subst $(objutil)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
-$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/LZMA/%.cpp
- printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
+$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/LZMA/%.cpp
+ printf " HOSTCXX $(subst $(objutil)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
-$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/LZ/%.cpp
- printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
+$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/LZ/%.cpp
+ printf " HOSTCXX $(subst $(objutil)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
-$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/RangeCoder/%.cpp
- printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
+$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/RangeCoder/%.cpp
+ printf " HOSTCXX $(subst $(objutil)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
-$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Common/%.cpp
- printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
+$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Common/%.cpp
+ printf " HOSTCXX $(subst $(objutil)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
-$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/Common/%.cpp
- printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
+$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/Common/%.cpp
+ printf " HOSTCXX $(subst $(objutil)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
-$(obj)/util/cbfstool/cbfstool: $(obj)/util/cbfstool $(addprefix $(obj)/util/cbfstool/,$(cbfsobj))
- printf " HOSTCXX $(subst $(obj)/,,$(@)) (link)\n"
- $(HOSTCXX) $(CBFSTOOLFLAGS) -o $@ $(addprefix $(obj)/util/cbfstool/,$(cbfsobj))
+$(objutil)/cbfstool/cbfstool: $(objutil)/cbfstool $(addprefix $(objutil)/cbfstool/,$(cbfsobj))
+ printf " HOSTCXX $(subst $(objutil)/,,$(@)) (link)\n"
+ $(HOSTCXX) $(CBFSTOOLFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(cbfsobj))
diff --git a/util/sconfig/Makefile.inc b/util/sconfig/Makefile.inc
index 4e08135c14..aa2ce7ad8e 100644
--- a/util/sconfig/Makefile.inc
+++ b/util/sconfig/Makefile.inc
@@ -2,10 +2,10 @@ sconfigobj :=
sconfigobj += lex.yy.o
sconfigobj += sconfig.tab.o
-$(obj)/util/sconfig:
+$(objutil)/sconfig:
mkdir -p $@
-$(obj)/util/sconfig/%.o: $(obj)/util/sconfig/%.c
+$(objutil)/sconfig/%.o: $(objutil)/sconfig/%.c
printf " HOSTCC $(subst $(obj)/,,$(@))\n"
$(HOSTCC) $(SCONFIGFLAGS) $(HOSTCFLAGS) -c -o $@ $<
@@ -20,12 +20,12 @@ $(top)/util/sconfig/sconfig.tab.c_shipped: $(top)/util/sconfig/sconfig.y
endif
-$(obj)/util/sconfig/lex.yy.o: $(obj)/util/sconfig/sconfig.tab.h
+$(objutil)/sconfig/lex.yy.o: $(objutil)/sconfig/sconfig.tab.h
-$(obj)/util/sconfig/%: $(top)/util/sconfig/%_shipped
+$(objutil)/sconfig/%: $(top)/util/sconfig/%_shipped
mkdir -p $(dir $@)
cp $< $@
-$(obj)/util/sconfig/sconfig: $(obj)/util/sconfig $(addprefix $(obj)/util/sconfig/,$(sconfigobj))
+$(objutil)/sconfig/sconfig: $(objutil)/sconfig $(addprefix $(objutil)/sconfig/,$(sconfigobj))
printf " HOSTCC $(subst $(obj)/,,$(@)) (link)\n"
- $(HOSTCC) $(SCONFIGFLAGS) -o $@ $(addprefix $(obj)/util/sconfig/,$(sconfigobj))
+ $(HOSTCC) $(SCONFIGFLAGS) -o $@ $(addprefix $(objutil)/sconfig/,$(sconfigobj))