Install directories differ only by case, causing problems on some filesystems
The install hierarchy of the includes has these two paths in it:
include/KF6/KSyntaxHighlighting/KSyntaxHighlighting
include/KF6/KSyntaxHighlighting/ksyntaxhighlighting
This causes problems on case-preserving, but case-insensitive filesystems, especially since the headers installed expect to include files based on case.
For example include/KF6/KSyntaxHighlighting/KSyntaxHighlighting/Definition
has this content:
#include "ksyntaxhighlighting/definition.h"
On a case-preserving, but case-insensitive file system, Definition
, and definition.h
are in the same directory and appear so at the terminal.
As a result, #including
KSyntaxHighlighting/Definition
will always issue a warning from the compiler, because only one of the two directories can be found.
Additional information:
https://en.wikipedia.org/wiki/Case_preservation
Filesystems affected include:
- NTFS
- HFS+
- APFS
- FAT32