From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7119478902289858560 X-Received: by 2002:a05:6512:b82:b0:488:6aa6:509b with SMTP id b2-20020a0565120b8200b004886aa6509bmr15722149lfv.637.1657632855658; Tue, 12 Jul 2022 06:34:15 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:3a05:0:b0:25d:5514:2fc3 with SMTP id h5-20020a2e3a05000000b0025d55142fc3ls490150lja.4.gmail; Tue, 12 Jul 2022 06:34:14 -0700 (PDT) X-Google-Smtp-Source: AGRyM1ut1REFqbimP1DdKbyakeJnHqQG4TlffxjZzJQZ6lkO/a/wA0+yytRYjAz6P0IP24ui2UBV X-Received: by 2002:a2e:900e:0:b0:25d:5402:4ec8 with SMTP id h14-20020a2e900e000000b0025d54024ec8mr12408038ljg.103.1657632854484; Tue, 12 Jul 2022 06:34:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1657632854; cv=none; d=google.com; s=arc-20160816; b=SsGZyxkqAmkb+zOcXqzLUw4lGOAGfLKGw5ZCtbfOkmMgFVOqpTcsU5sEFb2N7RSdQR F0kRGUoh6so61WJJNIZ+sZtdxH4dNa2IZkmaq/ruiMMk29zgJ1k8ayz472YmOeBS6B5/ IWFexDwC8u67pIwzeHiFxXXINSZ1VohsTweWeucOC2VAXMlRBNeFSJ31FKeRCxR1HTOk 0J/7i46FKFskZIGEXeC6gH4gvRFs2x1sMj8Y6yD77z9f7izWUWLQzTOvk4wTMaDD5qCQ t5/jnwdiw5xxsXuikjKH1mOF/oSinw+SetFG2H0Mw5ebL7DjO416OtsCfun2RKSjqpx5 Zipg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=feedback-id:content-transfer-encoding:mime-version:message-id:date :subject:cc:to:from:dkim-signature; bh=LpDs5NrUZO9qWY87upK16gGPhelDNO8Gh1T4k5sfZ2Y=; b=ErgyO5XtZAkUO/XMKwUNmJoo3y6fGx2m6ulHR9SAJ6TA/TU02DrlJqKPlfwgd6pX2b 3ltdt2jKdAwN+cAdZQpdTFfyFfdgQ2D4UfjjYxfUxejL6MiKzME+6qeHFEovlMyAnNqW 1MmIHyxr4eqJRvD3p++y+40ChwX7UlU1vHC3lF69YwBAlcep6fkjeBSAN5JxVY3+qS/0 6u+aQYbwbBA4q5OkVk7hsT1x9+UsCKSwoqQYZ0gyvp+wGdKWMaGJnWmZwErt5PBa1SGE hG15bLq6sf48ztvJxPKhG/79XvpipJ60Pt1rdSMPR/mfqDFfndyIBRHUvTLgbiZhHJKg /UnA== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=P+9yhBGz; spf=pass (google.com: domain of fm-72506-20220712133413a7531bb8ec45d44ce5-e2ayqb@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-72506-20220712133413a7531bb8ec45d44ce5-e2Ayqb@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from mta-64-225.siemens.flowmailer.net (mta-64-225.siemens.flowmailer.net. [185.136.64.225]) by gmr-mx.google.com with ESMTPS id z14-20020a05651c11ce00b0025d50b414afsi319272ljo.4.2022.07.12.06.34.14 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 12 Jul 2022 06:34:14 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-72506-20220712133413a7531bb8ec45d44ce5-e2ayqb@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) client-ip=185.136.64.225; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=P+9yhBGz; spf=pass (google.com: domain of fm-72506-20220712133413a7531bb8ec45d44ce5-e2ayqb@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-72506-20220712133413a7531bb8ec45d44ce5-e2Ayqb@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: by mta-64-225.siemens.flowmailer.net with ESMTPSA id 20220712133413a7531bb8ec45d44ce5 for ; Tue, 12 Jul 2022 15:34:13 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=felix.moessbauer@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc; bh=LpDs5NrUZO9qWY87upK16gGPhelDNO8Gh1T4k5sfZ2Y=; b=P+9yhBGzI6u7YAMvCUdgLg2G4Ygz0XwuWr83Fe8vYTgjSYnZZFyO9NTrazx8dqoVsLIDQZ Ux3ScrjP8zGHPRFGOlhn4s9GnLnbu1s3F7ukNuVrco3/r00pjoEdpOjs6T+7Oni6BgU6szjx DY7CsJuLE1x1J2ogVQHKEKjhhR+40=; From: Felix Moessbauer To: isar-users@googlegroups.com Cc: jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH] add flag to enable ccache debug mode Date: Tue, 12 Jul 2022 15:34:03 +0200 Message-Id: <20220712133403.2386762-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-72506:519-21489:flowmailer X-TUID: TJ/H496YdSHR This patch adds the bitbake variable CCACHE_DEBUG which can be set to 1 to enable the ccache debug mode. Signed-off-by: Felix Moessbauer --- doc/user_manual.md | 4 ++++ meta-isar/conf/local.conf.sample | 2 ++ meta/classes/base.bbclass | 3 +++ meta/classes/buildchroot.bbclass | 2 +- meta/conf/bitbake.conf | 3 ++- 5 files changed, 12 insertions(+), 2 deletions(-) diff --git a/doc/user_manual.md b/doc/user_manual.md index 3faa8f17..546ae75c 100644 --- a/doc/user_manual.md +++ b/doc/user_manual.md @@ -1012,6 +1012,10 @@ adjusted by `CCACHE_TOP_DIR` variable in `local.conf`. Ccache directory `CCACHE_DIR` default value is `"${CCACHE_TOP_DIR}/${DISTRO}-${DISTRO_ARCH}"`, that means caches for different distros and architectures are not overlapped. +The ccache debug mode can be enabled by setting `CCACHE_DEBUG = "1"` +in the `local.conf`. +The debug artifacts will be placed in `${CCACHE_DIR}/debug`. + ## Using sstate-cache diff --git a/meta-isar/conf/local.conf.sample b/meta-isar/conf/local.conf.sample index 58f3e1a2..ce7b58ee 100644 --- a/meta-isar/conf/local.conf.sample +++ b/meta-isar/conf/local.conf.sample @@ -250,3 +250,5 @@ USER_isar[flags] += "clear-text-password" #USE_CCACHE = "1" # Uncomment and set own top level ccache directory to share between builds #CCACHE_TOP_DIR ?= "${TMPDIR}/ccache" +# Enable ccache debug mode +#CCACHE_DEBUG = "1" diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index 4ec2c813..e989f69f 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -174,6 +174,9 @@ def isar_export_ccache(d): if d.getVar('USE_CCACHE') == '1': os.environ['CCACHE_DIR'] = '/ccache' os.environ['PATH_PREPEND'] = '/usr/lib/ccache' + if d.getVar('CCACHE_DEBUG') == '1': + os.environ['CCACHE_DEBUG'] = '1' + os.environ['CCACHE_DEBUGDIR'] = '/ccache/debug' do_fetch[dirs] = "${DL_DIR}" do_fetch[file-checksums] = "${@bb.fetch.get_checksum_file_list(d)}" diff --git a/meta/classes/buildchroot.bbclass b/meta/classes/buildchroot.bbclass index 11489661..48b9f207 100644 --- a/meta/classes/buildchroot.bbclass +++ b/meta/classes/buildchroot.bbclass @@ -25,7 +25,7 @@ MOUNT_LOCKFILE = "${BUILDCHROOT_DIR}.lock" buildchroot_do_mounts() { if [ "${USE_CCACHE}" = "1" ]; then - mkdir -p ${CCACHE_DIR} + mkdir -p ${CCACHE_DIR}/debug fi sudo -s <<'EOSUDO' diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 6451cb59..48e3c8e9 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -100,7 +100,7 @@ BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH BBSERVER DL_DI SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM \ USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST \ PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE \ - CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_NOHASHDIR LICENSE_PATH SDKPKGSUFFIX \ + CCACHE_DIR CCACHE_DEBUG EXTERNAL_TOOLCHAIN CCACHE CCACHE_NOHASHDIR LICENSE_PATH SDKPKGSUFFIX \ WORKDIR STAMPCLEAN PKGDATA_DIR BUILD_ARCH SSTATE_PKGARCH \ BB_WORKERCONTEXT BB_LIMITEDDEPS DEPLOY_DIR BUILDCHROOT_DIR \ REPO_ISAR_DIR REPO_ISAR_DB_DIR REPO_BASE_DIR REPO_BASE_DB_DIR LAYERDIR_core \ @@ -133,6 +133,7 @@ INHERIT += "${@'buildstats' if d.getVar('USE_BUILDSTATS') == '1' else ''}" USE_CCACHE ??= "0" CCACHE_TOP_DIR ?= "${TMPDIR}/ccache" CCACHE_DIR ?= "${CCACHE_TOP_DIR}/${DISTRO}-${DISTRO_ARCH}" +CCACHE_DEBUG ?= "0" include conf/local.conf include conf/multiconfig/${BB_CURRENT_MC}.conf -- 2.30.2