Message ID | 1371221594-11556-7-git-send-email-peter.maydell@linaro.org |
---|---|
State | New |
Headers | show |
Am 14.06.2013 16:53, schrieb Peter Maydell: > From: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > > Currently QEMU provides a local clone of the file libfdt_env.h in > /include. This file is supposed to come with the libfdt package and is > only needed for broken installs of libfdt. Now that we have submodule > dtc, just ignore these broken installs and prompt for the dtc submodule > install instead. QEMU's local libfdt_env.h is removed accordingly. > > Manifests as a bug when building QEMU with modern libfdt. The new > version of libfdt does not compile when QEMUs libfdt_env.h takes > precedence over the hosts. > > Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > Reviewed-by: Peter Maydell <peter.maydell@linaro.org> > Acked-by: David Gibson <david@gibson.dropbear.id.au> > Signed-off-by: Kim Phillips <kim.phillips@freescale.com> > Acked-by: Paolo Bonzini <pbonzini@redhat.com> > Message-id: 9b6a3a52e3f46cfbc1ded9ab56385ec045e46705.1369628289.git.peter.crosthwaite@xilinx.com > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > configure | 2 ++ > include/libfdt_env.h | 36 ------------------------------------ > 2 files changed, 2 insertions(+), 36 deletions(-) > delete mode 100644 include/libfdt_env.h > > diff --git a/configure b/configure > index 8732185..31b7783 100755 > --- a/configure > +++ b/configure > @@ -2488,7 +2488,9 @@ fi > # fdt probe > if test "$fdt" != "no" ; then > fdt_libs="-lfdt" > + # explicitly check for libfdt_env.h as it is missing in some stable installs > cat > $TMPC << EOF > +#include <libfdt_env.h> > int main(void) { return 0; } > EOF > if compile_prog "" "$fdt_libs" ; then As far as I can see, 1.3.0 is the latest available stable dtc version, and it doesn't install libfdt_env.h yet apparently. Any chance we can restore build with dtc 1.3.0 tarball (it used to work fine) while keeping newer versions working? Also it seems that dtc submodule build is not multithreading-safe: $ make -j6 [...] CHK version_gen.h UPD version_gen.h DEP /home/andreas/QEMU/qemu-cpu/dtc/dtc.c CHK version_gen.h CC libfdt/fdt.o CC libfdt/fdt_ro.o CC libfdt/fdt_sw.o CC libfdt/fdt_wip.o CC libfdt/fdt_rw.o CC libfdt/fdt_strerror.o AR libfdt/libfdt.a ar: two different operation options specified make[1]: *** [libfdt/libfdt.a] Fehler 1 make: *** [subdir-dtc] Fehler 2 $ make CHK version_gen.h AR libfdt/libfdt.a ar: creating libfdt/libfdt.a a - libfdt/fdt.o a - libfdt/fdt_ro.o a - libfdt/fdt_wip.o a - libfdt/fdt_sw.o a - libfdt/fdt_rw.o a - libfdt/fdt_strerror.o GEN qapi-types.c [...] Regards, Andreas > diff --git a/include/libfdt_env.h b/include/libfdt_env.h > deleted file mode 100644 > index 3667d4c..0000000 > --- a/include/libfdt_env.h > +++ /dev/null > @@ -1,36 +0,0 @@ > -/* > - * This program is free software; you can redistribute it and/or modify > - * it under the terms of the GNU General Public License, version 2, as > - * published by the Free Software Foundation. > - * > - * This program is distributed in the hope that it will be useful, > - * but WITHOUT ANY WARRANTY; without even the implied warranty of > - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > - * GNU General Public License for more details. > - * > - * You should have received a copy of the GNU General Public License > - * along with this program; if not, see <http://www.gnu.org/licenses/>. > - * > - * Copyright IBM Corp. 2008 > - * Authors: Hollis Blanchard <hollisb@us.ibm.com> > - * > - */ > - > -#ifndef _LIBFDT_ENV_H > -#define _LIBFDT_ENV_H > - > -#include "qemu/bswap.h" > - > -#ifdef HOST_WORDS_BIGENDIAN > -#define fdt32_to_cpu(x) (x) > -#define cpu_to_fdt32(x) (x) > -#define fdt64_to_cpu(x) (x) > -#define cpu_to_fdt64(x) (x) > -#else > -#define fdt32_to_cpu(x) bswap32(x) > -#define cpu_to_fdt32(x) bswap32(x) > -#define fdt64_to_cpu(x) bswap64(x) > -#define cpu_to_fdt64(x) bswap64(x) > -#endif > - > -#endif /* _LIBFDT_ENV_H */ >
On 18 June 2013 00:24, Andreas Färber <afaerber@suse.de> wrote: > As far as I can see, 1.3.0 is the latest available stable dtc version, > and it doesn't install libfdt_env.h yet apparently. Any chance we can > restore build with dtc 1.3.0 tarball (it used to work fine) while > keeping newer versions working? I wanted to keep things simple, ie just require a distro version of libfdt to be installed the way upstream say it should be, rather than second-guessing whether a broken libfdt is or isn't going to work with our libfdt_env.h. Also, a lot of people out there are probably going to end up building against the submodule libfdt, so it's helpful to have at least some of the qemu developers building that way too... > Also it seems that dtc submodule build is not multithreading-safe: ...it helps reveal bugs like this one before release rather than afterwards. I'm having trouble figuring out why it doesn't work, though (I usually run with at least j3 and it's fine, plus the makefile rules are pretty simple) -- can you reproduce with V=1 so we can see what commands are actually being run? thanks -- PMM
On Tue, Jun 18, 2013 at 12:44:02AM +0100, Peter Maydell wrote: > On 18 June 2013 00:24, Andreas Färber <afaerber@suse.de> wrote: > > As far as I can see, 1.3.0 is the latest available stable dtc version, > > and it doesn't install libfdt_env.h yet apparently. Any chance we can > > restore build with dtc 1.3.0 tarball (it used to work fine) while > > keeping newer versions working? > > I wanted to keep things simple, ie just require a distro > version of libfdt to be installed the way upstream say it > should be, rather than second-guessing whether a broken > libfdt is or isn't going to work with our libfdt_env.h. > Also, a lot of people out there are probably going to end > up building against the submodule libfdt, so it's helpful > to have at least some of the qemu developers building that > way too... > > > Also it seems that dtc submodule build is not multithreading-safe: > > ...it helps reveal bugs like this one before release > rather than afterwards. I'm having trouble figuring out > why it doesn't work, though (I usually run with at least > j3 and it's fine, plus the makefile rules are pretty > simple) -- can you reproduce with V=1 so we can see what > commands are actually being run? Likewise. I can't see why that wouldn't work. V=1 might help, although V=1 also changes the options to AR (adds verbose mode), so I hope that doesn't mess up the results.
Am 18.06.2013 01:44, schrieb Peter Maydell: > On 18 June 2013 00:24, Andreas Färber <afaerber@suse.de> wrote: >> As far as I can see, 1.3.0 is the latest available stable dtc version, >> and it doesn't install libfdt_env.h yet apparently. Any chance we can >> restore build with dtc 1.3.0 tarball (it used to work fine) while >> keeping newer versions working? > > I wanted to keep things simple, ie just require a distro > version of libfdt to be installed the way upstream say it > should be, rather than second-guessing whether a broken > libfdt is or isn't going to work with our libfdt_env.h. Quote: "(1) Preferred: Install the DTC devel package" Just to clarify: I am pointing out that apparently there is *no* stable version 1.4.0 or 1.3.1 that installs the expected libfdt_env.h: http://git.jdl.com/gitweb/?p=dtc.git;a=tags And I believe a request to package a random git commit for openSUSE distro is going to be declined. So I would be perfectly happy if the dtc maintainers were to provide an official tarball that I can get into our distribution. Then we don't need to tweak QEMU's configure at all. :) > Also, a lot of people out there are probably going to end > up building against the submodule libfdt, so it's helpful > to have at least some of the qemu developers building that > way too... > >> Also it seems that dtc submodule build is not multithreading-safe: > > ...it helps reveal bugs like this one before release > rather than afterwards. Yeah, I did write I wanted to test it but didn't get to it immediately and later forgot. :$ > I'm having trouble figuring out > why it doesn't work, though (I usually run with at least > j3 and it's fine, plus the makefile rules are pretty > simple) -- can you reproduce with V=1 so we can see what > commands are actually being run? Here you go, for the next repository: $ make -j6 V=1 config-host.mak is out-of-date, running configure python /home/andreas/QEMU/qemu-ppc/scripts/qapi-commands.py -h -m -o "." < /home/andreas/QEMU/qemu-ppc/qapi-schema.json python /home/andreas/QEMU/qemu-ppc/scripts/qapi-types.py -h -o "." -b < /home/andreas/QEMU/qemu-ppc/qapi-schema.json python /home/andreas/QEMU/qemu-ppc/scripts/qapi-visit.py -h -o "." -b < /home/andreas/QEMU/qemu-ppc/qapi-schema.json Install prefix /usr/local BIOS directory /usr/local/share/qemu binary directory /usr/local/bin library directory /usr/local/lib libexec directory /usr/local/libexec include directory /usr/local/include config directory /usr/local/etc local state directory /usr/local/var Manual directory /usr/local/share/man ELF interp prefix /usr/gnemul/qemu-%M Source path /home/andreas/QEMU/qemu-ppc C compiler cc Host C compiler cc Objective-C compiler clang CFLAGS -O2 -D_FORTIFY_SOURCE=2 -g QEMU_CFLAGS -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 -I/usr/include/spice-server -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 -I$(SRC_PATH)/dtc/libfdt LDFLAGS -Wl,--warn-common -Wl,-z,relro -Wl,-z,now -pie -m64 -g make make install install python python smbd /usr/sbin/smbd host CPU x86_64 host big endian no target list ppc-softmmu ppc64-softmmu ppcemb-softmmu ppc-linux-user ppc64-linux-user ppc64abi32-linux-user tcg debug enabled no gprof enabled no sparse enabled no strip binaries yes profiler no static build no -Werror enabled yes pixman system SDL support yes GTK support yes curses support yes curl support yes mingw32 support no Audio drivers oss Block whitelist (rw) Block whitelist (ro) Mixer emulation no VirtFS support yes VNC support yes VNC TLS support no VNC SASL support no VNC JPEG support no VNC PNG support yes VNC WS support no xen support yes brlapi support no bluez support no Documentation no NPTL support yes GUEST_BASE yes PIE yes vde support no Linux AIO support yes ATTR/XATTR support yes Install blobs yes KVM support yes TCG interpreter no fdt support yes preadv support yes fdatasync yes madvise yes posix_madvise yes sigev_thread_id yes uuid support yes libcap-ng support yes vhost-net support yes vhost-scsi support yes Trace backend nop Trace output file trace-<pid> spice support yes (0.12.3/0.12.0) rbd support no xfsctl support no nss used no libusb no usb net redir no GLX support yes libiscsi support no build guest agent yes seccomp support yes coroutine backend ucontext GlusterFS support no virtio-blk-data-plane yes gcov gcov gcov enabled no TPM support no libssh2 support no TPM passthrough no QOM debugging yes sh /home/andreas/QEMU/qemu-ppc/scripts/create_config < config-host.mak > config-host.h-timestamp mkdir -p dtc/libfdt mkdir -p dtc/tests python /home/andreas/QEMU/qemu-ppc/scripts/tracetool.py --format=h --backend=nop < /home/andreas/QEMU/qemu-ppc/trace-events > trace/generated-tracers.h-timestamp make -I/home/andreas/QEMU/qemu-ppc/dtc VPATH=/home/andreas/QEMU/qemu-ppc/dtc -C dtc V="1" LIBFDT_srcdir=/home/andreas/QEMU/qemu-ppc/dtc/libfdt CFLAGS="-O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 -I/usr/include/spice-server -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt" LDFLAGS="-Wl,--warn-common -Wl,-z,relro -Wl,-z,now -pie -m64 -g " ARFLAGS="" CC="cc" AR="ar" LD="ld" BUILD_DIR=/home/andreas/QEMU/build-ppc libfdt/libfdt.a make[1]: Entering directory `/home/andreas/QEMU/build-ppc/dtc' cc -I libfdt -MM -MG -MT "tests/trees.o tests/trees.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/trees.S > tests/trees.d cc -I libfdt -MM -MG -MT "tests/dumptrees.o tests/dumptrees.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/dumptrees.c > tests/dumptrees.d cc -I libfdt -MM -MG -MT "tests/value-labels.o tests/value-labels.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/value-labels.c > tests/value-labels.d cc -I libfdt -MM -MG -MT "tests/testutils.o tests/testutils.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/testutils.c > tests/testutils.d cc -I libfdt -MM -MG -MT "tests/asm_tree_dump.o tests/asm_tree_dump.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/asm_tree_dump.c > tests/asm_tree_dump.d cc -I libfdt -MM -MG -MT "tests/truncated_property.o tests/truncated_property.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/truncated_property.c > tests/truncated_property.d cc -I libfdt -MM -MG -MT "tests/add_subnode_with_nops.o tests/add_subnode_with_nops.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/add_subnode_with_nops.c > tests/add_subnode_with_nops.d cc -I libfdt -MM -MG -MT "tests/path_offset_aliases.o tests/path_offset_aliases.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/path_offset_aliases.c > tests/path_offset_aliases.d cc -I libfdt -MM -MG -MT "tests/dtbs_equal_unordered.o tests/dtbs_equal_unordered.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/dtbs_equal_unordered.c > tests/dtbs_equal_unordered.d cc -I libfdt -MM -MG -MT "tests/dtb_reverse.o tests/dtb_reverse.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/dtb_reverse.c > tests/dtb_reverse.d cc -I libfdt -MM -MG -MT "tests/dtbs_equal_ordered.o tests/dtbs_equal_ordered.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/dtbs_equal_ordered.c > tests/dtbs_equal_ordered.d cc -I libfdt -MM -MG -MT "tests/extra-terminating-null.o tests/extra-terminating-null.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/extra-terminating-null.c > tests/extra-terminating-null.d cc -I libfdt -MM -MG -MT "tests/incbin.o tests/incbin.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/incbin.c > tests/incbin.d cc -I libfdt -MM -MG -MT "tests/boot-cpuid.o tests/boot-cpuid.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/boot-cpuid.c > tests/boot-cpuid.d cc -I libfdt -MM -MG -MT "tests/phandle_format.o tests/phandle_format.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/phandle_format.c > tests/phandle_format.d cc -I libfdt -MM -MG -MT "tests/path-references.o tests/path-references.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/path-references.c > tests/path-references.d cc -I libfdt -MM -MG -MT "tests/references.o tests/references.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/references.c > tests/references.d cc -I libfdt -MM -MG -MT "tests/string_escapes.o tests/string_escapes.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/string_escapes.c > tests/string_escapes.d cc -I libfdt -MM -MG -MT "tests/del_node.o tests/del_node.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/del_node.c > tests/del_node.d cc -I libfdt -MM -MG -MT "tests/del_property.o tests/del_property.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/del_property.c > tests/del_property.d cc -I libfdt -MM -MG -MT "tests/setprop.o tests/setprop.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/setprop.c > tests/setprop.d cc -I libfdt -MM -MG -MT "tests/set_name.o tests/set_name.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/set_name.c > tests/set_name.d cc -I libfdt -MM -MG -MT "tests/rw_tree1.o tests/rw_tree1.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/rw_tree1.c > tests/rw_tree1.d cc -I libfdt -MM -MG -MT "tests/open_pack.o tests/open_pack.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/open_pack.c > tests/open_pack.d cc -I libfdt -MM -MG -MT "tests/nopulate.o tests/nopulate.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/nopulate.c > tests/nopulate.d cc -I libfdt -MM -MG -MT "tests/mangle-layout.o tests/mangle-layout.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/mangle-layout.c > tests/mangle-layout.d cc -I libfdt -MM -MG -MT "tests/move_and_save.o tests/move_and_save.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/move_and_save.c > tests/move_and_save.d cc -I libfdt -MM -MG -MT "tests/sw_tree1.o tests/sw_tree1.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/sw_tree1.c > tests/sw_tree1.d cc -I libfdt -MM -MG -MT "tests/nop_node.o tests/nop_node.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/nop_node.c > tests/nop_node.d cc -I libfdt -MM -MG -MT "tests/nop_property.o tests/nop_property.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/nop_property.c > tests/nop_property.d cc -I libfdt -MM -MG -MT "tests/setprop_inplace.o tests/setprop_inplace.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/setprop_inplace.c > tests/setprop_inplace.d cc -I libfdt -MM -MG -MT "tests/notfound.o tests/notfound.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/notfound.c > tests/notfound.d cc -I libfdt -MM -MG -MT "tests/get_alias.o tests/get_alias.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/get_alias.c > tests/get_alias.d cc -I libfdt -MM -MG -MT "tests/node_offset_by_compatible.o tests/node_offset_by_compatible.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/node_offset_by_compatible.c > tests/node_offset_by_compatible.d cc -I libfdt -MM -MG -MT "tests/node_check_compatible.o tests/node_check_compatible.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/node_check_compatible.c > tests/node_check_compatible.d cc -I libfdt -MM -MG -MT "tests/node_offset_by_phandle.o tests/node_offset_by_phandle.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/node_offset_by_phandle.c > tests/node_offset_by_phandle.d cc -I libfdt -MM -MG -MT "tests/node_offset_by_prop_value.o tests/node_offset_by_prop_value.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/node_offset_by_prop_value.c > tests/node_offset_by_prop_value.d cc -I libfdt -MM -MG -MT "tests/parent_offset.o tests/parent_offset.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/parent_offset.c > tests/parent_offset.d cc -I libfdt -MM -MG -MT "tests/supernode_atdepth_offset.o tests/supernode_atdepth_offset.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/supernode_atdepth_offset.c > tests/supernode_atdepth_offset.d cc -I libfdt -MM -MG -MT "tests/get_path.o tests/get_path.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/get_path.c > tests/get_path.d cc -I libfdt -MM -MG -MT "tests/get_phandle.o tests/get_phandle.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/get_phandle.c > tests/get_phandle.d cc -I libfdt -MM -MG -MT "tests/getprop.o tests/getprop.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/getprop.c > tests/getprop.d cc -I libfdt -MM -MG -MT "tests/get_name.o tests/get_name.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/get_name.c > tests/get_name.d cc -I libfdt -MM -MG -MT "tests/path_offset.o tests/path_offset.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/path_offset.c > tests/path_offset.d cc -I libfdt -MM -MG -MT "tests/subnode_offset.o tests/subnode_offset.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/subnode_offset.c > tests/subnode_offset.d cc -I libfdt -MM -MG -MT "tests/find_property.o tests/find_property.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/find_property.c > tests/find_property.d cc -I libfdt -MM -MG -MT "tests/root_node.o tests/root_node.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/root_node.c > tests/root_node.d cc -I libfdt -MM -MG -MT "tests/get_mem_rsv.o tests/get_mem_rsv.d" /home/andreas/QEMU/qemu-ppc/dtc/tests/get_mem_rsv.c > tests/get_mem_rsv.d cc -I libfdt -MM -MG -MT "libfdt/fdt_strerror.o libfdt/fdt_strerror.d" /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_strerror.c > libfdt/fdt_strerror.d cc -I libfdt -MM -MG -MT "libfdt/fdt_rw.o libfdt/fdt_rw.d" /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_rw.c > libfdt/fdt_rw.d cc -I libfdt -MM -MG -MT "libfdt/fdt_sw.o libfdt/fdt_sw.d" /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_sw.c > libfdt/fdt_sw.d cc -I libfdt -MM -MG -MT "libfdt/fdt_wip.o libfdt/fdt_wip.d" /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_wip.c > libfdt/fdt_wip.d cc -I libfdt -MM -MG -MT "libfdt/fdt_ro.o libfdt/fdt_ro.d" /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_ro.c > libfdt/fdt_ro.d cc -I libfdt -MM -MG -MT "libfdt/fdt.o libfdt/fdt.d" /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt.c > libfdt/fdt.d cc -I libfdt -MM -MG -MT "ftdump.o ftdump.d" /home/andreas/QEMU/qemu-ppc/dtc/ftdump.c > ftdump.d flex -oconvert-dtsv0-lexer.lex.c /home/andreas/QEMU/qemu-ppc/dtc/convert-dtsv0-lexer.l cc -I libfdt -MM -MG -MT "util.o util.d" /home/andreas/QEMU/qemu-ppc/dtc/util.c > util.d cc -I libfdt -MM -MG -MT "srcpos.o srcpos.d" /home/andreas/QEMU/qemu-ppc/dtc/srcpos.c > srcpos.d flex -odtc-lexer.lex.c /home/andreas/QEMU/qemu-ppc/dtc/dtc-lexer.l bison -d /home/andreas/QEMU/qemu-ppc/dtc/dtc-parser.y cc -I libfdt -MM -MG -MT "treesource.o treesource.d" /home/andreas/QEMU/qemu-ppc/dtc/treesource.c > treesource.d cc -I libfdt -MM -MG -MT "livetree.o livetree.d" /home/andreas/QEMU/qemu-ppc/dtc/livetree.c > livetree.d cc -I libfdt -MM -MG -MT "fstree.o fstree.d" /home/andreas/QEMU/qemu-ppc/dtc/fstree.c > fstree.d cc -I libfdt -MM -MG -MT "flattree.o flattree.d" /home/andreas/QEMU/qemu-ppc/dtc/flattree.c > flattree.d cc -I libfdt -MM -MG -MT "dtc.o dtc.d" /home/andreas/QEMU/qemu-ppc/dtc/dtc.c > dtc.d cc -I libfdt -MM -MG -MT "data.o data.d" /home/andreas/QEMU/qemu-ppc/dtc/data.c > data.d cc -I libfdt -MM -MG -MT "checks.o checks.d" /home/andreas/QEMU/qemu-ppc/dtc/checks.c > checks.d cc -I libfdt -MM -MG -MT "convert-dtsv0-lexer.lex.o convert-dtsv0-lexer.lex.d" convert-dtsv0-lexer.lex.c > convert-dtsv0-lexer.lex.d cc -I libfdt -MM -MG -MT "dtc-parser.tab.o dtc-parser.tab.d" dtc-parser.tab.c > dtc-parser.tab.d cc -I libfdt -MM -MG -MT "dtc-lexer.lex.o dtc-lexer.lex.d" dtc-lexer.lex.c > dtc-lexer.lex.d make[1]: Leaving directory `/home/andreas/QEMU/build-ppc/dtc' make[1]: Entering directory `/home/andreas/QEMU/build-ppc/dtc' set -e; echo ' CHK version_gen.h'; mkdir -p ./; (echo "#define DTC_VERSION \"DTC 1.3.0\""; ) < Makefile > version_gen.h.tmp; if [ -r version_gen.h ] && cmp -s version_gen.h version_gen.h.tmp; then rm -f version_gen.h.tmp; else echo ' UPD version_gen.h'; mv -f version_gen.h.tmp version_gen.h; fi; CHK version_gen.h UPD version_gen.h cc -I libfdt -MM -MG -MT "dtc.o dtc.d" /home/andreas/QEMU/qemu-ppc/dtc/dtc.c > dtc.d make[1]: Leaving directory `/home/andreas/QEMU/build-ppc/dtc' make[1]: Entering directory `/home/andreas/QEMU/build-ppc/dtc' set -e; echo ' CHK version_gen.h'; mkdir -p ./; (echo "#define DTC_VERSION \"DTC 1.3.0\""; ) < Makefile > version_gen.h.tmp; if [ -r version_gen.h ] && cmp -s version_gen.h version_gen.h.tmp; then rm -f version_gen.h.tmp; else echo ' UPD version_gen.h'; mv -f version_gen.h.tmp version_gen.h; fi; CHK version_gen.h cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 -I/usr/include/spice-server -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_ro.o -c /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_ro.c cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 -I/usr/include/spice-server -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt.o -c /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt.c cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 -I/usr/include/spice-server -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_wip.o -c /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_wip.c cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 -I/usr/include/spice-server -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_sw.o -c /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_sw.c cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 -I/usr/include/spice-server -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_rw.o -c /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_rw.c cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 -I/usr/include/spice-server -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_strerror.o -c /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_strerror.c ar libfdt/libfdt.a libfdt/fdt.o libfdt/fdt_ro.o libfdt/fdt_wip.o libfdt/fdt_sw.o libfdt/fdt_rw.o libfdt/fdt_strerror.o ar: two different operation options specified make[1]: *** [libfdt/libfdt.a] Fehler 1 make[1]: Leaving directory `/home/andreas/QEMU/build-ppc/dtc' make: *** [subdir-dtc] Fehler 2 Andreas
On Tue, Jun 18, 2013 at 10:46 AM, Andreas Färber <afaerber@suse.de> wrote: > Am 18.06.2013 01:44, schrieb Peter Maydell: >> On 18 June 2013 00:24, Andreas Färber <afaerber@suse.de> wrote: >>> As far as I can see, 1.3.0 is the latest available stable dtc version, >>> and it doesn't install libfdt_env.h yet apparently. Any chance we can >>> restore build with dtc 1.3.0 tarball (it used to work fine) while >>> keeping newer versions working? >> >> I wanted to keep things simple, ie just require a distro >> version of libfdt to be installed the way upstream say it >> should be, rather than second-guessing whether a broken >> libfdt is or isn't going to work with our libfdt_env.h. > > Quote: "(1) Preferred: Install the DTC devel package" > > Just to clarify: I am pointing out that apparently there is *no* stable > version 1.4.0 or 1.3.1 that installs the expected libfdt_env.h: > > http://git.jdl.com/gitweb/?p=dtc.git;a=tags > > And I believe a request to package a random git commit for openSUSE > distro is going to be declined. > > So I would be perfectly happy if the dtc maintainers were to provide an > official tarball that I can get into our distribution. Then we don't > need to tweak QEMU's configure at all. :) > Yes, this is massively overdue. Bugfixes aside DTC has seen some significant feature development since 1.3.0. Regards, Peter >> Also, a lot of people out there are probably going to end >> up building against the submodule libfdt, so it's helpful >> to have at least some of the qemu developers building that >> way too... >> >>> Also it seems that dtc submodule build is not multithreading-safe: >> >> ...it helps reveal bugs like this one before release >> rather than afterwards. > > Yeah, I did write I wanted to test it but didn't get to it immediately > and later forgot. :$ > >> I'm having trouble figuring out >> why it doesn't work, though (I usually run with at least >> j3 and it's fine, plus the makefile rules are pretty >> simple) -- can you reproduce with V=1 so we can see what >> commands are actually being run? > > Here you go, for the next repository: > > $ make -j6 V=1 > config-host.mak is out-of-date, running configure > python /home/andreas/QEMU/qemu-ppc/scripts/qapi-commands.py -h -m -o "." > < /home/andreas/QEMU/qemu-ppc/qapi-schema.json > python /home/andreas/QEMU/qemu-ppc/scripts/qapi-types.py -h -o "." -b < > /home/andreas/QEMU/qemu-ppc/qapi-schema.json > python /home/andreas/QEMU/qemu-ppc/scripts/qapi-visit.py -h -o "." -b < > /home/andreas/QEMU/qemu-ppc/qapi-schema.json > Install prefix /usr/local > BIOS directory /usr/local/share/qemu > binary directory /usr/local/bin > library directory /usr/local/lib > libexec directory /usr/local/libexec > include directory /usr/local/include > config directory /usr/local/etc > local state directory /usr/local/var > Manual directory /usr/local/share/man > ELF interp prefix /usr/gnemul/qemu-%M > Source path /home/andreas/QEMU/qemu-ppc > C compiler cc > Host C compiler cc > Objective-C compiler clang > CFLAGS -O2 -D_FORTIFY_SOURCE=2 -g > QEMU_CFLAGS -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes > -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes > -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body > -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self > -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition > -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 > -I/usr/include/libpng15 -I/usr/include/spice-server > -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I$(SRC_PATH)/dtc/libfdt > LDFLAGS -Wl,--warn-common -Wl,-z,relro -Wl,-z,now -pie -m64 -g > make make > install install > python python > smbd /usr/sbin/smbd > host CPU x86_64 > host big endian no > target list ppc-softmmu ppc64-softmmu ppcemb-softmmu > ppc-linux-user ppc64-linux-user ppc64abi32-linux-user > tcg debug enabled no > gprof enabled no > sparse enabled no > strip binaries yes > profiler no > static build no > -Werror enabled yes > pixman system > SDL support yes > GTK support yes > curses support yes > curl support yes > mingw32 support no > Audio drivers oss > Block whitelist (rw) > Block whitelist (ro) > Mixer emulation no > VirtFS support yes > VNC support yes > VNC TLS support no > VNC SASL support no > VNC JPEG support no > VNC PNG support yes > VNC WS support no > xen support yes > brlapi support no > bluez support no > Documentation no > NPTL support yes > GUEST_BASE yes > PIE yes > vde support no > Linux AIO support yes > ATTR/XATTR support yes > Install blobs yes > KVM support yes > TCG interpreter no > fdt support yes > preadv support yes > fdatasync yes > madvise yes > posix_madvise yes > sigev_thread_id yes > uuid support yes > libcap-ng support yes > vhost-net support yes > vhost-scsi support yes > Trace backend nop > Trace output file trace-<pid> > spice support yes (0.12.3/0.12.0) > rbd support no > xfsctl support no > nss used no > libusb no > usb net redir no > GLX support yes > libiscsi support no > build guest agent yes > seccomp support yes > coroutine backend ucontext > GlusterFS support no > virtio-blk-data-plane yes > gcov gcov > gcov enabled no > TPM support no > libssh2 support no > TPM passthrough no > QOM debugging yes > sh /home/andreas/QEMU/qemu-ppc/scripts/create_config < config-host.mak > > config-host.h-timestamp > mkdir -p dtc/libfdt > mkdir -p dtc/tests > python /home/andreas/QEMU/qemu-ppc/scripts/tracetool.py --format=h > --backend=nop < /home/andreas/QEMU/qemu-ppc/trace-events > > trace/generated-tracers.h-timestamp > make -I/home/andreas/QEMU/qemu-ppc/dtc > VPATH=/home/andreas/QEMU/qemu-ppc/dtc -C dtc V="1" > LIBFDT_srcdir=/home/andreas/QEMU/qemu-ppc/dtc/libfdt CFLAGS="-O2 > -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes > -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes > -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body > -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self > -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition > -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 > -I/usr/include/libpng15 -I/usr/include/spice-server > -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include > -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt" LDFLAGS="-Wl,--warn-common > -Wl,-z,relro -Wl,-z,now -pie -m64 -g " ARFLAGS="" CC="cc" AR="ar" > LD="ld" BUILD_DIR=/home/andreas/QEMU/build-ppc libfdt/libfdt.a > make[1]: Entering directory `/home/andreas/QEMU/build-ppc/dtc' > cc -I libfdt -MM -MG -MT "tests/trees.o tests/trees.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/trees.S > tests/trees.d > cc -I libfdt -MM -MG -MT "tests/dumptrees.o tests/dumptrees.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/dumptrees.c > tests/dumptrees.d > cc -I libfdt -MM -MG -MT "tests/value-labels.o tests/value-labels.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/value-labels.c > tests/value-labels.d > cc -I libfdt -MM -MG -MT "tests/testutils.o tests/testutils.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/testutils.c > tests/testutils.d > cc -I libfdt -MM -MG -MT "tests/asm_tree_dump.o tests/asm_tree_dump.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/asm_tree_dump.c > > tests/asm_tree_dump.d > cc -I libfdt -MM -MG -MT "tests/truncated_property.o > tests/truncated_property.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/truncated_property.c > > tests/truncated_property.d > cc -I libfdt -MM -MG -MT "tests/add_subnode_with_nops.o > tests/add_subnode_with_nops.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/add_subnode_with_nops.c > > tests/add_subnode_with_nops.d > cc -I libfdt -MM -MG -MT "tests/path_offset_aliases.o > tests/path_offset_aliases.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/path_offset_aliases.c > > tests/path_offset_aliases.d > cc -I libfdt -MM -MG -MT "tests/dtbs_equal_unordered.o > tests/dtbs_equal_unordered.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/dtbs_equal_unordered.c > > tests/dtbs_equal_unordered.d > cc -I libfdt -MM -MG -MT "tests/dtb_reverse.o tests/dtb_reverse.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/dtb_reverse.c > tests/dtb_reverse.d > cc -I libfdt -MM -MG -MT "tests/dtbs_equal_ordered.o > tests/dtbs_equal_ordered.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/dtbs_equal_ordered.c > > tests/dtbs_equal_ordered.d > cc -I libfdt -MM -MG -MT "tests/extra-terminating-null.o > tests/extra-terminating-null.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/extra-terminating-null.c > > tests/extra-terminating-null.d > cc -I libfdt -MM -MG -MT "tests/incbin.o tests/incbin.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/incbin.c > tests/incbin.d > cc -I libfdt -MM -MG -MT "tests/boot-cpuid.o tests/boot-cpuid.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/boot-cpuid.c > tests/boot-cpuid.d > cc -I libfdt -MM -MG -MT "tests/phandle_format.o tests/phandle_format.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/phandle_format.c > > tests/phandle_format.d > cc -I libfdt -MM -MG -MT "tests/path-references.o > tests/path-references.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/path-references.c > > tests/path-references.d > cc -I libfdt -MM -MG -MT "tests/references.o tests/references.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/references.c > tests/references.d > cc -I libfdt -MM -MG -MT "tests/string_escapes.o tests/string_escapes.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/string_escapes.c > > tests/string_escapes.d > cc -I libfdt -MM -MG -MT "tests/del_node.o tests/del_node.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/del_node.c > tests/del_node.d > cc -I libfdt -MM -MG -MT "tests/del_property.o tests/del_property.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/del_property.c > tests/del_property.d > cc -I libfdt -MM -MG -MT "tests/setprop.o tests/setprop.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/setprop.c > tests/setprop.d > cc -I libfdt -MM -MG -MT "tests/set_name.o tests/set_name.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/set_name.c > tests/set_name.d > cc -I libfdt -MM -MG -MT "tests/rw_tree1.o tests/rw_tree1.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/rw_tree1.c > tests/rw_tree1.d > cc -I libfdt -MM -MG -MT "tests/open_pack.o tests/open_pack.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/open_pack.c > tests/open_pack.d > cc -I libfdt -MM -MG -MT "tests/nopulate.o tests/nopulate.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/nopulate.c > tests/nopulate.d > cc -I libfdt -MM -MG -MT "tests/mangle-layout.o tests/mangle-layout.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/mangle-layout.c > > tests/mangle-layout.d > cc -I libfdt -MM -MG -MT "tests/move_and_save.o tests/move_and_save.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/move_and_save.c > > tests/move_and_save.d > cc -I libfdt -MM -MG -MT "tests/sw_tree1.o tests/sw_tree1.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/sw_tree1.c > tests/sw_tree1.d > cc -I libfdt -MM -MG -MT "tests/nop_node.o tests/nop_node.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/nop_node.c > tests/nop_node.d > cc -I libfdt -MM -MG -MT "tests/nop_property.o tests/nop_property.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/nop_property.c > tests/nop_property.d > cc -I libfdt -MM -MG -MT "tests/setprop_inplace.o > tests/setprop_inplace.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/setprop_inplace.c > > tests/setprop_inplace.d > cc -I libfdt -MM -MG -MT "tests/notfound.o tests/notfound.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/notfound.c > tests/notfound.d > cc -I libfdt -MM -MG -MT "tests/get_alias.o tests/get_alias.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/get_alias.c > tests/get_alias.d > cc -I libfdt -MM -MG -MT "tests/node_offset_by_compatible.o > tests/node_offset_by_compatible.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/node_offset_by_compatible.c > > tests/node_offset_by_compatible.d > cc -I libfdt -MM -MG -MT "tests/node_check_compatible.o > tests/node_check_compatible.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/node_check_compatible.c > > tests/node_check_compatible.d > cc -I libfdt -MM -MG -MT "tests/node_offset_by_phandle.o > tests/node_offset_by_phandle.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/node_offset_by_phandle.c > > tests/node_offset_by_phandle.d > cc -I libfdt -MM -MG -MT "tests/node_offset_by_prop_value.o > tests/node_offset_by_prop_value.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/node_offset_by_prop_value.c > > tests/node_offset_by_prop_value.d > cc -I libfdt -MM -MG -MT "tests/parent_offset.o tests/parent_offset.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/parent_offset.c > > tests/parent_offset.d > cc -I libfdt -MM -MG -MT "tests/supernode_atdepth_offset.o > tests/supernode_atdepth_offset.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/supernode_atdepth_offset.c > > tests/supernode_atdepth_offset.d > cc -I libfdt -MM -MG -MT "tests/get_path.o tests/get_path.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/get_path.c > tests/get_path.d > cc -I libfdt -MM -MG -MT "tests/get_phandle.o tests/get_phandle.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/get_phandle.c > tests/get_phandle.d > cc -I libfdt -MM -MG -MT "tests/getprop.o tests/getprop.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/getprop.c > tests/getprop.d > cc -I libfdt -MM -MG -MT "tests/get_name.o tests/get_name.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/get_name.c > tests/get_name.d > cc -I libfdt -MM -MG -MT "tests/path_offset.o tests/path_offset.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/path_offset.c > tests/path_offset.d > cc -I libfdt -MM -MG -MT "tests/subnode_offset.o tests/subnode_offset.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/subnode_offset.c > > tests/subnode_offset.d > cc -I libfdt -MM -MG -MT "tests/find_property.o tests/find_property.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/find_property.c > > tests/find_property.d > cc -I libfdt -MM -MG -MT "tests/root_node.o tests/root_node.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/root_node.c > tests/root_node.d > cc -I libfdt -MM -MG -MT "tests/get_mem_rsv.o tests/get_mem_rsv.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/get_mem_rsv.c > tests/get_mem_rsv.d > cc -I libfdt -MM -MG -MT "libfdt/fdt_strerror.o libfdt/fdt_strerror.d" > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_strerror.c > > libfdt/fdt_strerror.d > cc -I libfdt -MM -MG -MT "libfdt/fdt_rw.o libfdt/fdt_rw.d" > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_rw.c > libfdt/fdt_rw.d > cc -I libfdt -MM -MG -MT "libfdt/fdt_sw.o libfdt/fdt_sw.d" > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_sw.c > libfdt/fdt_sw.d > cc -I libfdt -MM -MG -MT "libfdt/fdt_wip.o libfdt/fdt_wip.d" > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_wip.c > libfdt/fdt_wip.d > cc -I libfdt -MM -MG -MT "libfdt/fdt_ro.o libfdt/fdt_ro.d" > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_ro.c > libfdt/fdt_ro.d > cc -I libfdt -MM -MG -MT "libfdt/fdt.o libfdt/fdt.d" > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt.c > libfdt/fdt.d > cc -I libfdt -MM -MG -MT "ftdump.o ftdump.d" > /home/andreas/QEMU/qemu-ppc/dtc/ftdump.c > ftdump.d > flex -oconvert-dtsv0-lexer.lex.c > /home/andreas/QEMU/qemu-ppc/dtc/convert-dtsv0-lexer.l > cc -I libfdt -MM -MG -MT "util.o util.d" > /home/andreas/QEMU/qemu-ppc/dtc/util.c > util.d > cc -I libfdt -MM -MG -MT "srcpos.o srcpos.d" > /home/andreas/QEMU/qemu-ppc/dtc/srcpos.c > srcpos.d > flex -odtc-lexer.lex.c /home/andreas/QEMU/qemu-ppc/dtc/dtc-lexer.l > bison -d /home/andreas/QEMU/qemu-ppc/dtc/dtc-parser.y > cc -I libfdt -MM -MG -MT "treesource.o treesource.d" > /home/andreas/QEMU/qemu-ppc/dtc/treesource.c > treesource.d > cc -I libfdt -MM -MG -MT "livetree.o livetree.d" > /home/andreas/QEMU/qemu-ppc/dtc/livetree.c > livetree.d > cc -I libfdt -MM -MG -MT "fstree.o fstree.d" > /home/andreas/QEMU/qemu-ppc/dtc/fstree.c > fstree.d > cc -I libfdt -MM -MG -MT "flattree.o flattree.d" > /home/andreas/QEMU/qemu-ppc/dtc/flattree.c > flattree.d > cc -I libfdt -MM -MG -MT "dtc.o dtc.d" > /home/andreas/QEMU/qemu-ppc/dtc/dtc.c > dtc.d > cc -I libfdt -MM -MG -MT "data.o data.d" > /home/andreas/QEMU/qemu-ppc/dtc/data.c > data.d > cc -I libfdt -MM -MG -MT "checks.o checks.d" > /home/andreas/QEMU/qemu-ppc/dtc/checks.c > checks.d > cc -I libfdt -MM -MG -MT "convert-dtsv0-lexer.lex.o > convert-dtsv0-lexer.lex.d" convert-dtsv0-lexer.lex.c > > convert-dtsv0-lexer.lex.d > cc -I libfdt -MM -MG -MT "dtc-parser.tab.o dtc-parser.tab.d" > dtc-parser.tab.c > dtc-parser.tab.d > cc -I libfdt -MM -MG -MT "dtc-lexer.lex.o dtc-lexer.lex.d" > dtc-lexer.lex.c > dtc-lexer.lex.d > make[1]: Leaving directory `/home/andreas/QEMU/build-ppc/dtc' > make[1]: Entering directory `/home/andreas/QEMU/build-ppc/dtc' > set -e; echo ' CHK version_gen.h'; mkdir -p ./; (echo "#define > DTC_VERSION \"DTC 1.3.0\""; ) < Makefile > version_gen.h.tmp; if [ -r > version_gen.h ] && cmp -s version_gen.h version_gen.h.tmp; then rm -f > version_gen.h.tmp; else echo ' UPD version_gen.h'; mv -f > version_gen.h.tmp version_gen.h; fi; > CHK version_gen.h > UPD version_gen.h > cc -I libfdt -MM -MG -MT "dtc.o dtc.d" > /home/andreas/QEMU/qemu-ppc/dtc/dtc.c > dtc.d > make[1]: Leaving directory `/home/andreas/QEMU/build-ppc/dtc' > make[1]: Entering directory `/home/andreas/QEMU/build-ppc/dtc' > set -e; echo ' CHK version_gen.h'; mkdir -p ./; (echo "#define > DTC_VERSION \"DTC 1.3.0\""; ) < Makefile > version_gen.h.tmp; if [ -r > version_gen.h ] && cmp -s version_gen.h version_gen.h.tmp; then rm -f > version_gen.h.tmp; else echo ' UPD version_gen.h'; mv -f > version_gen.h.tmp version_gen.h; fi; > CHK version_gen.h > cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 > -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings > -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels > -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security > -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration > -Wold-style-definition -Wtype-limits -fstack-protector-all > -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 > -I/usr/include/spice-server -I/usr/include/pixman-1 > -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include > -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_ro.o -c > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_ro.c > cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 > -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings > -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels > -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security > -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration > -Wold-style-definition -Wtype-limits -fstack-protector-all > -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 > -I/usr/include/spice-server -I/usr/include/pixman-1 > -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include > -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt.o -c > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt.c > cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 > -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings > -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels > -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security > -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration > -Wold-style-definition -Wtype-limits -fstack-protector-all > -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 > -I/usr/include/spice-server -I/usr/include/pixman-1 > -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include > -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_wip.o -c > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_wip.c > cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 > -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings > -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels > -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security > -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration > -Wold-style-definition -Wtype-limits -fstack-protector-all > -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 > -I/usr/include/spice-server -I/usr/include/pixman-1 > -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include > -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_sw.o -c > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_sw.c > cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 > -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings > -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels > -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security > -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration > -Wold-style-definition -Wtype-limits -fstack-protector-all > -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 > -I/usr/include/spice-server -I/usr/include/pixman-1 > -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include > -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_rw.o -c > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_rw.c > cc -I libfdt -O2 -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 > -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE > -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings > -Wmissing-prototypes -fno-strict-aliasing -Wendif-labels > -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security > -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration > -Wold-style-definition -Wtype-limits -fstack-protector-all > -I/usr/include/libseccomp-1.0.1 -I/usr/include/libpng15 > -I/usr/include/spice-server -I/usr/include/pixman-1 > -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include > -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -o libfdt/fdt_strerror.o -c > /home/andreas/QEMU/qemu-ppc/dtc/libfdt/fdt_strerror.c > ar libfdt/libfdt.a libfdt/fdt.o libfdt/fdt_ro.o libfdt/fdt_wip.o > libfdt/fdt_sw.o libfdt/fdt_rw.o libfdt/fdt_strerror.o > ar: two different operation options specified > make[1]: *** [libfdt/libfdt.a] Fehler 1 > make[1]: Leaving directory `/home/andreas/QEMU/build-ppc/dtc' > make: *** [subdir-dtc] Fehler 2 > > Andreas > > -- > SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany > GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg >
Am 18.06.2013 02:52, schrieb Peter Crosthwaite: > On Tue, Jun 18, 2013 at 10:46 AM, Andreas Färber <afaerber@suse.de> wrote: >> Am 18.06.2013 01:44, schrieb Peter Maydell: >>> On 18 June 2013 00:24, Andreas Färber <afaerber@suse.de> wrote: >>>> As far as I can see, 1.3.0 is the latest available stable dtc version, >>>> and it doesn't install libfdt_env.h yet apparently. Any chance we can >>>> restore build with dtc 1.3.0 tarball (it used to work fine) while >>>> keeping newer versions working? >>> >>> I wanted to keep things simple, ie just require a distro >>> version of libfdt to be installed the way upstream say it >>> should be, rather than second-guessing whether a broken >>> libfdt is or isn't going to work with our libfdt_env.h. >> >> Quote: "(1) Preferred: Install the DTC devel package" >> >> Just to clarify: I am pointing out that apparently there is *no* stable >> version 1.4.0 or 1.3.1 that installs the expected libfdt_env.h: >> >> http://git.jdl.com/gitweb/?p=dtc.git;a=tags >> >> And I believe a request to package a random git commit for openSUSE >> distro is going to be declined. >> >> So I would be perfectly happy if the dtc maintainers were to provide an >> official tarball that I can get into our distribution. Then we don't >> need to tweak QEMU's configure at all. :) >> > > Yes, this is massively overdue. Bugfixes aside DTC has seen some > significant feature development since 1.3.0. For the record, I came up with the following interim fix for openSUSE to avoid submodule builds for all my repositories: https://build.opensuse.org/request/show/179370 Andreas
On 18 June 2013 01:46, Andreas Färber <afaerber@suse.de> wrote: > $ make -j6 V=1 > make -I/home/andreas/QEMU/qemu-ppc/dtc > VPATH=/home/andreas/QEMU/qemu-ppc/dtc -C dtc V="1" > LIBFDT_srcdir=/home/andreas/QEMU/qemu-ppc/dtc/libfdt CFLAGS="-O2 > -D_FORTIFY_SOURCE=2 -g -Werror -fPIE -DPIE -m64 -D_GNU_SOURCE > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes > -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes > -fno-strict-aliasing -Wendif-labels -Wmissing-include-dirs -Wempty-body > -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self > -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition > -Wtype-limits -fstack-protector-all -I/usr/include/libseccomp-1.0.1 > -I/usr/include/libpng15 -I/usr/include/spice-server > -I/usr/include/pixman-1 -I/usr/include/spice-1 -I/usr/include/pixman-1 > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt -pthread > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include > -I/home/andreas/QEMU/qemu-ppc/tests -I/home/andreas/QEMU/build-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc > -I/home/andreas/QEMU/qemu-ppc/dtc/libfdt" LDFLAGS="-Wl,--warn-common > -Wl,-z,relro -Wl,-z,now -pie -m64 -g " ARFLAGS="" CC="cc" AR="ar" > LD="ld" BUILD_DIR=/home/andreas/QEMU/build-ppc libfdt/libfdt.a ...so we tell the libfdt makefile to build libfdt.a... > make[1]: Entering directory `/home/andreas/QEMU/build-ppc/dtc' > cc -I libfdt -MM -MG -MT "tests/trees.o tests/trees.d" > /home/andreas/QEMU/qemu-ppc/dtc/tests/trees.S > tests/trees.d > cc -I libfdt -MM -MG -MT "tests/dumptrees.o tests/dumptrees.d" ...and it starts to build its test suite?! This doesn't happen for me. What git commit is your dtc submodule at, please? However, it's not the cause of the problem: > ar libfdt/libfdt.a libfdt/fdt.o libfdt/fdt_ro.o libfdt/fdt_wip.o > libfdt/fdt_sw.o libfdt/fdt_rw.o libfdt/fdt_strerror.o > ar: two different operation options specified ...which is that the top level makefile is passing ARFLAGS="" and so we don't specify any operation to ar at all. For me the submake is invoked with ARFLAGS ="rv" (which is Make's default for when ARFLAGS wasn't specified). QEMU's configure and makefile don't fiddle with ARFLAGS at all: are you passing some odd values in from your environment? thanks -- PMM
Il 18/06/2013 03:22, Andreas Färber ha scritto: >> Yes, this is massively overdue. Bugfixes aside DTC has seen some >> significant feature development since 1.3.0. > > For the record, I came up with the following interim fix for openSUSE to > avoid submodule builds for all my repositories: > > https://build.opensuse.org/request/show/179370 I did something similar with EPEL. However, note that it may break building old QEMU if QEMU's libfdt_env.h is picked up instead of the installed one. :( Paolo
CCing qemu-stable. We want this for Fedora 19 at least where updated dtc broke our build. - Cole On 06/14/2013 10:53 AM, Peter Maydell wrote: > From: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > > Currently QEMU provides a local clone of the file libfdt_env.h in > /include. This file is supposed to come with the libfdt package and is > only needed for broken installs of libfdt. Now that we have submodule > dtc, just ignore these broken installs and prompt for the dtc submodule > install instead. QEMU's local libfdt_env.h is removed accordingly. > > Manifests as a bug when building QEMU with modern libfdt. The new > version of libfdt does not compile when QEMUs libfdt_env.h takes > precedence over the hosts. > > Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > Reviewed-by: Peter Maydell <peter.maydell@linaro.org> > Acked-by: David Gibson <david@gibson.dropbear.id.au> > Signed-off-by: Kim Phillips <kim.phillips@freescale.com> > Acked-by: Paolo Bonzini <pbonzini@redhat.com> > Message-id: 9b6a3a52e3f46cfbc1ded9ab56385ec045e46705.1369628289.git.peter.crosthwaite@xilinx.com > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > configure | 2 ++ > include/libfdt_env.h | 36 ------------------------------------ > 2 files changed, 2 insertions(+), 36 deletions(-) > delete mode 100644 include/libfdt_env.h > > diff --git a/configure b/configure > index 8732185..31b7783 100755 > --- a/configure > +++ b/configure > @@ -2488,7 +2488,9 @@ fi > # fdt probe > if test "$fdt" != "no" ; then > fdt_libs="-lfdt" > + # explicitly check for libfdt_env.h as it is missing in some stable installs > cat > $TMPC << EOF > +#include <libfdt_env.h> > int main(void) { return 0; } > EOF > if compile_prog "" "$fdt_libs" ; then > diff --git a/include/libfdt_env.h b/include/libfdt_env.h > deleted file mode 100644 > index 3667d4c..0000000 > --- a/include/libfdt_env.h > +++ /dev/null > @@ -1,36 +0,0 @@ > -/* > - * This program is free software; you can redistribute it and/or modify > - * it under the terms of the GNU General Public License, version 2, as > - * published by the Free Software Foundation. > - * > - * This program is distributed in the hope that it will be useful, > - * but WITHOUT ANY WARRANTY; without even the implied warranty of > - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > - * GNU General Public License for more details. > - * > - * You should have received a copy of the GNU General Public License > - * along with this program; if not, see <http://www.gnu.org/licenses/>. > - * > - * Copyright IBM Corp. 2008 > - * Authors: Hollis Blanchard <hollisb@us.ibm.com> > - * > - */ > - > -#ifndef _LIBFDT_ENV_H > -#define _LIBFDT_ENV_H > - > -#include "qemu/bswap.h" > - > -#ifdef HOST_WORDS_BIGENDIAN > -#define fdt32_to_cpu(x) (x) > -#define cpu_to_fdt32(x) (x) > -#define fdt64_to_cpu(x) (x) > -#define cpu_to_fdt64(x) (x) > -#else > -#define fdt32_to_cpu(x) bswap32(x) > -#define cpu_to_fdt32(x) bswap32(x) > -#define fdt64_to_cpu(x) bswap64(x) > -#define cpu_to_fdt64(x) bswap64(x) > -#endif > - > -#endif /* _LIBFDT_ENV_H */ >
IIRC Paolo's ack on this patch came with a caveat of "if it is not for -stable" -- cc'ing him. thanks -- PMM On 19 June 2013 15:48, Cole Robinson <crobinso@redhat.com> wrote: > CCing qemu-stable. We want this for Fedora 19 at least where updated dtc broke > our build. > > - Cole > > On 06/14/2013 10:53 AM, Peter Maydell wrote: >> From: Peter Crosthwaite <peter.crosthwaite@xilinx.com> >> >> Currently QEMU provides a local clone of the file libfdt_env.h in >> /include. This file is supposed to come with the libfdt package and is >> only needed for broken installs of libfdt. Now that we have submodule >> dtc, just ignore these broken installs and prompt for the dtc submodule >> install instead. QEMU's local libfdt_env.h is removed accordingly. >> >> Manifests as a bug when building QEMU with modern libfdt. The new >> version of libfdt does not compile when QEMUs libfdt_env.h takes >> precedence over the hosts. >> >> Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> >> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> >> Acked-by: David Gibson <david@gibson.dropbear.id.au> >> Signed-off-by: Kim Phillips <kim.phillips@freescale.com> >> Acked-by: Paolo Bonzini <pbonzini@redhat.com> >> Message-id: 9b6a3a52e3f46cfbc1ded9ab56385ec045e46705.1369628289.git.peter.crosthwaite@xilinx.com >> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> >> --- >> configure | 2 ++ >> include/libfdt_env.h | 36 ------------------------------------ >> 2 files changed, 2 insertions(+), 36 deletions(-) >> delete mode 100644 include/libfdt_env.h >> >> diff --git a/configure b/configure >> index 8732185..31b7783 100755 >> --- a/configure >> +++ b/configure >> @@ -2488,7 +2488,9 @@ fi >> # fdt probe >> if test "$fdt" != "no" ; then >> fdt_libs="-lfdt" >> + # explicitly check for libfdt_env.h as it is missing in some stable installs >> cat > $TMPC << EOF >> +#include <libfdt_env.h> >> int main(void) { return 0; } >> EOF >> if compile_prog "" "$fdt_libs" ; then >> diff --git a/include/libfdt_env.h b/include/libfdt_env.h >> deleted file mode 100644 >> index 3667d4c..0000000 >> --- a/include/libfdt_env.h >> +++ /dev/null >> @@ -1,36 +0,0 @@ >> -/* >> - * This program is free software; you can redistribute it and/or modify >> - * it under the terms of the GNU General Public License, version 2, as >> - * published by the Free Software Foundation. >> - * >> - * This program is distributed in the hope that it will be useful, >> - * but WITHOUT ANY WARRANTY; without even the implied warranty of >> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> - * GNU General Public License for more details. >> - * >> - * You should have received a copy of the GNU General Public License >> - * along with this program; if not, see <http://www.gnu.org/licenses/>. >> - * >> - * Copyright IBM Corp. 2008 >> - * Authors: Hollis Blanchard <hollisb@us.ibm.com> >> - * >> - */ >> - >> -#ifndef _LIBFDT_ENV_H >> -#define _LIBFDT_ENV_H >> - >> -#include "qemu/bswap.h" >> - >> -#ifdef HOST_WORDS_BIGENDIAN >> -#define fdt32_to_cpu(x) (x) >> -#define cpu_to_fdt32(x) (x) >> -#define fdt64_to_cpu(x) (x) >> -#define cpu_to_fdt64(x) (x) >> -#else >> -#define fdt32_to_cpu(x) bswap32(x) >> -#define cpu_to_fdt32(x) bswap32(x) >> -#define fdt64_to_cpu(x) bswap64(x) >> -#define cpu_to_fdt64(x) bswap64(x) >> -#endif >> - >> -#endif /* _LIBFDT_ENV_H */ >> >
diff --git a/configure b/configure index 8732185..31b7783 100755 --- a/configure +++ b/configure @@ -2488,7 +2488,9 @@ fi # fdt probe if test "$fdt" != "no" ; then fdt_libs="-lfdt" + # explicitly check for libfdt_env.h as it is missing in some stable installs cat > $TMPC << EOF +#include <libfdt_env.h> int main(void) { return 0; } EOF if compile_prog "" "$fdt_libs" ; then diff --git a/include/libfdt_env.h b/include/libfdt_env.h deleted file mode 100644 index 3667d4c..0000000 --- a/include/libfdt_env.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License, version 2, as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, see <http://www.gnu.org/licenses/>. - * - * Copyright IBM Corp. 2008 - * Authors: Hollis Blanchard <hollisb@us.ibm.com> - * - */ - -#ifndef _LIBFDT_ENV_H -#define _LIBFDT_ENV_H - -#include "qemu/bswap.h" - -#ifdef HOST_WORDS_BIGENDIAN -#define fdt32_to_cpu(x) (x) -#define cpu_to_fdt32(x) (x) -#define fdt64_to_cpu(x) (x) -#define cpu_to_fdt64(x) (x) -#else -#define fdt32_to_cpu(x) bswap32(x) -#define cpu_to_fdt32(x) bswap32(x) -#define fdt64_to_cpu(x) bswap64(x) -#define cpu_to_fdt64(x) bswap64(x) -#endif - -#endif /* _LIBFDT_ENV_H */