NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

bin/57565: ar(1) l option incompatibility



>Number:         57565
>Category:       bin
>Synopsis:       ar(1) l option incompatibility
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    bin-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Aug 05 05:05:00 +0000 2023
>Originator:     Takahiro Kambe
>Release:        NetBSD 10.99.7
>Organization:
	
>Environment:
	
	
System: NetBSD m2utm.a.back-street.net 10.99.7 NetBSD 10.99.7 (GENERIC64) #0: Wed Aug 2 12:06:52 JST 2023 taca%m2utm.a.back-street.net@localhost:/data/10.99.7/evbarm/obj/sys/arch/evbarm/compile/GENERIC64 evbarm
Architecture: aarch64
Machine: evbarm
>Description:
	ar(1) l option has changed between binutils 2.34 (NetBSD 10.0_BETA)
	and 2.39 (NetBSD 10.99.7).

	2.34	l   This modifier is accepted but not used.
	2.39	l   Specify dependencies of this library...

	And /usr/share/mk/sys.mk still defines ARFLAGS to "rl".

	ARFLAGS?=	rl

	So, building a library might magically failed.
>How-To-Repeat:
	% touch a.c b.c
	% cc -c a.c b.c
	% ar rl c.a a.o b.o
	ar: a.o: file format not recognized
>Fix:
	Disable l option of ar(1) as binutil 2.34's day or remove l from
	ARFLAGS as below:

--- share/mk/sys.mk.orig	2023-06-20 22:55:19.001004643 +0900
+++ share/mk/sys.mk	2023-08-05 13:33:29.740135375 +0900
@@ -12,7 +12,7 @@
 .LIBS:		.a
 
 AR?=		ar
-ARFLAGS?=	rl
+ARFLAGS?=	r
 RANLIB?=	ranlib
 MV?=		mv -f

>Unformatted:
 	
 	


Home | Main Index | Thread Index | Old Index