[PATCH v5 02/19] makefile and run_tests tweaks

Andrew Jones
2014-06-11T14:01:42Z

- remove a redundant '-display none'
- remove a redundant -g from CFLAGS
- remove a useless -I../include/x86 from CFLAGS
- remove lib autodep files on make clean

Signed-off-by: Andrew Jones <drjones@redhat.com>
Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
---
v4: no change other than rebase
v3: reword run_tests.sh help text [Christoffer Dall]
---
Makefile | 11 ++++++-----
config-x86-common.mak | 16 +++++++---------
run_tests.sh | 6 +++---
3 files changed, 16 insertions(+), 17 deletions(-)

diff --git a/Makefile b/Makefile
index 444b6531b8836..17307d1dfd760 100644
--- a/Makefile
+++ b/Makefile
@@ -6,16 +6,16 @@ DESTDIR := $(PREFIX)/share/qemu/tests
.PHONY: arch_clean clean

#make sure env CFLAGS variable is not used
-CFLAGS = -g
+CFLAGS =

libgcc := $(shell $(CC) --print-libgcc-file-name)

libcflat := lib/libcflat.a
cflatobjs := \
+ lib/argv.o \
lib/printf.o \
lib/string.o \
lib/report.o
-cflatobjs += lib/argv.o

#include architecure specific make rules
include config-$(ARCH).mak
@@ -26,8 +26,9 @@ include config-$(ARCH).mak
cc-option = $(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null \
> /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)

-CFLAGS += -O1
-CFLAGS += $(autodepend-flags) -g -fomit-frame-pointer -Wall
+CFLAGS += -g
+CFLAGS += $(autodepend-flags) -Wall
+CFLAGS += $(call cc-option, -fomit-frame-pointer, "")
CFLAGS += $(call cc-option, -fno-stack-protector, "")
CFLAGS += $(call cc-option, -fno-stack-protector-all, "")
CFLAGS += -I.
@@ -52,4 +53,4 @@ install:
install $(tests_and_config) $(DESTDIR)

clean: arch_clean
- $(RM) *.o *.a .*.d $(libcflat) $(cflatobjs)
+ $(RM) *.o *.a .*.d lib/.*.d $(libcflat) $(cflatobjs)
diff --git a/config-x86-common.mak b/config-x86-common.mak
index 93c9fee875085..84cce7065d400 100644
--- a/config-x86-common.mak
+++ b/config-x86-common.mak
@@ -1,13 +1,9 @@
#This is a make file with common rules for both x86 & x86-64

-CFLAGS += -I../include/x86
-
all: test_cases

-cflatobjs += \
- lib/x86/io.o \
- lib/x86/smp.o
-
+cflatobjs += lib/x86/io.o
+cflatobjs += lib/x86/smp.o
cflatobjs += lib/x86/vm.o
cflatobjs += lib/x86/fwcfg.o
cflatobjs += lib/x86/apic.o
@@ -20,15 +16,17 @@ $(libcflat): LDFLAGS += -nostdlib
$(libcflat): CFLAGS += -ffreestanding -I lib

CFLAGS += -m$(bits)
+CFLAGS += -O1

libgcc := $(shell $(CC) -m$(bits) --print-libgcc-file-name)

FLATLIBS = lib/libcflat.a $(libgcc)
%.elf: %.o $(FLATLIBS) flat.lds
- $(CC) $(CFLAGS) -nostdlib -o $@ -Wl,-T,flat.lds $(filter %.o, $^) $(FLATLIBS)
+ $(CC) $(CFLAGS) -nostdlib -o $@ -Wl,-T,flat.lds \
+ $(filter %.o, $^) $(FLATLIBS)

%.flat: %.elf
- objcopy -O elf32-i386 $^ $@
+ $(OBJCOPY) -O elf32-i386 $^ $@

tests-common = $(TEST_DIR)/vmexit.flat $(TEST_DIR)/tsc.flat \
$(TEST_DIR)/smptest.flat $(TEST_DIR)/port80.flat \
@@ -109,7 +107,7 @@ $(TEST_DIR)/debug.elf: $(cstart.o) $(TEST_DIR)/debug.o

arch_clean:
$(RM) $(TEST_DIR)/*.o $(TEST_DIR)/*.flat $(TEST_DIR)/*.elf \
- $(TEST_DIR)/.*.d $(TEST_DIR)/lib/.*.d $(TEST_DIR)/lib/*.o
+ $(TEST_DIR)/.*.d lib/x86/.*.d

api/%.o: CFLAGS += -m32

diff --git a/run_tests.sh b/run_tests.sh
index 55ecac5bed3a4..b077091da18b3 100755
--- a/run_tests.sh
+++ b/run_tests.sh
@@ -27,7 +27,7 @@ function run()
return
fi

- cmdline="./x86-run $kernel -smp $smp -display none $opts"
+ cmdline="./x86-run $kernel -smp $smp $opts"
if [ $verbose != 0 ]; then
echo $cmdline
fi
@@ -92,8 +92,8 @@ Usage: $0 [-g group] [-h] [-v]
-h: Output this help text
-v: Enables verbose mode

-Set the environment variable QEMU=/path/to/qemu-system-x86_64 to allow the
-internally used x86-run to pick up the right qemu binary.
+Set the environment variable QEMU=/path/to/qemu-system-x86_64 to
+specify the appropriate qemu binary for x86-run.

EOF
}
--
1.9.3