summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Graaff <graaff@gentoo.org>2008-06-08 08:17:17 +0000
committerHans de Graaff <graaff@gentoo.org>2008-06-08 08:17:17 +0000
commit0d96e7770d9207803c534957a57539e863941f29 (patch)
treefdb102d94559557effddd7362efc0609cf676559 /app-editors/sxemacs
parentFix Manifest (diff)
downloademacs-0d96e7770d9207803c534957a57539e863941f29.tar.gz
emacs-0d96e7770d9207803c534957a57539e863941f29.tar.bz2
emacs-0d96e7770d9207803c534957a57539e863941f29.zip
Inital import of sxemacs ebuild
svn path=/xemacs-overlay/; revision=1087
Diffstat (limited to 'app-editors/sxemacs')
-rw-r--r--app-editors/sxemacs/ChangeLog8
-rw-r--r--app-editors/sxemacs/Manifest5
-rw-r--r--app-editors/sxemacs/metadata.xml10
-rw-r--r--app-editors/sxemacs/sxemacs-22.1.9.ebuild355
4 files changed, 378 insertions, 0 deletions
diff --git a/app-editors/sxemacs/ChangeLog b/app-editors/sxemacs/ChangeLog
new file mode 100644
index 0000000..f4171ed
--- /dev/null
+++ b/app-editors/sxemacs/ChangeLog
@@ -0,0 +1,8 @@
+# ChangeLog for app-editors/sxemacs
+# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+ 08 Jun 2008; Hans de Graaff <graaff@gentoo.org> ChangeLog:
+ Initial import of sxemacs ebuild. I'm proxying this for Horst Günther
+ Burkhardt III, from the sxemacs dev team.
+
diff --git a/app-editors/sxemacs/Manifest b/app-editors/sxemacs/Manifest
new file mode 100644
index 0000000..51609a3
--- /dev/null
+++ b/app-editors/sxemacs/Manifest
@@ -0,0 +1,5 @@
+DIST NeXT_XEmacs.tar.gz 39571 RMD160 3c2cedf75e4ece412031b20a15614a78367393f4 SHA1 619912734b1a1fae5115941b904d41beb4765b47 SHA256 35a0d988fd4ee801572639a99798571aa9fad140ddbed1455565ae9d5e0086c7
+DIST sxemacs-22.1.9.tar.gz 9438059 RMD160 051d4aa8d179fe27118f51679a94825d0962ee25 SHA1 ec23f81bf27a60497f407b59da7c0cab126ae641 SHA256 02f86617cc409aef44f6561837ea1da3aa91fc0f7f06e02d04bd3530f4d82e11
+EBUILD sxemacs-22.1.9.ebuild 10901 RMD160 3dc75218be7e05015cf92ee08e4143911fdd2179 SHA1 6be26a1b3363f26d2c1a95b325e1154fdd15bc3d SHA256 140ea166b442aec189b14a1ff690f7cce20e768ccdb2aada973dd10279244694
+MISC ChangeLog 299 RMD160 64f0a1f74d88c846f5bf1205bf355f3c0391bc11 SHA1 3c34dd6ee74a17ce5cb074030391abd9c8b1185e SHA256 62347a1826b666be7f54a3276185bac5596ce8e07870dc9171fc3de6dde908c8
+MISC metadata.xml 365 RMD160 596ab334c06c2d7c1bc8b4ba6d24d29562c82d75 SHA1 f9bf09365f9739065d4b4f52b7af47638f16277d SHA256 da449e36c4d0339e88247a8fb361c3793188d2e6f817861f74d5d64b3a61353b
diff --git a/app-editors/sxemacs/metadata.xml b/app-editors/sxemacs/metadata.xml
new file mode 100644
index 0000000..6b08797
--- /dev/null
+++ b/app-editors/sxemacs/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>xemacs</herd>
+ <maintainer>
+ <email>horst@sxemacs.org</email>
+ <description>Primary Maintainer</description>
+ </maintainer>
+ <longdescription></longdescription>
+</pkgmetadata>
diff --git a/app-editors/sxemacs/sxemacs-22.1.9.ebuild b/app-editors/sxemacs/sxemacs-22.1.9.ebuild
new file mode 100644
index 0000000..6ab3e93
--- /dev/null
+++ b/app-editors/sxemacs/sxemacs-22.1.9.ebuild
@@ -0,0 +1,355 @@
+# Distributed under the terms of the GNU General Public License v2
+
+# Note: SXEmacs may not work with a hardened profile. If you
+# want to use SXEmacs on a hardened profile you may find it
+# of assistance to compile with the -nopie flag in CFLAGS or
+# help the Gentoo team fix bug #75028.
+
+inherit eutils flag-o-matic
+
+DESCRIPTION="A text editing and development environment based on XEmacs that aims to be second to none in regards to stability, features, and innovation."
+HOMEPAGE="http://www.sxemacs.org/"
+SRC_URI="http://downloads.sxemacs.org/releases/${P}.tar.gz
+ http://www.malfunction.de/afterstep/files/NeXT_XEmacs.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86 ~x86-fbsd"
+MAKEOPTS="-j1"
+
+IUSE="X alsa jack pulseaudio oss nas arts ao esd gif png jpeg xface tiff ffmpeg mad bdwgc
+ sndfile sox ssl tls ipv6 pop kerberos hesiod postgresql ffi gmp mpfr magic xpm
+ athena neXt Xaw3d motif xim canna freewnn gdbm berkdb tty gpm ncurses mule socks
+ omgoptimize warnfull"
+
+X_DEPEND="x11-libs/libXt x11-libs/libXmu x11-libs/libXext x11-misc/xbitmaps"
+
+DEPEND="virtual/libc
+ =sys-libs/zlib-1.2*
+ app-arch/bzip2
+ >=media-libs/audiofile-0.2.3
+ X? ( $X_DEPEND !Xaw3d? ( !neXt? ( x11-libs/libXaw ) ) )
+ alsa? ( media-sound/alsa-headers )
+ jack? ( media-sound/jack )
+ pulseaudio? ( media-sound/pulseaudio )
+ nas? ( media-libs/nas )
+ arts? ( kde-base/arts )
+ ao? ( >=media-libs/libao-0.8.5 )
+ esd? ( media-sound/esound )
+ png? ( =media-libs/libpng-1.2* )
+ jpeg? ( media-libs/jpeg )
+ xface? ( media-libs/compface )
+ tiff? ( media-libs/tiff )
+ ffmpeg? ( media-video/ffmpeg )
+ mad? ( media-libs/libmad media-sound/madplay )
+ bdwgc? ( dev-libs/boehm-gc )
+ sndfile? ( media-libs/libsndfile )
+ sox? ( media-sound/sox )
+ ssl? ( >=dev-libs/openssl-0.9.6 )
+ tls? ( >=net-libs/gnutls-2.0.4 )
+ kerberos? ( app-crypt/mit-krb5 )
+ hesiod? ( net-dns/hesiod )
+ postgresql? ( dev-db/postgresql )
+ gmp? ( dev-libs/gmp )
+ mpfr? ( dev-libs/mpfr )
+ athena? ( x11-libs/libXaw )
+ neXt? ( x11-libs/neXtaw )
+ Xaw3d? ( x11-libs/Xaw3d )
+ motif? ( >=x11-libs/openmotif-2.1.30 )
+ canna? ( app-i18n/canna )
+ freewnn? ( app-i18n/freewnn )
+ gdbm? ( >=sys-libs/gdbm-1.8.3 )
+ berkdb? ( sys-libs/db )
+ gpm? ( sys-libs/gpm )
+ ncurses? ( >=sys-libs/ncurses-5.2 )
+ magic? ( sys-apps/file )"
+
+PDEPEND="app-xemacs/xemacs-base
+ mule? ( app-xemacs/mule-base )"
+
+PROVIDE="virtual/sxemacs"
+
+pkg_setup() {
+ if use ffi && ! built_with_use sys-devel/gcc libffi ; then
+ eerror "sys-devel/gcc not built with libffi support"
+ eerror "rebuild sys-devel/gcc with USE=\"libffi\" or"
+ eerror "turn off the libffi use flag on ${PN}"
+ die "Rebuild gcc with libffi support or don't use FFI."
+ fi
+
+ if use ffi && built_with_use sys-devel/gcc libffi ; then
+ elog "You've elected to build SXEmacs with FFI support."
+ elog "This will allow you to view in SXEmacs any image type"
+ elog "supported by ImageMagick's libWand."
+ elog "It will also allow you to download the initial XE packages"
+ elog "from within SXEmacs itself. To do this, use"
+ elog " M-x pui-bootstrap RET"
+ fi
+
+ if use bdwgc ; then
+ ewarn "You've elected to compile SXEmacs with support for the"
+ ewarn "Boehm-Demers-Weiser Garbage Collector, or Boehm-GC."
+ ewarn "The BDWGC code is still in its infancy, and is known to"
+ ewarn "consume larger-than-average amounts of memory in an SXEmacs"
+ ewarn "session. You have been warned."
+ fi
+}
+
+src_unpack() {
+ unpack ${P}.tar.gz
+ use neXt && unpack NeXT_XEmacs.tar.gz
+
+ use neXt && cp "${WORKDIR}"/NeXT.XEmacs/xemacs-icons/* "${S}"/etc/toolbar/
+}
+
+src_compile() {
+
+ #####################################
+ # Allow SXEmacs to decide on CFLAGS #
+ #####################################
+ # Don't know why a higher value won't work on some Gentoo systems, but to be
+ # safe and ensure that users don't whinge too much, we'll arbitrate -O2 as
+ # the optimisation level.
+ replace-flags -O* -O2
+ filter-flags -fomit-frame-pointer
+
+ #################
+ # Configuration #
+ #################
+ local myconf=""
+
+ #######################
+ # Configuration for X #
+ #######################
+ if use X ; then
+ myconf="${myconf} --with-widgets=athena"
+ myconf="${myconf} --with-dialogs=athena"
+ myconf="${myconf} --with-menubars=lucid"
+ myconf="${myconf} --with-scrollbars=lucid"
+ if use motif ; then
+ myconf="--with-widgets=motif"
+ myconf="${myconf} --with-dialogs=motif"
+ myconf="${myconf} --with-scrollbars=motif"
+ myconf="${myconf} --with-menubars=lucid"
+ fi
+ if use athena ; then
+ myconf="--with-scrollbars=athena"
+ fi
+ if use Xaw3d ; then
+ myconf="${myconf} --with-athena=3d"
+ elif use neXt ; then
+ myconf="${myconf} --with-athena=next"
+ else
+ myconf="${myconf} --with-athena=xaw"
+ fi
+
+ else
+ myconf="${myconf} --without-x"
+ fi
+
+ #########################
+ # Configuration for TTY #
+ #########################
+ local ttyconf=""
+ if use tty ; then
+ ttyconf="${ttyconf} --with-tty"
+ if use tty ; then
+ if use ncurses ; then
+ ttyconf="${ttyconf} --with-ncurses"
+ else
+ ttyconf="${ttyconf} --without-ncurses"
+ fi
+ if use gpm ; then
+ ttyconf="${ttyconf} --with-gpm"
+ else
+ ttyconf="${ttyconf} --without-gpm"
+ fi
+ fi
+ else
+ ttyconf="${ttyconf} --without-tty"
+ fi
+ myconf="${myconf} ${ttyconf}"
+
+
+ ######################
+ # MULE Configuration #
+ ######################
+ if use mule ; then
+ myconf="${myconf} --with-mule"
+ if use xim ; then
+ if use motif ; then
+ myconf="${myconf} --with-xim=motif"
+ else
+ myconf="${myconf} --with-xim=xlib"
+ fi
+ else
+ myconf="${myconf} --with-xim=no"
+ fi
+ use canna && myconf="${myconf} --with-canna"
+ use freewnn && myconf="${myconf} --with-wnn"
+ else
+ myconf="${myconf} --without-mule"
+ fi
+
+ #######################
+ # Sound Configuration #
+ #######################
+ local soundconf="none"
+ # Define what sound outputs we use
+ use alsa && soundconf="${soundconf},alsa"
+ use jack && soundconf="${soundconf},jack"
+ use pulseaudio && soundconf="${soundconf},pulse"
+ use oss && soundconf="${soundconf},oss"
+ use nas && soundconf="${soundconf},nas"
+ use arts && soundconf="${soundconf},arts"
+ use ao && soundconf="${soundconf},ao"
+ use esd && soundconf="${soundconf},esd"
+ # And make them work
+ myconf="${myconf} --with-sound=${soundconf}"
+
+ ########################
+ # Images Configuration #
+ ########################
+ local imageconf="none"
+ # Define Image Types to support
+ use gif && imageconf="${imageconf},gif"
+ use png && imageconf="${imageconf},png"
+ use jpeg && imageconf="${imageconf},jpeg"
+ use xface && imageconf="${imageconf},xface"
+ use tiff && imageconf="${imageconf},tiff"
+ use xpm && imageconf="${imageconf},xpm"
+ # And make them work
+ myconf="${myconf} --with-image=${imageconf}"
+ # Note - If FFI useflag is set, and ImageMagick is installed, SXEmacs
+ # will make use of libWand and can thus display many more types of
+ # image.
+
+ ##########################
+ # Database Configuration #
+ ##########################
+ local mydb="none"
+ use gdbm && mydb="${mydb},gdbm"
+ use berkdb && mydb="${mydb},berkdb"
+ myconf="${myconf} --with-database=${mydb}"
+ # and add support for postgre here
+ use postgresql && myconf="${myconf} --with-postgresql" || myconf="${myconf} --without-postgresql"
+
+ #######################
+ # Media Configuration #
+ #######################
+ local mediaconf="none,internal"
+ # Define Media Types to support
+ use ffmpeg && mediaconf="${mediaconf},ffmpeg"
+ use mad && mediaconf="${mediaconf},mad"
+ use sndfile && mediaconf="${mediaconf},sndfile"
+ use magic && mediaconf="${mediaconf},magic"
+ use sox && mediaconf="${mediaconf},sox"
+ # And make them work
+ myconf="${myconf} --with-media=${mediaconf}"
+
+ ########################
+ # Cryptography Options #
+ ########################
+ local crypto=""
+ use ssl && crypto="${crypto} --with-openssl"
+ use tls && crypto="${crypto} --with-gnutls"
+ myconf="${myconf} ${crypto}"
+
+ ############################
+ # Networking Configuration #
+ ############################
+ local netconf=""
+ use pop && netconf="${netconf} --with-pop" || netconf="${netconf} --without-pop"
+ use kerberos && netconf="${netconf} --with-kerberos" || netconf="${netconf} --without-kerberos"
+ use hesiod && netconf="${netconf} --with-hesiod"
+ use socks && netconf="${netconf} --with-socks"
+ myconf="${myconf} ${netconf}"
+
+ #######
+ # FFI #
+ #######
+ use ffi && myconf="${myconf} --with-ffi"
+
+ #########################################
+ # Boehm-Demers-Weiser Garbage Collector #
+ #########################################
+ use bdwgc && myconf="${myconf} --with-experimental-features=all"
+
+ ############################
+ # Aggressive Optimisations #
+ ############################
+ use omgoptimize && myconf="${myconf} --with-ridiculously-aggressive-optimisations"
+
+ ##########################
+ # Maximum Warning Output #
+ ##########################
+ use warnfull && myconf="${myconf} --with-maximum-warning-output"
+
+ ####################
+ # Neat Math Tricks #
+ ####################
+ # I'm going to let SXEmacs do the deciding here.
+ # The useflags will simply be for dependencies.
+ myconf="${myconf} --with-ent=all --with-ase=all"
+
+ ##################
+ # Module Support #
+ ##################
+ myconf="${myconf} --with-module-support"
+ myconf="${myconf} --with-modules=all"
+
+ ########################
+ # End of Configuration #
+ ########################
+
+ ###############
+ # ./configure #
+ ###############
+
+ tuple=$(config.guess)
+ ./configure --prefix=/usr --with-site-modules=yes ${myconf} || die "The SXEmacs Configure Script failed to run correctly."
+
+ #################
+ # Build SXEmacs #
+ #################
+
+ emake beta check || die "The SXEmacs Build Process (compilation) failed."
+
+}
+
+src_install() {
+ ###################
+ # Install SXEmacs #
+ ###################
+
+ emake prefix="${D}"/usr mandir="${D}"/usr/share/man/man1 infodir="${D}"/usr/share/info install gzip-el
+
+ dodir /usr/share/sxemacs/xemacs-packages/
+ dodir /usr/share/sxemacs/sxemacs-packages/
+ dodir /usr/share/sxemacs/site-packages/
+ dodir /usr/lib/sxemacs/${tuple}/modules/
+ dodir /usr/lib/${P}/${tuple}/modules/
+ dodir /usr/lib/sxemacs/${tuple}/site-modules/
+ dodir /usr/lib/${P}/${tuple}/site-modules/
+
+ if use mule;
+ then
+ dodir /usr/share/sxemacs/mule-packages
+ fi
+
+ insinto /usr/share/pixmaps
+ newins "${S}"/etc/${PN}-icon.xpm ${PN}.xpm
+
+ insinto /usr/share/applications
+ doins "${FILESDIR}"/${PN}.desktop
+
+}
+
+
+pkg_postinst() {
+ eselect emacs update --if-unset
+}
+
+pkg_postrm() {
+ eselect emacs update --if-unset
+} \ No newline at end of file