Review Request 119798: Generating PkgConig files from ECM

Alex Merry alex.merry at kde.org
Mon Aug 18 17:36:58 UTC 2014



> On Aug. 15, 2014, 8:20 a.m., Alex Merry wrote:
> > modules/ECMGeneratePkgConfigFile.cmake, lines 25-26
> > <https://git.reviewboard.kde.org/r/119798/diff/1/?file=305638#file305638line25>
> >
> >     Why not have both be KF5Archive as the standard? And have LIB_NAME default to BASE_NAME (or vice versa)?
> >     
> >     After all, "KF5Archive" is what you would search for in CMake.
> 
> Aleix Pol Gonzalez wrote:
>     It's how it's done for QMake (I copy&pasted it) thought it would be good to have the same API on both.

The QMake one was done that way to match the style of other Qt modules. There's no such constraint for pkgconfig files.


> On Aug. 15, 2014, 8:20 a.m., Alex Merry wrote:
> > modules/ECMGeneratePkgConfigFile.cmake, line 47
> > <https://git.reviewboard.kde.org/r/119798/diff/1/?file=305638#file305638line47>
> >
> >     This belongs in KDEInstallDirs.cmake, not here (as CMAKE_INSTALL_PKGCONFIGDIR, ideally). Projects that don't use KDEInstallDirs can create their own variable.
> >     
> >     Also, pkconfig -> pkgconfig.
> 
> Aleix Pol Gonzalez wrote:
>     I'm unsure about that, first ECM_MKSPECS_INSTALL_DIR is declared the same way (again, copy&paste) then I understand that we can override the variable from KDEInstallDirs, but we do want that the module that uses the variable actually declares it, right?

Yeah, I don't like that about the QMake module. The thing is, this module *doesn't* use the variable - it sets it, and then expects the caller to use it.


- Alex


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/119798/#review64585
-----------------------------------------------------------


On Aug. 18, 2014, 1:59 p.m., Aleix Pol Gonzalez wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/119798/
> -----------------------------------------------------------
> 
> (Updated Aug. 18, 2014, 1:59 p.m.)
> 
> 
> Review request for Build System, KDE Frameworks and Harald Sitter.
> 
> 
> Repository: extra-cmake-modules
> 
> 
> Description
> -------
> 
> So we decided we wanted those .pc files, so I created a small script that generates one, I haven't used pc in the past, so feedback is welcome.
> 
> 
> Diffs
> -----
> 
>   modules/ECMGeneratePkgConfigFile.cmake PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/119798/diff/
> 
> 
> Testing
> -------
> 
> I added it in KCoreAddons, this is the patch:
> diff --git src/lib/CMakeLists.txt src/lib/CMakeLists.txt
> index 26eb5a1..3a07d1c 100644
> --- src/lib/CMakeLists.txt
> +++ src/lib/CMakeLists.txt
> @@ -188,4 +188,6 @@ install(FILES
>  
>  include(ECMGeneratePriFile)
>  ecm_generate_pri_file(BASE_NAME KCoreAddons LIB_NAME KF5CoreAddons DEPS "core" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KF5_INCLUDE_INSTALL_DIR}/KCoreAddons)
> +ecm_generate_pkgconfig_file(BASE_NAME KCoreAddons LIB_NAME KF5CoreAddons DEPS Qt5Core FILENAME_VAR PC_FILENAME INCLUDE_INSTALL_DIR ${KF5_INCLUDE_INSTALL_DIR}/KCoreAddons)
> +install(FILES ${PC_FILENAME} DESTINATION ${ECM_PKGCONFIG_INSTALL_DIR})
>  install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})
> 
> This is the result, on my system:
> 
> Name: KF5CoreAddons
> Version: 5.1.0
> Libs: -L/home/kde-devel/kde5/lib64 -l/home/kde-devel/kde5/lib64
> Cflags: -I/home/kde-devel/kde5/include/KF5/KCoreAddons 
> Requires: Qt5Core
> 
> 
> Thanks,
> 
> Aleix Pol Gonzalez
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-buildsystem/attachments/20140818/75666d37/attachment-0001.html>


More information about the Kde-buildsystem mailing list