OK, it's a libc with no pthread_rwlock_t.
Sun, Dec 30
Dec 17 2018
Dec 13 2018
Oct 29 2018
New gpg-error.m4 detects gpgrt-config, too.
And configure supplies --libdir when it invokes gpgrt-config.
For other *.m4 (libassuan, ksba, libgcrypt, ntbtls), it is possible for them to check GPGRT_CONFIG to use gpgrt-config if any.
For npth.m4, it can do that too, with no hard dependency to libgpg-error.
Oct 26 2018
Oct 25 2018
A bit tricky, but this would be good to use gpgrt-config by gpg-error.m4.
I say "tricky", because its name is gpg-error.m4 but it configure GPGRT_CONFIG to access to GPG_ERROR_CONFIG.
It might be good idea to provide libgcrypt.pc in libgcrypt 1.8.x for forward compatibility with libgpg-error 1.33.
Well, I changed my mind. Use of new gpgrt-config requires software update to introduce gpgrt.m4 and update of configure.ac to switch gpgrt from gpg-error, in standard way.
That's too much this time. It's good to defer this change.
OK, I'll change to use gpgrt-config, along with requiring newer version of libgpg-error.
Oct 24 2018
May I suggest to use a (new) gpgrt-config instead of the current name libgpg-error-config. The long term plan is to change the name of the library.
This is the dependency graph:
Jul 16 2018
Jun 20 2018
Jun 18 2018
May 28 2018
May 25 2018
Thanks, that allowed npth to make successfully without the unsatisfied symbols.
Apparently, the check of sem_init function was not done (in config.log).
Could you please make sure to update npth/configure by npth/autogen.sh?
May 24 2018
config.log is attached.
Could you please put the config.log of npth with the patch?
The intention of change is: we need to link -lpthread and -lrt
May 23 2018
I tried with the updated patch, but I still see the same unsatisfied symbols during link. I verified that the patch was in place in configure.ac and also patched a clean version of configure.ac so that there would be only one instance of hpux in the case statement:
I realized that the test case is already there.
I'm not sure the reason why make check for npth works well on HP-UX (before the my patch). It uses npth_attr_init (hence, pthread_attr_init) in tests/t-thread.c.
Perhaps, libtool is clever enough to detect -lpthread into src/libnpth.la (dependency_libs), I suppose.
Thanks for your testing, it's near. Here is updated patch:
I think that HP-UX is just like *BSD for pthread and POSIX semaphore.
It is also good to add a test case. I will.
May 22 2018
Rebuilding npth results in three unsatisfied symbols:
Thanks for config.log of GnuPG. I think that I located the problem; While gpg-agent should be linked to -lpthread, it was not. The configure variable NPTH_LIBS in config.log doesn't have -lpthread. Thus, pthread_* are linked to the ones of stub, and it resulted the error.
May 18 2018
I have uploaded config.log. Let me know if you need any additional information/files. Thanks!
Thanks for quick feedback.
Yes, it is a build problem, which should be handled by configure + make.
Could you please upload the build log here, so that I can check it to fix configure.ac+Makefile.am?
May 17 2018
Thanks. That appears to be the exact issue. I was able to get around it with export LD_PRELOAD as indicated in the man page. Any ideas on how to address it in the make? This is what I see when I do an ldd on gpg-agent:
ENOSYS means it's linked to stub.
Somehow the build process may be wrong for the gpg-agent executable.
May 14 2018
That comes directly from pthread_attr_init - need to check what's special on HP/UX here.
Nov 16 2017
Add the tag of npth (forgotten).
Oct 11 2017
From my viewpoint, it works well. Just you don't have a permission to install the library to the directory.
Oct 10 2017
Indeed. Van is a wonderful person.
Aug 25 2017
Nice talk, just watched it.
Aug 3 2017
For me, it works. Please re-open if you still have any issue for NetBSD.
Jun 23 2017
1.4 has build fixes for NetBSD. Thus I _assume_ this bug has been fixed.
Jun 14 2017
May 23 2017
Fixed in npth 1.4.