From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id CA0281396D0 for ; Thu, 17 Aug 2017 08:36:58 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 676451FC016; Thu, 17 Aug 2017 08:36:52 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 18A83E0E3A for ; Thu, 17 Aug 2017 08:36:51 +0000 (UTC) Received: from localhost.localdomain (d202-252.icpnet.pl [109.173.202.252]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 896B9341749; Thu, 17 Aug 2017 08:36:47 +0000 (UTC) From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= To: gentoo-dev@lists.gentoo.org Cc: cluster@gentoo.org, robbat2@gentoo.org, toolchain@gentoo.org, suse@gentoo.org, llvm@gentoo.org Subject: [gentoo-dev] [RFC] [PATCH] dev-util/shadowman: Unified tool to update ccache/distcc/icecc shadow dir Date: Thu, 17 Aug 2017 10:36:29 +0200 Message-Id: <20170817083641.3507-1-mgorny@gentoo.org> X-Mailer: git-send-email 2.14.1 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Archives-Salt: 526da8be-f730-42e4-bf43-ec18120168b6 X-Archives-Hash: 0e5a923e38d7aec316ca29aeb2ff004e Hi, everyone. I've written a new tool called shadowman [1] that aims to partially replace the current *-config tools shipped with ccache, distcc, icecc and potentially more. Why? Because the existing tools are inconsistent, inconvenient and usually incomplete. The README [2] states a number of advantages: | 1. one usage syntax that works for all tools, | | 2. ability to update/clean masquerades for multiple tools in one call, | | 3. consistent (and *good*) implementation -- now all tools get the same | executable list, | | 4. reduced code duplication, | | 5. modular layout that allows adding extra tools/compiler wildcards | by third-party packages. This thread includes patches that: a. add the package for shadowman (skipping some bundled modules for external inclusion) -- for testing it's just a live ebuild with full keyword set; I will obviously change that before the final inclusion; b. adds shadowman support to ccache, distcc & icecream packages (preserving the old utilities for compatibility), c. adds shadowman update call to toolchain.eclass & clang ebuilds so that the masquerades get updated automatically on gcc/clang upgrade. Please review. Alternatively available as PR on GitHub [3]. [1]:https://github.com/mgorny/shadowman [2]:https://github.com/mgorny/shadowman/blob/master/README [3]:https://github.com/gentoo/gentoo/pull/5386