-
Notifications
You must be signed in to change notification settings - Fork 195
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
AIX: no pkgconfig so never finds libssl.a, etc. #375
Comments
@aixtools Hi, so we don't actually officially support AIX anymore - see the Supported Platforms wiki page (I need to make sure there is a link from the new CUPS home page for this...) CUPS 2.4 actually removed a bunch of AIX-specific things (particularly for AIX 4's older shared library support) because we had nobody that could/would maintain it... The problem with simply looking for libssl is that OpenSSL also needs libcrypto - pkg-config takes care of that detail but adding a legacy autoconf check will require checking for both libraries (with libcrypto first) to ensure that the check will work (a static libssl won't automatically include libcrypto). That's not a huge problem but it makes the autoconf check code a little more complicated. WRT a PR, we'll consider it. You'll want to put it in the "openssl" check as an else clause after the PKGCONFIG check, e.g.:
|
Thanks for the pointer. I was having a hard time deciding where it should go. And thanks for the hint to look for libcrypto first. What do you actually mean by AIX v4 shared library support? The normal AIX shared library is an archive that can hold both shared and static libraries - in both 32-bit and 64-bit format (ABI). Not sure how AIX v4 is any different from what is common now (or do you mean v4 is when the current format first appeared). |
As to supporting AIX - CUPS is a pre-requisite for building OpenJDK. I think I mentioned that in the 'discussion'. Don't know why, but it is why I am going through this now. FYI. |
@aixtools What I mean is that the CUPS build system used to provide shared library support by creating |
I noticed that. The current situation is that dlopen looks first for a libfoo.a and then searches for a member (of any name), and if nothing is found searches the same directory libfoo.so. So, AIX adding support for external libfoo.so support did not become the new standard - it became an addition, and complicates (imho) mixed support (/usr/lib64 is not a default library - afaik on most systems /usr/lib64 does not exist. The simple way to support AIX is to create the libfoo.so.X and then add that as a member to libfoo.a |
Curious: why not use https://www.gnu.org/software/autoconf-archive/ax_check_openssl.html |
@aixtools Because I've found that archive to be hit-or-miss and most platforms provide pkg-config these days which greatly simplifies things. If I did use something from there I'd be copying it (the whole file) into the repository and including it, as no system has these macros installed as standard. Also, there is always the license problem - at least this macro appears to be using a BSD-style ("all permissive") license, but not all of them are so generous... |
I understand that you would use the whole thing (fyi, I found it via Python which uses the full text - m4 is not my thing). Q. Adoptium has something activated so that a PR can be put in 'Draft' status. That is probably best for the PR I opened on this, as they are just examples - to see if I could get it working. FYI: These are files with modifications (some hand made). (Re-running make DESTDIR=xxx install, for verification) - to give an impression of what I found and/or hacked-in to get it to build.
|
I built autoconf-2.71 - and this is the short list:
FYI:
|
@aixtools Can you confirm that current Github master works for you? |
I'll rebuild next week. My apologies for the delay. |
😊 working on it now. |
Starting from With this: (i.e., using the patched version):P
|
@aixtools OK, so I suspect the issue is that AIX shared libraries work more like dynamically loaded static libraries, so we need to change the definition of LINKCUPS on AIX... |
NOTE: while reading below - note the OSS management system is NOT intended as a build system. The problems there only demonstrate the kinds of issues that can occur on a contaminated AIX system, i.e., lots of none-AIX packages installed while packaging/building OSS packages. That said, I am not asking you to fix the new issues, but hope it helps that you are aware of them - and in particular, even if
Note: at the specific commit you requested:
Update:
|
@aixtools Are you able to provide the config.log or Makedefs files as well? |
Note: The packages above are ones I have built. No such information exists for any IBM (AIX) software (package.pc files).
|
No response for a year, closing. |
AIX does not have, by default,
pkgconfig
, so the else block is always going to fire.Even if
pkgconfig
is installed - it doesn't have any info on OpenSSL, so that will also fail.Having trouble counting and balancing the square brackets [], but something such as this might help:
AC_CHECK_LIB
The text was updated successfully, but these errors were encountered: