From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Alex=20Benn=C3=A9e?= Subject: [RFC kvm-unit-tests PATCH 8/8] Makefiles: fix up the arm build include and link paths Date: Thu, 6 Apr 2017 20:07:27 +0100 Message-ID: <20170406190727.5624-9-alex.bennee@linaro.org> References: <20170406190727.5624-1-alex.bennee@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Cc: kvm@vger.kernel.org, marc.zyngier@arm.com, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu To: drjones@redhat.com, pbonzini@redhat.com Return-path: In-Reply-To: <20170406190727.5624-1-alex.bennee@linaro.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu List-Id: kvm.vger.kernel.org V2Ugc3RpbGwgbmVlZCB0byB0ZWxsIHRoZSBjb21waWxlciB0aGUgY29ycmVjdCBzZWFyY2ggcGF0 aCBmb3IgZmluZGluZwpoZWFkZXJzIGFuZCB0aGUgbGlrZS4gVGhpcyBpcyBzbGlnaHRseSBjb21w bGljYXRlZCBieSB0aGUgImR5bmFtaWMiCmFzbSBzZWFyY2ggcGF0aCB3aGljaCBpcyBpbiBvdXIg YnVpbGQgdHJlZSBidXQgKG1heSBiZSkgc3ltbGlua2VkIHRvCnRoZSByaWdodCBhcmNoaXRlY3R1 cmVzIGhlYWRlcnMuCgpBbHNvIHdlIGV4cGxpY2l0bHkgaW5jbHVkZSBTUkNESVIgZm9yIHRoZSBs aW5raW5nIHNjcmlwdHMgYXMgVlBBVEgKZG9lc24ndCBzZWVtIHRvIGZpbmQgdGhlbSB3ZWxsIGVu b3VnaC4KClNpZ25lZC1vZmYtYnk6IEFsZXggQmVubsOpZSA8YWxleC5iZW5uZWVAbGluYXJvLm9y Zz4KLS0tCiBhcm0vTWFrZWZpbGUuY29tbW9uICAgICB8IDE1ICsrKysrKysrKy0tLS0tLQogc2Ny aXB0cy9hc20tb2Zmc2V0cy5tYWsgfCAgNCArKystCiAyIGZpbGVzIGNoYW5nZWQsIDEyIGluc2Vy dGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvYXJtL01ha2VmaWxlLmNvbW1v biBiL2FybS9NYWtlZmlsZS5jb21tb24KaW5kZXggNzRjNzM5NC4uYjFmZWFkMSAxMDA2NDQKLS0t IGEvYXJtL01ha2VmaWxlLmNvbW1vbgorKysgYi9hcm0vTWFrZWZpbGUuY29tbW9uCkBAIC0xNiw3 ICsxNiwxMCBAQCB0ZXN0cy1jb21tb24gKz0gJChURVNUX0RJUikvcG11LmZsYXQKIHRlc3RzLWNv bW1vbiArPSAkKFRFU1RfRElSKS9naWMuZmxhdAogdGVzdHMtY29tbW9uICs9ICQoVEVTVF9ESVIp L3BzY2kuZmxhdAogCi10ZXN0cy1hbGwgPSAkKHRlc3RzLWNvbW1vbikgJCh0ZXN0cykKK3Njcmlw dHMtY29tbW9uICs9ICQoVEVTVF9ESVIpL3J1bgorc2NyaXB0cy1jb21tb24gKz0gJChURVNUX0RJ UikvdW5pdHRlc3RzLmNmZworCit0ZXN0cy1hbGwgPSAkKHRlc3RzLWNvbW1vbikgJCh0ZXN0cykg JChzY3JpcHRzX2NvbW1vbikKIGFsbDogJCh0ZXN0cy1hbGwpCiAKICMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpAQCAtMjYs MTMgKzI5LDEzIEBAIENGTEFHUyArPSAtc3RkPWdudTk5CiBDRkxBR1MgKz0gLWZmcmVlc3RhbmRp bmcKIENGTEFHUyArPSAtV2V4dHJhCiBDRkxBR1MgKz0gLU8yCi1DRkxBR1MgKz0gLUkgbGliIC1J IGxpYi9saWJmZHQKK0NGTEFHUyArPSAtSSAkKFNSQ0RJUikvbGliIC1JICQoU1JDRElSKS9saWIv bGliZmR0IC1JIGxpYgogCiAjIFdlIHdhbnQgdG8ga2VlcCBpbnRlcm1lZGlhdGUgZmlsZXMKIC5Q UkVDSU9VUzogJS5lbGYgJS5vCiAKIGFzbS1vZmZzZXRzID0gbGliLyQoQVJDSCkvYXNtLW9mZnNl dHMuaAotaW5jbHVkZSBzY3JpcHRzL2FzbS1vZmZzZXRzLm1haworaW5jbHVkZSAkKFNSQ0RJUikv c2NyaXB0cy9hc20tb2Zmc2V0cy5tYWsKIAogY2ZsYXRvYmpzICs9IGxpYi91dGlsLm8KIGNmbGF0 b2JqcyArPSBsaWIvYWxsb2MubwpAQCAtNjAsMTEgKzYzLDExIEBAIHN0YXJ0X2FkZHIgOj0gJChz aGVsbCBwcmludGYgIiV4XG4iICQkKCggJChwaHlzX2Jhc2UpICsgJChrZXJuZWxfb2Zmc2V0KSAp KSkKIAogRkxBVExJQlMgPSAkKGxpYmNmbGF0KSAkKExJQkZEVF9hcmNoaXZlKSAkKGxpYmdjYykg JChsaWJlYWJpKQogJS5lbGY6IExERkxBR1MgPSAkKENGTEFHUykgLW5vc3RkbGliCi0lLmVsZjog JS5vICQoRkxBVExJQlMpIGFybS9mbGF0LmxkcyAkKGNzdGFydC5vKQorJS5lbGY6ICUubyAkKEZM QVRMSUJTKSAkKFNSQ0RJUikvYXJtL2ZsYXQubGRzICQoY3N0YXJ0Lm8pCiAJJChDQykgJChMREZM QUdTKSAtbyAkQCBcCi0JCS1XbCwtVCxhcm0vZmxhdC5sZHMsLS1idWlsZC1pZD1ub25lLC1UdGV4 dD0kKHN0YXJ0X2FkZHIpIFwKKwkJLVdsLC1ULCQoU1JDRElSKS9hcm0vZmxhdC5sZHMsLS1idWls ZC1pZD1ub25lLC1UdGV4dD0kKHN0YXJ0X2FkZHIpIFwKIAkJJChmaWx0ZXIgJS5vLCAkXikgJChG TEFUTElCUykgXAotCQlsaWIvYXV4aW5mby5jIC1EUFJPR05BTUU9XCIkKEA6LmVsZj0uZmxhdClc IgorCQkkKFNSQ0RJUikvbGliL2F1eGluZm8uYyAtRFBST0dOQU1FPVwiJChAOi5lbGY9LmZsYXQp XCIKIAogJS5mbGF0OiAlLmVsZgogCSQoT0JKQ09QWSkgLU8gYmluYXJ5ICReICRACmRpZmYgLS1n aXQgYS9zY3JpcHRzL2FzbS1vZmZzZXRzLm1hayBiL3NjcmlwdHMvYXNtLW9mZnNldHMubWFrCmlu ZGV4IGIyNTc4YTYuLmVjZjU4M2YgMTAwNjQ0Ci0tLSBhL3NjcmlwdHMvYXNtLW9mZnNldHMubWFr CisrKyBiL3NjcmlwdHMvYXNtLW9mZnNldHMubWFrCkBAIC0yOSwxMSArMjksMTMgQEAgZGVmaW5l IG1ha2VfYXNtX29mZnNldHMKIGVuZGVmCiAKICQoYXNtLW9mZnNldHM6Lmg9LnMpOiAkKGFzbS1v ZmZzZXRzOi5oPS5jKQorCW1rZGlyIC1wICQoZGlyICRAKQogCSQoQ0MpICQoQ0ZMQUdTKSAtZnZl cmJvc2UtYXNtIC1TIC1vICRAICQ8CiAKICQoYXNtLW9mZnNldHMpOiAkKGFzbS1vZmZzZXRzOi5o PS5zKQogCSQoY2FsbCBtYWtlX2FzbV9vZmZzZXRzKQotCWNwIC1mICQoYXNtLW9mZnNldHMpIGxp Yi9nZW5lcmF0ZWQKKwlta2RpciAtcCBsaWIvZ2VuZXJhdGVkCisJY3AgLWYgJChhc20tb2Zmc2V0 cykgbGliL2dlbmVyYXRlZC8KIAogYXNtX29mZnNldHNfY2xlYW46CiAJJChSTSkgJChhc20tb2Zm c2V0cykgJChhc20tb2Zmc2V0czouaD0ucykgXAotLSAKMi4xMS4wCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwprdm1hcm0gbWFpbGluZyBsaXN0Cmt2bWFy bUBsaXN0cy5jcy5jb2x1bWJpYS5lZHUKaHR0cHM6Ly9saXN0cy5jcy5jb2x1bWJpYS5lZHUvbWFp bG1hbi9saXN0aW5mby9rdm1hcm0K From mboxrd@z Thu Jan 1 00:00:00 1970 From: alex.bennee@linaro.org (=?UTF-8?q?Alex=20Benn=C3=A9e?=) Date: Thu, 6 Apr 2017 20:07:27 +0100 Subject: [RFC kvm-unit-tests PATCH 8/8] Makefiles: fix up the arm build include and link paths In-Reply-To: <20170406190727.5624-1-alex.bennee@linaro.org> References: <20170406190727.5624-1-alex.bennee@linaro.org> Message-ID: <20170406190727.5624-9-alex.bennee@linaro.org> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org We still need to tell the compiler the correct search path for finding headers and the like. This is slightly complicated by the "dynamic" asm search path which is in our build tree but (may be) symlinked to the right architectures headers. Also we explicitly include SRCDIR for the linking scripts as VPATH doesn't seem to find them well enough. Signed-off-by: Alex Benn?e --- arm/Makefile.common | 15 +++++++++------ scripts/asm-offsets.mak | 4 +++- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/arm/Makefile.common b/arm/Makefile.common index 74c7394..b1fead1 100644 --- a/arm/Makefile.common +++ b/arm/Makefile.common @@ -16,7 +16,10 @@ tests-common += $(TEST_DIR)/pmu.flat tests-common += $(TEST_DIR)/gic.flat tests-common += $(TEST_DIR)/psci.flat -tests-all = $(tests-common) $(tests) +scripts-common += $(TEST_DIR)/run +scripts-common += $(TEST_DIR)/unittests.cfg + +tests-all = $(tests-common) $(tests) $(scripts_common) all: $(tests-all) ################################################################## @@ -26,13 +29,13 @@ CFLAGS += -std=gnu99 CFLAGS += -ffreestanding CFLAGS += -Wextra CFLAGS += -O2 -CFLAGS += -I lib -I lib/libfdt +CFLAGS += -I $(SRCDIR)/lib -I $(SRCDIR)/lib/libfdt -I lib # We want to keep intermediate files .PRECIOUS: %.elf %.o asm-offsets = lib/$(ARCH)/asm-offsets.h -include scripts/asm-offsets.mak +include $(SRCDIR)/scripts/asm-offsets.mak cflatobjs += lib/util.o cflatobjs += lib/alloc.o @@ -60,11 +63,11 @@ start_addr := $(shell printf "%x\n" $$(( $(phys_base) + $(kernel_offset) ))) FLATLIBS = $(libcflat) $(LIBFDT_archive) $(libgcc) $(libeabi) %.elf: LDFLAGS = $(CFLAGS) -nostdlib -%.elf: %.o $(FLATLIBS) arm/flat.lds $(cstart.o) +%.elf: %.o $(FLATLIBS) $(SRCDIR)/arm/flat.lds $(cstart.o) $(CC) $(LDFLAGS) -o $@ \ - -Wl,-T,arm/flat.lds,--build-id=none,-Ttext=$(start_addr) \ + -Wl,-T,$(SRCDIR)/arm/flat.lds,--build-id=none,-Ttext=$(start_addr) \ $(filter %.o, $^) $(FLATLIBS) \ - lib/auxinfo.c -DPROGNAME=\"$(@:.elf=.flat)\" + $(SRCDIR)/lib/auxinfo.c -DPROGNAME=\"$(@:.elf=.flat)\" %.flat: %.elf $(OBJCOPY) -O binary $^ $@ diff --git a/scripts/asm-offsets.mak b/scripts/asm-offsets.mak index b2578a6..ecf583f 100644 --- a/scripts/asm-offsets.mak +++ b/scripts/asm-offsets.mak @@ -29,11 +29,13 @@ define make_asm_offsets endef $(asm-offsets:.h=.s): $(asm-offsets:.h=.c) + mkdir -p $(dir $@) $(CC) $(CFLAGS) -fverbose-asm -S -o $@ $< $(asm-offsets): $(asm-offsets:.h=.s) $(call make_asm_offsets) - cp -f $(asm-offsets) lib/generated + mkdir -p lib/generated + cp -f $(asm-offsets) lib/generated/ asm_offsets_clean: $(RM) $(asm-offsets) $(asm-offsets:.h=.s) \ -- 2.11.0