In the frameworks branch of kdelibs, cmake is not creating the moc files in
kdewidgets/ anymore.
Testcase: build kdelibs-frameworks (qt4, full build) from scratch, or just
delete the moc files in your existing build.
Error message:
[100%] Automoc for target kdewidgets
[100%] Built target kdewidgets_automoc
[100%] Generating kdewidgets.cpp
[100%] Building CXX object kdewidgets/CMakeFiles/kdewidgets.dir/kdewidgets.cpp.o
/d/kde/build/5/kdelibs-frameworks/kdewidgets/kdewidgets.cpp:2584:71: fatal
error: /d/kde/build/5/kdelibs-frameworks/kdewidgets/kdewidgets.moc: No such
file or directory
CMakeLists.txt extract:
# get the name of the generated wrapper script (which sets up LD_LIBRARY_PATH)
get_target_property(MAKEKDEWIDGETS_EXECUTABLE makekdewidgets WRAPPER_SCRIPT)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o
${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
${CMAKE_CURRENT_SOURCE_DIR}/kde.widgets
MAIN_DEPENDENCY kde.widgets DEPENDS makekdewidgets)
set(kdewidgets_PART_SRCS
classpreviews.cpp
${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
)
qt4_generate_moc(${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.moc)
Possible fix:
adding the moc file for the list of sources, to force it to be generated,
seems to work. Shall I do that?
--- a/kdewidgets/CMakeLists.txt
+++ b/kdewidgets/CMakeLists.txt
@@ -44,6 +44,7 @@ if(QT_QTDESIGNER_FOUND)
set(kdewidgets_PART_SRCS
classpreviews.cpp
${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
+ ${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.moc
)
qt4_generate_moc(${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.cpp
${CMAKE_CURRENT_BINARY_DIR}/kdewidgets.moc)
--
David Faure, [email protected], http://www.davidfaure.fr
Sponsored by Nokia to work on KDE, incl. KDE Frameworks 5
_______________________________________________
Kde-buildsystem mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/kde-buildsystem