[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#846266: marked as done (solid: FTBFS on mipsel and m68k - src/solid/predicate_parser.c: No such file or directory)



Your message dated Wed, 30 Nov 2016 19:41:40 +0000
with message-id <E1cCAlA-0006Dy-QH@fasolo.debian.org>
and subject line Bug#846266: fixed in solid 5.28.0-2
has caused the Debian Bug report #846266,
regarding solid: FTBFS on mipsel and m68k - src/solid/predicate_parser.c: No such file or directory
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
846266: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=846266
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Source: solid
Version: 5.28.0-1
Severity: serious
Tags: patch

Hi,

So I've had a look at the mips FTBFS, and while I have not been able to
reproduce it there does seem to be a parallel build race going on with
the bison/flex parser generation.

In src/solid/CMakeLists.txt, the parser is generated using bison_target
which uses add_custom_command under the hood. The output file is then
added to the list of sources creating a file-level dependency from the
KF5Solid target to the bison/flex generation command. However, the list
of sources is later used as part of the KF5Solid_static target. Since
file-level dependencies cannot cross between targets, the bison
generation happens twice completely independently as part of the two
targets. If you are very unlucky, the generation in one target can
happen at the same time as the compilation of the parser in the other
target causing a collision.

The attached patch should fix that by putting the generation in a
separate target and manually adding a dependency on it. This forces the
parser to be generated before anything is compiled.

As a side node, there seems to be a bug in CMake 3.7.0 which causes
bison targets to be remade repeatedly, but it looks like it'll be fixed
in 3.7.1.

Thanks,
James
--- a/src/solid/CMakeLists.txt
+++ b/src/solid/CMakeLists.txt
@@ -9,6 +9,7 @@ endif()
 set(solid_LIB_SRCS ${solid_LIB_SRCS} ${solid_QM_LOADER})
 
 add_library(KF5Solid  ${solid_LIB_SRCS})
+add_dependencies(KF5Solid SolidParserTarget)
 target_include_directories(KF5Solid PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR};${CMAKE_CURRENT_SOURCE_DIR}/..;${CMAKE_CURRENT_BINARY_DIR}/..>")
 generate_export_header(KF5Solid BASE_NAME Solid)
 add_library(KF5::Solid ALIAS KF5Solid)
@@ -87,6 +88,7 @@ install(TARGETS KF5Solid EXPORT KF5SolidTargets ${KF5_INSTALL_TARGETS_DEFAULT_AR
 ########### static lib for tests  ###############
 
 add_library(KF5Solid_static STATIC ${solid_LIB_SRCS})
+add_dependencies(KF5Solid_static SolidParserTarget)
 set_target_properties(KF5Solid_static PROPERTIES COMPILE_FLAGS -DSOLID_STATIC_DEFINE=1)
 
 target_link_libraries(KF5Solid_static PUBLIC Qt5::Core)
diff --git a/src/solid/devices/CMakeLists.txt b/src/solid/devices/CMakeLists.txt
index b841b54..a020825 100644
--- a/src/solid/devices/CMakeLists.txt
+++ b/src/solid/devices/CMakeLists.txt
@@ -90,6 +90,7 @@ flex_target(SolidLexer
 )
 add_flex_bison_dependency(SolidLexer SolidParser)
 list(APPEND solid_LIB_SRCS ${BISON_SolidParser_OUTPUTS} ${FLEX_SolidLexer_OUTPUTS})
+add_custom_target(SolidParserTarget DEPENDS ${BISON_SolidParser_OUTPUTS} ${FLEX_SolidLexer_OUTPUTS})
 
 include(devices/backends/fakehw/CMakeLists.txt)
 

Attachment: signature.asc
Description: OpenPGP digital signature


--- End Message ---
--- Begin Message ---
Source: solid
Source-Version: 5.28.0-2

We believe that the bug you reported is fixed in the latest version of
solid, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 846266@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Maximiliano Curia <maxy@debian.org> (supplier of updated solid package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Wed, 30 Nov 2016 15:57:09 +0100
Source: solid
Binary: libkf5solid-dev libkf5solid5 libkf5solid5-data libkf5solid-bin qtdeclarative5-kf5solid qml-module-org-kde-solid
Architecture: source
Version: 5.28.0-2
Distribution: unstable
Urgency: medium
Maintainer: Debian/Kubuntu Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Changed-By: Maximiliano Curia <maxy@debian.org>
Description:
 libkf5solid-bin - Qt library to query and control hardware
 libkf5solid-dev - Qt library to query and control hardware
 libkf5solid5 - Qt library to query and control hardware
 libkf5solid5-data - Qt library to query and control hardware
 qml-module-org-kde-solid - Qt library to query and control hardware plugin
 qtdeclarative5-kf5solid - transitional package to renamed qml-module-org-kde-solid
Closes: 846266
Changes:
 solid (5.28.0-2) unstable; urgency=medium
 .
   * Add patch: fix-FTBFS-on-mipsel-and-m68k-src-solid-predicate_parser.c.patch.
     Thanks to James Cowgill for the patch (thanks a lot!!) (Closes: 846266)
Checksums-Sha1:
 491e98d5763e00a5bb33317a5f9758d0d2d795b8 2609 solid_5.28.0-2.dsc
 d46166de3c6d27f42d2a06b164861c3dfca74a33 9648 solid_5.28.0-2.debian.tar.xz
Checksums-Sha256:
 5237be2d2e1569f50cf7482de5e66c8eec4610d7979ee0f70fb783d387cf1ce7 2609 solid_5.28.0-2.dsc
 d270f5f47e48560124dd77e9ebab1886b055ade52b52bc4a8913959787c3edde 9648 solid_5.28.0-2.debian.tar.xz
Files:
 bcb3b3dfb1f2360197208ff3079e7502 2609 libs optional solid_5.28.0-2.dsc
 2be7a5c1544b4f2d1d5e7c810959f675 9648 libs optional solid_5.28.0-2.debian.tar.xz

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE+JIdOnQEyG4RNSIVxxl2mbKbIyoFAlg+8AMACgkQxxl2mbKb
IyoTSBAAltYGkC7lpLSKvclvCQsM2OPG7g7S+zRLtPbcb2CjCuVWzJRt95m7Me11
WEgmeyVbAL3Dq2Vusx2fOaQZ4nXogLGFg6ga2LomPCC3RFB63GHAeUiwIhAD8Yxc
PWWnmcW55IKvcpZ0EFxXVMSzdxhJouJ2bNYPDwfOlQvB2kz+YkFTaQeLSB9LV5pQ
uGGWOusdQyiGSuJE5DvJswd+gDfrx4hrNL4MGJyDLaMFPrJD8RBjTvHAf7C85Q3y
5xi74LDDl3dCGb1qr7oelsd0zkTNIdtBXUWDwddgYFA2e/r1T52YbT9488GiZXln
y57ahT9KWGEMb01KyfSptwN7Y664xOtwIZQH9NUY7qM8/lrlPfUNNA/Gxt6x0ner
dXhDRb0/3DHSvIrDPvtF+Kvc9IWjEg0yJsTUcodrOBNAKMLgSdyuBBUDV6fa7PhB
/0fEcPQXKUGwnESAszbuxLvItGdUJhS5ugExJRBB10Oe3q8w12aIiEKUra5RlCad
8uSsPRha4BuAhSAQm2ufr4mR62yRNUhkZ2E+Vv/KqRnbgIB1dzaZyd90jtt1ydMr
RmkM+kx5/h8mXUpII0r5sGgNea3S/Eepg1xzEmMm8hi3Y9FkcZgDTT6i1KUidHEe
PYYWsl2Xw+w7ARb0PXTbUYFNicQ8U8L/VYnpSoMOUulHn/iUtUg=
=NJEN
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: