Hi Andrew,
On 24/11/16 15:53, Andrew Cooper wrote:
On 24/11/16 15:48, Bhupinder Thakur wrote:
Hi,
I am facing an issue where the recompilation fails when you build for
ARM32 architecture on an existing build of ARM64.
Even if I do make clean/make distclean before compiling for different
architecture it still fails.
Steps to reproduce the issue:
1. git clone git://xenbits.xen.org/xen.git
<http://xenbits.xen.org/xen.git> xen.git
2. make dist-xen XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu
3. make distclean
4. make dist-xen XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf-
Compilation fails at step 4.
If I manually remove the following files and recompile then
compilation is successful:
Remove xen/arch/arm/asm-offsets.s
Remove xen/arch/arm/xen.lds
The same issue happens if you build for ARM32 first and then try to
build for ARM64. After removing the 2 files manually, the compilation
is successful.
I am using the following toolchains:
gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu.tar.xz (for ARM64 build)
x86_64-gcc-4.9.0-nolibc_arm-unknown-linux-gnueabi.tar.xz (for ARM32
build -
https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.9.0/)
I think probably the above-mentioned two files need to be removed
automatically when make distclean is run.
They should be deleted on `make clean`. They are temporary files just
like .o's
It will only happen if you do make clean XEN_TARGET_ARCH=arm64/arm32.
This is because target clean/distclean is only called for a given
architecture (by the default the host one).
I am not sure whether we should clean for any architecture.
Cheers,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel