pkg-config: remove legacy include paths!

This is a breaking change for non-migrated external clients. External
users always need to use <lix/libcmd/foo.hh> type include paths now.

This is as was always planned with the include rearrangement.

Change-Id: I269be91ff9f9cc94d5d3043cf3e0bdf8db1d8edb
This commit is contained in:
Jade Lovelace
2025-01-16 00:12:57 -08:00
parent 423d8b03c8
commit bf3ebde25f
9 changed files with 7 additions and 11 deletions
+5 -3
View File
@@ -1,7 +1,7 @@
---
synopsis: "Includes are now qualified with library name"
synopsis: "Includes are now qualified with library name everywhere"
category: Development
cls: [2178]
cls: [2178, 2362]
credits: jade
---
@@ -9,9 +9,11 @@ The Lix includes have all been rearranged to be of the form `"lix/libexpr/foo.hh
This was already supported externally for a migration period, but it is now being applied to all the internal usages within Lix itself.
The goal of this change is to both clarify where a file is from and to avoid polluting global include paths with things like `config.h` that might conflict with other projects.
Lix 2.92 removes support for the old `"foo.hh"` include form either internally or externally (that is, via pkg-config for things linking to Lix).
For other details, see the release notes of Lix 2.90.0, under "Rename all the libraries" in Breaking Changes.
To fix an external project with sources in `src` which has a separate build directory (such that headers are in `../src` relative to where the compiler is running):
To fix an external project with sources in `src` which has a separate build directory (such that headers are in `../src` relative to where the compiler is running), use a checkout of Lix 2.91 to run the following:
```
lix_root=$HOME/lix
-1
View File
@@ -7,4 +7,3 @@ Description: Lix Package Manager (libcmd)
Version: @PACKAGE_VERSION@
Requires: lix-base lix-util
Libs: -L${libdir} -llixcmd
Cflags: -I${includedir}/lix/libcmd
-1
View File
@@ -7,4 +7,3 @@ Description: Lix Package Manager (libexpr)
Version: @PACKAGE_VERSION@
Requires: lix-base lix-util lix-fetchers lix-store bdw-gc
Libs: -L${libdir} -llixexpr
Cflags: -I${includedir}/lix/libexpr
-1
View File
@@ -7,4 +7,3 @@ Description: Lix Package Manager (libfetchers)
Version: @PACKAGE_VERSION@
Requires: lix-base lix-util
Libs: -L${libdir} -llixfetchers
Cflags: -I${includedir}/lix/libfetchers
-1
View File
@@ -7,4 +7,3 @@ Description: Lix Package Manager (libmain)
Version: @PACKAGE_VERSION@
Requires: lix-base lix-util
Libs: -L${libdir} -llixmain
Cflags: -I${includedir}/lix/libmain
-1
View File
@@ -7,4 +7,3 @@ Description: Lix Package Manager (libstore)
Version: @PACKAGE_VERSION@
Requires: lix-base lix-util
Libs: -L${libdir} -llixstore -llixutil
Cflags: -I${includedir}/lix/libstore
-1
View File
@@ -7,4 +7,3 @@ Description: Lix Package Manager (libutil)
Version: @PACKAGE_VERSION@
Requires: lix-base lix-util
Libs: -L${libdir} -llixutil
Cflags: -I${includedir}/lix/libutil
+1 -1
View File
@@ -5,4 +5,4 @@ includedir=@includedir@
Name: Lix base
Description: Lix Package Manager (config.hh fixup)
Version: @PACKAGE_VERSION@
Cflags: -I${includedir}/lix -I${includedir}
Cflags: -I${includedir}
+1 -1
View File
@@ -1,4 +1,4 @@
#include "config.h"
#include "lix/config.h"
#include "EXTERN.h"
#include "perl.h"