Skip to content

ecm_process_po_files_as_qm: use own subdir ECMPoQm/ for build artifacts

Currently projects using ecm_install_po_files_as_qm(po) end up with the respective build dir countpart being cluttered with lots of subfolders, for all the language codes. Which makes navigating in the build dirs harder, also comes with a minimal risk of name clashes.

Placing all the build artifacts into a dedicated tool-namespaced subfolder avoids that. And having all related files in a separate dir might also improve inspecting the generation of these translation artifacts.

@aacid @ltoscano

Before (by example of kjobwidgets):

.../build/kf6/frameworks/kjobwidgets$ ls
af           CMakeCache.txt              en     he                         KF6JobWidgetsConfigVersion.cmake  ms         ru                 tg
ar           CMakeDoxyfile.in            en_GB  hi                         KF6JobWidgetsQchTargets.cmake     nb         se                 th
as           CMakeDoxygenDefaults.cmake  eo     hne                        kk                                nds        si                 tr
autotests    CMakeFiles                  es     hr                         km                                ne         sk                 tt
az           cmake_install.cmake         et     hsb                        kn                                nl         sl                 ug
be           compile_commands.json       eu     hu                         ko                                nn         sq                 uk
be@latin     crh                         fa     hy                         ku                                oc         sr                 uz
bg           cs                          fi     ia                         lb                                or         src                uz@cyrillic
bin          csb                         fr     id                         lt                                pa         sr@ijekavian       vi
bn           CTestTestfile.cmake         fy     install_manifest.txt       lv                                pl         sr@ijekavianlatin  wa
bn_IN        cy                          ga     is                         mai                               prefix.sh  sr@latin           xh
br           da                          gd     it                         Makefile                          ps         sv                 zh_CN
bs           de                          gl     ja                         mk                                pt         ta                 zh_HK
ca           ecm_uninstall.cmake         gu     ka                         ml                                pt_BR      te                 zh_TW
ca@valencia  el                          ha     KF6JobWidgetsConfig.cmake  mr                                ro         tests

After:

.../build/kf6/frameworks/kjobwidgets$ ls
autotests       CMakeDoxyfile.in            cmake_install.cmake    ECMPoQm                    KF6JobWidgetsConfigVersion.cmake  prefix.sh
bin             CMakeDoxygenDefaults.cmake  compile_commands.json  ecm_uninstall.cmake        KF6JobWidgetsQchTargets.cmake     src
CMakeCache.txt  CMakeFiles                  CTestTestfile.cmake    KF6JobWidgetsConfig.cmake  Makefile                          tests

Merge request reports