From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:700:3204::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id eGgPAekyk2UXwAAAkFu2QA (envelope-from ) for ; Mon, 01 Jan 2024 22:47:21 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id qHsLNegyk2UTgwEAe85BDQ (envelope-from ) for ; Mon, 01 Jan 2024 22:47:21 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1704145640; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:list-id:list-help:list-unsubscribe:list-subscribe: list-post; bh=2nF1VWVYKzXR7JiviyKgJzHL7O0sHS2qoSE+E7op3Ec=; b=rZroMs9pafAbJp896CBbT98mG1iUY32tSftWfJgY7AnRlxBbFEecmJd4/xtE98uQsV4faO 12AlmofHRSFS1jVyevUxeaff7CaP+FuOabNo1FQhpC16xOM9nVXM7ac9WDwD5R1NyXpV3z cAWYqqVg5ybrrYf0bRKDBdQyMtZw2tcWLe7ZjBG0IuY65h+1MpzpqbaTf2LubxZvly/s4B /6XT6deNFc/2z2W+RtNVPrTCdL89tkEAYZLBoPMw0QMbOQao7qI6DtQN5C8NFbOt+rT4GI BQjnXmIjvnc07BGeDwI/DcBzK/sw7NvcVlorxYz4JMezs6owZ4JHoEwmatzgFw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1704145640; a=rsa-sha256; cv=none; b=BHGgSfo/byVGMqtA0glB9AP37snB0ag46meS0tyoztMUBVt6jAfXT3Z+LPMQvEo/8pei+M D5kgktioct+Ssk1/tbcsVX4mBZlPykJ5dWkvjiWD4tno1RBqYStSAi1ZJ2JIJQVTMHfBNX iyYA2FiCR9Q/EbxDrqnyLbL1aApjYYjMsT6686tmXo2x90v8qkpLZL8jwi7X6zX9EWcM4L OuGqRO40DUnOg8k4q8/X10j3KTD8KGo2s6dc5nW383UX61gVOk8yGNEmY/NaJfvTAsPPJC vtv08TZJFFhZBN2I/Dn9pMOnLxMSpFVQVovaRiUur5/t8l0nv9H+Y8F9ZynNqA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=none Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 90153456DB for ; Mon, 1 Jan 2024 22:47:20 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rKQ7i-0007f1-NL; Mon, 01 Jan 2024 16:47:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rKQ7g-0007ee-V7 for bug-guix@gnu.org; Mon, 01 Jan 2024 16:47:00 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rKQ7g-0005d3-Mp for bug-guix@gnu.org; Mon, 01 Jan 2024 16:47:00 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rKQ7i-000217-LD for bug-guix@gnu.org; Mon, 01 Jan 2024 16:47:02 -0500 X-Loop: help-debbugs@gnu.org Subject: bug#68195: flite fails to build on core-updates Resent-From: Simon South Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Mon, 01 Jan 2024 21:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 68195 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 68195@debbugs.gnu.org X-Debbugs-Original-To: bug-guix@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.17041455695963 (code B ref -1); Mon, 01 Jan 2024 21:47:02 +0000 Received: (at submit) by debbugs.gnu.org; 1 Jan 2024 21:46:09 +0000 Received: from localhost ([127.0.0.1]:48859 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rKQ6q-0001Y0-FV for submit@debbugs.gnu.org; Mon, 01 Jan 2024 16:46:08 -0500 Received: from lists.gnu.org ([2001:470:142::17]:60752) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rKQ6p-0001MW-4q for submit@debbugs.gnu.org; Mon, 01 Jan 2024 16:46:07 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rKQ6f-0007Ez-Bx for bug-guix@gnu.org; Mon, 01 Jan 2024 16:45:57 -0500 Received: from mailout.easymail.ca ([64.68.200.34]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rKQ6c-0005Zy-6r for bug-guix@gnu.org; Mon, 01 Jan 2024 16:45:57 -0500 Received: from localhost (localhost [127.0.0.1]) by mailout.easymail.ca (Postfix) with ESMTP id 52C9D65896 for ; Mon, 1 Jan 2024 21:45:51 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at emo09-pco.easydns.vpn Received: from mailout.easymail.ca ([127.0.0.1]) by localhost (emo09-pco.easydns.vpn [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6YS7IW3oVS3y for ; Mon, 1 Jan 2024 21:45:50 +0000 (UTC) Received: from jupiter (23-233-96-210.cpe.pppoe.ca [23.233.96.210]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mailout.easymail.ca (Postfix) with ESMTPSA id 5AC0E65891 for ; Mon, 1 Jan 2024 21:45:50 +0000 (UTC) From: Simon South Date: Mon, 01 Jan 2024 16:45:44 -0500 Message-ID: <877ckssp6f.fsf@simonsouth.net> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=64.68.200.34; envelope-from=simon@simonsouth.net; helo=mailout.easymail.ca X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: bug-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -6.45 X-Spam-Score: -6.45 X-Migadu-Queue-Id: 90153456DB X-Migadu-Scanner: mx11.migadu.com X-TUID: lJcbx9hhZJyM On core-updates (4d1436b0ea65) the flite package is failing to build, with log output like making ../build/aarch64-linux-gnu/lib/libflite.so make[1]: *** No rule to make target 'flite_voice_list.c', needed by 'all'. Stop. make[1]: *** Waiting for unfinished jobs.... make: *** [config/common_make_rules:133: build/aarch64-linux-gnu/obj//.make_build_dirs] Error 2 This is caused by the upgrade to make 4.4 along with what appears to be an error in one of the project's makefiles. The workaround is to build flite with parallel build jobs disabled, using e.g. "./pre-inst-env guix build --cores=1 flite". The underlying issue appears to be a misuse of the ".NOTPARALLEL" special make target in the project's main/Makefile. Changing line 107 from .NOTPARALLEL: $(ALL) to simply .NOTPARALLEL: solves the problem: The entire project builds in parallel except for targets in the "main" subfolder, which are built serially instead. (These targets have to be built serially as they delete and re-create the same "flite_voice_list.o" object file in different ways.) With make versions 4.3 and earlier any prerequisites specified for ".NOTPARALLEL" ("$(ALL)" as shown above) were ignored, and make would unconditionally build all remaining targets in series. With make 4.4 this behaviour has changed and the prerequisites list is now honoured. However, this doesn't specify a list of targets to build serially, as it seems the flite authors expected. Rather, If the .NOTPARALLEL special target has prerequisites, then each of those prerequisites will be considered a target and all prerequisites of these targets will be run serially.[0] That is, it is the _prerequisites_ of the specified targets and not the targets themselves that are built serially. The targets themselves may still be built in parallel, which is how the upgrade to make 4.4 has caused this problem to appear. I'll add for completeness that getting clever and changing the makefile with something like notparallel: $(ALL) .NOTPARALLEL: notparallel doesn't work, as (for one reason or another) this doesn't sufficiently protect the targets from clobbering one another. -- Simon South simon@simonsouth.net [0] https://www.gnu.org/software/make/manual/html_node/Parallel-Disable.html