libgcrypt-config with +universal

René J.V. Bertin rjvbertin at
Fri May 8 01:21:16 PDT 2015

On Thursday May 07 2015 21:20:30 Ryan Schmidt wrote:

>> port:libgcrypt uses muniversal, so I'm guessing it ought to be only a question of copying the right libgcrypt-config to the combined destroot, no?
>That's not how muniversal works. It merges the files produced for each arch. Looks like someone already noticed that the merge would fail because of this difference in host, and has chosen in the case of a universal build to replace it with "${os.arch}" (of the build machine) which would be either "i386" or "powerpc".
>If we want it to print a value based on the machine on which it's currently running then we would have to modify the code of libgcrypt-config to do that.

Misunderstanding: what I had in mind was to "replace it with [a version of] ${os.arch} (of the build machine) which would be either [x86_64 or] i386 or".
Which, incidentally, is "to modify the code of libgcrypt-config" in my book ;)

>I imagine the developer of libgcrypt will tell you of course host is used, else they wouldn't have provided an option in libgcrypt-config to find it. I'm sure it is used when cross compiling or on systems other than OS X.

If libgcrypt works by loading parts (of itself) dynamically at runtime, it would be reasonable to print the kind of warning I saw when a mismatch is detected at build time.
The best approach would probably be to teach the libgcrypt build system of universal binaries, and come up with an appropriate solution. That's something we can leave to the port maintainer and the libgcypt developers, IMHO.


More information about the macports-dev mailing list