-
Notifications
You must be signed in to change notification settings - Fork 243
Exclude multilib directories in pcre2-config #859
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
An alternative to this PR would be to consider removing |
|
I did a quick bit of research. There are many hits on GitHub for Debian has 11000 packages matching the package name In 2025, we probably wouldn't create a new config script, but given that it exists, I think |
| libS=-L@libdir@ | ||
| fi | ||
| case "@libdir@" in | ||
| /usr/lib|/usr/lib32|/usr/lib64|/usr/lib/*-gnu*|/lib|/lib32|/lib64|/lib/*-gnu*) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is very platform/build specific so IMHO having people patching these on their own version is probably for the best.
The solution is very Linux specific and doesn't even cover ALL, because the failed attempt on standardizing these with FHS failed as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you aware of distros that have paths not covered by this? It's likely to work nearly everywhere, and save a patch for perhaps all distros in practice
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NIX is one that is also very popular, my main concern though is on how this interacts with *NIX (ex: Solaris or AIX have paths that differ from this, although it might be also argued that this is still an improvement).
BTW, Debian (and all its derivatives, including Ubuntu) have TWO possible paths for "non system libraries" depending on the compiler used and if it supports multi architectures, and while they are both likely covered in the list, at least for common architectures, it can be also argued that it was more obvious from the previous version that we just aim for the bare minimum and indeed encouraged them to patch it to what was required for their platform.
BTW, sorry that are making this comment late, but I did post something in this line before and GitHub UI ate it :(
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No problem at all, thank you for commenting.
I think for Nix, pcre2-config simply shouldn't be packaged at all.
For AIX & Solaris, we could add support too, I suppose. No-one has asked about it, and I don't know if who is distributing or patching PCRE2 on those platforms.
It appears that for Solaris, we'd need to add patterns matching /usr/lib/64, /usr/lib/amd64, and /usr/lib/sparcv9. Using /usr/lib/*64 and /usr/lib/sparc* should work. Docs: https://docs.oracle.com/cd/E53394_01/html/E61689/dev-env-2.html
For AIX some system-provided 64 bit libs go in /usr/lib/ppc64 apparently?
This assumes though that someone is going to install PCRE2 in those locations, which is doubtful on those platforms, where PCRE2 is not a system-provided component (as it is on Linux). I would expect Solaris or AIX software to bundle a private copy of PCRE2, or put a shared copy in /opt/ or /usr/local or something else instead. Surely no-one needs PCRE2 in /usr/lib on UNIX?
I've noticed that many Linux distributions carry a patch to disable this block of code in pcre2-config.
I believe that few people actually use this script. However, if any downstream distributors are going to the trouble of including a patch, it's probably better to just accept that patch.