Bug 68505 - libdbus-init-win library not be build on autotools cross compiling
Summary: libdbus-init-win library not be build on autotools cross compiling
Status: RESOLVED FIXED
Alias: None
Product: dbus
Classification: Unclassified
Component: core (show other bugs)
Version: unspecified
Hardware: Other Linux (All)
: medium normal
Assignee: Simon McVittie
QA Contact:
URL:
Whiteboard: review?
Keywords: patch
Depends on:
Blocks:
 
Reported: 2013-08-24 12:42 UTC by Ralf Habacker
Modified: 2013-08-29 10:36 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
libdbus-1.la: have proper dependencies on Windows (1.13 KB, patch)
2013-08-27 12:58 UTC, Simon McVittie
Details | Splinter Review

Description Ralf Habacker 2013-08-24 12:42:31 UTC
Recent dbus git master fails to be compiled using mingw32 cross compiler on linux. 

libdbus-win-init library contains c++ code ,currently only used on windows. The c++ compiler is detected, libdbus-win-init  has been added as dependency of libdbus-1, but the libdbus-win-init target is not added to the makefiles. 

../dbus/configure --host i686-w64-mingw32 --build x86_64-suse-linux --prefix=/usr/i686-w64-mingw32 --enable-abstract-sockets
configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu
checking build system type... x86_64-suse-linux-gnu
checking host system type... i686-w64-mingw32
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for i686-w64-mingw32-strip... i686-w64-mingw32-strip
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking how to create a ustar tar archive... gnutar
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether make supports nested variables... yes
checking for i686-w64-mingw32-gcc... i686-w64-mingw32-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether i686-w64-mingw32-gcc accepts -g... yes
checking for i686-w64-mingw32-gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of i686-w64-mingw32-gcc... gcc3
checking whether i686-w64-mingw32-gcc and cc understand -c and -o together... yes
checking for i686-w64-mingw32-g++... i686-w64-mingw32-g++
checking whether we are using the GNU C++ compiler... yes
checking whether i686-w64-mingw32-g++ accepts -g... yes
checking dependency style of i686-w64-mingw32-g++... gcc3
checking whether i686-w64-mingw32-g++ understands -c and -o together... yes
checking how to run the C preprocessor... i686-w64-mingw32-gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for library containing strerror... none required
checking for ANSI C header files... (cached) yes
checking for inline... inline
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by i686-w64-mingw32-gcc... /usr/i686-w64-mingw32/bin/ld
checking if the linker (/usr/i686-w64-mingw32/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/i686-w64-mingw32-nm -B
checking the name lister (/usr/bin/i686-w64-mingw32-nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-suse-linux-gnu file names to i686-w64-mingw32 format... func_convert_file_nix_to_w32
checking how to convert x86_64-suse-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/i686-w64-mingw32/bin/ld option to reload object files... -r
checking for i686-w64-mingw32-objdump... i686-w64-mingw32-objdump
checking how to recognize dependent libraries... file_magic ^x86 archive import|^x86 DLL
checking for i686-w64-mingw32-dlltool... i686-w64-mingw32-dlltool
checking how to associate runtime and link libraries... func_cygming_dll_for_implib
checking for i686-w64-mingw32-ar... i686-w64-mingw32-ar
checking for archiver @FILE support... @
checking for i686-w64-mingw32-strip... (cached) i686-w64-mingw32-strip
checking for i686-w64-mingw32-ranlib... i686-w64-mingw32-ranlib
checking command to parse /usr/bin/i686-w64-mingw32-nm -B output from i686-w64-mingw32-gcc object... ok
checking for sysroot... no
checking for i686-w64-mingw32-mt... no
checking for mt... mt
configure: WARNING: using cross tools not prefixed with host triplet
checking if mt is a manifest tool... no
checking for dlfcn.h... no
checking for objdir... .libs
checking if i686-w64-mingw32-gcc supports -fno-rtti -fno-exceptions... no
checking for i686-w64-mingw32-gcc option to produce PIC... -DDLL_EXPORT -DPIC
checking if i686-w64-mingw32-gcc PIC flag -DDLL_EXPORT -DPIC works... yes
checking if i686-w64-mingw32-gcc static flag -static works... yes
checking if i686-w64-mingw32-gcc supports -c -o file.o... yes
checking if i686-w64-mingw32-gcc supports -c -o file.o... (cached) yes
checking whether the i686-w64-mingw32-gcc linker (/usr/i686-w64-mingw32/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... yes
checking dynamic linker characteristics... Win32 ld.exe
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... i686-w64-mingw32-g++ -E
checking for ld used by i686-w64-mingw32-g++... /usr/i686-w64-mingw32/bin/ld
checking if the linker (/usr/i686-w64-mingw32/bin/ld) is GNU ld... yes
checking whether the i686-w64-mingw32-g++ linker (/usr/i686-w64-mingw32/bin/ld) supports shared libraries... yes
checking for i686-w64-mingw32-g++ option to produce PIC... -DDLL_EXPORT -DPIC
checking if i686-w64-mingw32-g++ PIC flag -DDLL_EXPORT -DPIC works... yes
checking if i686-w64-mingw32-g++ static flag -static works... yes
checking if i686-w64-mingw32-g++ supports -c -o file.o... yes
checking if i686-w64-mingw32-g++ supports -c -o file.o... (cached) yes
checking whether the i686-w64-mingw32-g++ linker (/usr/i686-w64-mingw32/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... Win32 ld.exe
checking how to hardcode library paths into programs... immediate
checking for i686-w64-mingw32-pkg-config... /usr/bin/i686-w64-mingw32-pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for i686-w64-mingw32-windres... i686-w64-mingw32-windres
checking for i686-w64-mingw32-windres... i686-w64-mingw32-windres
checking for GLIB... yes
checking for DBUS_GLIB... yes
checking for a Python interpreter with version >= 2.6... python
checking for python... /usr/bin/python
checking for python version... 2.7
checking for python platform... linux2
checking for python script directory... ${prefix}lib/python2.7/site-packages
checking for python extension module directory... ${exec_prefix}lib64/python2.7/site-packages
checking whether we are using the GNU C Library 2.1 or newer... no
checking size of char... 1
checking size of short... 2
checking size of long... 4
checking size of int... 4
checking size of void *... 4
checking size of long long... 8
checking size of __int64... 8
checking 64-bit integer type... long long
checking 32-bit integer type... int
checking 16-bit integer type... short
checking whether byte ordering is bigendian... no
checking for an implementation of va_copy()... yes
checking for an implementation of __va_copy()... yes
checking whether va_lists can be copied by value... yes
checking whether i686-w64-mingw32-gcc knows __sync_sub_and_fetch()... yes
checking for library containing socket... no
checking for gethostbyname... no
checking for gethostbyname in -lnsl... no
checking for vsnprintf... yes
checking for vasprintf... no
checking for nanosleep... no
checking for usleep... yes
checking for setenv... no
checking for clearenv... no
checking for unsetenv... no
checking for socketpair... no
checking for getgrouplist... no
checking for fpathconf... no
checking for setrlimit... no
checking for poll... no
checking for setlocale... yes
checking for localeconv... yes
checking for strtoll... yes
checking for strtoull... yes
checking for issetugid... no
checking for getresuid... no
checking syslog.h usability... no
checking syslog.h presence... no
checking for syslog.h... no
checking for broken poll... no (cross compiling)
checking for dirfd... no
checking for DIR *dirp->dd_fd... no
checking sys/resource.h usability... no
checking sys/resource.h presence... no
checking for sys/resource.h... no
checking dirent.h usability... yes
checking dirent.h presence... yes
checking for dirent.h... yes
checking execinfo.h usability... no
checking execinfo.h presence... no
checking for execinfo.h... no
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking byteswap.h usability... no
checking byteswap.h presence... no
checking for byteswap.h... no
checking for unistd.h... (cached) yes
checking ws2tcpip.h usability... yes
checking ws2tcpip.h presence... yes
checking for ws2tcpip.h... yes
checking wspiapi.h usability... yes
checking wspiapi.h presence... yes
checking for wspiapi.h... yes
checking alloca.h usability... no
checking alloca.h presence... no
checking for alloca.h... no
checking for posix getpwnam_r... yes
checking whether socklen_t is defined... no
checking sys/uio.h usability... no
checking sys/uio.h presence... no
checking for sys/uio.h... no
checking sys/syslimits.h usability... no
checking sys/syslimits.h presence... no
checking for sys/syslimits.h... no
checking whether MSG_NOSIGNAL is declared... no
checking for ISO C99 varargs macros in C... yes
checking for GNUC varargs macros... yes
checking for struct cmsgcred... no
checking for getpeerucred... no
checking for getpeereid... no
checking for pipe2... no
checking for accept4... no
checking for i686-w64-mingw32-pkg-config... (cached) /usr/bin/i686-w64-mingw32-pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for XML_ParserCreate_MM in -lexpat... yes
checking expat.h usability... yes
checking expat.h presence... yes
checking for expat.h... yes
checking for is_selinux_enabled in -lselinux... no
configure: WARNING: Sufficiently new SELinux library not found
checking sys/inotify.h usability... no
checking sys/inotify.h presence... no
checking for sys/inotify.h... no
checking for Linux epoll(4)... no
checking sys/event.h usability... no
checking sys/event.h presence... no
checking for sys/event.h... no
checking for kqueue... no
checking launch.h usability... no
checking launch.h presence... no
checking for launch.h... no
checking for launchctl... no
checking for SYSTEMD... no
checking for audit_log_user_avc_message in -laudit... no
checking for ADT API... no
checking for SCM_RIGHTS... not supported
checking to see if compiler understands ... yes
checking to see if compiler understands -Wall... yes
checking to see if compiler understands -Wextra... yes
checking to see if compiler understands -Wchar-subscripts... yes
checking to see if compiler understands -Wmissing-declarations... yes
checking to see if compiler understands -Wmissing-prototypes... yes
checking to see if compiler understands -Wnested-externs... yes
checking to see if compiler understands -Wpointer-arith... yes
checking to see if compiler understands -Wcast-align... yes
checking to see if compiler understands -Wno-address... yes
checking to see if compiler understands -Wfloat-equal... yes
checking to see if compiler understands -Wdeclaration-after-statement... yes
checking to see if compiler understands -Werror... yes
checking to see if compiler understands -Wno-unused-label... yes
checking to see if compiler understands -Wno-error=unused-label... yes
checking to see if compiler understands -Wno-missing-field-initializers... yes
checking to see if compiler understands -Wno-error=missing-field-initializers... yes
checking to see if compiler understands -Wno-unused-parameter... yes
checking to see if compiler understands -Wno-error=unused-parameter... yes
checking to see if compiler understands -Wno-sign-compare... yes
checking to see if compiler understands -Wno-error=sign-compare... yes
checking to see if compiler understands -Wno-pointer-sign... yes
checking to see if compiler understands -Wno-error=pointer-sign... yes
checking to see if compiler understands -Wno-type-limits... yes
checking to see if compiler understands -Wno-error=type-limits... yes
checking to see if compiler understands -fno-common... yes
checking to see if compiler understands -fno-strict-aliasing... yes
checking for doxygen... /usr/bin/doxygen
checking whether to build Doxygen documentation... yes
checking for xsltproc... xsltproc
checking for xmlto... /usr/bin/xmlto
checking whether to build XML documentation... yes
checking crt_externs.h usability... no
checking crt_externs.h presence... no
checking for crt_externs.h... no
checking for _NSGetEnviron... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Doxyfile
config.status: creating dbus/versioninfo.rc
config.status: creating dbus/dbus-arch-deps.h
config.status: creating bus/system.conf
config.status: creating bus/session.conf
config.status: creating bus/messagebus
config.status: creating bus/messagebus-config
config.status: creating bus/org.freedesktop.dbus-session.plist
config.status: creating bus/rc.messagebus
config.status: creating bus/dbus.service
config.status: creating bus/dbus.socket
config.status: creating Makefile
config.status: creating dbus/Makefile
config.status: creating bus/Makefile
config.status: creating tools/Makefile
config.status: creating test/Makefile
config.status: creating test/name-test/Makefile
config.status: creating doc/Makefile
config.status: creating doc/dbus-cleanup-sockets.1.xml
config.status: creating doc/dbus-daemon.1.xml
config.status: creating doc/dbus-launch.1.xml
config.status: creating doc/dbus-monitor.1.xml
config.status: creating doc/dbus-run-session.1.xml
config.status: creating doc/dbus-send.1.xml
config.status: creating doc/dbus-uuidgen.1.xml
config.status: creating dbus-1.pc
config.status: creating dbus-1-uninstalled.pc
config.status: creating test/data/valid-config-files/debug-allow-all.conf
config.status: creating test/data/valid-config-files/debug-allow-all-sha1.conf
config.status: creating test/data/valid-config-files-system/debug-allow-all-pass.conf
config.status: creating test/data/valid-config-files-system/debug-allow-all-fail.conf
config.status: creating test/data/valid-service-files/org.freedesktop.DBus.TestSuite.PrivServer.service
config.status: creating test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoService.service
config.status: creating test/data/valid-service-files/org.freedesktop.DBus.TestSuiteForkingEchoService.service
config.status: creating test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfaultService.service
config.status: creating test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service
config.status: creating test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service
config.status: creating test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteEchoService.service
config.status: creating test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteSegfaultService.service
config.status: creating test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceSuccess.service
config.status: creating test/data/valid-service-files-system/org.freedesktop.DBus.TestSuiteShellEchoServiceFail.service
config.status: creating test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoExec.service
config.status: creating test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoUser.service
config.status: creating test/data/invalid-service-files-system/org.freedesktop.DBus.TestSuiteNoService.service
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands

                    D-Bus 1.7.5
                  ==============

        prefix:                   
        exec_prefix:              ${prefix}
        libdir:                   /lib
        libexecdir:               /lib
        bindir:                   /bin
        sysconfdir:               /etc
        localstatedir:            /var
        datadir:                  /share
        source code location:     ../dbus
        compiler:                 i686-w64-mingw32-gcc
        cflags:                    -Wall -Wextra -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wno-address -Wfloat-equal -Wdeclaration-after-statement -Wno-unused-label -Wno-missing-field-initializers -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-type-limits -fno-common -fno-strict-aliasing -g -O2
        cppflags:                 
        cxxflags:                 -g -O2
        64-bit int:               long long
        32-bit int:               int
        16-bit int:               short
        Doxygen:                  /usr/bin/doxygen
        xmlto:                    /usr/bin/xmlto

        Rebuilding generated files: yes
        gcc coverage profiling:   no
        Building embedded tests:  no
        Building modular tests:   auto
            - with GLib:          yes
        Building verbose mode:    no
        Building assertions:      no
        Building checks:          yes
        Building bus stats API:   no
        Building SELinux support: no
        Building inotify support: no
        Building kqueue support:  no
        Building systemd support: no
        Building X11 code:        no
        Building Doxygen docs:    yes
        Building XML docs:        yes
        Building cache support:   yes
        Building launchd support: no
        Init scripts style:       none
        Abstract socket names:    
        System bus socket:        /var/run/dbus/system_bus_socket
        System bus address:       unix:path=/var/run/dbus/system_bus_socket
        System bus PID file:      /var/run/dbus/pid
        Session bus listens on:   autolaunch:
        Session clients connect to: autolaunch:
        Console auth dir:         /var/run/console/
        Console owner file:       no
        Console owner file path:  
        System bus user:          messagebus
        Session bus services dir: /share/dbus-1/services
        'make check' socket dir:  /tmp


ralf@bramsche:~/src/dbus-autotools-cross-build> make
make  all-recursive
make[1]: Entering directory `/home/ralf/src/dbus-autotools-cross-build'
Making all in dbus
make[2]: Entering directory `/home/ralf/src/dbus-autotools-cross-build/dbus'
make  all-am
make[3]: Entering directory `/home/ralf/src/dbus-autotools-cross-build/dbus'
  CC       libdbus_1_la-dbus-address.lo
  CC       libdbus_1_la-dbus-auth.lo
  CC       libdbus_1_la-dbus-bus.lo
  CC       libdbus_1_la-dbus-connection.lo
  CC       libdbus_1_la-dbus-credentials.lo
  CC       libdbus_1_la-dbus-errors.lo
  CC       libdbus_1_la-dbus-keyring.lo
  CC       libdbus_1_la-dbus-marshal-header.lo
  CC       libdbus_1_la-dbus-marshal-byteswap.lo
  CC       libdbus_1_la-dbus-marshal-recursive.lo
  CC       libdbus_1_la-dbus-marshal-validate.lo
  CC       libdbus_1_la-dbus-message.lo
  CC       libdbus_1_la-dbus-misc.lo
  CC       libdbus_1_la-dbus-nonce.lo
  CC       libdbus_1_la-dbus-object-tree.lo
  CC       libdbus_1_la-dbus-pending-call.lo
  CC       libdbus_1_la-dbus-resources.lo
  CC       libdbus_1_la-dbus-server.lo
  CC       libdbus_1_la-dbus-server-debug-pipe.lo
  CC       libdbus_1_la-dbus-server-socket.lo
  CC       libdbus_1_la-dbus-server-win.lo
  CC       libdbus_1_la-dbus-sha.lo
  CC       libdbus_1_la-dbus-signature.lo
  CC       libdbus_1_la-dbus-syntax.lo
  CC       libdbus_1_la-dbus-timeout.lo
  CC       libdbus_1_la-dbus-threads.lo
  CC       libdbus_1_la-dbus-transport.lo
  CC       libdbus_1_la-dbus-transport-socket.lo
  CC       libdbus_1_la-dbus-watch.lo
  CC       libdbus_1_la-dbus-dataslot.lo
  CC       libdbus_1_la-dbus-file.lo
  CC       libdbus_1_la-dbus-hash.lo
  CC       libdbus_1_la-dbus-internals.lo
  CC       libdbus_1_la-dbus-list.lo
  CC       libdbus_1_la-dbus-marshal-basic.lo
  CC       libdbus_1_la-dbus-memory.lo
  CC       libdbus_1_la-dbus-mempool.lo
  CC       libdbus_1_la-dbus-pipe.lo
  CC       libdbus_1_la-dbus-string.lo
  CC       libdbus_1_la-dbus-file-win.lo
  CC       libdbus_1_la-dbus-pipe-win.lo
  CC       libdbus_1_la-dbus-sysdeps-win.lo
../../dbus/dbus/dbus-sysdeps-win.c: In function '_dbus_poll':
../../dbus/dbus/dbus-sysdeps-win.c:1315:9: warning: unused variable 'msgp' [-Wunused-variable]
   char *msgp;
         ^
../../dbus/dbus/dbus-sysdeps-win.c:1314:8: warning: unused variable 'msg' [-Wunused-variable]
   char msg[DBUS_POLL_CHAR_BUFFER_SIZE];
        ^
  CC       libdbus_1_la-dbus-sysdeps-thread-win.lo
  CC       libdbus_1_la-dbus-transport-win.lo
  CC       libdbus_1_la-dbus-sysdeps.lo
i686-w64-mingw32-windres versioninfo.rc -o versioninfo.o
  CCLD     libdbus-1.la
libtool: link: cannot find the library `libdbus-init-win.la' or unhandled argument `libdbus-init-win.la'
make[3]: *** [libdbus-1.la] Fehler 1
make[3]: Leaving directory `/home/ralf/src/dbus-autotools-cross-build/dbus'
make[2]: *** [all] Fehler 2
make[2]: Leaving directory `/home/ralf/src/dbus-autotools-cross-build/dbus'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/ralf/src/dbus-autotools-cross-build'
make: *** [all] Fehler 2
ralf@bramsche:~/src/dbus-autotools-cross-build>
Comment 1 Simon McVittie 2013-08-27 09:35:31 UTC
Have you tried running autoreconf? I'm pretty sure this cross-compile worked for me.
Comment 2 Ralf Habacker 2013-08-27 12:37:06 UTC
(In reply to comment #1)
> Have you tried running autoreconf? I'm pretty sure this cross-compile worked
> for me.
yes, same results. 

Further investigation shows that this seems to be a Makefile.am dependency problem because manual compiling the target works. 

> cd <buildroot>/dbus 
> make libdbus-init-win.la
  CXX      dbus-init-win.lo
  CXXLD    libdbus-init-win.la

Linking than works.
Comment 3 Simon McVittie 2013-08-27 12:58:05 UTC
Build logs with "silent rules" aren't great for this sort of thing - "make ... V=1" to see what the compiler/linker is doing.

I see what the problem is, though:

libdbus_1_la_DEPENDENCIES = $(dbus_res)

That's overwriting the dependencies completely - libdbus-1.la won't be recompiled unless the $(dbus_res) change, which they usually don't.
Comment 4 Simon McVittie 2013-08-27 12:58:36 UTC
Created attachment 84709 [details] [review]
libdbus-1.la: have proper dependencies on Windows

Assigning to libdbus_1_la_DEPENDENCIES defeats Automake's normal
dependency logic, which makes libdbus-1.la depend on all the
static libraries that will go into it (it still had a corrct dependency
on the other objects, which go through a separate variable).
This meant libdbus-init-win wasn't necessarily built first.

Use EXTRA_libdbus_1_la_DEPENDENCIES to avoid that problem.
Comment 5 Ralf Habacker 2013-08-28 17:09:09 UTC
(In reply to comment #4)
> Created attachment 84709 [details] [review] [review]
> libdbus-1.la: have proper dependencies on Windows
> 
> Assigning to libdbus_1_la_DEPENDENCIES defeats Automake's normal
> dependency logic, which makes libdbus-1.la depend on all the
> static libraries that will go into it (it still had a corrct dependency
> on the other objects, which go through a separate variable).
> This meant libdbus-init-win wasn't necessarily built first.
> 
> Use EXTRA_libdbus_1_la_DEPENDENCIES to avoid that problem.

works as expected.
Comment 6 Simon McVittie 2013-08-29 10:36:19 UTC
(In reply to comment #5)
> works as expected.

I'll assume that was a positive review... (please be clear about whether you're saying "yes, I reviewed this and it looks good" or not, our review policy relies on it).

Fixed in git, will be in 1.7.6.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.