diff options
author | Matthew Kennedy <mkennedy@gentoo.org> | 2005-02-10 09:08:28 +0000 |
---|---|---|
committer | Matthew Kennedy <mkennedy@gentoo.org> | 2005-02-10 09:08:28 +0000 |
commit | baee6dc678dadd209f677086fac0616d33e2985a (patch) | |
tree | 2042332ec3b934a6986abe279fad508bf6ab3233 /eclass | |
parent | Stable on x86 and ppc. (diff) | |
download | gentoo-2-baee6dc678dadd209f677086fac0616d33e2985a.tar.gz gentoo-2-baee6dc678dadd209f677086fac0616d33e2985a.tar.bz2 gentoo-2-baee6dc678dadd209f677086fac0616d33e2985a.zip |
controller refresh
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/common-lisp-common-2.eclass | 80 | ||||
-rw-r--r-- | eclass/common-lisp.eclass | 6 |
2 files changed, 83 insertions, 3 deletions
diff --git a/eclass/common-lisp-common-2.eclass b/eclass/common-lisp-common-2.eclass new file mode 100644 index 000000000000..9e208e2a70fa --- /dev/null +++ b/eclass/common-lisp-common-2.eclass @@ -0,0 +1,80 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/eclass/common-lisp-common-2.eclass,v 1.1 2005/02/10 09:08:28 mkennedy Exp $ +# +# Author Matthew Kennedy <mkennedy@gentoo.org> +# +# Sundry code common to many Common Lisp related ebuilds. + +# Some handy constants + +inherit eutils + +CLSOURCEROOT=/usr/share/common-lisp/source/ +CLSYSTEMROOT=/usr/share/common-lisp/systems/ + +# Many of our Common Lisp ebuilds are either inspired by, or actually +# use packages and files from the Debian project's archives. + +do-debian-credits() { + docinto debian + for i in copyright README.Debian changelog; do + test -f $i && dodoc ${S}/debian/${i} + done + docinto . +} + +# BIG FAT HACK: Since the Portage emerge step kills file timestamp +# information, we need to compensate by ensuring all FASL files are +# more recent than their source files. + +# The following `impl-*-timestamp-hack' functions SHOULD NOT be used +# outside of this eclass. + +impl-save-timestamp-hack() { + local impl=$1 + dodir /usr/share/${impl} + tar cpjf ${D}/usr/share/${impl}/portage-timestamp-compensate -C ${D}/usr/$(get_libdir)/${impl} . +} + +impl-restore-timestamp-hack() { + local impl=$1 + tar xjpfo /usr/share/${impl}/portage-timestamp-compensate -C /usr/$(get_libdir)/${impl} +} + +impl-remove-timestamp-hack() { + local impl=$1 + rm -rf /usr/$(get_libdir)/${impl} &>/dev/null || true +} + +standard-impl-postinst() { + local impl=$1 + unregister-common-lisp-implementation cmucl + case ${impl} in + cmucl|sbcl) + impl-restore-timestamp-hack ${impl} + ;; + *) + ;; + esac + register-common-lisp-implementation ${impl} +} + +standard-impl-postrm() { + local impl=$1 impl_binary=$2 + if [ ! -x ${impl_binary} ]; then + case ${impl} in + cmucl|sbcl) + impl-remove-timestamp-hack ${impl} + ;; + *) + ;; + esac + rm -rf /var/cach/common-lisp-controller/*/${impl} + fi +} + +# Local Variables: *** +# mode: shell-script *** +# tab-width: 4 *** +# End: *** diff --git a/eclass/common-lisp.eclass b/eclass/common-lisp.eclass index a3030f1abcf4..6e8a02f4bad7 100644 --- a/eclass/common-lisp.eclass +++ b/eclass/common-lisp.eclass @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/eclass/common-lisp.eclass,v 1.8 2004/06/25 00:39:48 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/eclass/common-lisp.eclass,v 1.9 2005/02/10 09:08:28 mkennedy Exp $ # # Author Matthew Kennedy <mkennedy@gentoo.org> # @@ -32,8 +32,8 @@ common-lisp_pkg_postrm() { for package in ${CLPACKAGE}; do if [ ! -d ${CLSOURCEROOT}/${package} ]; then einfo "Unregistering Common Lisp source for ${package}" - rm -rf ${CLFASLROOT}/*/${package} -# unregister-common-lisp-source ${package} +# rm -rf ${CLFASLROOT}/*/${package} + unregister-common-lisp-source ${package} fi done fi |