diff options
author | Ulrich Müller <ulm@gentoo.org> | 2011-09-26 12:31:16 +0000 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2011-09-26 12:31:16 +0000 |
commit | 487f0ec967a9885062becf98218f78995f44a917 (patch) | |
tree | 6947ff497b8aa5339beadc89df35847c1d645652 /app-editors/emacs-vcs | |
parent | Use const instead G_CONST_RETURN, bug #379897 by Alexandre Rostovtsev. (diff) | |
download | historical-487f0ec967a9885062becf98218f78995f44a917.tar.gz historical-487f0ec967a9885062becf98218f78995f44a917.tar.bz2 historical-487f0ec967a9885062becf98218f78995f44a917.zip |
First pretest for Emacs 24.1. Merge changes from Emacs overlay: Link against libXaw with USE=athena. Change [ ] to [[ ]] throughout. Remove outdated warning.
Package-Manager: portage-2.1.10.19/cvs/Linux x86_64
Diffstat (limited to 'app-editors/emacs-vcs')
-rw-r--r-- | app-editors/emacs-vcs/ChangeLog | 10 | ||||
-rw-r--r-- | app-editors/emacs-vcs/Manifest | 16 | ||||
-rw-r--r-- | app-editors/emacs-vcs/emacs-vcs-23.3.9999.ebuild | 43 | ||||
-rw-r--r-- | app-editors/emacs-vcs/emacs-vcs-24.0.90.ebuild | 345 | ||||
-rw-r--r-- | app-editors/emacs-vcs/emacs-vcs-24.0.9999-r1.ebuild | 51 | ||||
-rw-r--r-- | app-editors/emacs-vcs/metadata.xml | 2 |
6 files changed, 403 insertions, 64 deletions
diff --git a/app-editors/emacs-vcs/ChangeLog b/app-editors/emacs-vcs/ChangeLog index bc2f9c987489..061c5e6706e2 100644 --- a/app-editors/emacs-vcs/ChangeLog +++ b/app-editors/emacs-vcs/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for app-editors/emacs-vcs # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/ChangeLog,v 1.62 2011/09/09 19:21:18 ulm Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/ChangeLog,v 1.63 2011/09/26 12:31:15 ulm Exp $ + +*emacs-vcs-24.0.90 (26 Sep 2011) + + 26 Sep 2011; Ulrich Mueller <ulm@gentoo.org> emacs-vcs-23.3.9999.ebuild, + +emacs-vcs-24.0.90.ebuild, emacs-vcs-24.0.9999-r1.ebuild: + First pretest for Emacs 24.1. Merge changes from Emacs overlay: Link against + libXaw with USE=athena. Change [ ] to [[ ]] throughout. Remove outdated + warning. 09 Sep 2011; Ulrich Mueller <ulm@gentoo.org> emacs-vcs-23.3.9999.ebuild: Merge changes from Emacs overlay. diff --git a/app-editors/emacs-vcs/Manifest b/app-editors/emacs-vcs/Manifest index 3b9d8f88c2b8..9cb532761583 100644 --- a/app-editors/emacs-vcs/Manifest +++ b/app-editors/emacs-vcs/Manifest @@ -1,14 +1,16 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -EBUILD emacs-vcs-23.3.9999.ebuild 10925 RMD160 a7b930bdee3a37af8ebc225afd511a1021643267 SHA1 8e5df146433a10037b5a5cf312a25126bd0f0456 SHA256 b32416377f334c7c07aa2837e2b41418f859f01cfbc885bd124f1255dfba41be -EBUILD emacs-vcs-24.0.9999-r1.ebuild 11229 RMD160 327d5d7fbaca12452ec3a63140867ac943a04ada SHA1 fc52886699f664d787df3504c6e7ba216d553867 SHA256 c268753468038c30bdb7b929132e83be3fa4a2aad151fe051f81f04f9876b832 -MISC ChangeLog 59764 RMD160 dca6b75fb3053d899e23f622971541fdd02731df SHA1 56f1f0165c8af679c642bb3ce31f90c9fb1a3268 SHA256 10d04e8affbdb1080f23726827a049aa926446cee0012eedd00473ce0d6737ef -MISC metadata.xml 2219 RMD160 59724e54af053aa155ff1079d7971df365088afd SHA1 664d49b56b126e8ad2c64b4415eafcf68e447ad3 SHA256 2d94fccd2d478d91044897e7e5facb4883cb752ea81382e0671a33dd17dce579 +DIST emacs-24.0.90.tar.gz 50961184 RMD160 aa7f7997240f5b9db2979e0ba25ac762f796711b SHA1 a37880965d1763215bae935f1f28dd9e6505dd8c SHA256 629ca66cfa529a783a9e372e010a8b8d8b3d65e1e5105ef94f1621a403b9cb83 +EBUILD emacs-vcs-23.3.9999.ebuild 10754 RMD160 cbedbedb761e58dc07e977e3e07928cc00af549e SHA1 f4d2187ff9adbf5ec471c4a55c5f04484234034c SHA256 fb2b6ac6bfd7ba188b1f27f10dbaf8ab7886fba72490003b552f4a94654709a9 +EBUILD emacs-vcs-24.0.90.ebuild 10930 RMD160 b4756abd8d0e1bda90e60758060b64b6bcd43fd7 SHA1 d7514fbcb70ff5b401e6cbfeb2673bf68f44bac3 SHA256 2f0c771989033e2915c19f89cb6e360b2826d7b58c1fbcef7f264f3180cfdc06 +EBUILD emacs-vcs-24.0.9999-r1.ebuild 10936 RMD160 b50759ef06b5389fdcbbd216575c9b6edad188c1 SHA1 d81ccede0d0407b5a653af326078a688ba1d9273 SHA256 6e822e0a4e092e815d7fb17108153a787358732048b06191ee3235d39792b68c +MISC ChangeLog 60098 RMD160 ce6f94688238783d73118df5fcd3934f08e6e788 SHA1 8ac534ea252d5169039d0cf155f7ffd46fdd0ca7 SHA256 cda20674d18a343674f24bdab6d53402fc7c6569bb5f2ed8bc3c8b7497c735f7 +MISC metadata.xml 2314 RMD160 a05bd6bb9637e92af9e2500a11dfdb1801ff5a4d SHA1 ec99de5f7aacbfdb0cf05701bf18ca4b259b88d8 SHA256 859f11b55f66c850fdaf9fa7dd69412f8f247def16168fbddb5de7501a4d2996 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (GNU/Linux) -iEYEARECAAYFAk5qaLYACgkQOeoy/oIi7uzIxwCgvT3ejnI1K/DYkW5chlYI0YXy -FLAAoOVcHNqfkql2zltMO5hMqF3zZc7A -=8m7e +iEYEARECAAYFAk6AckYACgkQOeoy/oIi7uwcnQCg0LBzXMv5csX3vDXOpP8VGKja +BpcAoJGyqbmgA+l+vxIO4d/ZM6YOav03 +=LhnB -----END PGP SIGNATURE----- diff --git a/app-editors/emacs-vcs/emacs-vcs-23.3.9999.ebuild b/app-editors/emacs-vcs/emacs-vcs-23.3.9999.ebuild index 6ea957fdd704..c2b52e94ad17 100644 --- a/app-editors/emacs-vcs/emacs-vcs-23.3.9999.ebuild +++ b/app-editors/emacs-vcs/emacs-vcs-23.3.9999.ebuild @@ -1,13 +1,12 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-23.3.9999.ebuild,v 1.12 2011/09/09 19:21:18 ulm Exp $ - +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-23.3.9999.ebuild,v 1.13 2011/09/26 12:31:16 ulm Exp $ EAPI=4 WANT_AUTOMAKE="none" inherit autotools elisp-common eutils flag-o-matic multilib -if [ "${PV##*.}" = "9999" ]; then +if [[ ${PV##*.} = 9999 ]]; then EBZR_PROJECT="emacs" EBZR_BRANCH="emacs-23" EBZR_REPO_URI="bzr://bzr.savannah.gnu.org/emacs/${EBZR_BRANCH}/" @@ -31,7 +30,7 @@ HOMEPAGE="http://www.gnu.org/software/emacs/" LICENSE="GPL-3 FDL-1.3 BSD as-is MIT W3C unicode PSF-2" SLOT="23" KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" -IUSE="alsa dbus gconf gif gpm gtk gzip-el hesiod jpeg kerberos m17n-lib motif png sound source svg tiff toolkit-scroll-bars X Xaw3d xft +xpm" +IUSE="alsa athena dbus gconf gif gpm gtk gzip-el hesiod jpeg kerberos m17n-lib motif png sound source svg tiff toolkit-scroll-bars X Xaw3d xft +xpm" RDEPEND="sys-libs/ncurses >=app-admin/eselect-emacs-1.2 @@ -64,7 +63,10 @@ RDEPEND="sys-libs/ncurses gtk? ( x11-libs/gtk+:2 ) !gtk? ( Xaw3d? ( x11-libs/libXaw3d ) - !Xaw3d? ( motif? ( >=x11-libs/openmotif-2.3:0 ) ) + !Xaw3d? ( + athena? ( x11-libs/libXaw ) + !athena? ( motif? ( >=x11-libs/openmotif-2.3:0 ) ) + ) ) )" @@ -78,20 +80,11 @@ RDEPEND="${RDEPEND} EMACS_SUFFIX="emacs-${SLOT}-vcs" SITEFILE="20${PN}-${SLOT}-gentoo.el" -pkg_setup() { - local olddir="${EBZR_STORE_DIR}/emacs-${EBZR_BRANCH#emacs-}" - if [ -d "${olddir}" ]; then - ewarn "bzr.eclass uses branches instead of checkouts now." - ewarn "Therefore, you may remove the old bzr checkout:" - ewarn "rm -rf ${olddir}" - fi -} - src_prepare() { - if [ "${PV##*.}" = "9999" ]; then + if [[ ${PV##*.} = 9999 ]]; then FULL_VERSION=$(grep 'defconst[ ]*emacs-version' lisp/version.el \ | sed -e 's/^[^"]*"\([^"]*\)".*$/\1/') - [ "${FULL_VERSION}" ] || die "Cannot determine current Emacs version" + [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version" echo einfo "Emacs branch: ${EBZR_BRANCH}" einfo "Revision: ${EBZR_REVISION:-${EBZR_REVNO}}" @@ -174,9 +167,9 @@ src_configure() { if use gtk; then einfo "Configuring to build with GIMP Toolkit (GTK+)" myconf="${myconf} --with-x-toolkit=gtk" - elif use Xaw3d; then - einfo "Configuring to build with Xaw3d (Athena/Lucid) toolkit" - myconf="${myconf} --with-x-toolkit=lucid" + elif use Xaw3d || use athena; then + einfo "Configuring to build with Athena/Lucid toolkit" + myconf="${myconf} --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)" elif use motif; then einfo "Configuring to build with Motif toolkit" myconf="${myconf} --with-x-toolkit=motif" @@ -186,9 +179,9 @@ src_configure() { fi local f tk= - for f in gtk Xaw3d motif; do + for f in gtk Xaw3d athena motif; do use ${f} || continue - [ "${tk}" ] \ + [[ ${tk} ]] \ && ewarn "USE flag \"${f}\" ignored (superseded by \"${tk}\")" tk="${tk}${tk:+ }${f}" done @@ -196,7 +189,7 @@ src_configure() { myconf="${myconf} --without-x" fi - if [ "${PV##*.}" = "9999" ]; then + if [[ ${PV##*.} = 9999 ]]; then # These variables are not needed for building. We add them to # configure options because they are stored in the Emacs binary # and available in variable "system-configuration-options". @@ -223,7 +216,7 @@ src_configure() { src_compile() { export SANDBOX_ON=0 # for the unbelievers, see Bug #131505 - if [ "${PV##*.}" = "9999" ]; then + if [[ ${PV##*.} = 9999 ]]; then emake CC="$(tc-getCC)" bootstrap # cleanup, otherwise emacs will be dumped again in src_install (cd src; emake versionclean) @@ -295,7 +288,7 @@ src_install () { pkg_preinst() { # move Info dir file to correct name local infodir=/usr/share/info/${EMACS_SUFFIX} f - if [ -f "${ED}"${infodir}/dir.orig ]; then + if [[ -f ${ED}${infodir}/dir.orig ]]; then mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed" else # this should not happen in EAPI 4 @@ -313,7 +306,7 @@ pkg_preinst() { pkg_postinst() { local f for f in "${EROOT}"/var/lib/games/emacs/{snake,tetris}-scores; do - [ -e "${f}" ] || touch "${f}" + [[ -e ${f} ]] || touch "${f}" done chown games "${EROOT}"/var/lib/games/emacs diff --git a/app-editors/emacs-vcs/emacs-vcs-24.0.90.ebuild b/app-editors/emacs-vcs/emacs-vcs-24.0.90.ebuild new file mode 100644 index 000000000000..f29e63a2104d --- /dev/null +++ b/app-editors/emacs-vcs/emacs-vcs-24.0.90.ebuild @@ -0,0 +1,345 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-24.0.90.ebuild,v 1.1 2011/09/26 12:31:16 ulm Exp $ + +EAPI=4 + +inherit autotools elisp-common eutils flag-o-matic multilib + +if [[ ${PV##*.} = 9999 ]]; then + EBZR_PROJECT="emacs" + EBZR_BRANCH="trunk" + EBZR_REPO_URI="bzr://bzr.savannah.gnu.org/emacs/${EBZR_BRANCH}/" + # "Nosmart" is much faster for initial branching. + EBZR_INITIAL_URI="nosmart+${EBZR_REPO_URI}" + inherit bzr + SRC_URI="" +else + SRC_URI="mirror://gentoo/emacs-${PV}.tar.gz + ftp://alpha.gnu.org/gnu/emacs/pretest/emacs-${PV}.tar.gz" + # FULL_VERSION keeps the full version number, which is needed in + # order to determine some path information correctly for copy/move + # operations later on + FULL_VERSION="${PV%%_*}" + S="${WORKDIR}/emacs-${FULL_VERSION}" +fi + +DESCRIPTION="The extensible, customizable, self-documenting real-time display editor" +HOMEPAGE="http://www.gnu.org/software/emacs/" + +LICENSE="GPL-3 FDL-1.3 BSD as-is MIT W3C unicode PSF-2" +SLOT="24" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="alsa athena dbus gconf gif gnutls gpm gsettings gtk gtk3 gzip-el hesiod imagemagick jpeg kerberos libxml2 m17n-lib motif png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm" + +RDEPEND="sys-libs/ncurses + >=app-admin/eselect-emacs-1.2 + net-libs/liblockfile + hesiod? ( net-dns/hesiod ) + kerberos? ( virtual/krb5 ) + alsa? ( media-libs/alsa-lib ) + gpm? ( sys-libs/gpm ) + dbus? ( sys-apps/dbus ) + gnutls? ( net-libs/gnutls ) + selinux? ( sys-libs/libselinux ) + X? ( + x11-libs/libXmu + x11-libs/libXt + x11-misc/xbitmaps + gconf? ( >=gnome-base/gconf-2.26.2 ) + gsettings? ( >=dev-libs/glib-2.28.6 ) + libxml2? ( >=dev-libs/libxml2-2.2.0 ) + gif? ( media-libs/giflib ) + jpeg? ( virtual/jpeg ) + png? ( media-libs/libpng ) + svg? ( >=gnome-base/librsvg-2.0 ) + tiff? ( media-libs/tiff ) + xpm? ( x11-libs/libXpm ) + imagemagick? ( >=media-gfx/imagemagick-6.6.2 ) + xft? ( + media-libs/fontconfig + media-libs/freetype + x11-libs/libXft + m17n-lib? ( + >=dev-libs/libotf-0.9.4 + >=dev-libs/m17n-lib-1.5.1 + ) + ) + gtk? ( + gtk3? ( x11-libs/gtk+:3 ) + !gtk3? ( x11-libs/gtk+:2 ) + ) + !gtk? ( + Xaw3d? ( x11-libs/libXaw3d ) + !Xaw3d? ( + athena? ( x11-libs/libXaw ) + !athena? ( motif? ( >=x11-libs/openmotif-2.3:0 ) ) + ) + ) + )" + +DEPEND="${RDEPEND} + dev-util/pkgconfig + gzip-el? ( app-arch/gzip )" + +RDEPEND="${RDEPEND} + >=app-emacs/emacs-common-gentoo-1[X?]" + +EMACS_SUFFIX="emacs-${SLOT}" +SITEFILE="20${PN}-${SLOT}-gentoo.el" + +src_prepare() { + if [[ ${PV##*.} = 9999 ]]; then + FULL_VERSION=$(sed -n 's/^AC_INIT(emacs,[ \t]*\([^ \t,)]*\).*/\1/p' \ + configure.in) + [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version" + echo + einfo "Emacs branch: ${EBZR_BRANCH}" + einfo "Revision: ${EBZR_REVISION:-${EBZR_REVNO}}" + einfo "Emacs version number: ${FULL_VERSION}" + [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \ + || die "Upstream version number changed to ${FULL_VERSION}" + echo + fi + + if ! use alsa; then + # ALSA is detected even if not requested by its USE flag. + # Suppress it by supplying pkg-config with a wrong library name. + sed -i -e "/ALSA_MODULES=/s/alsa/DiSaBlEaLsA/" configure.in \ + || die "unable to sed configure.in" + fi + if ! use gzip-el; then + # Emacs' build system automatically detects the gzip binary and + # compresses el files. We don't want that so confuse it with a + # wrong binary name + sed -i -e "s/ gzip/ PrEvEnTcOmPrEsSiOn/" configure.in \ + || die "unable to sed configure.in" + fi + + AT_M4DIR=m4 eautoreconf +} + +src_configure() { + ALLOWED_FLAGS="" + strip-flags + + if use sh; then + replace-flags -O[1-9] -O0 #262359 + elif use ia64; then + replace-flags -O[2-9] -O1 #325373 + else + replace-flags -O[3-9] -O2 + fi + + local myconf + + if use alsa && ! use sound; then + echo + einfo "Although sound USE flag is disabled you chose to have alsa," + einfo "so sound is switched on anyway." + echo + myconf="${myconf} --with-sound" + else + myconf="${myconf} $(use_with sound)" + fi + + if use X; then + myconf="${myconf} --with-x" + myconf="${myconf} $(use_with gconf)" + myconf="${myconf} $(use_with gsettings)" + myconf="${myconf} $(use_with libxml2 xml2)" + myconf="${myconf} $(use_with toolkit-scroll-bars)" + myconf="${myconf} $(use_with wide-int)" + myconf="${myconf} $(use_with gif) $(use_with jpeg)" + myconf="${myconf} $(use_with png) $(use_with svg rsvg)" + myconf="${myconf} $(use_with tiff) $(use_with xpm)" + myconf="${myconf} $(use_with imagemagick)" + + if use xft; then + myconf="${myconf} --with-xft" + myconf="${myconf} $(use_with m17n-lib libotf)" + myconf="${myconf} $(use_with m17n-lib m17n-flt)" + else + myconf="${myconf} --without-xft" + myconf="${myconf} --without-libotf --without-m17n-flt" + use m17n-lib && ewarn \ + "USE flag \"m17n-lib\" has no effect if \"xft\" is not set." + fi + + if use gtk; then + einfo "Configuring to build with GIMP Toolkit (GTK+)" + myconf="${myconf} --with-x-toolkit=$(usev gtk3 || echo gtk)" + elif use Xaw3d || use athena; then + einfo "Configuring to build with Athena/Lucid toolkit" + myconf="${myconf} --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)" + elif use motif; then + einfo "Configuring to build with Motif toolkit" + myconf="${myconf} --with-x-toolkit=motif" + else + einfo "Configuring to build with no toolkit" + myconf="${myconf} --with-x-toolkit=no" + fi + + local f tk= + for f in gtk Xaw3d athena motif; do + use ${f} || continue + [[ ${tk} ]] \ + && ewarn "USE flag \"${f}\" ignored (superseded by \"${tk}\")" + tk="${tk}${tk:+ }${f}" + done + else + myconf="${myconf} --without-x" + fi + + if [[ ${PV##*.} = 9999 ]]; then + # These variables are not needed for building. We add them to + # configure options because they are stored in the Emacs binary + # and available in variable "system-configuration-options". + myconf="${myconf} EBZR_BRANCH=${EBZR_BRANCH} EBZR_REVNO=${EBZR_REVNO}" + fi + + # According to configure, this option is only used for GNU/Linux + # (x86_64 and s390). For Gentoo Prefix we have to explicitly spell + # out the location because $(get_libdir) does not necessarily return + # something that matches the host OS's libdir naming (e.g. RHEL). + local crtdir=$($(tc-getCC) -print-file-name=crt1.o) + crtdir=${crtdir%/*} + + econf \ + --program-suffix=-${EMACS_SUFFIX} \ + --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \ + --with-crt-dir="${crtdir}" \ + --with-gameuser="${GAMES_USER_DED:-games}" \ + --without-compress-info \ + $(use_with hesiod) \ + $(use_with kerberos) $(use_with kerberos kerberos5) \ + $(use_with gpm) \ + $(use_with dbus) \ + $(use_with gnutls) \ + $(use_with selinux) \ + ${myconf} +} + +src_compile() { + export SANDBOX_ON=0 # for the unbelievers, see Bug #131505 + if [[ ${PV##*.} = 9999 ]]; then + emake CC="$(tc-getCC)" bootstrap + # cleanup, otherwise emacs will be dumped again in src_install + (cd src; emake versionclean) + fi + # set last component of emacs-version to (package revision + 1) + touch src/emacs-${FULL_VERSION}.${PR#r} + emake CC="$(tc-getCC)" +} + +src_install () { + local i m + + emake install DESTDIR="${D}" + + rm "${ED}"/usr/bin/emacs-${FULL_VERSION}-${EMACS_SUFFIX} \ + || die "removing duplicate emacs executable failed" + mv "${ED}"/usr/bin/emacs-${EMACS_SUFFIX} "${ED}"/usr/bin/${EMACS_SUFFIX} \ + || die "moving Emacs executable failed" + + # move man pages to the correct place + for m in "${ED}"/usr/share/man/man1/* ; do + mv "${m}" "${m%.1}-${EMACS_SUFFIX}.1" || die "mv man failed" + done + + # move info dir to avoid collisions with the dir file generated by portage + mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \ + || die "moving info dir failed" + touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir + docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig + + # avoid collision between slots, see bug #169033 e.g. + rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el + rm -rf "${ED}"/usr/share/{applications,icons} + rm "${ED}"/var/lib/games/emacs/{snake,tetris}-scores + keepdir /var/lib/games/emacs + + local c=";;" + if use source; then + insinto /usr/share/emacs/${FULL_VERSION}/src + # This is not meant to install all the source -- just the + # C source you might find via find-function + doins src/*.[ch] + c="" + fi + + sed 's/^X//' >"${T}/${SITEFILE}" <<-EOF + X + ;;; ${PN}-${SLOT} site-lisp configuration + X + (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version) + X ${c}(setq find-function-C-source-directory + X ${c} "${EPREFIX}/usr/share/emacs/${FULL_VERSION}/src") + X (let ((path (getenv "INFOPATH")) + X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}") + X (re "\\\\\`${EPREFIX}/usr/share/info\\\\>")) + X (and path + X ;; move Emacs Info dir before anything else in /usr/share/info + X (let* ((p (cons nil (split-string path ":" t))) (q p)) + X (while (and (cdr q) (not (string-match re (cadr q)))) + X (setq q (cdr q))) + X (setcdr q (cons dir (delete dir (cdr q)))) + X (setq Info-directory-list (prune-directory-list (cdr p))))))) + EOF + elisp-site-file-install "${T}/${SITEFILE}" || die + + dodoc README BUGS +} + +pkg_preinst() { + # move Info dir file to correct name + local infodir=/usr/share/info/${EMACS_SUFFIX} f + if [[ -f ${ED}${infodir}/dir.orig ]]; then + mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed" + else + # this should not happen in EAPI 4 + ewarn "Regenerating Info directory index in ${infodir} ..." + rm -f "${ED}"${infodir}/dir{,.*} + for f in "${ED}"${infodir}/*; do + if [[ ${f##*/} != *-[0-9]* && -e ${f} ]]; then + install-info --info-dir="${ED}"${infodir} "${f}" \ + || die "install-info failed" + fi + done + fi +} + +pkg_postinst() { + local f + for f in "${EROOT}"/var/lib/games/emacs/{snake,tetris}-scores; do + [[ -e ${f} ]] || touch "${f}" + done + chown "${GAMES_USER_DED:-games}" "${EROOT}"/var/lib/games/emacs + + elisp-site-regen + eselect emacs update ifunset + + if use X; then + echo + elog "You need to install some fonts for Emacs." + elog "Installing media-fonts/font-adobe-{75,100}dpi on the X server's" + elog "machine would satisfy basic Emacs requirements under X11." + elog "See also http://www.gentoo.org/proj/en/lisp/emacs/xft.xml" + elog "for how to enable anti-aliased fonts." + fi + + echo + elog "You can set the version to be started by /usr/bin/emacs through" + elog "the Emacs eselect module, which also redirects man and info pages." + elog "Therefore, several Emacs versions can be installed at the same time." + elog "\"man emacs.eselect\" for details." + echo + elog "If you upgrade from a previous major version of Emacs, then it is" + elog "strongly recommended that you use app-admin/emacs-updater to rebuild" + elog "all byte-compiled elisp files of the installed Emacs packages." +} + +pkg_postrm() { + elisp-site-regen + eselect emacs update ifunset +} diff --git a/app-editors/emacs-vcs/emacs-vcs-24.0.9999-r1.ebuild b/app-editors/emacs-vcs/emacs-vcs-24.0.9999-r1.ebuild index 5283d749e9d6..8f59ed7f60a8 100644 --- a/app-editors/emacs-vcs/emacs-vcs-24.0.9999-r1.ebuild +++ b/app-editors/emacs-vcs/emacs-vcs-24.0.9999-r1.ebuild @@ -1,12 +1,12 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-24.0.9999-r1.ebuild,v 1.16 2011/08/22 19:31:26 ulm Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-24.0.9999-r1.ebuild,v 1.17 2011/09/26 12:31:15 ulm Exp $ EAPI=4 inherit autotools elisp-common eutils flag-o-matic multilib -if [ "${PV##*.}" = "9999" ]; then +if [[ ${PV##*.} = 9999 ]]; then EBZR_PROJECT="emacs" EBZR_BRANCH="trunk" EBZR_REPO_URI="bzr://bzr.savannah.gnu.org/emacs/${EBZR_BRANCH}/" @@ -30,7 +30,7 @@ HOMEPAGE="http://www.gnu.org/software/emacs/" LICENSE="GPL-3 FDL-1.3 BSD as-is MIT W3C unicode PSF-2" SLOT="24" KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" -IUSE="alsa dbus gconf gif gnutls gpm gsettings gtk gtk3 gzip-el hesiod imagemagick jpeg kerberos libxml2 m17n-lib motif png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm" +IUSE="alsa athena dbus gconf gif gnutls gpm gsettings gtk gtk3 gzip-el hesiod imagemagick jpeg kerberos libxml2 m17n-lib motif png selinux sound source svg tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm" RDEPEND="sys-libs/ncurses >=app-admin/eselect-emacs-1.2 @@ -71,7 +71,10 @@ RDEPEND="sys-libs/ncurses ) !gtk? ( Xaw3d? ( x11-libs/libXaw3d ) - !Xaw3d? ( motif? ( >=x11-libs/openmotif-2.3:0 ) ) + !Xaw3d? ( + athena? ( x11-libs/libXaw ) + !athena? ( motif? ( >=x11-libs/openmotif-2.3:0 ) ) + ) ) )" @@ -85,20 +88,11 @@ RDEPEND="${RDEPEND} EMACS_SUFFIX="emacs-${SLOT}" SITEFILE="20${PN}-${SLOT}-gentoo.el" -pkg_setup() { - local olddir="${EBZR_STORE_DIR}/emacs-${EBZR_BRANCH#emacs-}" - if [ -d "${olddir}" ]; then - ewarn "bzr.eclass uses branches instead of checkouts now." - ewarn "Therefore, you may remove the old bzr checkout:" - ewarn "rm -rf ${olddir}" - fi -} - src_prepare() { - if [ "${PV##*.}" = "9999" ]; then + if [[ ${PV##*.} = 9999 ]]; then FULL_VERSION=$(sed -n 's/^AC_INIT(emacs,[ \t]*\([^ \t,)]*\).*/\1/p' \ configure.in) - [ "${FULL_VERSION}" ] || die "Cannot determine current Emacs version" + [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version" echo einfo "Emacs branch: ${EBZR_BRANCH}" einfo "Revision: ${EBZR_REVISION:-${EBZR_REVNO}}" @@ -173,16 +167,11 @@ src_configure() { fi if use gtk; then - if use gtk3; then - einfo "Configuring to build with GIMP Toolkit (GTK+ 3)" - myconf="${myconf} --with-x-toolkit=gtk3" - else - einfo "Configuring to build with GIMP Toolkit (GTK+ 2)" - myconf="${myconf} --with-x-toolkit=gtk" - fi - elif use Xaw3d; then - einfo "Configuring to build with Xaw3d (Athena/Lucid) toolkit" - myconf="${myconf} --with-x-toolkit=lucid" + einfo "Configuring to build with GIMP Toolkit (GTK+)" + myconf="${myconf} --with-x-toolkit=$(usev gtk3 || echo gtk)" + elif use Xaw3d || use athena; then + einfo "Configuring to build with Athena/Lucid toolkit" + myconf="${myconf} --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)" elif use motif; then einfo "Configuring to build with Motif toolkit" myconf="${myconf} --with-x-toolkit=motif" @@ -192,9 +181,9 @@ src_configure() { fi local f tk= - for f in gtk Xaw3d motif; do + for f in gtk Xaw3d athena motif; do use ${f} || continue - [ "${tk}" ] \ + [[ ${tk} ]] \ && ewarn "USE flag \"${f}\" ignored (superseded by \"${tk}\")" tk="${tk}${tk:+ }${f}" done @@ -202,7 +191,7 @@ src_configure() { myconf="${myconf} --without-x" fi - if [ "${PV##*.}" = "9999" ]; then + if [[ ${PV##*.} = 9999 ]]; then # These variables are not needed for building. We add them to # configure options because they are stored in the Emacs binary # and available in variable "system-configuration-options". @@ -233,7 +222,7 @@ src_configure() { src_compile() { export SANDBOX_ON=0 # for the unbelievers, see Bug #131505 - if [ "${PV##*.}" = "9999" ]; then + if [[ ${PV##*.} = 9999 ]]; then emake CC="$(tc-getCC)" bootstrap # cleanup, otherwise emacs will be dumped again in src_install (cd src; emake versionclean) @@ -305,7 +294,7 @@ src_install () { pkg_preinst() { # move Info dir file to correct name local infodir=/usr/share/info/${EMACS_SUFFIX} f - if [ -f "${ED}"${infodir}/dir.orig ]; then + if [[ -f ${ED}${infodir}/dir.orig ]]; then mv "${ED}"${infodir}/dir{.orig,} || die "moving info dir failed" else # this should not happen in EAPI 4 @@ -323,7 +312,7 @@ pkg_preinst() { pkg_postinst() { local f for f in "${EROOT}"/var/lib/games/emacs/{snake,tetris}-scores; do - [ -e "${f}" ] || touch "${f}" + [[ -e ${f} ]] || touch "${f}" done chown "${GAMES_USER_DED:-games}" "${EROOT}"/var/lib/games/emacs diff --git a/app-editors/emacs-vcs/metadata.xml b/app-editors/emacs-vcs/metadata.xml index 171aed40d89b..1bbaa4457488 100644 --- a/app-editors/emacs-vcs/metadata.xml +++ b/app-editors/emacs-vcs/metadata.xml @@ -20,6 +20,8 @@ available separately. </longdescription> <use> + <flag name='athena'>Enable the MIT Athena widget set + (<pkg>x11-libs/libXaw</pkg>)</flag> <flag name='gconf'>Use <pkg>gnome-base/gconf</pkg> to read the system font name</flag> <flag name='gsettings'>Use gsettings (<pkg>dev-libs/glib</pkg>) to read the |