bug#67539: GNU Automake 1.16.5 FAILS one test objc-megademo
Closing this since there's nothing left to do on the automake side. (Someone new volunteered to take over libtool, BTW, but I see no changes in the maintainers file as yet. Not sure where that stands.) --best, karl.
bug#67539: GNU Automake 1.16.5 FAILS one test objc-megademo
partially related to how Automake is calling libtool from the build rules (it is missing the --tag option), I added the tags to automake as previously posted here. (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=67539) no tag defined for Objective C[1] (presumably it would be --tag=OBJC) ... "If [libtool] can't infer a tag, then it defaults to the configuration for the C language" ... lobby for the manual to change rather than rollback the behavior. I wrote bug-libtool about these things. https://debbugs.gnu.org/cgi/bugreport.cgi?bug=67754 Thanks, Karl
bug#67539: GNU Automake 1.16.5 FAILS one test objc-megademo
On 30 Nov 2023 22:45, Nick Bowler wrote: > Interestingly the libtool manual also says "If [libtool] can't infer a > tag, then it defaults to the configuration for the C language", which is > clearly not the case (it seems what actually happens is that if libtool > can't infer a tag then it exits with a fatal error). So I wonder if > this is actually a regression in libtool. i'm fairly certain libtool used to do this aages ago, and i *think* it stopping was intentional. i recall a lot of pain in Gentoo from that switchup, but tbh, i don't think any of it was "wrong" ... all the fixes we landed were because the code was being misused/abused, and silently doing the wrong thing (especially when cross-compiling). so i personally prefer the new world order, and would say we should lobby for the manual to change rather than rollback the behavior. -mike signature.asc Description: PGP signature
bug#67539: GNU Automake 1.16.5 FAILS one test objc-megademo
However it looks like there is no tag defined for Objective C[1] (presumably it would be --tag=OBJC). Adding this option does appear to make things "work" in the sense that libtool just complains about the unknown tag but then proceeds to actually do stuff, rather than exiting outright with a fatal error. Thanks Nick. Does libtool actually work (well enough) with Objective C, then? Apart from the warning about the tag. I don't see it mentioned in the libtool sources. Anyway, I guess it's easy enough to add the tag, if that makes things better. Why not, I guess? Patch below look right? (Plus maybe something in the manual.) BTW, I've been unable to install objc on my systems (Alma 8, Rocky 9) since installing the gcc-objc + libobjc packages does not suffice. The result is still: gcc: error: foo.m: Objective-C compiler not installed on this system I see some ideas about how to proceed on the net, but ... time. >From the lack of reports about this test failure (yours was the first, Dennis, as far as I can recall), I surmise that hardly anyone (who cares about automake anyway) has objc installed. --thanks, karl. --- a/bin/automake.in +++ b/bin/automake.in @@ -739,6 +739,7 @@ register_language ('name' => 'objc', 'compiler' => 'OBJCCOMPILE', 'compile_flag' => '-c', 'output_flag' => '-o', + 'libtool_flag' => 'OBJC', 'lder' => 'OBJCLD', 'ld' => '$(OBJC)', 'pure' => 1, @@ -757,6 +758,7 @@ register_language ('name' => 'objcxx', 'compiler' => 'OBJCXXCOMPILE', 'compile_flag' => '-c', 'output_flag' => '-o', + 'libtool_flag' => 'OBJCXX', 'lder' => 'OBJCXXLD', 'ld' => '$(OBJCXX)', 'pure' => 1,
bug#67539: GNU Automake 1.16.5 FAILS one test objc-megademo
On 2023-11-30 21:46, Karl Berry wrote: Hi Dennis, libtool: compile: unable to infer tagged configuration Thanks for the report. As you surmise, apparently this needs to be reported to libtool. (Although afaik libtool is currently unmaintained, so I don't know when or if anything will get fixed.) At least, I have no idea what to do about, or even work around, that error :(. This could still be (partially) an Automake issue, since the problem appears partially related to how Automake is calling libtool from the build rules (it is missing the --tag option), and I think those are coming from Automake. However it looks like there is no tag defined for Objective C[1] (presumably it would be --tag=OBJC). Adding this option does appear to make things "work" in the sense that libtool just complains about the unknown tag but then proceeds to actually do stuff, rather than exiting outright with a fatal error. Interestingly the libtool manual also says "If [libtool] can't infer a tag, then it defaults to the configuration for the C language", which is clearly not the case (it seems what actually happens is that if libtool can't infer a tag then it exits with a fatal error). So I wonder if this is actually a regression in libtool. [1] https://www.gnu.org/software/libtool/manual/libtool.html#Tags Cheers, Nick
bug#67539: GNU Automake 1.16.5 FAILS one test objc-megademo
Hi Dennis, libtool: compile: unable to infer tagged configuration Thanks for the report. As you surmise, apparently this needs to be reported to libtool. (Although afaik libtool is currently unmaintained, so I don't know when or if anything will get fixed.) At least, I have no idea what to do about, or even work around, that error :(. What is the os version + hardware? If it's easy for you to try the automake development sources, that could be worth a try. Else hopefully there will be a pretest+release soon. --best, karl.