From debbugs-submit-bounces@debbugs.gnu.org Mon Jul 05 09:43:05 2021 Received: (at submit) by debbugs.gnu.org; 5 Jul 2021 13:43:05 +0000 Received: from localhost ([127.0.0.1]:44516 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m0OsL-0006hA-6d for submit@debbugs.gnu.org; Mon, 05 Jul 2021 09:43:05 -0400 Received: from lists.gnu.org ([209.51.188.17]:60116) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m0OsJ-0006gs-K8 for submit@debbugs.gnu.org; Mon, 05 Jul 2021 09:43:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59078) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m0OsJ-0006F9-8t for bug-guix@gnu.org; Mon, 05 Jul 2021 09:43:03 -0400 Received: from xavier.telenet-ops.be ([2a02:1800:120:4::f00:14]:45414) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m0OsG-0002uf-P4 for bug-guix@gnu.org; Mon, 05 Jul 2021 09:43:02 -0400 Received: from butterfly.local ([188.189.37.160]) by xavier.telenet-ops.be with bizsmtp id RRiw2500R3TK16401Riw2Z; Mon, 05 Jul 2021 15:42:57 +0200 Message-ID: <78028b8794cb0dca5467558c272471556833a560.camel@telenet.be> Subject: glibc uses "objcopy", but seems to need "TARGET-objcopy" [core-updates] From: Maxime Devos To: bug-guix@gnu.org Date: Mon, 05 Jul 2021 15:42:49 +0200 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="=-NM79VlG15XX8SWPIt5/k" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r21; t=1625492577; bh=+Or7aI0hHT8cGi/GNJXaHQW/mMbbSV0WyjhmHktRZ0A=; h=Subject:From:To:Date; b=RTKOYfdUZcC1ACcbZAveLNLGNbjbBS29k3eFwxwbcPbT+FNm+TjwJRDkwHw7h5bLc Uq9HY4pymnMxIi8mV2FJyqxzHAEbtD34xr5a/IMn2+tw2nSTw8ntPJj35rQ3+zhH5b BQVM2pKND7Jn0kWi5UynUn3Nc8wAaVlpKacE4Oic/BpIS5eTUoVhfB3RVyGLk5D1p+ 9TRHo+mUkFuEjplLXySjFPnGWDPNuPWwYe26sWHhEwFGuRg4SnT6UiysL9jA4rmSqv Gpm1/KCufEK2JfuO5IgJDTX2YCTAJ/jz3rJmjRthUMsyo1RSmq0OcE3N14iFxXFlCA 7AbeVZZ9FC25g== Received-SPF: pass client-ip=2a02:1800:120:4::f00:14; envelope-from=maximedevos@telenet.be; helo=xavier.telenet-ops.be X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.6 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --=-NM79VlG15XX8SWPIt5/k Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User: guix-devel@gnu.org Usertags: powerpc64le-linux Here is an extract from the build log () /gnu/store/ar373sjda7fz0m4mav6rdfmv49vv6r87-bash-minimal-5.1.8/bin/sh ../sc= ripts/move-if-change /tmp/guix-build-glibc-cross-powerpc64le-linux-gnu-2.33= .drv-0/build/gnu/lib-names-64-v2.T /tmp/guix- build-glibc-cross-powerpc64le-linux-gnu-2.33.drv-0/build/gnu/lib-names-64-v= 2.h objcopy --dump-section=3D.gnu.attributes=3D/tmp/guix-build-glibc-cross-powe= rpc64le-linux-gnu-2.33.drv-0/build/no_ldbl_gnu_attribute.bin.tmp /tmp/guix-= build-glibc-cross-powerpc64le-linux-gnu-2.33.drv- 0/build/no_ldbl_gnu_attribute.o touch /tmp/guix-build-glibc-cross-powerpc64le-linux-gnu-2.33.drv-0/build/li= bc-abis.stamp touch /tmp/guix-build-glibc-cross-powerpc64le-linux-gnu-2.33.drv-0/build/dl= -tunable-list.stmp objcopy: Unable to recognise the format of the input file `/tmp/guix-build-= glibc-cross-powerpc64le-linux-gnu-2.33.drv-0/build/no_ldbl_gnu_attribute.o' make[2]: *** [../sysdeps/powerpc/powerpc64/le/Makefile:31: /tmp/guix-build-= glibc-cross-powerpc64le-linux-gnu-2.33.drv-0/build/no_ldbl_gnu_attribute.bi= n] Error 1 make[2]: *** Waiting for unfinished jobs.... That looks like the earlier issue we had with "objdump" vs. "TARGET-objdump= " ... Maybe a similar fix is possible? Greetings, Maxime. --=-NM79VlG15XX8SWPIt5/k Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYOMMWRccbWF4aW1lZGV2 b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7qNsAPsE4Y0LnL91ocWmStl31kjjue2g 04NOspZTV44M4O78HAEA/Q6rHJ1iMqrjxYCKwBRRS7rJDv81AqrdtK3K316aTgU= =w+yB -----END PGP SIGNATURE----- --=-NM79VlG15XX8SWPIt5/k-- From debbugs-submit-bounces@debbugs.gnu.org Tue Jul 06 10:49:40 2021 Received: (at 49417) by debbugs.gnu.org; 6 Jul 2021 14:49:40 +0000 Received: from localhost ([127.0.0.1]:49659 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m0mOJ-0006kI-TZ for submit@debbugs.gnu.org; Tue, 06 Jul 2021 10:49:40 -0400 Received: from eggs.gnu.org ([209.51.188.92]:33068) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m0mOE-0006k1-OO for 49417@debbugs.gnu.org; Tue, 06 Jul 2021 10:49:38 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:44598) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m0mO7-0004tR-KQ; Tue, 06 Jul 2021 10:49:28 -0400 Received: from [2001:660:6102:320:e120:2c8f:8909:cdfe] (port=36628 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m0mO7-0001Tq-CR; Tue, 06 Jul 2021 10:49:27 -0400 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Maxime Devos Subject: Re: bug#49417: glibc uses "objcopy", but seems to need "TARGET-objcopy" [core-updates] References: <78028b8794cb0dca5467558c272471556833a560.camel@telenet.be> Date: Tue, 06 Jul 2021 16:49:26 +0200 In-Reply-To: <78028b8794cb0dca5467558c272471556833a560.camel@telenet.be> (Maxime Devos's message of "Mon, 05 Jul 2021 15:42:49 +0200") Message-ID: <874kd7qyyx.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 49417 Cc: 49417@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi, Maxime Devos skribis: > That looks like the earlier issue we had with "objdump" vs. "TARGET-objdu= mp" ... > Maybe a similar fix is possible? Yes, indeed. The attached patch does that and fixes the issue. I=E2=80=99ll inline the patch in the =E2=80=98patches=E2=80=99 field and co= mmit that later on so as to group world rebuilds a bit. I=E2=80=99ll send it to libc-alpha too. (Initially I tried patching just sysdeps/powerpc/powerpc64/le/configure.ac but that=E2=80=99s not sufficient= .) Thanks, Ludo=E2=80=99. --=-=-= Content-Type: text/x-patch Content-Disposition: inline diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index ced226ef34..82af27e0b4 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -486,6 +486,11 @@ and the cross tool chain." #:xbinutils xbinutils) (package (inherit libc) + (source (origin + (inherit (package-source glibc)) + (patches (append (origin-patches (package-source glibc)) + (list (search-patch + "glibc-powerpc64le-objcopy.patch")))))) (name (string-append "glibc-cross-" target)) (arguments (substitute-keyword-arguments diff --git a/gnu/packages/patches/glibc-powerpc64le-objcopy.patch b/gnu/packages/patches/glibc-powerpc64le-objcopy.patch new file mode 100644 index 0000000000..acdf29a02a --- /dev/null +++ b/gnu/packages/patches/glibc-powerpc64le-objcopy.patch @@ -0,0 +1,156 @@ +Use "powerpc64le-linux-gnu-objcopy" rather than "objcopy" when cross-compiling +to powerpc64le-linux-gnu: . + +diff --git a/aclocal.m4 b/aclocal.m4 +index 13a791ffde..5b370c07a2 100644 +--- a/aclocal.m4 ++++ b/aclocal.m4 +@@ -118,8 +118,6 @@ AS=`$CC -print-prog-name=as` + LD=`$CC -print-prog-name=ld` + AR=`$CC -print-prog-name=ar` + AC_SUBST(AR) +-OBJCOPY=`$CC -print-prog-name=objcopy` +-AC_SUBST(OBJCOPY) + GPROF=`$CC -print-prog-name=gprof` + AC_SUBST(GPROF) + +diff --git a/configure b/configure +index fe0eda1cd5..3a08270734 100755 +--- a/configure ++++ b/configure +@@ -654,7 +654,6 @@ MAKE + LD + AS + GPROF +-OBJCOPY + AR + LN_S + INSTALL_DATA +@@ -689,6 +688,7 @@ sysheaders + ac_ct_CXX + CXXFLAGS + CXX ++OBJCOPY + OBJDUMP + READELF + CPP +@@ -3054,6 +3054,98 @@ else + OBJDUMP="$ac_cv_prog_OBJDUMP" + fi + ++if test -n "$ac_tool_prefix"; then ++ # Extract the first word of "${ac_tool_prefix}objcopy", so it can be a program name with args. ++set dummy ${ac_tool_prefix}objcopy; ac_word=$2 ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } ++if ${ac_cv_prog_OBJCOPY+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ if test -n "$OBJCOPY"; then ++ ac_cv_prog_OBJCOPY="$OBJCOPY" # Let the user override the test. ++else ++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ++ ac_cv_prog_OBJCOPY="${ac_tool_prefix}objcopy" ++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++ done ++IFS=$as_save_IFS ++ ++fi ++fi ++OBJCOPY=$ac_cv_prog_OBJCOPY ++if test -n "$OBJCOPY"; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJCOPY" >&5 ++$as_echo "$OBJCOPY" >&6; } ++else ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++fi ++ ++ ++fi ++if test -z "$ac_cv_prog_OBJCOPY"; then ++ ac_ct_OBJCOPY=$OBJCOPY ++ # Extract the first word of "objcopy", so it can be a program name with args. ++set dummy objcopy; ac_word=$2 ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } ++if ${ac_cv_prog_ac_ct_OBJCOPY+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ if test -n "$ac_ct_OBJCOPY"; then ++ ac_cv_prog_ac_ct_OBJCOPY="$ac_ct_OBJCOPY" # Let the user override the test. ++else ++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ++ ac_cv_prog_ac_ct_OBJCOPY="objcopy" ++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++ done ++IFS=$as_save_IFS ++ ++fi ++fi ++ac_ct_OBJCOPY=$ac_cv_prog_ac_ct_OBJCOPY ++if test -n "$ac_ct_OBJCOPY"; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJCOPY" >&5 ++$as_echo "$ac_ct_OBJCOPY" >&6; } ++else ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++fi ++ ++ if test "x$ac_ct_OBJCOPY" = x; then ++ OBJCOPY="false" ++ else ++ case $cross_compiling:$ac_tool_warned in ++yes:) ++{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 ++$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ++ac_tool_warned=yes ;; ++esac ++ OBJCOPY=$ac_ct_OBJCOPY ++ fi ++else ++ OBJCOPY="$ac_cv_prog_OBJCOPY" ++fi ++ + + # We need the C++ compiler only for testing. + ac_ext=cpp +@@ -4645,8 +4737,6 @@ AS=`$CC -print-prog-name=as` + LD=`$CC -print-prog-name=ld` + AR=`$CC -print-prog-name=ar` + +-OBJCOPY=`$CC -print-prog-name=objcopy` +- + GPROF=`$CC -print-prog-name=gprof` + + +diff --git a/configure.ac b/configure.ac +index 924af12738..2148cd2ec8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -53,6 +53,7 @@ AC_SUBST(cross_compiling) + AC_PROG_CPP + AC_CHECK_TOOL(READELF, readelf, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) ++AC_CHECK_TOOL(OBJCOPY, objcopy, false) + + # We need the C++ compiler only for testing. + AC_PROG_CXX --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Jul 07 18:41:03 2021 Received: (at 49417-done) by debbugs.gnu.org; 7 Jul 2021 22:41:03 +0000 Received: from localhost ([127.0.0.1]:53721 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m1GE3-0006wH-1o for submit@debbugs.gnu.org; Wed, 07 Jul 2021 18:41:03 -0400 Received: from eggs.gnu.org ([209.51.188.92]:49790) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m1GE1-0006vg-OY for 49417-done@debbugs.gnu.org; Wed, 07 Jul 2021 18:41:02 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:47702) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m1GDw-0007AQ-BY; Wed, 07 Jul 2021 18:40:56 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=42822 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m1GDw-0005jf-49; Wed, 07 Jul 2021 18:40:56 -0400 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Maxime Devos Subject: Re: bug#49417: glibc uses "objcopy", but seems to need "TARGET-objcopy" [core-updates] References: <78028b8794cb0dca5467558c272471556833a560.camel@telenet.be> <874kd7qyyx.fsf@gnu.org> Date: Thu, 08 Jul 2021 00:40:54 +0200 In-Reply-To: <874kd7qyyx.fsf@gnu.org> ("Ludovic =?utf-8?Q?Court=C3=A8s=22'?= =?utf-8?Q?s?= message of "Tue, 06 Jul 2021 16:49:26 +0200") Message-ID: <87wnq1n3wp.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 49417-done Cc: 49417-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Ludovic Court=C3=A8s skribis: > Maxime Devos skribis: > >> That looks like the earlier issue we had with "objdump" vs. "TARGET-objd= ump" ... >> Maybe a similar fix is possible? > > Yes, indeed. The attached patch does that and fixes the issue. Pushed as 145a5a5797f0f673c817d99760d1c1e5d71aa11c. Ludo=E2=80=99. From unknown Sun Jun 15 08:38:46 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Thu, 05 Aug 2021 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator