FindIntltool.cmake GENERATED_POTFILES detection misbehaves with long build directory names
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cmake-extras (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
The GENERATED_POTFILES logic seems to break if the path to the source file is shorter than ${CMAKE_
As a test, create a CMake project using FindIntltool with the following files in the base directory (they don't need to be part of any target):
a.c
aa.c
aaa.c
aaaa.c
I have the following in po/CMakeLists.txt:
intltool_
ALL
KEYWORDS "tr" "tr:1,2" "N_"
)
And po/POTFILES.in.in contains only "@GENERATED_
I create a subdirectory "build", and run "cmake .." in it. Now the po/POTFILES.in file contains only aaa.c and aaaa.c.
If instead I use a shorter directory name for the build directory (e.g. by moving it outside of the source dir and keeping the name short), I will see more source files.
The problem appears to be in the _INTLTOOL_
I noticed this when using the Ubuntu SDK, which defaults to extremely long build directories when building for a kit.
Related branches
- CMake Extras: Pending requested
-
Diff: 104 lines (+29/-14)5 files modifiedCMakeLists.txt (+13/-0)
debian/control (+2/-1)
debian/copyright (+9/-9)
debian/install (+0/-2)
src/FindIntltool.cmake (+5/-2)
Hmm. I'm not sure if it's about the length of the paths, as much as me stupidly excluding everything that's a child of the source tree. Including the binary directory!