Am 05.06.20 um 19:19 schrieb James Bottomley:
> On Fri, 2020-06-05 at 09:28 -0700, James Bottomley wrote:
>> On Fri, 2020-06-05 at 13:31 +0200, Arne Schwabe wrote:
>> [...]
>>> Somehow this turns into a autoconf/automake nightmare:
>>
>> Heh, got to say autoconf is a bit of a nightmare for its more
>> esoteric features because the docs usually don't cover them and you
>> end up having to take the opinion of the internet, which is somewhat,
>> er, diverse.
>>
>>> [testengine_section]
>>> dynamic_path        = $ENV::srcdir/.libs/libtestengine`test .odule
>>> = .yes SHREXTSHREXT echo .so || echo .dylib`
>>>
>>> is what I end up in the openssl.cnf
>>>
>>> The generated Makefile already has:
>>>
>>> $(builddir)/%.cnf: $(srcdir)/%.cnf.in
>>>     sed 's/SHREXT/`test .$module = .yes && echo .so || echo
>>> .dylib`/' < $< $@
>>
>> Hm, so SHREXT is dynamic on MAC platforms.  If I replace the single
>> quote with double, that should allow the shell expansion.
> 
> The internet thinks the fix is to add eval to the hunk in configure.ac:
> 
> eval shrext=$shrext_cmds
> AC_SUBST([shrext])
> 
> I tried it out and it seems to work.

[testengine_section]
dynamic_path    = $ENV::srcdir/.libs/libtestengine.dylib

Yes, works here.

> 
>>> Maybe instead of using that use magic useing two different section
>>> like testengineso and testenginedylib and then makeing the engine
>>> name in the script dynamic?
>>
>> I'll investigate, but openssl has a fairly tight binding between the
>> name of the dynamic object and the name of the engine.  It's very
>> difficult (but not I perhaps impossible) to have an engine name
>> different from the DSO name.
>>
>>> Also for some reason the makefile still builds it now as .so
>>> instead
>>> of .dylib
>>
>> That's likely a libtool flag issue.  If you update this in
>> Makefile.am:
>>
>> libtestengine_la_LDFLAGS = -rpath /lib -avoid-version -module -shared
>> -export-dynamic
>>
>> does it build a .dylib?
> 
> So if this works, with the eval above and full path substitution in the
> openssl.cnf.in I think I might have a solution.

Unfortunately not. Still creates the .so file.  If everything fails we
might just do a if mac then cp from .so to .dylib as part of the test
run. It is ugly but might be better than to wait forever on this patch.

Arne

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to