From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gnu.wildebeest.org (gnu.wildebeest.org [45.83.234.184]) by sourceware.org (Postfix) with ESMTPS id 4FA993858D20 for ; Sun, 12 Nov 2023 16:19:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 4FA993858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=klomp.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=klomp.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 4FA993858D20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=45.83.234.184 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699805954; cv=none; b=AHhBMguBXeFc/PuvXK7Gx73kd5oT8pM5hfNfBq+QbGpdyfFU62j5JPSBxVppQMol+P/UanXzSH8U4XwYczNPBHUDWCA+lE7v/2KFg+ERXm4OH9a6nEuWuytYGrZF5Ml3BCRpVtRuzflXuRSU4VLixqjJFmGjntja0ij6sd6V2ic= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699805954; c=relaxed/simple; bh=2wgjCq2dyJ4YlczxEvUIa3oXRu6AzLRZY4+LdRk5wvU=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=CBzu/UOK7nHv+zGrMzcI1t5cyug6Kjrob8YLP5j2mEFVwFOLC1ni2p+vA45vgEKui1kjCqtLgIqsZqVmtlf8nmVsrxG/AFBHk+dmaChbC4UJdXP+6mljn7+7W2nsyWyACTCJ58ryHg7bnxCErzzjF9ngAR+/QjiiuXUGgy2oxis= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from csb.redhat.com (deer0x03.wildebeest.org [172.31.17.133]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by gnu.wildebeest.org (Postfix) with ESMTPSA id A920E302FDD8; Sun, 12 Nov 2023 17:19:10 +0100 (CET) Received: by csb.redhat.com (Postfix, from userid 10916) id 81D04CB959; Sun, 12 Nov 2023 17:19:10 +0100 (CET) From: Mark Wielaard To: buildbot@sourceware.org Cc: Mark Wielaard Subject: [PATCH] Add binutils-gdb-autoregen builder Date: Sun, 12 Nov 2023 17:19:06 +0100 Message-Id: <20231112161906.1539555-1-mark@klomp.org> X-Mailer: git-send-email 2.39.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3034.3 required=5.0 tests=BAYES_00,GIT_PATCH_0,JMQ_SPF_NEUTRAL,KAM_DMARC_STATUS,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Generalize the autoregen.py script by searching for 'configure.ac' instead of 'configure'. Skip "foreign" readline and minizip dirs. Make autoregen_step and git_diff_step generic, define early. Add binutils-gdb-autoregen builder to binutils_gdb_scheduler. --- builder/containers/autoregen.py | 6 ++++- builder/master.cfg | 47 ++++++++++++++++++++++++--------- 2 files changed, 39 insertions(+), 14 deletions(-) diff --git a/builder/containers/autoregen.py b/builder/containers/autoregen.py index 4ebf445..9315334 100755 --- a/builder/containers/autoregen.py +++ b/builder/containers/autoregen.py @@ -15,11 +15,15 @@ config_folders = [] for root, _, files in os.walk('.'): for file in files: - if file == 'configure': + if file == 'configure.ac': config_folders.append(Path(root).resolve()) for folder in sorted(config_folders): print(folder, flush=True) + # readline and minizip are maintained with different autotools versions + if (str(folder).endswith('readline') + or str(folder).endswith('minizip')): + continue; os.chdir(folder) configure_lines = open('configure.ac').read().splitlines() if any(True for line in configure_lines if line.startswith('AC_CONFIG_HEADERS')): diff --git a/builder/master.cfg b/builder/master.cfg index 0fef831..51c12b9 100644 --- a/builder/master.cfg +++ b/builder/master.cfg @@ -906,6 +906,7 @@ binutils_gdb_scheduler = schedulers.SingleBranchScheduler( branch="master"), reason="binutils-gdb project master branch update", builderNames=["binutils-gdb-fedrawhide-x86_64", + "binutils-gdb-autoregen", "binutils-gdb-clang-fedrawhide-x86_64", "binutils-gdb-gentoo-sparc"]) c['schedulers'].append(binutils_gdb_scheduler) @@ -1182,6 +1183,16 @@ make_distcheck_testsuite_step = steps.Test( logfiles={"testsuite.log": util.Interpolate('%(prop:package_name)s-%(prop:package_version)s/_build/sub/tests/testsuite.log')}) +autoregen_step = steps.ShellCommand( + command="autoregen.py", + name="autoregen.py", + haltOnFailure=True) + +git_diff_step = steps.ShellCommand( + command=['git', 'diff', '--exit-code'], + name="git diff", + haltOnFailure=True) + # Generic make clean step to be run at the end of a build make_clean_step = steps.ShellCommand( command=["make", "clean"], @@ -2470,6 +2481,13 @@ binutils_step_git = steps.Git( getDescription={'tags':True, 'always':True}, name="git checkout", haltOnFailure=True) +binutils_gdb_step_git = steps.Git( + repourl=binutils_gdb_repourl, + mode='full', method='fresh', + retryFetch=True, retry=(30,3), + getDescription={'tags':True, 'always':True}, + name="git checkout", + haltOnFailure=True) binutils_step_rm_build_dir = steps.ShellCommand( command=["rm", "-rf", util.Interpolate ("%(prop:builddir)s/binutils-build")], @@ -2598,6 +2616,11 @@ binutils_factory_gas_binutils.addStep(binutils_step_check_gas_binutils) binutils_factory_gas_binutils.addSteps(binutils_steps_bunsen_gas_binutils) binutils_factory_gas_binutils.addStep(binutils_step_rm_build_dir) +binutils_gdb_autoregen_factory = util.BuildFactory() +binutils_gdb_autoregen_factory.addStep(binutils_gdb_step_git) +binutils_gdb_autoregen_factory.addStep(autoregen_step) +binutils_gdb_autoregen_factory.addStep(git_diff_step) + binutils_debian_amd64_builder = util.BuilderConfig( name="binutils-debian-amd64", properties={'container-file': @@ -2799,6 +2822,15 @@ binutils_try_debian_testing_x86_64_builder = util.BuilderConfig( factory=binutils_factory_libctf) c['builders'].append(binutils_try_debian_testing_x86_64_builder) +binutils_gdb_autoregen_builder = util.BuilderConfig( + name="binutils-gdb-autoregen", + properties={'container-file': + readContainerFile('autotools')}, + workernames=vm_workers, + tags=["binutils-gdb-autotools", "debian"], + factory=binutils_gdb_autoregen_factory) +c['builders'].append(binutils_gdb_autoregen_builder) + # gdb build steps, factory and builders gdb_git_step = steps.Git( @@ -3384,16 +3416,6 @@ gcc_build_make_clean_step = steps.ShellCommand( command=["make", "clean"], name="make clean") -gcc_autoregen_step = steps.ShellCommand( - command="autoregen.py", - name="autoregen.py", - haltOnFailure=True) - -gcc_git_diff_step = steps.ShellCommand( - command=['git', 'diff', '--exit-code'], - name="git diff", - haltOnFailure=True) - gcc_factory = util.BuildFactory() gcc_factory.addStep(gcc_git_step) gcc_factory.addStep(steps.Configure( @@ -3441,12 +3463,11 @@ gcc_build_factory.addStep(gcc_rm_build_step) gcc_autoregen_factory = util.BuildFactory() gcc_autoregen_factory.addStep(gcc_git_step) -gcc_autoregen_factory.addStep(gcc_autoregen_step) -gcc_autoregen_factory.addStep(gcc_git_diff_step) +gcc_autoregen_factory.addStep(autoregen_step) +gcc_autoregen_factory.addStep(git_diff_step) gcc_autoregen_builder = util.BuilderConfig( name="gcc-autoregen", - collapseRequests=True, properties={'container-file': readContainerFile('autotools')}, workernames=vm_workers, -- 2.39.3