Re: Review Request 115099: Add function ecm_generate_pri_file() to provide qmake support. Make ECMSetupVersion set PROJECT_VERSION_*
On Jan. 21, 2014, 11:02 p.m., Alex Merry wrote: modules/ECMGeneratePriFile.cmake, lines 6-7 https://git.reviewboard.kde.org/r/115099/diff/1/?file=234571#file234571line6 It also wants PROJECT_VERSION_(MAJOR|MINOR|PATCH) (unless those are option in the pri file) No, these are extracted from PROJECT_VERSION_STRING, in lines 55-57. On Jan. 21, 2014, 11:02 p.m., Alex Merry wrote: modules/ECMGeneratePriFile.cmake, line 13 https://git.reviewboard.kde.org/r/115099/diff/1/?file=234571#file234571line13 I feel DEPS should really be a list, but CMake apparently doesn't have a join function, for some bizarre reason (although you probably could do a string(REPLACE) of semicolons by spaces). I don't really mind either way, and this way works. Not sure what to do, then :) - David --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/#review47948 --- On Jan. 18, 2014, 11:02 a.m., David Faure wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/ --- (Updated Jan. 18, 2014, 11:02 a.m.) Review request for Build System, Extra Cmake Modules and KDE Frameworks. Repository: extra-cmake-modules Description --- Two commits: 1) Make ECMSetupVersion set PROJECT_VERSION_* This makes it easier for other functions to access the project version, for instance my upcoming ECM_GENERATE_PRI_FILE() 2) This file provides the function ecm_generate_pri_file(). ECM_GENERATE_PRI_FILE() creates a .pri file for a library so that qmake-based apps can more easily use the library. It also sets ECM_MKSPECS_INSTALL_DIR as the directory to install the .pri file to. Diffs - modules/ECMGeneratePriFile.cmake PRE-CREATION modules/ECMSetupVersion.cmake 6c3a9959be31ee186cf173bb28585dfc52860a55 Diff: https://git.reviewboard.kde.org/r/115099/diff/ Testing --- Adding these lines to kwidgetaddons/src/CMakeLists.txt: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KWidgetsAddons LIB_NAME KF5WidgetsAddons DEPS widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And these to kjobwidgets: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KJobWidgets LIB_NAME KF5JobWidgets DEPS KCoreAddons widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And I added a qmake_test subdir in kf5umbrella with qmake_test.pro saying: QT += KArchive KJobWidgets KWidgetsAddons SOURCES += main.cpp - links to all the mentionned libs, including KCoreAddons (via KJobWidgets). This requires $QMAKEPATH set to the kf5 install prefix. Thanks, David Faure ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Review Request 115099: Add function ecm_generate_pri_file() to provide qmake support. Make ECMSetupVersion set PROJECT_VERSION_*
On Jan. 18, 2014, 2:52 p.m., Alex Merry wrote: modules/ECMGeneratePriFile.cmake, line 12 https://git.reviewboard.kde.org/r/115099/diff/1/?file=234571#file234571line12 What if this was TARGET target and you extracted the interface defines etc. from that target? That, at least, was the idea I had for generating pkg-config files. I think this is what I was discussing with Stephen on kde-buildsystem, and it doesn't work when these thing contain generator expressions. Maybe not common for definitions, but at least for include dirs it never worked. We need clean values for qmake, no generator expressions. But if you see a way to make it work, I'm all for it ;) - David --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/#review47642 --- On Jan. 18, 2014, 11:02 a.m., David Faure wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/ --- (Updated Jan. 18, 2014, 11:02 a.m.) Review request for Build System, Extra Cmake Modules and KDE Frameworks. Repository: extra-cmake-modules Description --- Two commits: 1) Make ECMSetupVersion set PROJECT_VERSION_* This makes it easier for other functions to access the project version, for instance my upcoming ECM_GENERATE_PRI_FILE() 2) This file provides the function ecm_generate_pri_file(). ECM_GENERATE_PRI_FILE() creates a .pri file for a library so that qmake-based apps can more easily use the library. It also sets ECM_MKSPECS_INSTALL_DIR as the directory to install the .pri file to. Diffs - modules/ECMGeneratePriFile.cmake PRE-CREATION modules/ECMSetupVersion.cmake 6c3a9959be31ee186cf173bb28585dfc52860a55 Diff: https://git.reviewboard.kde.org/r/115099/diff/ Testing --- Adding these lines to kwidgetaddons/src/CMakeLists.txt: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KWidgetsAddons LIB_NAME KF5WidgetsAddons DEPS widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And these to kjobwidgets: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KJobWidgets LIB_NAME KF5JobWidgets DEPS KCoreAddons widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And I added a qmake_test subdir in kf5umbrella with qmake_test.pro saying: QT += KArchive KJobWidgets KWidgetsAddons SOURCES += main.cpp - links to all the mentionned libs, including KCoreAddons (via KJobWidgets). This requires $QMAKEPATH set to the kf5 install prefix. Thanks, David Faure ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Review Request 115099: Add function ecm_generate_pri_file() to provide qmake support. Make ECMSetupVersion set PROJECT_VERSION_*
On Jan. 18, 2014, 2:52 p.m., Alex Merry wrote: modules/ECMGeneratePriFile.cmake, line 12 https://git.reviewboard.kde.org/r/115099/diff/1/?file=234571#file234571line12 What if this was TARGET target and you extracted the interface defines etc. from that target? That, at least, was the idea I had for generating pkg-config files. David Faure wrote: I think this is what I was discussing with Stephen on kde-buildsystem, and it doesn't work when these thing contain generator expressions. Maybe not common for definitions, but at least for include dirs it never worked. We need clean values for qmake, no generator expressions. But if you see a way to make it work, I'm all for it ;) Ah, I see. What we actually want to do is evaluate the generator expressions, in the same way that install(EXPORT) does, but I'm guessing there is probably not a way to do that. - Alex --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/#review47642 --- On Jan. 18, 2014, 11:02 a.m., David Faure wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/ --- (Updated Jan. 18, 2014, 11:02 a.m.) Review request for Build System, Extra Cmake Modules and KDE Frameworks. Repository: extra-cmake-modules Description --- Two commits: 1) Make ECMSetupVersion set PROJECT_VERSION_* This makes it easier for other functions to access the project version, for instance my upcoming ECM_GENERATE_PRI_FILE() 2) This file provides the function ecm_generate_pri_file(). ECM_GENERATE_PRI_FILE() creates a .pri file for a library so that qmake-based apps can more easily use the library. It also sets ECM_MKSPECS_INSTALL_DIR as the directory to install the .pri file to. Diffs - modules/ECMGeneratePriFile.cmake PRE-CREATION modules/ECMSetupVersion.cmake 6c3a9959be31ee186cf173bb28585dfc52860a55 Diff: https://git.reviewboard.kde.org/r/115099/diff/ Testing --- Adding these lines to kwidgetaddons/src/CMakeLists.txt: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KWidgetsAddons LIB_NAME KF5WidgetsAddons DEPS widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And these to kjobwidgets: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KJobWidgets LIB_NAME KF5JobWidgets DEPS KCoreAddons widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And I added a qmake_test subdir in kf5umbrella with qmake_test.pro saying: QT += KArchive KJobWidgets KWidgetsAddons SOURCES += main.cpp - links to all the mentionned libs, including KCoreAddons (via KJobWidgets). This requires $QMAKEPATH set to the kf5 install prefix. Thanks, David Faure ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Review Request 115099: Add function ecm_generate_pri_file() to provide qmake support. Make ECMSetupVersion set PROJECT_VERSION_*
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/ --- Review request for Build System, Extra Cmake Modules and KDE Frameworks. Repository: extra-cmake-modules Description --- Two commits: 1) Make ECMSetupVersion set PROJECT_VERSION_* This makes it easier for other functions to access the project version, for instance my upcoming ECM_GENERATE_PRI_FILE() 2) This file provides the function ecm_generate_pri_file(). ECM_GENERATE_PRI_FILE() creates a .pri file for a library so that qmake-based apps can more easily use the library. It also sets ECM_MKSPECS_INSTALL_DIR as the directory to install the .pri file to. Diffs - modules/ECMGeneratePriFile.cmake PRE-CREATION modules/ECMSetupVersion.cmake 6c3a9959be31ee186cf173bb28585dfc52860a55 Diff: https://git.reviewboard.kde.org/r/115099/diff/ Testing --- Adding these lines to kwidgetaddons/src/CMakeLists.txt: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KWidgetsAddons LIB_NAME KF5WidgetsAddons DEPS widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And these to kjobwidgets: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KJobWidgets LIB_NAME KF5JobWidgets DEPS KCoreAddons widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And I added a qmake_test subdir in kf5umbrella with qmake_test.pro saying: QT += KArchive KJobWidgets KWidgetsAddons SOURCES += main.cpp - links to all the mentionned libs, including KCoreAddons (via KJobWidgets). This requires $QMAKEPATH set to the kf5 install prefix. Thanks, David Faure ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Review Request 115099: Add function ecm_generate_pri_file() to provide qmake support. Make ECMSetupVersion set PROJECT_VERSION_*
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/#review47642 --- modules/ECMGeneratePriFile.cmake https://git.reviewboard.kde.org/r/115099/#comment33808 What if this was TARGET target and you extracted the interface defines etc. from that target? That, at least, was the idea I had for generating pkg-config files. - Alex Merry On Jan. 18, 2014, 11:02 a.m., David Faure wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115099/ --- (Updated Jan. 18, 2014, 11:02 a.m.) Review request for Build System, Extra Cmake Modules and KDE Frameworks. Repository: extra-cmake-modules Description --- Two commits: 1) Make ECMSetupVersion set PROJECT_VERSION_* This makes it easier for other functions to access the project version, for instance my upcoming ECM_GENERATE_PRI_FILE() 2) This file provides the function ecm_generate_pri_file(). ECM_GENERATE_PRI_FILE() creates a .pri file for a library so that qmake-based apps can more easily use the library. It also sets ECM_MKSPECS_INSTALL_DIR as the directory to install the .pri file to. Diffs - modules/ECMGeneratePriFile.cmake PRE-CREATION modules/ECMSetupVersion.cmake 6c3a9959be31ee186cf173bb28585dfc52860a55 Diff: https://git.reviewboard.kde.org/r/115099/diff/ Testing --- Adding these lines to kwidgetaddons/src/CMakeLists.txt: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KWidgetsAddons LIB_NAME KF5WidgetsAddons DEPS widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And these to kjobwidgets: include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME KJobWidgets LIB_NAME KF5JobWidgets DEPS KCoreAddons widgets FILENAME_VAR PRI_FILENAME) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR}) And I added a qmake_test subdir in kf5umbrella with qmake_test.pro saying: QT += KArchive KJobWidgets KWidgetsAddons SOURCES += main.cpp - links to all the mentionned libs, including KCoreAddons (via KJobWidgets). This requires $QMAKEPATH set to the kf5 install prefix. Thanks, David Faure ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel