mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-06 12:58:16 -07:00
dev-util/ccache: drop old <3.2.4 versions
This commit is contained in:
@@ -1,8 +1,2 @@
|
||||
DIST ccache-2.4.tar.gz 86363 SHA256 435f862ca5168c346f5aa9e242174bbf19a5abcaeecfceeac2f194558827aaa0 SHA512 6ab05f74eba5c0a7472a3d53cfa6c24e45f421f2c773776f713a46121eda21213deb34fcef214d4f8d2e756cd375637e4639a9bdfeb6b9a44455c5bcca246b19 WHIRLPOOL eb308222713d17f52f88ac97a5c63add454b350d60259d1d2238e3b54f1e80ad8c8700e0e045b40aa5be64b1db54846a86da600436778a64d2270efff7763380
|
||||
DIST ccache-3.1.10.tar.xz 240932 SHA256 88439f43d3b426ab435afdf69a808511bada4de3a8a9527426bc4fbf6cb02857 SHA512 6a1c77161ec97b556a8c58592e2d6bba8e3d43cc039de3ebaa2a80fb92ae54bb7bad58eb011f52b750e29aadb0ed208220fb67d30deaf6c64aa4cfab31937fed WHIRLPOOL 5d527d986ba14a6312f82df277d7de47757bb43b7bcaf9eb6cbdbf337af862726f1f85ff7c352d0ad54344d98a8d8dc538e43de05976cdd29710b72917b42106
|
||||
DIST ccache-3.1.9.tar.xz 238988 SHA256 4981fdf3ad851de400d94083a0d03f115ce9ce8062c3fd7a291630294b0006c4 SHA512 b73f5816bb87c2d94200473510ea42a304c5a2c5e5f14720c513574ce3eb983423c5849a786a89df70cbb09852d9ec2761ad37a820a767d7350e1a3243148ac0 WHIRLPOOL 61ef671aae68516ecfaee88a50b8f442968a7ab24595fd7dfc652ab27de80834d90510c62cfcc75dd88e1f3832989633f518ebe5984149c16d5ab9848cff05fc
|
||||
DIST ccache-3.2.1.tar.xz 297868 SHA256 872af34e1d2cef18694001d29db7f167d644e7602ca32cd6c74b28d81458bd9d SHA512 ef0e56f2d1775fb0f401f48cca2a65eb415f4e2ccf0bcfd769045a9c08c3c2977db4edea12e06629f4cb5406cde23cd3ee0910e2e4d5eff9376227fa23c78a7a WHIRLPOOL f3d07cf142258d588a1c6cb9ba77d31d7b568cd18ae131ed3526595c809352b0fa30ae61b0bfcbfde3ea8d959c545119662c25af0cd03c97517be361315e1ffe
|
||||
DIST ccache-3.2.2.tar.xz 300808 SHA256 4f0d99699f24d198494addca0f41a93b0150cdfd01491f15a5d7eb02c7c2a0ca SHA512 fc438f3b00baa41076eee3e5783ea53a208eb348343e587c6f729f7e98462cd20c720fe323fe08f271bc14dae48f7828cef769882f028f3772992989b87b075d WHIRLPOOL 095a125e869910644622b98b7720a01ccc235fbeb8c84ec52017fe52f82fe7b8122584c3e5fa4d39c1344e9c062517a1edb46c3e64fe649e845ed5c1fb455c5a
|
||||
DIST ccache-3.2.3.tar.xz 301728 SHA256 ec0414fc435982ece8b8fca062f5836ff32c5d5148abd7f80768614ed776600e SHA512 27da2032fd8936253e29f0410fc2f8085967de78ebe300bd1efecf78c67ed5e060e543df96bb29bc1bea75ec4d5e108f89d58dc6d9573bf6fcc8384d00b951dd WHIRLPOOL 721e9e8dab552c40bfd77df3225e33d49553b2bee5ec990dc6f33ce8bdd9009f4f35b75d08d04ce51ee36e0772a5b403c4d8629627dd6d488b717e23b3d3657c
|
||||
DIST ccache-3.2.4.tar.xz 302548 SHA256 1c3da93f654e78a4ac71a54b0f63b19bc0fef9aa5522f4ebb9c201d4361cea5d SHA512 d048b70804c81dece97f3ba511b3c109ec0d14e7dca69bc68faeeb61a4a7b5639c03e3e5ad7dad4e42b4bd198d7a7fffa4e3b7ef99590dfd4df0805db6c25db7 WHIRLPOOL 3dc1de9d1cab8769b3776e48746a1967536e7a9d01e4eb23e1ddbaaf2858c16eba170a185312bfdb0a58951c77cd6c79ff30c7cf6ab366ade64c2b6997df7703
|
||||
DIST ccache-3.2.5.tar.xz 304592 SHA256 117011534b199dbe290b08acae1591c81525536a1e140da22e0fbc04c20bab85 SHA512 12612b899044db50c60bea8ed6cfeb54960ab67514d0aabaea5ee71d3d4d83bb00637e02008365d1d061adf5aa546499948a5eb8a0419222f681058c7fd5fd24 WHIRLPOOL 2cad966b419c16d7956fb2644c1113a8817437f313d54dd17fb16ae4a15f67a322b59d1b225307c980d2e17442478b71ef2bb118d2af4025e530e68fb46767cb
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
WANT_AUTOMAKE=none # not using automake
|
||||
|
||||
inherit eutils autotools multilib
|
||||
|
||||
DESCRIPTION="fast compiler cache"
|
||||
HOMEPAGE="http://ccache.samba.org/"
|
||||
SRC_URI="http://samba.org/ftp/ccache/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd"
|
||||
IUSE=""
|
||||
|
||||
# Note: this version is designed to be auto-detected and used if
|
||||
# you happen to have Portage 2.0.X+ installed.
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
cd "${S}"
|
||||
epatch "${FILESDIR}"/ccache-2.4-profile.patch
|
||||
epatch "${FILESDIR}"/ccache-2.4-respectflags.patch
|
||||
epatch "${FILESDIR}"/ccache-2.4-utimes.patch
|
||||
epatch "${FILESDIR}"/ccache-2.4-xrealloc.patch #338137
|
||||
eautoconf
|
||||
}
|
||||
|
||||
do_links() {
|
||||
insinto /usr/$(get_libdir)/ccache/bin
|
||||
for a in ${CHOST}-{gcc,g++,c++} gcc c++ g++; do
|
||||
dosym /usr/bin/ccache /usr/$(get_libdir)/ccache/bin/${a}
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin ccache || die
|
||||
doman ccache.1
|
||||
dodoc README
|
||||
dohtml web/*.html
|
||||
|
||||
diropts -m0755
|
||||
dodir /usr/$(get_libdir)/ccache/bin
|
||||
keepdir /usr/$(get_libdir)/ccache/bin
|
||||
|
||||
dobin "${FILESDIR}"/ccache-config || die
|
||||
|
||||
diropts -m0700
|
||||
dodir /root/.ccache
|
||||
keepdir /root/.ccache
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Do NOT duplicate this in your ebuilds or phear of the wrath!!!
|
||||
if [[ ${ROOT} = "/" ]] ; then
|
||||
einfo "Scanning for compiler front-ends..."
|
||||
do_links
|
||||
else
|
||||
ewarn "Install is incomplete; you must run the following commands:"
|
||||
ewarn " # ccache-config --install-links"
|
||||
ewarn " # ccache-config --install-links ${CHOST}"
|
||||
ewarn "after booting or chrooting to ${ROOT} to complete installation."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# nuke broken symlinks from previous versions that shouldn't exist
|
||||
for i in cc ${CHOST}-cc ; do
|
||||
[[ -L "${ROOT}/usr/$(get_libdir)/ccache/bin/${i}" ]] && \
|
||||
rm -rf "${ROOT}/usr/$(get_libdir)/ccache/bin/${i}"
|
||||
done
|
||||
[[ -d "${ROOT}/usr/$(get_libdir)/ccache.backup" ]] && \
|
||||
rm -fr "${ROOT}/usr/$(get_libdir)/ccache.backup"
|
||||
|
||||
elog "To use ccache with **non-Portage** C compiling, add"
|
||||
elog "/usr/$(get_libdir)/ccache/bin to the beginning of your path, before /usr/bin."
|
||||
elog "Portage 2.0.46-r11+ will automatically take advantage of ccache with"
|
||||
elog "no additional steps. If this is your first install of ccache, type"
|
||||
elog "something like this to set a maximum cache size of 2GB:"
|
||||
elog "# ccache -M 2G"
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI="4"
|
||||
|
||||
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=""
|
||||
|
||||
RDEPEND="sys-libs/zlib"
|
||||
DEPEND="${RDEPEND}
|
||||
app-arch/xz-utils"
|
||||
|
||||
src_prepare() {
|
||||
# make sure we always use system zlib
|
||||
rm -rf zlib
|
||||
epatch "${FILESDIR}"/${PN}-3.1.7-no-perl.patch #421609
|
||||
epatch "${FILESDIR}"/${PN}-3.1.10-size-on-disk.patch #456178
|
||||
epatch "${FILESDIR}"/${PN}-3.1.10-real-temp-files.patch
|
||||
sed \
|
||||
-e "/^EPREFIX=/s:'':'${EPREFIX}':" \
|
||||
"${FILESDIR}"/ccache-config-2 > 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/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
|
||||
rm -rf "${EROOT}"/usr/lib/ccache.backup
|
||||
|
||||
readme.gentoo_print_elog
|
||||
}
|
||||
@@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
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.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
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
GCCs options -fprofile-generate and -fprofile-use are used for
|
||||
profile guided optimization. It depends on the ability to locate
|
||||
the profile data files (.gcda) after running the executable with
|
||||
the training data. However, ccache prevents the compiler from
|
||||
finding the correct profile data file. Therefore the following
|
||||
patch disables the caching when one of the
|
||||
-fprofile-generate
|
||||
-fprofile-use
|
||||
-fprofile-arcs
|
||||
flags is found.
|
||||
|
||||
Signed-off-by: Clemens Rabe <crabe _at_ gmx _dot_ de>
|
||||
|
||||
|
||||
diff -Naur ccache-2.4.orig/ccache.c ccache-2.4/ccache.c
|
||||
--- ccache-2.4.orig/ccache.c 2004-09-13 12:38:30.000000000 +0200
|
||||
+++ ccache-2.4/ccache.c 2008-01-07 20:25:38.000000000 +0100
|
||||
@@ -640,6 +640,9 @@
|
||||
|
||||
/* these are too hard */
|
||||
if (strcmp(argv[i], "-fbranch-probabilities")==0 ||
|
||||
+ strcmp(argv[i], "-fprofile-generate")==0 ||
|
||||
+ strcmp(argv[i], "-fprofile-use")==0 ||
|
||||
+ strcmp(argv[i], "-fprofile-arcs")==0 ||
|
||||
strcmp(argv[i], "-M") == 0 ||
|
||||
strcmp(argv[i], "-MM") == 0 ||
|
||||
strcmp(argv[i], "-x") == 0) {
|
||||
@@ -1,13 +0,0 @@
|
||||
Index: ccache-2.4/Makefile.in
|
||||
===================================================================
|
||||
--- ccache-2.4.orig/Makefile.in
|
||||
+++ ccache-2.4/Makefile.in
|
||||
@@ -20,7 +20,7 @@ all: ccache$(EXEEXT)
|
||||
docs: ccache.1 web/ccache-man.html
|
||||
|
||||
ccache$(EXEEXT): $(OBJS) $(HEADERS)
|
||||
- $(CC) $(CFLAGS) -o $@ $(OBJS)
|
||||
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS)
|
||||
|
||||
ccache.1: ccache.yo
|
||||
-yodl2man -o ccache.1 ccache.yo
|
||||
@@ -1,105 +0,0 @@
|
||||
utime(...,NULL) in some cases may cause truncation of sub-second portions of
|
||||
timestamps. If utimes(...,NULL) is available, use it instead to avoid this
|
||||
problem.
|
||||
|
||||
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
|
||||
|
||||
diff -Nuar --exclude autom4te.cache --exclude '*~' ccache-2.4.orig/ccache.c ccache-2.4/ccache.c
|
||||
--- ccache-2.4.orig/ccache.c 2004-09-13 03:38:30.000000000 -0700
|
||||
+++ ccache-2.4/ccache.c 2006-06-09 16:29:16.695117780 -0700
|
||||
@@ -481,7 +481,11 @@
|
||||
return;
|
||||
}
|
||||
|
||||
+#ifdef HAVE_UTIMES
|
||||
+ utimes(stderr_file, NULL);
|
||||
+#else
|
||||
utime(stderr_file, NULL);
|
||||
+#endif
|
||||
|
||||
if (strcmp(output_file, "/dev/null") == 0) {
|
||||
ret = 0;
|
||||
@@ -515,7 +519,11 @@
|
||||
}
|
||||
if (ret == 0) {
|
||||
/* update the mtime on the file so that make doesn't get confused */
|
||||
+#ifdef HAVE_UTIMES
|
||||
+ utimes(output_file, NULL);
|
||||
+#else
|
||||
utime(output_file, NULL);
|
||||
+#endif
|
||||
}
|
||||
|
||||
/* get rid of the intermediate preprocessor file */
|
||||
diff -Nuar --exclude autom4te.cache --exclude '*~' ccache-2.4.orig/ccache.h ccache-2.4/ccache.h
|
||||
--- ccache-2.4.orig/ccache.h 2004-09-13 03:38:30.000000000 -0700
|
||||
+++ ccache-2.4/ccache.h 2006-06-09 16:28:16.601658626 -0700
|
||||
@@ -22,6 +22,9 @@
|
||||
#ifdef HAVE_PWD_H
|
||||
#include <pwd.h>
|
||||
#endif
|
||||
+#ifdef HAVE_SYS_TIME_H
|
||||
+#include <sys/time.h>
|
||||
+#endif
|
||||
|
||||
#define STATUS_NOTFOUND 3
|
||||
#define STATUS_FATAL 4
|
||||
diff -Nuar --exclude autom4te.cache --exclude '*~' ccache-2.4.orig/config.h.in ccache-2.4/config.h.in
|
||||
--- ccache-2.4.orig/config.h.in 2003-09-27 21:48:17.000000000 -0700
|
||||
+++ ccache-2.4/config.h.in 2006-06-09 16:25:43.000000000 -0700
|
||||
@@ -19,6 +19,9 @@
|
||||
/* Define to 1 if you have the `gethostname' function. */
|
||||
#undef HAVE_GETHOSTNAME
|
||||
|
||||
+/* Define to 1 if you have the `getpwuid' function. */
|
||||
+#undef HAVE_GETPWUID
|
||||
+
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#undef HAVE_INTTYPES_H
|
||||
|
||||
@@ -31,6 +34,9 @@
|
||||
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
|
||||
#undef HAVE_NDIR_H
|
||||
|
||||
+/* Define to 1 if you have the <pwd.h> header file. */
|
||||
+#undef HAVE_PWD_H
|
||||
+
|
||||
/* Define to 1 if you have the `realpath' function. */
|
||||
#undef HAVE_REALPATH
|
||||
|
||||
@@ -60,6 +66,9 @@
|
||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
#undef HAVE_SYS_STAT_H
|
||||
|
||||
+/* Define to 1 if you have the <sys/time.h> header file. */
|
||||
+#undef HAVE_SYS_TIME_H
|
||||
+
|
||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
#undef HAVE_SYS_TYPES_H
|
||||
|
||||
@@ -69,6 +78,9 @@
|
||||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
#undef HAVE_UNISTD_H
|
||||
|
||||
+/* Define to 1 if you have the `utimes' function. */
|
||||
+#undef HAVE_UTIMES
|
||||
+
|
||||
/* Define to 1 if you have the `vasprintf' function. */
|
||||
#undef HAVE_VASPRINTF
|
||||
|
||||
diff -Nuar --exclude autom4te.cache --exclude '*~' ccache-2.4.orig/configure.in ccache-2.4/configure.in
|
||||
--- ccache-2.4.orig/configure.in 2004-09-13 03:38:30.000000000 -0700
|
||||
+++ ccache-2.4/configure.in 2006-06-09 16:25:15.541288184 -0700
|
||||
@@ -27,10 +27,11 @@
|
||||
AC_HEADER_TIME
|
||||
AC_HEADER_SYS_WAIT
|
||||
|
||||
-AC_CHECK_HEADERS(ctype.h strings.h stdlib.h string.h pwd.h)
|
||||
+AC_CHECK_HEADERS(ctype.h strings.h stdlib.h string.h pwd.h sys/time.h)
|
||||
|
||||
AC_CHECK_FUNCS(realpath snprintf vsnprintf vasprintf asprintf mkstemp)
|
||||
AC_CHECK_FUNCS(gethostname getpwuid)
|
||||
+AC_CHECK_FUNCS(utimes)
|
||||
|
||||
AC_CACHE_CHECK([for compar_fn_t in stdlib.h],ccache_cv_COMPAR_FN_T, [
|
||||
AC_TRY_COMPILE(
|
||||
@@ -1,35 +0,0 @@
|
||||
https://bugzilla.samba.org/show_bug.cgi?id=7090
|
||||
https://bugs.gentoo.org/338137
|
||||
|
||||
From 52a9cd8eb8a69f9dc6944c047faf112b7137a07b Mon Sep 17 00:00:00 2001
|
||||
From: Andrew Tridgell <tridge@samba.org>
|
||||
Date: Mon, 17 Jul 2006 05:41:12 +0200
|
||||
Subject: [PATCH] fixed a bug in x_realloc()
|
||||
|
||||
---
|
||||
util.c | 6 +-----
|
||||
1 files changed, 1 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/util.c b/util.c
|
||||
index 073fa81..29d0e5b 100644
|
||||
--- a/util.c
|
||||
+++ b/util.c
|
||||
@@ -187,14 +187,10 @@ void *x_realloc(void *ptr, size_t size)
|
||||
{
|
||||
void *p2;
|
||||
if (!ptr) return x_malloc(size);
|
||||
- p2 = malloc(size);
|
||||
+ p2 = realloc(ptr, size);
|
||||
if (!p2) {
|
||||
fatal("out of memory in x_realloc");
|
||||
}
|
||||
- if (ptr) {
|
||||
- memcpy(p2, ptr, size);
|
||||
- free(ptr);
|
||||
- }
|
||||
return p2;
|
||||
}
|
||||
|
||||
--
|
||||
1.7.3.1
|
||||
|
||||
@@ -1,185 +0,0 @@
|
||||
https://lists.samba.org/archive/ccache/2014q4/001246.html
|
||||
|
||||
From 5d0f507a4162ac89e05ca633dbc8056454b798f5 Mon Sep 17 00:00:00 2001
|
||||
From: Mike Frysinger <vapier@gentoo.org>
|
||||
Date: Mon, 15 Sep 2014 18:15:02 -0400
|
||||
Subject: [PATCH] do not rely on pids being unique
|
||||
|
||||
Linux supports creating pid namespaces cheaply and running processes
|
||||
inside of them. When you try to share a single cache among multiple
|
||||
such runs, the fact that the code relies on pid numbers as globally
|
||||
unique values quickly fails. Instead, switch to standard mkstemp to
|
||||
generate temp files for us.
|
||||
|
||||
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
||||
---
|
||||
ccache.c | 12 ++++++------
|
||||
ccache.h | 2 +-
|
||||
manifest.c | 2 +-
|
||||
stats.c | 10 +++++++++-
|
||||
util.c | 13 ++++++++-----
|
||||
5 files changed, 25 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/ccache.c b/ccache.c
|
||||
index 02dbdfa..1dc0a06 100644
|
||||
--- a/ccache.c
|
||||
+++ b/ccache.c
|
||||
@@ -526,8 +526,11 @@ to_cache(struct args *args)
|
||||
unsigned added_files = 0;
|
||||
|
||||
tmp_stdout = format("%s.tmp.stdout.%s", cached_obj, tmp_string());
|
||||
+ create_empty_file(tmp_stdout);
|
||||
tmp_stderr = format("%s.tmp.stderr.%s", cached_obj, tmp_string());
|
||||
+ create_empty_file(tmp_stderr);
|
||||
tmp_obj = format("%s.tmp.%s", cached_obj, tmp_string());
|
||||
+ create_empty_file(tmp_obj);
|
||||
|
||||
args_add(args, "-o");
|
||||
args_add(args, tmp_obj);
|
||||
@@ -579,7 +582,7 @@ to_cache(struct args *args)
|
||||
int fd_result;
|
||||
char *tmp_stderr2;
|
||||
|
||||
- tmp_stderr2 = format("%s.tmp.stderr2.%s", cached_obj, tmp_string());
|
||||
+ tmp_stderr2 = format("%s.2", tmp_stderr);
|
||||
if (x_rename(tmp_stderr, tmp_stderr2)) {
|
||||
cc_log("Failed to rename %s to %s: %s", tmp_stderr, tmp_stderr2,
|
||||
strerror(errno));
|
||||
@@ -808,6 +808,7 @@ get_object_name_from_cpp(struct args *args, struct mdfour *hash)
|
||||
}
|
||||
|
||||
path_stderr = format("%s/tmp.cpp_stderr.%s", temp_dir, tmp_string());
|
||||
+ create_empty_file(path_stderr);
|
||||
add_pending_tmp_file(path_stderr);
|
||||
|
||||
time_of_compilation = time(NULL);
|
||||
@@ -815,6 +816,7 @@ get_object_name_from_cpp(struct args *args, struct mdfour *hash)
|
||||
if (!direct_i_file) {
|
||||
path_stdout = format("%s/%s.tmp.%s.%s",
|
||||
temp_dir, input_base, tmp_string(), i_extension);
|
||||
+ create_empty_file(path_stdout);
|
||||
add_pending_tmp_file(path_stdout);
|
||||
|
||||
/* run cpp on the input file to obtain the .i */
|
||||
@@ -838,11 +843,6 @@ get_object_name_from_cpp(struct args *args, struct mdfour *hash)
|
||||
can skip the cpp stage and directly form the
|
||||
correct i_tmpfile */
|
||||
path_stdout = input_file;
|
||||
- if (create_empty_file(path_stderr) != 0) {
|
||||
- cc_log("Failed to create %s: %s", path_stderr, strerror(errno));
|
||||
- stats_update(STATS_ERROR);
|
||||
- failed();
|
||||
- }
|
||||
status = 0;
|
||||
}
|
||||
|
||||
diff --git a/ccache.h b/ccache.h
|
||||
index 2bc7c87..43ef98d 100644
|
||||
--- a/ccache.h
|
||||
+++ b/ccache.h
|
||||
@@ -130,7 +130,7 @@ size_t file_size(struct stat *st);
|
||||
int safe_open(const char *fname);
|
||||
char *x_realpath(const char *path);
|
||||
char *gnu_getcwd(void);
|
||||
-int create_empty_file(const char *fname);
|
||||
+int create_empty_file(char *fname);
|
||||
const char *get_home_directory(void);
|
||||
char *get_cwd();
|
||||
bool same_executable_name(const char *s1, const char *s2);
|
||||
diff --git a/manifest.c b/manifest.c
|
||||
index 7f02ede..47566d5 100644
|
||||
--- a/manifest.c
|
||||
+++ b/manifest.c
|
||||
@@ -633,7 +633,7 @@ manifest_put(const char *manifest_path, struct file_hash *object_hash,
|
||||
}
|
||||
|
||||
tmp_file = format("%s.tmp.%s", manifest_path, tmp_string());
|
||||
- fd2 = safe_open(tmp_file);
|
||||
+ fd2 = mkstemp(tmp_file);
|
||||
if (fd2 == -1) {
|
||||
cc_log("Failed to open %s", tmp_file);
|
||||
goto out;
|
||||
diff --git a/stats.c b/stats.c
|
||||
index 2111b65..4ed39c2 100644
|
||||
--- a/stats.c
|
||||
+++ b/stats.c
|
||||
@@ -126,11 +126,18 @@ stats_write(const char *path, struct counters *counters)
|
||||
size_t i;
|
||||
char *tmp_file;
|
||||
FILE *f;
|
||||
+ int fd;
|
||||
|
||||
tmp_file = format("%s.tmp.%s", path, tmp_string());
|
||||
- f = fopen(tmp_file, "wb");
|
||||
+ fd = mkstemp(tmp_file);
|
||||
+ if (fd == -1) {
|
||||
+ cc_log("Failed to open %s", tmp_file);
|
||||
+ goto end;
|
||||
+ }
|
||||
+ f = fdopen(fd, "wb");
|
||||
if (!f) {
|
||||
cc_log("Failed to open %s", tmp_file);
|
||||
+ close(fd);
|
||||
goto end;
|
||||
}
|
||||
for (i = 0; i < counters->size; i++) {
|
||||
@@ -138,6 +145,7 @@ stats_write(const char *path, struct counters *counters)
|
||||
fatal("Failed to write to %s", tmp_file);
|
||||
}
|
||||
}
|
||||
+ /* This also implicitly closes the fd. */
|
||||
fclose(f);
|
||||
x_rename(tmp_file, path);
|
||||
|
||||
diff --git a/util.c b/util.c
|
||||
index 3b472de..cc630a6 100644
|
||||
--- a/util.c
|
||||
+++ b/util.c
|
||||
@@ -195,7 +195,7 @@ copy_file(const char *src, const char *dest, int compress_dest)
|
||||
struct stat st;
|
||||
int errnum;
|
||||
|
||||
- tmp_name = format("%s.%s.XXXXXX", dest, tmp_string());
|
||||
+ tmp_name = format("%s.%s", dest, tmp_string());
|
||||
cc_log("Copying %s to %s via %s (%s)",
|
||||
src, dest, tmp_name, compress_dest ? "compressed": "uncompressed");
|
||||
|
||||
@@ -427,7 +427,7 @@ tmp_string(void)
|
||||
static char *ret;
|
||||
|
||||
if (!ret) {
|
||||
- ret = format("%s.%u", get_hostname(), (unsigned)getpid());
|
||||
+ ret = format("%s.%u.XXXXXX", get_hostname(), (unsigned)getpid());
|
||||
}
|
||||
|
||||
return ret;
|
||||
@@ -884,12 +884,13 @@ gnu_getcwd(void)
|
||||
|
||||
/* create an empty file */
|
||||
int
|
||||
-create_empty_file(const char *fname)
|
||||
+create_empty_file(char *fname)
|
||||
{
|
||||
int fd;
|
||||
|
||||
- fd = open(fname, O_WRONLY|O_CREAT|O_TRUNC|O_EXCL|O_BINARY, 0666);
|
||||
+ fd = mkstemp(fname);
|
||||
if (fd == -1) {
|
||||
+ cc_log("Failed to create %s: %s", fname, strerror(errno));
|
||||
return -1;
|
||||
}
|
||||
close(fd);
|
||||
@@ -1134,7 +1135,9 @@ x_unlink(const char *path)
|
||||
goto out;
|
||||
}
|
||||
if (unlink(tmp_name) == -1) {
|
||||
- result = -1;
|
||||
+ /* If it was released in a race, that's OK. */
|
||||
+ if (errno != ENOENT)
|
||||
+ result = -1;
|
||||
}
|
||||
out:
|
||||
free(tmp_name);
|
||||
--
|
||||
2.1.2
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
avoid weak perl usage in tests
|
||||
|
||||
https://bugs.gentoo.org/421609
|
||||
|
||||
--- a/test.sh
|
||||
+++ b/test.sh
|
||||
@@ -1466,7 +1466,7 @@
|
||||
mkdir -p $dir
|
||||
i=0
|
||||
while [ $i -lt 10 ]; do
|
||||
- perl -e 'print "A" x 4017' >$dir/result$i-4017.o
|
||||
+ printf '%4017s' '' | tr ' ' 'A' >$dir/result$i-4017.o
|
||||
touch $dir/result$i-4017.stderr
|
||||
touch $dir/result$i-4017.d
|
||||
if [ $i -gt 5 ]; then
|
||||
@@ -1,156 +0,0 @@
|
||||
https://bugs.gentoo.org/461966
|
||||
|
||||
fix from upstream
|
||||
|
||||
From b5d63f81c1a83fd4c50b769a96a04f581b7db70c Mon Sep 17 00:00:00 2001
|
||||
From: Joel Rosdahl <joel@rosdahl.net>
|
||||
Date: Wed, 20 Mar 2013 22:18:16 +0100
|
||||
Subject: [PATCH] Fix test suite failure on GCC 4.8
|
||||
|
||||
GCC 4.8 includes /usr/include/stdc-predef.h implicitly, and this shows up
|
||||
in generated .d files.
|
||||
---
|
||||
test.sh | 35 +++++++++++++++++++----------------
|
||||
1 file changed, 19 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/test.sh b/test.sh
|
||||
index 3ed9069..3e38387 100755
|
||||
--- a/test.sh
|
||||
+++ b/test.sh
|
||||
@@ -3,7 +3,7 @@
|
||||
# A simple test suite for ccache.
|
||||
#
|
||||
# Copyright (C) 2002-2007 Andrew Tridgell
|
||||
-# Copyright (C) 2009-2012 Joel Rosdahl
|
||||
+# Copyright (C) 2009-2013 Joel Rosdahl
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify it under
|
||||
# the terms of the GNU General Public License as published by the Free Software
|
||||
@@ -562,6 +562,9 @@ int test3;
|
||||
EOF
|
||||
backdate test1.h test2.h test3.h
|
||||
|
||||
+ $COMPILER -c -Wp,-MD,expected.d test.c
|
||||
+ expected_d_content=`cat expected.d`
|
||||
+
|
||||
##################################################################
|
||||
# First compilation is a miss.
|
||||
testname="first compilation"
|
||||
@@ -677,7 +680,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 0
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile other.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile other.d "$expected_d_content"
|
||||
|
||||
rm -f other.d
|
||||
|
||||
@@ -685,7 +688,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 1
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile other.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile other.d "$expected_d_content"
|
||||
|
||||
rm -f other.d
|
||||
|
||||
@@ -760,7 +763,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 0
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile test.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile test.d "$expected_d_content"
|
||||
|
||||
rm -f test.d
|
||||
|
||||
@@ -768,7 +771,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 1
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile test.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile test.d "$expected_d_content"
|
||||
|
||||
##################################################################
|
||||
# Check the scenario of running a ccache with direct mode on a cache
|
||||
@@ -780,7 +783,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 0
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile test.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile test.d "$expected_d_content"
|
||||
|
||||
rm -f test.d
|
||||
|
||||
@@ -788,7 +791,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 0
|
||||
checkstat 'cache hit (preprocessed)' 1
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile test.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile test.d "$expected_d_content"
|
||||
|
||||
rm -f test.d
|
||||
|
||||
@@ -796,7 +799,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 0
|
||||
checkstat 'cache hit (preprocessed)' 2
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile test.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile test.d "$expected_d_content"
|
||||
|
||||
rm -f test.d
|
||||
|
||||
@@ -804,7 +807,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 1
|
||||
checkstat 'cache hit (preprocessed)' 2
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile test.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile test.d "$expected_d_content"
|
||||
|
||||
##################################################################
|
||||
# Check that -MF works.
|
||||
@@ -815,7 +818,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 0
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile other.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile other.d "$expected_d_content"
|
||||
|
||||
rm -f other.d
|
||||
|
||||
@@ -823,7 +826,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 1
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile other.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile other.d "$expected_d_content"
|
||||
|
||||
##################################################################
|
||||
# Check that a missing .d file in the cache is handled correctly.
|
||||
@@ -835,13 +838,13 @@ EOF
|
||||
checkstat 'cache hit (direct)' 0
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile other.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile other.d "$expected_d_content"
|
||||
|
||||
$CCACHE $COMPILER -c -MD test.c
|
||||
checkstat 'cache hit (direct)' 1
|
||||
checkstat 'cache hit (preprocessed)' 0
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile other.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile other.d "$expected_d_content"
|
||||
|
||||
find $CCACHE_DIR -name '*.d' -exec rm -f '{}' \;
|
||||
|
||||
@@ -849,7 +852,7 @@ EOF
|
||||
checkstat 'cache hit (direct)' 1
|
||||
checkstat 'cache hit (preprocessed)' 1
|
||||
checkstat 'cache miss' 1
|
||||
- checkfile other.d "test.o: test.c test1.h test3.h test2.h"
|
||||
+ checkfile other.d "$expected_d_content"
|
||||
|
||||
##################################################################
|
||||
# Check that stderr from both the preprocessor and the compiler is emitted
|
||||
--
|
||||
1.8.1.2
|
||||
|
||||
@@ -1,100 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# ccache-config - helper script for ccache and its ebuild
|
||||
#
|
||||
# Copyright 2003-2014 Superlucidity Services, LLC
|
||||
# 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
|
||||
|
||||
. /etc/init.d/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%/}/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 [ -n "$(type -p ${1})" ]; 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 /usr/bin/ccache "${t}"
|
||||
c_eend
|
||||
fi
|
||||
}
|
||||
cc_links() {
|
||||
local a
|
||||
for a in gcc cc c++ g++ ; do
|
||||
if [ -n "${2}" ] ; then
|
||||
# gcc-config doesnt install ${CHOST}-cc, so until
|
||||
# it does, don't install a ccache symlink for it
|
||||
[ "${a}" = "cc" ] && continue
|
||||
a="${2}-${a}"
|
||||
fi
|
||||
"cc_${1}_link" "${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
|
||||
@@ -1,97 +0,0 @@
|
||||
#!/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}"/etc/init.d/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
|
||||
Reference in New Issue
Block a user