summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2023-10-31 20:26:59 -0500
committerGitHub <[email protected]>2023-10-31 20:26:59 -0500
commit1f8bb5798bb653313aa430cfd718901c17de2750 (patch)
treecd6c6a49786af01ec30162d6b09492e9013c918f
parente89cbfaf5088e69980451a78f6e54d609c862e13 (diff)
parent486e42620ca39e90371a66383aefe769f898aaab (diff)
Merge pull request #4341 from SuperSodaSea/fix/pkgconfig-patch
Check share/pkgconfig/*.pc when patching pkgconfig
-rw-r--r--xmake/modules/private/action/require/impl/actions/install.lua10
1 files changed, 6 insertions, 4 deletions
diff --git a/xmake/modules/private/action/require/impl/actions/install.lua b/xmake/modules/private/action/require/impl/actions/install.lua
index 0a0060511..f92286e3e 100644
--- a/xmake/modules/private/action/require/impl/actions/install.lua
+++ b/xmake/modules/private/action/require/impl/actions/install.lua
@@ -37,15 +37,17 @@ function _patch_pkgconfig(package)
return
end
- -- get lib/pkgconfig/*.pc file
- local pkgconfigdir = path.join(package:installdir(), "lib", "pkgconfig")
- local pcfile = os.isdir(pkgconfigdir) and find_file("*.pc", pkgconfigdir) or nil
+ -- get lib/pkgconfig/*.pc or share/pkgconfig/*.pc file
+ local libpkgconfigdir = path.join(package:installdir(), "lib", "pkgconfig")
+ local sharepkgconfigdir = path.join(package:installdir(), "share", "pkgconfig")
+ local pcfile = (os.isdir(libpkgconfigdir) and find_file("*.pc", libpkgconfigdir))
+ or (os.isdir(sharepkgconfigdir) and find_file("*.pc", sharepkgconfigdir)) or nil
if pcfile then
return
end
-- trace
- pcfile = path.join(pkgconfigdir, package:name() .. ".pc")
+ pcfile = path.join(libpkgconfigdir, package:name() .. ".pc")
vprint("patching %s ..", pcfile)
-- fetch package