From: Mike Gilbert Date: Sun, 21 Dec 2014 15:30:09 +0000 (+0000) Subject: ccache-config: Source /lib/gentoo/functions.sh, bug 504380. X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=4e10fb2945749b59dfd3e43bfa4183c2e542be92;p=gentoo.git ccache-config: Source /lib/gentoo/functions.sh, bug 504380. Package-Manager: portage-2.2.15/cvs/Linux x86_64 Manifest-Sign-Key: 0x0BBEEA1FEA4843A4 --- diff --git a/dev-util/ccache/ChangeLog b/dev-util/ccache/ChangeLog index 01cceefa0cc8..173dc0e49939 100644 --- a/dev-util/ccache/ChangeLog +++ b/dev-util/ccache/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-util/ccache # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/ccache/ChangeLog,v 1.144 2014/12/12 07:32:40 jlec Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-util/ccache/ChangeLog,v 1.145 2014/12/21 15:30:06 floppym Exp $ + +*ccache-3.2.1-r1 (21 Dec 2014) +*ccache-3.1.9-r4 (21 Dec 2014) + + 21 Dec 2014; Mike Gilbert +ccache-3.1.9-r4.ebuild, + +ccache-3.2.1-r1.ebuild, +files/ccache-config-3: + ccache-config: Source /lib/gentoo/functions.sh, bug 504380. *ccache-3.2.1 (12 Dec 2014) diff --git a/dev-util/ccache/Manifest b/dev-util/ccache/Manifest index 44b950ce4309..58bf8934fee1 100644 --- a/dev-util/ccache/Manifest +++ b/dev-util/ccache/Manifest @@ -1,5 +1,5 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA512 +Hash: SHA256 AUX ccache-2.4-profile.patch 1069 SHA256 7cd6e8fcd2fc90aac484ff83c1181c82eca4ec3e2d568c10025f67ac751a6794 SHA512 0bf467d058ea0aacb19a8c768109582e5ed7178926548304eee0c5e86cc74bcfe3aff64b1ee1d22701e2a3ffb7ffa4e13b7ddf25eb640fbdcf1cdf4844047c16 WHIRLPOOL c2e8756288cac5a57f5b04e2502474ba9a86552d18281e57830fa679130bc5050b69bbe5d48cdc647a1164955314731a51c2ad0ef546307e5415f62614e46ead AUX ccache-2.4-respectflags.patch 403 SHA256 f7006cc34ecc8315b023d4533273d47a7a34958e7037242811a58ee8570efbd5 SHA512 f05ebbfc30a71d0f9e2182364a9c0fed2ffe4cd382f2ff19bb2d6311d2ec086452804253aea485aea36a70871b35cf6b88e1e55260cdb898aaa8755644ba7f8a WHIRLPOOL 809a6841dd4ca9ab35fddd5258dc5781d1ebf11d7e412b7aa7611135b5aeb8fe01bd5bb2c4f1f26fef076d4c1edb34bed53870c193dd75d0d69e4c14d1fef581 @@ -11,6 +11,7 @@ AUX ccache-3.1.7-no-perl.patch 400 SHA256 5784419b79e89bda1bf0a8d053c26c9d798dc8 AUX ccache-3.1.9-test-gcc-4.8.patch 5157 SHA256 da673ec98db54c2fee09585ffe4ac4fde3d9867a9a66f0064f8de4d7409644c1 SHA512 44cb88357b1fece0869463c4819422823d8025be577dc50eaeb435a3675c033c56e1dc0474b505830b229de7f8bd92cd6833eae72830d89a2e4a89b8a46aed6f WHIRLPOOL 88d61b411367808e0239a949e01742ed2204e8212a4af8dd919f4d6335a040769d9b33ea2e1c1b71eba69c25b81f1417d717bcb6dd4799a9d276a0ec7bfe00ff AUX ccache-config 2222 SHA256 02df1f8f5fbd07c0eab09f18a51c357525953163391adc95ed5e46c813bffdd0 SHA512 58a635bcfb1a682b36a67e70ecad29912fd1e5cca20ebbd1a89912b97f18ada204cf24f2bb88ddce985ab3423a94d34e2322a08f1dc0d8bd17a4b77bbcd66282 WHIRLPOOL 87086954357d3e09e7fa75395ef02a84d86fb1d74caa3d117c5bca80d1531f1b454ef715678972893fd82be43a3e3efbc8c81a14a3520dd3b84eb7141c06277d AUX ccache-config-2 2147 SHA256 775a4fb6f14b03bfb7a396521a7fc6606cbd84308e68712aa61139a8fddea573 SHA512 339e413cedf69cb0ca96f10b80a4959762bc02b4d0c265ecec4b16550f935574537799f624a553ac157c003d02b331283d9b21924676551ffe8a9ad72335d11e WHIRLPOOL 615ff8214549011bef667809c47611a0067d16a045273114e972cc7623c20f5b53cb32c5f69dcb2de396e8f3f5c41ca47d623a91d7eb6189caaae28e81ab24ac +AUX ccache-config-3 2147 SHA256 9b87028bf3aae546251be72b438e9ef615a9986771cb5e7e64b2ba1dc2ff927c SHA512 05d512b001b6a2fdc947d10d810c89683144080a060c24a37422e9b587594e1ee42fa1d7607461571f196819dae92146d861e8ae116e9226e1ff97ea035b3003 WHIRLPOOL 321d4f4d28c447836b3c9bd75f1d6b564b06903a7df7139df3b27695c20f07cc3045655b3eb826418edac5b4c9fd0c7558f7b8764ea025438b352d6528e0af93 DIST ccache-2.4.tar.gz 86363 SHA256 435f862ca5168c346f5aa9e242174bbf19a5abcaeecfceeac2f194558827aaa0 SHA512 6ab05f74eba5c0a7472a3d53cfa6c24e45f421f2c773776f713a46121eda21213deb34fcef214d4f8d2e756cd375637e4639a9bdfeb6b9a44455c5bcca246b19 WHIRLPOOL eb308222713d17f52f88ac97a5c63add454b350d60259d1d2238e3b54f1e80ad8c8700e0e045b40aa5be64b1db54846a86da600436778a64d2270efff7763380 DIST ccache-3.1.1.tar.gz 324042 SHA256 eb0b37e25ecfdf1262e0da7fc5f01d986923589803c230dcb7213ecbead3aed1 SHA512 de1d3b6d32df08db28a6ef99ec6ce7c5d5957d7c54a0cfc6df303979eedcc198c09ca7bdd0dd1546350f83cbd87a08fa734d6f6a04272926741ef2efbf2a596f WHIRLPOOL acf700b1ede0cbf312dcfd825191aa5a16dd8a1e18669eac6a9cdc4805d92e024bf5811c5fe77dc51a9311cff2a52c72dd16ea0b81656aa554e027abda5b00c9 DIST ccache-3.1.10.tar.xz 240932 SHA256 88439f43d3b426ab435afdf69a808511bada4de3a8a9527426bc4fbf6cb02857 SHA512 6a1c77161ec97b556a8c58592e2d6bba8e3d43cc039de3ebaa2a80fb92ae54bb7bad58eb011f52b750e29aadb0ed208220fb67d30deaf6c64aa4cfab31937fed WHIRLPOOL 5d527d986ba14a6312f82df277d7de47757bb43b7bcaf9eb6cbdbf337af862726f1f85ff7c352d0ad54344d98a8d8dc538e43de05976cdd29710b72917b42106 @@ -39,26 +40,16 @@ EBUILD ccache-3.1.7.ebuild 1868 SHA256 91c6bac92477d375382baea491d86ceb4c9e722c5 EBUILD ccache-3.1.8.ebuild 1828 SHA256 c8cb4b4b93ad0e34cbcd2cb53da63f2c0856c5ed729d8bc7b5385a518f2fa0c9 SHA512 c258db009169e10408d5e12b6f6e111666df1d3f6a8024d3f519529a43bd0c67a915bcf36ed6951e7953c049f2009c2165a1f2f029a94d757cddff237d35531d WHIRLPOOL 8041198c0861f7f430bbd0f7837201d6aa56cf3dd4effef75be70c5f72c3e665a68c40b70c41a93df6862a7b42d208a4bf3206c0132a820edc4cee6fbb81983b EBUILD ccache-3.1.9-r2.ebuild 2414 SHA256 8ce6c043db2f19f2e02793cc0a7d96d638eac980f5010b0ebf787a701199feff SHA512 4b42ccdaf4e6af712185cad5d4976d0f78ef77b6a3d7f7dc676181bc7a1ebf60a49d4b51cbb18f53d802b537a17f633bef03c90513342293b318dc21c7b06474 WHIRLPOOL a1a6da113df674fec5da42d8febc6d79755cf3b5570c36644139dac3c016ba7f531b42e082f0b1d4ad585c3a6cde00471857d17684afdbf189f8fc7e95746cf3 EBUILD ccache-3.1.9-r3.ebuild 2311 SHA256 a04470ec13d50277af4172058764ba0ca27ff5fc4bb601088959fd7978eca018 SHA512 293a645353e3a560d68b4ddba5d77c1a6a54fa23160559cc7465b37de601c5381aab9d44440c597dcd6cb52eb8487a56b6246c14e084808b48c154a257439e4f WHIRLPOOL 23534b4af2242cc1aa6d2c8bf0a2c6bff157f6603c0c86ffde781897af3e8d0e1d0c359d3b909b51c0fec39a7b8d3d2f231b392f5bc121800b390e4a302706e1 +EBUILD ccache-3.1.9-r4.ebuild 2353 SHA256 252743be2a2f6e275113d0f19d357eee5797c6caff0dc6164273d67aa1aa4071 SHA512 b887196577ba3b441cc843880b401872989b2fe8d594461c80d6c82d726e74f2e26386d1427a1025589e11095f361ed6793b8e5f445cd3fc5a1690f1b04d682e WHIRLPOOL 5bb2f4ef3ad340b24ff89fe0b50c77b1a22cdf027a5334085d301b51aa22f527ca9931ffe61df44b8de72b13c4b8ce26f3bade3ca99687367b44d83df4d38d4f EBUILD ccache-3.1.9.ebuild 1930 SHA256 10c374f8e0896172880bf9a7e93351c8f5676e20a9d050b9e3b1a93e76bf1411 SHA512 4a2f148cfe8526fb9fa70b0b9339810af2811ba7d077a90fdc8b8b2280ea80a4790c9e475344f88bde4e01dbeb93ffa429d8e2d417537006201abd1eb2057284 WHIRLPOOL 104505aaf61b01fc384ff8e6118dfe51fd29b50f4c541a8cf31168a661f8216735368ea280b7e1e9bde640bf5f853e45d12cb321cde648f61578ee82a08e1721 +EBUILD ccache-3.2.1-r1.ebuild 2245 SHA256 86f0f4f1d25623c8d82ecaa0ac047bf0864e32c191f09dbad51329a6d2d7615e SHA512 867eecdd7ab7c5a168cdf9000cdd08d838fba88fa909e2d65c5438dd6c426285a2d54527a47de70ef1a7813a4fb4610b0c109e0bef6bd1de0a5ee7f0b170fb5e WHIRLPOOL 50095e6c0078490cd724bc3809ab96956f8d93bc25ab755468d5ae3fe8d33afa3d985338b0a2366fa749610bb1e09f2188dd92676758f951fdf12c894e297a8d EBUILD ccache-3.2.1.ebuild 2213 SHA256 0f235cb087cf1774fe3864f2ce0d67ef59f840238c0c15639d84cec7a0c36d56 SHA512 acf1767e4fa032ebbb8d9420a15dda2fbc320538bd7c1fb00afa36b4f5468e31ea44b7e952105cae9012f93c22d43b1ffd9173f3c045d6ffa6cb41f9fb8599f7 WHIRLPOOL 3919ee0c689ef2de322d7edc37a048e123cdc410c4afafc85802e3d6d39370a0c75cb19117a121c0bae17c13342e9b14a5c0b615dd4c01a4ddc10d4da5fed853 -MISC ChangeLog 18560 SHA256 2cf068f99eb59f73bb7ef8b98a171b8d99ce3010aea56628f2b80df319385e28 SHA512 61bb1df78f59272bfde6de628255879274da8c30fe9fa39acbbbdc304b435dabe7bf606b5b2fc49716892fa469834c0a46dd8bc031c10a72d39cadd8b6c55040 WHIRLPOOL 5efd3540089578f073f8c4f20d13859f6870fa56a7875c35e2a0f420ea02fc8aa66fcf676890ced96166123ceee0de404f5170e96797f681c3c77090f0356b15 +MISC ChangeLog 18814 SHA256 029ed22e5c0eec064364fdbd267f651b90ee91a9edc82c822ac6bf73ac0ba1b5 SHA512 8b3133def454c036e5ec6c38577803adad97d0a7edb615f4230c29cd3ae3270ce479fe1b6c217794466f77a73de859afdbceb0315cc649b09666dd2c61469576 WHIRLPOOL 1963a2b3aae102e91222a09ec5432182a5634b83606af9d6a44cf766de62e37cc4eba99ff79f54f7384a3e849437b2bbb7a3299eb9d700a6c881b042ac251284 MISC metadata.xml 418 SHA256 32bc83c47bf71f7b4b9ba775fe6912a973e5561257bc02e2ba8d44ea596786c8 SHA512 f5e288e9a8fa9007e8f6704e12235e1c73ad887102813ca0a573ada97304b8f4d4956c9bd9041c73d90e4b4a328b317e2aa51a026edff7f54f203a802045895f WHIRLPOOL b8ff848f8911f74c5dc3610d4fae4645ef02004b6d0c72219c5ed8e20964dac58a94275099af02e8d820c3fa533c321aef0aba6c79b31976c398f7ee55a1cc80 -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0 +Version: GnuPG v2 -iQJ8BAEBCgBmBQJUipoZXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w -ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQyQ0JDQjFGMzBDQ0UxMjFGNENDNDgxMDdC -OUQ0RjIzMUJEMTU1OEFCAAoJELnU8jG9FVir8LgP/iaEiEfa+Pe8eK+VLUQVSCkk -3y4IMHLT64BnXu+mkC5y/LE/pahtBtxRYDTAYI0xkD8oj6iF/zilhjD922KYpuL7 -c6kQStXTHVZ1IeDl8YdwcOqUmGi566KTREDcaJOWuI4QThlQSP9OJTXLCk10IX19 -nG/QfztP+hzxrc6EwOzxxjig4a4eH9Z4qA3mvdKsc5+uL6wCtyJuQux2snk4F8T+ -LfJVAcuk+PYYqnK72F1EmAT/h9DX9lG1yp2Hwe3ahlYitmVRLMHDp861iL3qJ9T0 -2v7LypMqLr1p9z42AFIYpql6NS4yUehM7QRClP0hkhuAUtwiWacdyhfHYydxMn/Q -kLn/BBB1e9+o3KfDmJRiHvPT1owsF+T9vhbXF9XrDYbKvQZs2yCUBITLQeF427aJ -D2DKHKPv53QvRDjSBSY+Z478TKycLPMnuhuP7RnqnjlN4UDZZXcbRwa9yHFWROxZ -wzPkAuWKjIcmm89SgLY2hikUhS3MSZ9sXbY4/klWGZeD3TSByLnD+fAwP2XXBLaN -3EzRpv4IEVARoO2AiYHZ4lvJf3r8hspt9W2WbW3dEESm2lAnTzSuMQDpenOXHV48 -9+5vU/grZ6JcT93nDkqlweB8Yt+Ns55IZAK5nY1uuTQ101izyTSKesOxuUcqFHQO -6adhTmPQaBQ0p9rrxT0Z -=jciL +iF4EAREIAAYFAlSW54AACgkQC77qH+pIQ6TMpQD7BbdABJLF0pXlZESiWbdh10nT +XX00V/n9d1aS2NnbcyQA/jR879oT4fQBwOjkzsUnk/ArzCE/f1kOoAnZbtgRxD4t +=cAbT -----END PGP SIGNATURE----- diff --git a/dev-util/ccache/ccache-3.1.9-r4.ebuild b/dev-util/ccache/ccache-3.1.9-r4.ebuild new file mode 100644 index 000000000000..9e2876c69036 --- /dev/null +++ b/dev-util/ccache/ccache-3.1.9-r4.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/ccache/ccache-3.1.9-r4.ebuild,v 1.1 2014/12/21 15:30:06 floppym Exp $ + +EAPI="4" + +inherit multilib eutils readme.gentoo + +DESCRIPTION="fast compiler cache" +HOMEPAGE="http://ccache.samba.org/" +SRC_URI="http://samba.org/ftp/ccache/${P}.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="" + +DEPEND="app-arch/xz-utils + sys-libs/zlib" +RDEPEND="${DEPEND} + sys-apps/gentoo-functions" + +src_prepare() { + # make sure we always use system zlib + rm -rf zlib + epatch "${FILESDIR}"/${PN}-3.1.7-no-perl.patch #421609 + epatch "${FILESDIR}"/${P}-test-gcc-4.8.patch #461966 + sed \ + -e "/^LIBDIR=/s:lib:$(get_libdir):" \ + -e "/^EPREFIX=/s:'':'${EPREFIX}':" \ + "${FILESDIR}"/ccache-config-3 > ccache-config || die +} + +src_install() { + default + dodoc AUTHORS.txt MANUAL.txt NEWS.txt README.txt + + dobin ccache-config + + DOC_CONTENTS=" +To use ccache with **non-Portage** C compiling, add +${EPREFIX}/usr/$(get_libdir)/ccache/bin to the beginning of your path, before ${EPREFIX}usr/bin. +Portage 2.0.46-r11+ will automatically take advantage of ccache with +no additional steps. If this is your first install of ccache, type +something like this to set a maximum cache size of 2GB:\\n +# ccache -M 2G\\n +If you are upgrading from an older version than 3.x you should clear all of your caches like so:\\n +# CCACHE_DIR='${CCACHE_DIR:-${PORTAGE_TMPDIR}/ccache}' ccache -C\\n +ccache now supports sys-devel/clang and dev-lang/icc, too!" + + readme.gentoo_create_doc +} + +pkg_prerm() { + if [[ -z ${REPLACED_BY_VERSION} ]] ; then + "${EROOT}"/usr/bin/ccache-config --remove-links + "${EROOT}"/usr/bin/ccache-config --remove-links ${CHOST} + fi +} + +pkg_postinst() { + "${EROOT}"/usr/bin/ccache-config --install-links + "${EROOT}"/usr/bin/ccache-config --install-links ${CHOST} + + # nuke broken symlinks from previous versions that shouldn't exist + rm -f "${EROOT}/usr/$(get_libdir)/ccache/bin/${CHOST}-cc" + [[ -d "${EROOT}/usr/$(get_libdir)/ccache.backup" ]] && \ + rm -rf "${EROOT}/usr/$(get_libdir)/ccache.backup" + + readme.gentoo_print_elog +} diff --git a/dev-util/ccache/ccache-3.2.1-r1.ebuild b/dev-util/ccache/ccache-3.2.1-r1.ebuild new file mode 100644 index 000000000000..bdeb65603a07 --- /dev/null +++ b/dev-util/ccache/ccache-3.2.1-r1.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/ccache/ccache-3.2.1-r1.ebuild,v 1.1 2014/12/21 15:30:06 floppym Exp $ + +EAPI=5 + +inherit eutils readme.gentoo + +DESCRIPTION="fast compiler cache" +HOMEPAGE="http://ccache.samba.org/" +SRC_URI="http://samba.org/ftp/ccache/${P}.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="" + +DEPEND="app-arch/xz-utils + sys-libs/zlib" +RDEPEND="${DEPEND} + sys-apps/gentoo-functions" + +src_prepare() { + # make sure we always use system zlib + rm -rf zlib || die + epatch "${FILESDIR}"/${PN}-3.1.7-no-perl.patch #421609 + epatch "${FILESDIR}"/${PN}-3.1.10-size-on-disk.patch #456178 + sed \ + -e "/^EPREFIX=/s:'':'${EPREFIX}':" \ + "${FILESDIR}"/ccache-config-3 > ccache-config || die +} + +src_install() { + DOCS=( AUTHORS.txt MANUAL.txt NEWS.txt README.txt ) + default + + dobin ccache-config + + DOC_CONTENTS=" +To use ccache with **non-Portage** C compiling, add +${EPREFIX}/usr/lib/ccache/bin to the beginning of your path, before ${EPREFIX}usr/bin. +Portage 2.0.46-r11+ will automatically take advantage of ccache with +no additional steps. If this is your first install of ccache, type +something like this to set a maximum cache size of 2GB:\\n +# ccache -M 2G\\n +If you are upgrading from an older version than 3.x you should clear all of your caches like so:\\n +# CCACHE_DIR='${CCACHE_DIR:-${PORTAGE_TMPDIR}/ccache}' ccache -C\\n +ccache now supports sys-devel/clang and dev-lang/icc, too!" + + readme.gentoo_create_doc +} + +pkg_prerm() { + if [[ -z ${REPLACED_BY_VERSION} ]] ; then + "${EROOT}"/usr/bin/ccache-config --remove-links + "${EROOT}"/usr/bin/ccache-config --remove-links ${CHOST} + fi +} + +pkg_postinst() { + "${EROOT}"/usr/bin/ccache-config --install-links + "${EROOT}"/usr/bin/ccache-config --install-links ${CHOST} + + # nuke broken symlinks from previous versions that shouldn't exist + rm -f "${EROOT}"/usr/lib/ccache/bin/${CHOST}-cc || die + rm -rf "${EROOT}"/usr/lib/ccache.backup || die + + readme.gentoo_print_elog +} diff --git a/dev-util/ccache/files/ccache-config-3 b/dev-util/ccache/files/ccache-config-3 new file mode 100644 index 000000000000..7f604f0016ef --- /dev/null +++ b/dev-util/ccache/files/ccache-config-3 @@ -0,0 +1,97 @@ +#!/bin/sh +# +# ccache-config - helper script for ccache and its ebuild +# +# Copyright 2003-2014 Superlucidity Services, LLC +# Copyright 2013-2014 Gentoo Foundation +# This program licensed under the GNU GPL version 2. +# +# This script developed by Zachary T Welch at Superlucidity Services, LLC +# it was cloned from the distcc-config script +# +# Additional features to come; this provides a starting point + +EPREFIX='' + +. "${EPREFIX}"/lib/gentoo/functions.sh 2>/dev/null || { + ebegin() { echo " * $* ..."; } + eend() { + local r=${1:-$?} + [ ${r} -eq 0 ] && echo " [ OK ]" || echo " [ !! ]" + return $r + } +} + +LIBDIR="lib" + +# this should be getopt'd someday (override with CC_QUIET=1) +CC_VERBOSE=1 +unset _CC_QUIET +c_quiet() { + [ -n "${CC_QUIET:-${_CC_QUIET}}" ] || [ -z "${CC_VERBOSE}" ] +} + +c_ebegin() { c_quiet || ebegin "$@" ; } +c_eend() { c_quiet || eend "$@" ; } + +### +# the following functions manage the ccache symlinks +# they allow the user or other scripts (namely gcc-config) to +# automatically update ccache's links when upgrading toolchains +# +cc_path() { + echo ${ROOT%/}${EPREFIX}/usr/${LIBDIR}/ccache/bin/$1 +} +cc_remove_link() { + local t=$(cc_path "$1") + if [ -L ${t} ]; then + c_ebegin "Removing ${t}" + rm -f "${t}" + c_eend + + # Trim the empty dir if possible. #517242 + t=${t%/*} + if rmdir "${t}" 2>/dev/null; then + rmdir "${t%/*}" 2>/dev/null + fi + : + fi +} +cc_install_link() { + # Search the PATH for the specified compiler + # then create shadow link in /usr/lib/ccache/bin to ccache + + if command -v "$1" >/dev/null ; then + # first be sure any old link is removed + _CC_QUIET=1 + cc_remove_link "$1" + unset _CC_QUIET + + # then create the new link + local t=$(cc_path "$1") + c_ebegin "Creating ccache shadow link ${t}" + mkdir -p -m 0755 "${t%/*}" && ln -s "${EPREFIX}"/usr/bin/ccache "${t}" + c_eend + fi +} +cc_links() { + local a + for a in gcc cc c++ g++ icc icpc clang clang++ ; do + "cc_${1}_link" "${2}${2:+-}${a}" + done +} + +### +# main routine + +case $1 in + --install-links ) + cc_links install "$2" + ;; + --remove-links ) + cc_links remove "$2" + ;; + * ) + echo "usage: $0 {--install-links|--remove-links} [ CHOST ]" + ;; +esac