X-Loop: help-debbugs@HIDDEN Subject: bug#45756: Prepending '+' to the recipe line when linking with GCC's -flto=jobserver Resent-From: "R. Diez" <rdiezmail-temp2@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: help-debbugs@HIDDEN Resent-Date: Sun, 10 Jan 2021 06:27:02 +0000 Resent-Message-ID: <handler.45756.B.161025998120042 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 45756 X-GNU-PR-Package: debbugs.gnu.org X-GNU-PR-Keywords: To: automake@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.161025998120042 (code B ref -1); Sun, 10 Jan 2021 06:27:02 +0000 Received: (at submit) by debbugs.gnu.org; 10 Jan 2021 06:26:21 +0000 Received: from localhost ([127.0.0.1]:53011 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1kyUB9-0005D4-4T for submit <at> debbugs.gnu.org; Sun, 10 Jan 2021 01:26:21 -0500 Received: from lists.gnu.org ([209.51.188.17]:44428) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <karl@HIDDEN>) id 1kyQ7O-0007G3-BR for submit <at> debbugs.gnu.org; Sat, 09 Jan 2021 21:06:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:33834) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <karl@HIDDEN>) id 1kyQ7O-0003gG-7T for bug-automake@HIDDEN; Sat, 09 Jan 2021 21:06:10 -0500 Received: from freefriends.org ([96.88.95.60]:57520) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <karl@HIDDEN>) id 1kyQ7K-0005An-0K for bug-automake@HIDDEN; Sat, 09 Jan 2021 21:06:08 -0500 Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 10A262xB015647 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sat, 9 Jan 2021 19:06:03 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 10A262ar015642; Sat, 9 Jan 2021 19:06:02 -0700 Resent-Date: Sat, 9 Jan 2021 19:06:02 -0700 Resent-From: Karl Berry <karl@HIDDEN> Resent-Message-Id: <202101100206.10A262ar015642@HIDDEN> Resent-To: bug-automake@HIDDEN X-Envelope-From: automake-bounces+karl=freefriends.org@HIDDEN DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.de; s=s2048; t=1582040827; bh=OK4gp11SSHp/8U8C0q0IfTddL8HZcpg2ZKMiLZ0jHkw=; h=To:From:Subject:Date:References:From:Subject; b=PT7QsSdHEnKfrtKee/+lpy89KSgpjDAi0+ODdgI9MsAIwSWt/Z9fC0aNtI/ymUBgWhvguC9JizZK+gR+cLAyflfbj0VMokw3uhlANZJW3WjZMiTdPii99mquCXPuSUL1IdcdTISCAvcYG6xHlKAMaK7bD4H1MFYW27tUCy/q7QdIMOh7YlNcxoszA9hAGoooxEnYm2exG3pX+hl/z9rnQpFVTvoB0I+3+UD79bBn9sjE6MdEgBarmKfTGe9v/sJqBLFpqgxfE7qdWeaJsGeOiGUOAmh3f5ulNDhrPMWGHH8lE9WJTHKPSHR6CjcZspg5PYnaqy0bb/f9nysThz0S2A== X-YMail-OSG: rrBj1pwVM1lm2UULsFZXj06CeLMJYVgJs79bLcZ6EvQfYPq_ekkbUV6PS7EZgS0 K3yjJTl3QAzD8cdIucsIvwutEBy676QXe7PeGpnFeajbEfGx1b1uQUEpknreDyDbKvqVZllcMlUO URngL829A9nwIvQ1sB0AKHg99adeDw3lMvvPPyfkdvNoK1CxpcuuvZQ2bLNVPLMrttpOuCgE9ODt 1._r1G87CAE.8L_f7c1EubGpVafn0FhLqgZjzKmHEeXvMkRBez4Cumka5VGLHdF8_XfAGucDyKSO XoqI2mfdMj2ECNkKhtxyVAA8Z7zknqLB7wsZIRhvDCWv6tzOezrtcUpMEAQqYKW9vbx6lkaSH5ce gucXZ.roKTj8T_AL5LTpUaOsUno3lO9IkJ2V6ddCI0xiCjdFzph7.Q8GUdxKs37q9eOc00iymysI VkZIxM0_1sNGrLcXMIsYqn7q8_4hiqyAnz0aFD4n87OqdWfR7MZgh8ruaxPGjIrodCdmacuyKP4u C4gihqQ29LC_kxPTWtzN49G.Lu4Y2bipAbjFa2tlMFTqmBdMu1tDMebV..Ha3l34ZMjCjp86pIGm xvBHjypbwtZ51Mys5v90Pb1PPRxiAbgiTkMespLDmpZwbt5cBvLAkUcm8Nl.GjFrPJV44fKsYlXF 6oHCVF5CJ2cBv34xwmJ5O.iHGMUJegKfpQsgFtCeW4ym6OMPG2.Sg9JG2VnS83GXCf6fg_4Lz3Yf j6jPpYnHF34yWdy76PwtzRSpRDEoNJnCUpBXmil4qp11jYqe0qWJo14UICGMBOzX41LPhFBxm3gz _fw_8lIwngjtqGewiMdgga2fC86QkLYkLPiaykfJCx5FljLaje.2Yb2fvdVWcmUUdywV0vs3PxPw AUiXG6pEYrYqJQLN3zOpZ6CvTwVsZS2lDdMv4lAtHXZj.bg33RrNHtr0aWHnK_jDTpTCJFKY1nTC LQd6DQM4DMTBjUsqJumX__AvwutkAyLyXSDtm_eu6iNm2FCnIHH_mcxqh4xbnkgDJLOWUC9a9T.l _Ao4VrZ.qJ841OQylqFypwrmi1z1O1U_WDR9a77JILOXWHEyfOfKo65oWJM8fc.9WbDt2MvlbSUr VJg4ya6caU7zHn5kG62tmGoC6g8vMz9GYCzHJOFS3dgJ0gytXxJQTL5H6f8uufm8wbVETXJtQR4t flpzUQPgQOr6kJ_QUQxvZh2.Iv5OFhcvuHlvIrcHfOij54aCQUXDCQnMQJnXJkmA7_AmVUp2Ui3P bKjnt03IbQtJ2wTDraIY.y0eGDMCIc_SLsKOBsMk0D6InqFesEUYeTeXbAVKNDwf74OrBywRemb_ KdMA3Am_.YLQ8.SMzkpYge1mOvTTvlJY3jt6ZlL7hR60zkxVQiUidVY2urpACWEzXtu_JrCuenHK 2GkCKAhPUCfHhWfAntp2tHRqxckNcSfT8Mbw- Message-ID: <670366fc-a125-55cd-7908-c36087f54c3f@HIDDEN> User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit References: <670366fc-a125-55cd-7908-c36087f54c3f.ref@HIDDEN> X-Mailer: WebService/1.1.15199 hermes Apache-HttpAsyncClient/4.1.4 (Java/1.8.0_181) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 77.238.177.82 X-Mailman-Approved-At: Tue, 18 Feb 2020 11:05:31 -0500 X-BeenThere: automake@HIDDEN X-Mailman-Version: 2.1.23 Precedence: list Date: Tue, 18 Feb 2020 16:47:05 +0100 From: "R. Diez" <rdiezmail-temp2@HIDDEN> Received-SPF: pass client-ip=96.88.95.60; envelope-from=karl@HIDDEN; helo=freefriends.org X-Spam_score_int: -47 X-Spam_score: -4.8 X-Spam_bar: ---- X-Spam_report: (-4.8 / 5.0 requ) BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -2.1 (--) X-Mailman-Approved-At: Sun, 10 Jan 2021 01:26:13 -0500 X-BeenThere: debbugs-submit <at> debbugs.gnu.org List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.1 (--) [Resending to bug-automake for tracking. --karl] Hi all: I am developing firmware similar to this one: https://github.com/rdiez/JtagDue First, I am building a GCC 8.3.0 cross-compiler toolchain for ARM Cortex-M4F on Ubuntu 18.04.4 LTS, and I am then using it to build some embedded software with a cross-compiling Autoconf project. GCC introduced some time ago option -flto=jobserver in order to use the GNU Make jobserver when parallelising LTO builds. I am actually building many such Autoconf projects from a top-level makefile, so using the top-level jobserver prevents overloading the system with too many parallel jobs. That is what the jobserver was designed for. When doing a recursive make, you need to place a '+' character at the beginning of the recipe line in order to let GNU Make pass the jobserver file descriptors to the child processes. Alternatively, if you reference variable $(MAKE) inside the recipe like, you get the same effect. Otherwise, GNU Make does not let child processes inherit those file descriptors (or so I heard, probably with "close fd on exec"). In my top-level makefile, I added those '+' prefixes manually, so all Autoconf-generated makefiles are building in parallel but using the top-level jobserver. The trouble is, invoking GCC in the linking phase with -flto=jobserver is actually a similar "recursive make" situation: GCC needs to inherit those jobserver file descriptors. However, Autoconf/Automake does not generate that '+' prefix for the linking recipe. Is there a way to overcome this limitation? This will probably become a general issue in the future, as each stage could theoretically benefit from multi-core CPUs. See for example: https://gcc.gnu.org/wiki/ParallelGcc Thanks in advance, rdiez
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: "R. Diez" <rdiezmail-temp2@HIDDEN> Subject: bug#45756: Acknowledgement (Prepending '+' to the recipe line when linking with GCC's -flto=jobserver) Message-ID: <handler.45756.B.161025998120042.ack <at> debbugs.gnu.org> References: <670366fc-a125-55cd-7908-c36087f54c3f@HIDDEN> X-Gnu-PR-Message: ack 45756 X-Gnu-PR-Package: debbugs.gnu.org Reply-To: 45756 <at> debbugs.gnu.org Date: Sun, 10 Jan 2021 06:27:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): help-debbugs@HIDDEN If you wish to submit further information on this problem, please send it to 45756 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 45756: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D45756 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#45756: Always prepend '+' to the recipe line In-Reply-To: <670366fc-a125-55cd-7908-c36087f54c3f@HIDDEN> Resent-From: "R. Diez" <rdiezmail-temp2@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: help-debbugs@HIDDEN Resent-Date: Wed, 13 Jan 2021 12:16:02 +0000 Resent-Message-ID: <handler.45756.B45756.161054011720223 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 45756 X-GNU-PR-Package: debbugs.gnu.org X-GNU-PR-Keywords: To: 45756 <at> debbugs.gnu.org Received: via spool by 45756-submit <at> debbugs.gnu.org id=B45756.161054011720223 (code B ref 45756); Wed, 13 Jan 2021 12:16:02 +0000 Received: (at 45756) by debbugs.gnu.org; 13 Jan 2021 12:15:17 +0000 Received: from localhost ([127.0.0.1]:34578 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1kzf3V-0005G7-JP for submit <at> debbugs.gnu.org; Wed, 13 Jan 2021 07:15:17 -0500 Received: from sonic309-24.consmr.mail.ir2.yahoo.com ([77.238.179.82]:42202) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <ruben10post@HIDDEN>) id 1kzf3S-0005Fg-Qs for 45756 <at> debbugs.gnu.org; Wed, 13 Jan 2021 07:15:16 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.de; s=s2048; t=1610540108; bh=1/DAwYRjQ3Vl+rHIwFJ/7OsOGZP2wtMB3WOla+UHFTw=; h=To:From:Subject:Date:References:From:Subject:Reply-To; b=dptsTDUOlFsRtobHjU2g/9abGZZ/lz+SstQCfc96zXRl9ezEoMwB3dtkDNvQPEVHLTV+PLHze35YLo6zveClkv+1oqjEk5BPXtY07Jez3rH7nkGysYLLZJmygCXBlyHoMrxLU5kHHiKRo24+xsrr5KGw86U+pBld1cA8ikARg9D8R2LVMUyDLkVs1GYaROZGG5pbieyuKcaFjFwHaGQ7QDLQg1J5xuya5g2btrnn5HDhjCv05k5VDt20COthu8UaRWGbGu47ziN46596kMK9AMS1p8WO6aLL1BzuJYCRGB9qUyynvCp0fv9O1X0S5h3KoHpaYkKjHo5UtTtxJLfuhQ== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1610540108; bh=xJ/ygAY3j6175MObIsEmdOE+iO+7rpeP4NRgTDcSsiM=; h=To:From:Subject:Date:From:Subject:Reply-To; b=aDcIuZvMb37sqiREUtGm0Vr9PKjxjLpb2iD+Tv8lmB8pAsCHhh0OGScOyjoNFFhd67hJhmCVNHXnWIO+C6dgjDKIKo7YSUt6Y5nWBmIMPh49o+HZ94ReUhuv+Mdng+tMR3TIvdt+vw+l5t5efvOCwN29dJ/aiDNn/EtiG67XWGmtsopAVWeOBFykwtGWGLF6BNqX3rV1T1Nk4pEk1dlGrlkeX9xXiRVXb/B2r/xjO3SMlHAq5QRe9YXmuxcS+NaYvltChmGQT5u1GcGUF3gt/x2JEXuPqv2H9wyGkZmr7o2BobtnPF6BRQc+ePmS+7wKD6qijBq3yIEdhw0koepnIg== X-YMail-OSG: F4sdctsVM1n0qS4rx_nhM6fXF2wV19dFe.X.Jc4FMina7BI8ZMj7qkerKGKLyt0 9ZHNh4yAw_E3CxFoAKJCu8CWPqP9cDOCRs7kCpUohI9CQ3_kvw0d5XRfamaTRU.jJif.nZf2hJY. OWxQb9x_KtRxkO.nqXRxMQ0iJjlwib4CTY9Wo42ZrGsqzaqFbnXAB7UMxLJ2nmdwRwesXX6imc03 Fnwe6C5DvH9GrT7zjuskBLlp18rHfviLG2ux4BFWC2mjzWe6tY5MAYHNg7SUvtspGioVCaFaF8Nk 0gJpgNbNlgslnj.LqXDBK8WP8hjBVetUyYf7RgaV5dQVyXwL4qbCZUmVx7ZUAAlEDIKP7ZxwRKDt 4JV4g1cXS8rw1Zg41RqKk5aoI9dCSV.tzcs0HEYJyJfpqDMDLdpqtSVqujhTjGg6y6iKwhKWUWDO QK8mxt6ujcsvp.4Cyc1SvkEkEic4E59kkB_ogO1I2xVpgognx.Nu9RcCu6k.g5GxUP7v0N0gIRf8 c4OU7UIO67epCNTO6qVH4JJM1.TscwCkSRpG1bMBlAzBAlB3HuiopAdIZwQkpAcVs5qQHlSeV57U YF6zcCQDav7kJGR1OAeHrxmWq.4QSgdgWjNBVWKftEVFDgFxSezIlugsavCWD3lncvttiaKbqRIw L0WkhKaozkyz5jcNPKuPU1z7ndoq6BIGcxvHLU0eEXc0G0syJzKPY5A.W1sCfMVmuwGv339cyGvj NgZtgev9ImXUfKvVdOH2MAQsc5EBqYvn5ZBM7nGWuqyyhEdd5KwReiGlgCc9opwfrC4ItHcuwU3q SXTFNyNa8OSMXyIiIb6gnPebbXUdeGEMMaf4UJuPzX9F4L164GzwyMvdxMk1ClcLXZcs_wd7VgT8 xG4eLCNMR8Lbz3eibKB9LCuHckzr9q2P9nXg9JvsxAr5.SaXRkFosCHVsKE0hSc8MbLgOwkTP_HL Zc.Sqw5vH5MxunYQg1qlh671cNxJW5LU7khOwsvzyQD9K4S05MnOXwpeuHi2MU8qcC1FfRHPk1lt IT_hvEaVzgmNJVYvL.VjQ.f5Kem0bgIWQ9PGFYhVBObM2GPkcg8n7365cne6uZ1.lQxwcp0cMVpG aqELpC5hESdQl1E51Yf8HFh54iI9pXUOainB1iJDJ6Z6YaptMZJYXqkP78ov_iKXjz_WcCdi60FX 2Vb6o.BkThQ4aTsWKhM3O9ro7EbTRNb5xU8QKLM8ylgDqGb8.gDwrnaCuDQeBZ8nNcLcdXRCS74z g4G2KhJ9ufkSGgdY..IkVMiI9wKFQa1cZ_RU2YtZvioVavfvQzRyaOpdsFX8HSJILT1hizz4t8AA _5FVRNHvwZGPVSfVccpkHWo9zcmrTUiuItK2n452GjRASqQ370lgJpxnOhSx9WqJvkSB4DBC5OZb jitnnPXX9Rw9DSmQLttQ0Mo632Dq8NJyr2TalsGhjq1tTpLe1CNVe7ZW6LeKDgjFaVBgc7rpcuUW WXJsrw2zewfIhjjkZybALcTzEzM87ReTBTqTA_fzppImvDLPkswQdONHzekIx7rrXukUeuN9t186 e9jTTde5n6cvABaYTeipZMPKv0vz_fJfjqTEF19BTb_oObeDM0tW_B_.2C5pKKI17GPwNlP1p.mX .2x.tnR7YAbkW2Ec5s6QCu0m.UPExYABm5TqkUjsZtfx.ThxWQ5ifehQegypiK3t_.mfgvrbgX4H d2XWdmanD0Yjn4vMuV7PzEpRUtCIQDPvAMqP0c84p1szbHSfwtPqnE_IsMChRepFdEql9RKaCudB zL4esGAVgJhlUwjQRBvhhqHaUl4Z10IAKS5sMlxz1X134UvZ83jJ8ckOJGs4xiT.W6igb8xPMqFH JF1qHhC0hsxMLDRI_rkcpzAWSrqlYK0swRgwHSSZSI_L4zkMCP2IG3jgIE5qhcVn5cfb8Ro3aDHn tgantH7ZXnnkiUMPhUbznsfvgaLmqnJ_4oY6p4H46ZAEVh8gwc95IBr2tcrMT.mcUp8LlDHlsUWI A3rPKWz_VzSMkwfj.B0N69XzhG3tUWL296svPfdZKHgj5vNdtJUZ02JatM9aijvMDHBsBLmd0b0W i.mkTCGAFkb18W5smg1K77wKjuTQ7NLaxCuggFkPbAi_vVOh1NPMPwwvk9YYHAleiSkgTYywf3xo 0J6KtgP7HVvW1MYHtp9acMUamc.r6rN2E5bL.nmrluEDgUvDvQ8narT0QtfB74IkbBgPHaxkZWF7 7Ps6iJp.rNipNJgzR7MBp25fHOlm7BO1SbAjfZwOAJ6erCbyQ50QApjxvWNLXJP67pY8jWS3BPrT AEdrxhXTmNH6.isjmOyZ7AdwycAULPnGVaLckgYWV34jHqMct2XL5rd14azqBHu1ZbzRiSMKJNNB OJ5WYUXG4Ka75W8Xf6hZXsrVfpcVJ2moljvpi3nxsGzFC Received: from sonic.gate.mail.ne1.yahoo.com by sonic309.consmr.mail.ir2.yahoo.com with HTTP; Wed, 13 Jan 2021 12:15:08 +0000 Received: by smtp404.mail.ir2.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 9e28acbe8a5784852d3226920b0e8fc0; Wed, 13 Jan 2021 12:15:05 +0000 (UTC) From: "R. Diez" <rdiezmail-temp2@HIDDEN> Message-ID: <a3e8fe6d-9894-a84d-1ee3-13181db1ce59@HIDDEN> Date: Wed, 13 Jan 2021 13:15:03 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit References: <a3e8fe6d-9894-a84d-1ee3-13181db1ce59.ref@HIDDEN> X-Mailer: WebService/1.1.17501 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Apache-HttpAsyncClient/4.1.4 (Java/11.0.8) Content-Length: 822 X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) This is not just an issue while linking. Any stage, including compilation of a single object file, could use the GNU Make jobs server. So there should be a global option in Autoconf or Automake to prepend a '+' to all generated rules. In fact, you would have thought that this should be the default, because any tool, at any stage, could decide in the future to go multithread, and there is no reason to ignore an existing GNU Make job server to limit the overall system load. Beware that you cannot test this issue well with GCC at the moment, because GCC option -flto=jobserver will not issue any warning if the file descriptors are not available. I reported this a while ago, and it got fixed, but the target GCC version is 11, which has not been released yet: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94330
Received: (at request) by debbugs.gnu.org; 2 Feb 2021 02:04:35 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 01 21:04:35 2021 Received: from localhost ([127.0.0.1]:33678 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1l6l3T-00020e-Dj for submit <at> debbugs.gnu.org; Mon, 01 Feb 2021 21:04:35 -0500 Received: from freefriends.org ([96.88.95.60]:34182) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <karl@HIDDEN>) id 1l6l3N-00020R-EM for request <at> debbugs.gnu.org; Mon, 01 Feb 2021 21:04:33 -0500 X-Envelope-From: karl@HIDDEN X-Envelope-To: <request <at> debbugs.gnu.org> Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 11224RRr020864 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for <request <at> debbugs.gnu.org>; Mon, 1 Feb 2021 19:04:28 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 11224R6V020862; Mon, 1 Feb 2021 19:04:27 -0700 Date: Mon, 1 Feb 2021 19:04:27 -0700 Message-Id: <202102020204.11224R6V020862@HIDDEN> From: Karl Berry <karl@HIDDEN> To: request <at> debbugs.gnu.org Subject: X-Spam-Score: 1.7 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: reassign 45756 automake Content analysis details: (1.7 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, medium trust [96.88.95.60 listed in list.dnswl.org] 2.0 BLANK_SUBJECT Subject is present but empty 2.0 BODY_EMPTY No body text in message X-Debbugs-Envelope-To: request X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.7 (/) reassign 45756 automake
X-Loop: help-debbugs@HIDDEN Subject: bug#45756: Prepending '+' to the recipe line when linking with GCC's -flto=jobserver Resent-From: "R. Diez" <rdiezmail-temp2@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-automake@HIDDEN Resent-Date: Thu, 04 Feb 2021 02:11:01 +0000 Resent-Message-ID: <handler.45756.B.161240460321894 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 45756 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: Karl Berry <karl@HIDDEN> Cc: automake@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.161240460321894 (code B ref -1); Thu, 04 Feb 2021 02:11:01 +0000 Received: (at submit) by debbugs.gnu.org; 4 Feb 2021 02:10:03 +0000 Received: from localhost ([127.0.0.1]:39300 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1l7U5r-0005h4-7t for submit <at> debbugs.gnu.org; Wed, 03 Feb 2021 21:10:03 -0500 Received: from lists.gnu.org ([209.51.188.17]:38570) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <karl@HIDDEN>) id 1l7U5q-0005gv-86 for submit <at> debbugs.gnu.org; Wed, 03 Feb 2021 21:10:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49310) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <karl@HIDDEN>) id 1l7U5q-00010D-1F for bug-automake@HIDDEN; Wed, 03 Feb 2021 21:10:02 -0500 Received: from freefriends.org ([96.88.95.60]:43968) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <karl@HIDDEN>) id 1l7U5h-0002dy-Oa for bug-automake@HIDDEN; Wed, 03 Feb 2021 21:10:00 -0500 Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 11429lR8008352 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for <bug-automake@HIDDEN>; Wed, 3 Feb 2021 19:09:48 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 11429lhi008351; Wed, 3 Feb 2021 19:09:47 -0700 Resent-Date: Wed, 3 Feb 2021 19:09:47 -0700 Resent-From: Karl Berry <karl@HIDDEN> Resent-Message-Id: <202102040209.11429lhi008351@HIDDEN> Resent-To: bug-automake@HIDDEN X-Envelope-From: ruben10post@HIDDEN X-Envelope-To: <karl@HIDDEN> X-YMail-OSG: evvcDo8VM1kxGA6BC4az9xgq4OoxmWwQ5HL2laixLmixVP7tLr3ELcjEcrKOEsG MNfm_xQXRdxUxVGBdnKhLhyDGOMwc2Lq3eGWaQ7BN0k7yZArBLmuncnRDaXclemjnTDlPGJP3as6 a8gJZs5m7mbtLXJndCAFP3Sguf.ExcSqSdgBMfu.EwKGvkQoBE04cLbxeC7SmWrtPzWt6RNLZYNX NFmCk.U_qUBpt9qRYue4v3YX_u4E0etoUBYYv3xGnTZklBrrXRbZX_PUu1RGTMa.yxRMHpaxftS4 1WxGqWkpDeUReTn9RYEPmJt6UUBeoNfT_ATS1I9MEp7pr69_11.TSdZ0yJ64iEhfqwJzGNLn0Fuq Oaw3dLNv8ovXIIDV00wo7n.8E8ktdKk0wLtahDzWDV8Cv8WMujexujGaflFoNSeIRWKpTxHfA_He ZgcAt7v0R4_ofVrZlTWRIwcfuTeunvl2vV4kUzJYNJOu6LMHe6W_YgLgdP_rFsIkcpIZ4VzNuZhE T2t.LXMqkqln6Yy.n5Blf8Wy8To3ogikRCVFazi05g1.kI7TTkahdoxgXjdGJE7nQOs_sGxlIfoj FgedZ1u6v6o59IItx_9fwfn31nH.QtNEFwVt2bH9bQtdUJChKyv282pLLIVXyDw0A2e.G_f8ce41 4C0DHBKGijLjVLgfSuong6dNLThkiKxJTgBMNHP_vpTvu7euMwg4N9MSIb69yrmfdmOm4Q3wx29e nQkgz9crC1_fKYcc6huPPAU92svVKq2kbI660bplu0lcChppvw9fzeIZqAhcDBwBqaCUe2TZqhka _p3utFb7ozJMsv7KlltnBrGugssoBfswg_hor31N7hAkQnf9gdAgtaHxs1KNCesA6nZ.zSmZmsUs U1FEZnAae2YSn.gRTli0myMCWZdToNa9Krp.Ihz5.nbPckP3bcLv8FWK9fMHwfnKzXBLUEu0IECT ESW310jGNyv_bt7x.q4XIHdAe3zhTDMZaAwR4PQ2kTxTDDZdhZdEC30MiwO8commys6lbG85Q2wy 3o9Ou8oQGLXXTvFmKW7DJ0M78vG.w5YrH5ZztmeFr.4en1YUzM1P2Yn1L_zo_aIoDUjCsUcXAi9i z.x90__U4EmyAKuqSBSvP4KdtMe8L4b5hbgP9cyOZUdhSc2ITYe7PtOXCjzI6MiH.R4oicJFZPJu 01U3kvvrX8p9S2RR3C1LjlD6wQrYXsaIAcILauZkMLISdFM0jC8oySu5itsCmuTZoB2rE80GddLx C5aFrDcbYBLiGqubL1YbFKediWx8M_Dc9iFvJaf0zYuinnDRffDy.M7_pzB5cP3b0vc.IabAH.FH 65AMdQn2PNujEctXMbev8qTFs6i6.y8pOflVlNxvEreQKNbgh_QLnR7Dnnk.aQ0UBPBvVyA4JLo7 hco2xpy8qB3LKrjBWJOwLYu3lPgRz5sTDcpEzYNOm5dGHBtDShlA1VpTh0zEEE6yP_qfNambhkQ7 C48LjW_pP.mRTS3Z4dZw5fE_61in5TWo0dTLbGnVPoq8wypTm4VRfWH.t2nKsrZ.G_LBjMdkuTV3 8rRfwfsuiCEk..8VQmG5VBsgmn8jGyycFixz6vS__zTjhUEyu8Rhf6kJ7GTr_j.xJZfeNaSRAafx WCb4Ujecl.uFYixiqSMviI0aF0sqZui4JnqXQQXHrhRl_Hk4j88ZFvX6_ywU1h5r4p1LDNL1Uuao eocO4AQRCZbS5PjTzYi2e30jGH57p8yP6lF8_XfLCwVzXiSBp.DEU9azok9IJD5531uSPcpO2Fub VD2t8posIlKrhDgShi2moWUCqEUNjfuM8Z7ABFSBDYNCHmJYFeM8C9VqF4wnYphhIS.beoNoNRn7 Rve4v4er5ZjfoSD8UdA0gh_4hpAOc9mnl2RrknfH9SE1G4UtaD3lnRPA.23JezYVmlinbvEzszFC 0E5a1BrSWBjRKHFuQtHXbtQqa6S0aC4QiJUo.pqRvqaMZ80_LbbeDS.i0lYu.21jWkyRJB1CNdSE r9wcrJ6GXcvDhoVeSW3vnnzrGW8ncV1c92mfWU75v6soi33RxSSGSzGWKrN.8.SuHa5kxQThQ2LO s9JMUEKISlS5yfOF0wZpdeEFVTwU4TmX0Ok5rhkRZDxLPd1uzfXimG2pFZ4Zk6pjlFh_0.ZIYwco PL.AGphMBVDBxgSHU9LqcPrXVLpSpFQLNNzj3MLKB.2yol72KZCzMoG9Gm7AkgBXvrQq8papbDOA 5WMhbnU7PLK445BQ2vRYzwEbAKSp68raRkOSq4n1ga2LIwRQmlYNeBV5qOjwjmdmFFvU6SP8x5WR 9BDuQ86EVtsK7lSdg9Gz2_bsRKVt85dlehOjRU2Ih5P.MQ9tX0Kyq9EZDhgWjP6uAYVAnkgZAwRy k2bPoVjiBndsEaDK4x7LfxJ3YUFn.2.rRo0MtRn6QWhmB5UnkwEQuHn.q1fxEMDa0c.B1.GcxZKe yQXnsovqogVj1ObI_RXL_iCcuFZrSFXtj43gRF3YLc7J567QGqKulYibUbi301fZyPsSbVHExHie 1SekOoH4- References: <202101070206.10726GLY031505@HIDDEN> Message-ID: <c71b8e0b-ebd1-e74c-e1c9-bcdb1763d31b@HIDDEN> User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <202101070206.10726GLY031505@HIDDEN> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB X-Mailer: WebService/1.1.17501 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Apache-HttpAsyncClient/4.1.4 (Java/11.0.8) Content-Transfer-Encoding: 7bit Date: Sat, 9 Jan 2021 18:30:02 +0100 From: "R. Diez" <rdiezmail-temp2@HIDDEN> Received-SPF: pass client-ip=96.88.95.60; envelope-from=karl@HIDDEN; helo=freefriends.org X-Spam_score_int: -30 X-Spam_score: -3.1 X-Spam_bar: --- X-Spam_report: (-3.1 / 5.0 requ) BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, NML_ADSP_CUSTOM_MED=0.9, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.1 (-) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.1 (--) [Resending in hopes it will attach to the new bug. --karl] > [...] > At any rate, it would be extremely helpful to have a minimal-as-possible > runnable (automake-able) example showing the case where the + needs to > be prepended. rdiez, can you create such a mini-project? > [...] I normally use Autoconf, and I do not understand very much the separation between Autoconf and Automake. I do not know who is responsible for the generation of the makefile rules to link the executable. Either Autoconf or Automake must decide that GCC is not just used for compiling each object file, but also for linking, and that rule is not visible in the makefile.am file. Of course, such a linking rule does not user $(MAKE), and there is no '+' prefix, so the GNU Make jobserver file descriptors will not be passed to child processes. This is documented in the GNU Make manual. You do not need any special demo project for this. Just take any existing Automake project written in C or C++, and use these compilation flags in configure.ac : AM_CFLAGS="-flto=jobserver" AM_CXXFLAGS="-flto=jobserver" If you run the makefile with "make -j 2", GCC will receive environment variable MAKEFLAGS with a setting like "--jobserver-fds=xxx", but GNU Make will close the file descriptors mentioned there before executing the rule and running GCC. This issue is not visible in GCC yet due to this bug I reported: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94330 I am not sure how I can demonstrate this in a project, there is not actually much to demonstrate. This is not just an issue while linking. Like I said, any stage, including compilation of a single object file, could use the GNU Make jobs server. So there should be a global option in Autoconf or Automake to prepend a '+' to all generated rules. In fact, you would have thought that this should be the default, because any tool, at any stage, could decide in the future to go multithread, and there is no reason to ignore an existing GNU Make job server to limit the overall system load. Regards, rdiez
X-Loop: help-debbugs@HIDDEN Subject: bug#45756: Prepending '+' to the recipe line when linking with GCC's -flto=jobserver Resent-From: Nick Bowler <nbowler@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-automake@HIDDEN Resent-Date: Thu, 04 Feb 2021 23:13:02 +0000 Resent-Message-ID: <handler.45756.B45756.161248035829520 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 45756 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: "R. Diez" <rdiezmail-temp2@HIDDEN> Cc: 45756 <at> debbugs.gnu.org, automake@HIDDEN, Karl Berry <karl@HIDDEN> Received: via spool by 45756-submit <at> debbugs.gnu.org id=B45756.161248035829520 (code B ref 45756); Thu, 04 Feb 2021 23:13:02 +0000 Received: (at 45756) by debbugs.gnu.org; 4 Feb 2021 23:12:38 +0000 Received: from localhost ([127.0.0.1]:42478 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1l7nng-0007g2-Mn for submit <at> debbugs.gnu.org; Thu, 04 Feb 2021 18:12:38 -0500 Received: from mail-yb1-f178.google.com ([209.85.219.178]:37905) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <nbowler@HIDDEN>) id 1l7nnc-0007fm-HB for 45756 <at> debbugs.gnu.org; Thu, 04 Feb 2021 18:12:36 -0500 Received: by mail-yb1-f178.google.com with SMTP id i6so4909953ybq.5 for <45756 <at> debbugs.gnu.org>; Thu, 04 Feb 2021 15:12:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=draconx-ca.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=h6n7ZyJvvvt+foHTstcBgp/PgpjMQrYEKDWeS4NmQ44=; b=epEfzc3GCD4kXLOWe3b3vH0d86Iwd2G9l9tfbSL5YfJ/Ynkdr6QuoSMBDhN9x/SStd rmo2vhTOCPyLfT3lkf9LXt8DPimQGSAjTxFd1TZ8rBeRwC9YwicA0FrjHgoTIwsC3gh0 Zzyp/1Jav4c8iaELxNdNgZD6J+Xz9pIddEDtDdT54y4xx5ol7+EG+u/mVnuyTIOpMqSG 5Zz7d5AqhZxvMFt+3k6HT0b5POzSrSolcJuFLwKPoDvEWDLpbFiQyG6Fu4L2jr+ZXoze fM8/TEnmUXwEKNPvmqxwK7LWLMKcZx6ospaIX6B01XWwDCGlAEwDGREd+U2p0ekWIwz7 T1og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=h6n7ZyJvvvt+foHTstcBgp/PgpjMQrYEKDWeS4NmQ44=; b=B2T7kOyUcpWYFXN5mXMx/wnPiaCpv8oRIMx8yumv2KoZedFOJcBALFVnrfNx+PLycb /xGy847j+lPrhPfG7UOxkAmDDzGK2S7JvfK7JBKHSXxpmUTt8TPGRC6ap9con7Jtn8Tb iNAyIjcNwDtR1cuoN4J3T+93fhozVGmZDlRG5p9P2bH5Mhg44tjaOX8Id0++z7+UmQ1g uSgdyIWAWTU6EspifTFkoFK8rHHeiamRJRt28KDGA4ysIz3H6nxHPAn8IUtqG4q+FYhK Rb2KsL0uH2gwP9Li0roFenTTqNk/g+Mz/guK+fEhxmWXW2sm3qdtsXmJGO0PvfeRtGhZ OyGg== X-Gm-Message-State: AOAM531Y5Fqlw/EdggrPUbxQBAS0ETpqzZyGHcbGVsQIfKzShjS08PiH k7iy4+C4HZ5HNroGN+TxwqKNZMF5pABkERUSaz089A== X-Google-Smtp-Source: ABdhPJw40vNT8aAQxqDix5Tfx4hk35jIS4yy3SZNmyLavkpzaYJqi14i6vUy90KtBQBh0AhSuuxua786T7hF+JCMKko= X-Received: by 2002:a25:3007:: with SMTP id w7mr2266189ybw.495.1612480346745; Thu, 04 Feb 2021 15:12:26 -0800 (PST) MIME-Version: 1.0 Received: by 2002:a25:b912:0:0:0:0:0 with HTTP; Thu, 4 Feb 2021 15:12:26 -0800 (PST) X-Originating-IP: [24.53.240.163] In-Reply-To: <c71b8e0b-ebd1-e74c-e1c9-bcdb1763d31b@HIDDEN> References: <202101070206.10726GLY031505@HIDDEN> <c71b8e0b-ebd1-e74c-e1c9-bcdb1763d31b@HIDDEN> From: Nick Bowler <nbowler@HIDDEN> Date: Thu, 4 Feb 2021 18:12:26 -0500 Message-ID: <CADyTPEwuCvDCj7-Tjgctt=VvQnRK6TQkKwHv9acCvnA1YoGP3A@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) On 2021-01-09, R. Diez <rdiezmail-temp2@HIDDEN> wrote: > [Resending in hopes it will attach to the new bug. --karl] > >> [...] >> At any rate, it would be extremely helpful to have a minimal-as-possible >> runnable (automake-able) example showing the case where the + needs to >> be prepended. rdiez, can you create such a mini-project? > > [...] > > I normally use Autoconf, and I do not understand very much the separation > between Autoconf and Automake. I do not know who is responsible for the > generation of the makefile rules to link the executable. Either Autoconf or > Automake must decide that GCC is not just used for compiling each object > file, but also for linking, and that rule is not visible in the makefile.am > file. > > Of course, such a linking rule does not user $(MAKE), and there is no '+' > prefix, so the GNU Make jobserver file descriptors will not be passed to > child processes. This is documented in the GNU Make manual. > > You do not need any special demo project for this. Just take any existing > Automake project written in C or C++, and use these compilation flags in > configure.ac : > > AM_CFLAGS="-flto=jobserver" > AM_CXXFLAGS="-flto=jobserver" > > If you run the makefile with "make -j 2", GCC will receive environment > variable MAKEFLAGS with a setting like "--jobserver-fds=xxx", but GNU Make > will > close the file descriptors mentioned there before executing the rule and > running GCC. This issue is not visible in GCC yet due to this bug I > reported: > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94330 > > I am not sure how I can demonstrate this in a project, there is not actually > much to demonstrate. > > This is not just an issue while linking. Like I said, any stage, including > compilation of a single object file, could use the GNU Make jobs server. So > there should be a global option in Autoconf or Automake to prepend a '+' to > all generated rules. This issue has come up from time to time. I think I wrote something on it recently. think everyone can agree that a solution to this problem is desirable. However simply prepending "+" to commands is not practical for Automake to do because "+" has way more effects than just keeping the jobserver fds open. In particular, it will completely break "make -n". A configure option to allow the user to enable this (rather than an automake option) would probably be a simple and acceptable way to get things at leas working, even if it's not an "ideal" solution. Another possibility is for a "+"-prefixed command to check MAKEFLAGS to see if options like -n that suppress command execution were used (Automake already has to do this sort of thing in some rules). Since I believe the jobserver feature is exclusive to GNU make, I imagine it would also be possible to make use of GNU make substitution features to only add the "+" when make options that suppress command execution are omitted. This could probably be done in a manner that is interoperable with other make implementations and would likely perform better than shell tests inside commands. Finally this issue could also probably be solved by changing GNU make itself: providing another mechanism to keep jobserver fds open in rules. Cheers, Nick
X-Loop: help-debbugs@HIDDEN Subject: bug#45756: Prepending '+' to the recipe line when linking with GCC's -flto=jobserver References: <670366fc-a125-55cd-7908-c36087f54c3f@HIDDEN> Resent-From: Karl Berry <karl@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-automake@HIDDEN Resent-Date: Sat, 06 Feb 2021 22:38:02 +0000 Resent-Message-ID: <handler.45756.B45756.16126510575447 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 45756 X-GNU-PR-Package: automake X-GNU-PR-Keywords: To: nbowler@HIDDEN, automake@HIDDEN, 45756 <at> debbugs.gnu.org Received: via spool by 45756-submit <at> debbugs.gnu.org id=B45756.16126510575447 (code B ref 45756); Sat, 06 Feb 2021 22:38:02 +0000 Received: (at 45756) by debbugs.gnu.org; 6 Feb 2021 22:37:37 +0000 Received: from localhost ([127.0.0.1]:46599 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1l8WCv-0001Pn-Ih for submit <at> debbugs.gnu.org; Sat, 06 Feb 2021 17:37:37 -0500 Received: from freefriends.org ([96.88.95.60]:49240) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <karl@HIDDEN>) id 1l8WCt-0001PZ-W6 for 45756 <at> debbugs.gnu.org; Sat, 06 Feb 2021 17:37:36 -0500 X-Envelope-From: karl@HIDDEN Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 116MbYTX018726 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sat, 6 Feb 2021 15:37:35 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 116MbXul018725; Sat, 6 Feb 2021 15:37:33 -0700 Date: Sat, 6 Feb 2021 15:37:33 -0700 Message-Id: <202102062237.116MbXul018725@HIDDEN> From: Karl Berry <karl@HIDDEN> In-Reply-To: <CADyTPEwuCvDCj7-Tjgctt=VvQnRK6TQkKwHv9acCvnA1YoGP3A@HIDDEN> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) Hi Nick - thanks for the reply on this. It all sounds sensible. Finally this issue could also probably be solved by changing GNU make itself: providing another mechanism to keep jobserver fds open in rules. Clearly that would be great. On the Automake side, I just don't have the desire to work on this issue. I'm happy to apply a patch if you or anyone has a reasonable improvement, but I'm not going to come up with it on my own, unfortunately. --thanks, karl.
Received: (at request) by debbugs.gnu.org; 6 Feb 2021 22:37:40 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 06 17:37:40 2021 Received: from localhost ([127.0.0.1]:46601 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1l8WCx-0001Pw-OT for submit <at> debbugs.gnu.org; Sat, 06 Feb 2021 17:37:39 -0500 Received: from freefriends.org ([96.88.95.60]:49242) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <karl@HIDDEN>) id 1l8WCu-0001Pg-Q0 for request <at> debbugs.gnu.org; Sat, 06 Feb 2021 17:37:37 -0500 X-Envelope-From: karl@HIDDEN X-Envelope-To: <request <at> debbugs.gnu.org> Received: from freefriends.org (freefriends.org [96.88.95.60]) by freefriends.org (8.14.7/8.14.7) with ESMTP id 116MbZb4018734 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for <request <at> debbugs.gnu.org>; Sat, 6 Feb 2021 15:37:36 -0700 Received: (from apache@localhost) by freefriends.org (8.14.7/8.14.7/Submit) id 116MbZt1018733; Sat, 6 Feb 2021 15:37:35 -0700 Date: Sat, 6 Feb 2021 15:37:35 -0700 Message-Id: <202102062237.116MbZt1018733@HIDDEN> From: Karl Berry <karl@HIDDEN> To: request <at> debbugs.gnu.org Subject: Re: bug#45756: Prepending '+' to the recipe line when linking with GCC's -flto=jobserver X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: request X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) tags 45756 + help confirmed
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.