GNU bug report logs - #68179
automake-1.16j on OpenBSD

Previous Next

Package: automake;

Reported by: Bruno Haible <bruno <at> clisp.org>

Date: Sun, 31 Dec 2023 16:02:01 UTC

Severity: normal

Full log


Message #32 received at 68179 <at> debbugs.gnu.org (full text, mbox):

From: Bogdan <bogdro_rep <at> gmx.us>
To: Bruno Haible <bruno <at> clisp.org>, 68179 <at> debbugs.gnu.org
Subject: Re: [bug#68179] Re: automake-1.16j on OpenBSD
Date: Thu, 22 Feb 2024 22:08:35 +0100
[Message part 1 (text/plain, inline)]
Bruno Haible <bruno <at> clisp.org>, 2024-02-20 12:44:
> Bogdan wrote:
>>    Right. And, as I suspected, nothing in any LIBS, LD*, no libobjc found.
>>    Does it work if you put
>>
>> AC_LANG([Objective C])
>>
>>    somewhere between the lines
>>
>> 	cat >> configure.ac << 'END'
>>
>> and the first
>>
>> 	END
>>
>> following it (i.e., in the 'configure.ac' file) in the test?
>
> No: With this added configure.ac line (before AC_OUTPUT), the
> two tests t/objcxx-minidemo.sh and t/objcxx-deps.sh still fail.
>
>>    If not, do you know any function name that we could use in
>> AC_CHECK_LIB to check for libobjc?


[...]


> ======================================================================
> produces link errors w.r.t. the symbols
>    objc_autoreleasePoolPush
>    objc_autoreleasePoolPop
>    __objc_exec_class
> Is one of them suitable for testing? It depends on the ABI. Looking at
> https://opensource.apple.com/source/objc4/objc4-706/runtime/objc-abi.h.auto.html
> it seems better to choose one of the symbols
>    _objcInit
>    objc_getProperty
>    objc_setProperty
>    objc_setProperty_atomic
>    objc_setProperty_nonatomic
>    ...
>    objc_copyStruct
>    objc_copyCppObjectAtomic
>    _objc_empty_cache
>    ...
>
> But wait! The name of the library 'libobjc' is not standardized either.
>
> I would try to just compile a simple Objective-C++ program and see whether that
> works or not. Such as:


That's what I would expect from Autoconf...
[...]


> =======================================================================
> Missing symbols with clang on OpenBSD:
>    objc_msg_lookup_sender
>    __objc_exec_class
> Missing symbols with clang on Ubuntu:
>    objc_msg_lookup
>    __objc_exec_class


[...]

 Assuming that the library is named "libobjc", I'm attaching a patch
that searches for the above symbols in the library. The tests worked
for me without this, and work after. Feel free to add more rows if the
library name is different.

Gathering the other thread:

> So, in summary, I suggest to use the option '-x' instead of
'--verbose'.
> It makes the t/strip2.sh test succeed on OpenBSD. Then you can
remove the comment "This test needs GNU binutils strip.".


Patch attached.

--
Regards - Bogdan ('bogdro') D.                 (GNU/Linux & FreeDOS)
X86 assembly (DOS, GNU/Linux):    http://bogdro.evai.pl/index-en.php
Soft(EN): http://bogdro.evai.pl/soft  http://bogdro.evai.pl/soft4asm
www.Xiph.org  www.TorProject.org  www.LibreOffice.org  www.GnuPG.org
[automake-openbsd-objc-mail.diff (text/x-patch, attachment)]
[automake-strip-openbsd-mail.diff (text/x-patch, attachment)]

This bug report was last modified 1 year and 18 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.