>>> On 13.11.18 at 16:58, <andrew.coop...@citrix.com> wrote: > On 13/11/2018 11:42, Jan Beulich wrote: >>>>> On 12.11.18 at 18:50, <andrew.coop...@citrix.com> wrote: >>> On 25/09/18 14:29, Jan Beulich wrote: >>>> In order to be able to verify the 32-bit variant builds and runs, >>>> introduce a respective target (and the necessary other adjustments). >>>> >>>> Signed-off-by: Jan Beulich <jbeul...@suse.com> >>> I tried this, but got: >>> >>> make: Entering directory '/local/xen.git/tools/tests/x86_emulator/32' >>> gcc -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer > -fno-strict-aliasing -Wdeclaration-after-statement -m32 > -I/local/xen.git/tools/tests/x86_emulator/32/../../../../tools/include -I. > -D__XEN_TOOLS__ -c -g -o x86-emulate.o ../x86-emulate.c >>> gcc -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer > -fno-strict-aliasing -Wdeclaration-after-statement -m32 > -I/local/xen.git/tools/tests/x86_emulator/32/../../../../tools/include -I. > -o test_x86_emulator x86-emulate.o ../test_x86_emulator.o ../evex-disp8.o > ../wrappers.o >>> /usr/bin/ld: i386:x86-64 architecture of input file >>> `../test_x86_emulator.o' > is incompatible with i386 output >>> /usr/bin/ld: i386:x86-64 architecture of input file `../evex-disp8.o' is > incompatible with i386 output >>> /usr/bin/ld: i386:x86-64 architecture of input file `../wrappers.o' is > incompatible with i386 output >>> collect2: error: ld returned 1 exit status >>> ../Makefile:153: recipe for target 'test_x86_emulator' failed >> Hmm, nothing I can reproduce. I don't understand why it tries to use >> ../*.o instead of building 32-bit variants in the current directory. >> Perhaps a make version difference in how VPATH gets handled? But >> I know I've tried with different versions, which will make it rather >> hard for me to diagnose the issue. Could you see whether replacing >> >> VPATH += .. >> >> by >> >> vpath %.c .. >> >> helps in your case? > > Sadly not. That turns into: > > make: Entering directory '/local/xen.git/tools/tests/x86_emulator/32' > make: *** No rule to make target 'x86-emulate.h', needed by > 'x86-emulate.o'. Stop. > make: Leaving directory '/local/xen.git/tools/tests/x86_emulator/32'
Well, I had realized late last night that an equivalent line for %.h would then also be needed (which was in the first place why I used the single VPATH line instead, seeing that it worked fine for me). Since the above shows that it'll work in general, I'll switch to this (making further additions if need be). > I've noticed another issue. The clean target now rebuilds all the > binary fragements before deleting them again. Oh, yes. Easily taken care of by splitting the dependency line from the rule one. Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel