On 11/08/2017 02:00 AM, Philippe Mathieu-Daudé wrote: > Hi Alistair, > > On 11/07/2017 10:10 PM, Alistair Francis wrote: >> When cross compiling QEMU for Windows we need to specify the cross > > What toolchain do you use? > >> version of ranlib to avoid build errors when buildling capstone. This > > "building" > >> patch ensures we use the same cross prefix on ranlib as other toolchain >> components.
Please add this extra info in the commit (take from the mail thread) which may be useful if we add a continuous integration test for these toolchains/distribs. - Fedora23 mingw - RHEL-7 with mingw packages from epel: LINK qemu-img.exe build-win64/capstone/capstone.lib: error adding symbols: Archive has no index; run ranlib to add one collect2: error: ld returned 1 exit status $ x86_64-w64-mingw32-ar --version GNU ar (GNU Binutils) 2.25 - RHEL7.2 >> >> Signed-off-by: Alistair Francis <alistair.fran...@xilinx.com> >> Suggested-by: Peter Maydell <peter.mayd...@linaro.org> > > Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org> > > MXE: > Tested-by: Philippe Mathieu-Daudé <f4...@amsat.org> > >> --- >> >> Makefile | 2 +- >> configure | 3 +++ >> 2 files changed, 4 insertions(+), 1 deletion(-) >> >> diff --git a/Makefile b/Makefile >> index 0496c5057a..814f6820d9 100644 >> --- a/Makefile >> +++ b/Makefile >> @@ -405,7 +405,7 @@ CAP_CFLAGS += -DCAPSTONE_HAS_POWERPC >> CAP_CFLAGS += -DCAPSTONE_HAS_X86 >> >> subdir-capstone: .git-submodule-status >> - $(call quiet-command,$(MAKE) -C $(SRC_PATH)/capstone CAPSTONE_SHARED=no >> BUILDDIR="$(BUILD_DIR)/capstone" CC="$(CC)" AR="$(AR)" LD="$(LD)" >> CFLAGS="$(CAP_CFLAGS)" $(SUBDIR_MAKEFLAGS) >> $(BUILD_DIR)/capstone/$(LIBCAPSTONE)) >> + $(call quiet-command,$(MAKE) -C $(SRC_PATH)/capstone CAPSTONE_SHARED=no >> BUILDDIR="$(BUILD_DIR)/capstone" CC="$(CC)" AR="$(AR)" LD="$(LD)" >> RANLIB="$(RANLIB)" CFLAGS="$(CAP_CFLAGS)" $(SUBDIR_MAKEFLAGS) >> $(BUILD_DIR)/capstone/$(LIBCAPSTONE)) >> >> $(SUBDIR_RULES): libqemuutil.a $(common-obj-y) $(chardev-obj-y) \ >> $(qom-obj-y) $(crypto-aes-obj-$(CONFIG_USER_ONLY)) >> diff --git a/configure b/configure >> index a6055c0710..0e856bbc04 100755 >> --- a/configure >> +++ b/configure >> @@ -482,6 +482,7 @@ ccas="${CCAS-$cc}" >> cpp="${CPP-$cc -E}" >> objcopy="${OBJCOPY-${cross_prefix}objcopy}" >> ld="${LD-${cross_prefix}ld}" >> +ranlib="${RANLIB-${cross_prefix}ranlib}" >> nm="${NM-${cross_prefix}nm}" >> strip="${STRIP-${cross_prefix}strip}" >> windres="${WINDRES-${cross_prefix}windres}" >> @@ -6288,6 +6289,7 @@ echo "CCAS=$ccas" >> $config_host_mak >> echo "CPP=$cpp" >> $config_host_mak >> echo "OBJCOPY=$objcopy" >> $config_host_mak >> echo "LD=$ld" >> $config_host_mak >> +echo "RANLIB=$ranlib" >> $config_host_mak >> echo "NM=$nm" >> $config_host_mak >> echo "WINDRES=$windres" >> $config_host_mak >> echo "CFLAGS=$CFLAGS" >> $config_host_mak >> @@ -6782,6 +6784,7 @@ for rom in seabios vgabios ; do >> echo "OBJCOPY=objcopy" >> $config_mak >> echo "IASL=$iasl" >> $config_mak >> echo "LD=$ld" >> $config_mak >> + echo "RANLIB=$ranlib" >> $config_mak >> done >> >> # set up tests data directory >>