diff options
author | Ulrich Müller <ulm@gentoo.org> | 2014-02-17 21:38:03 +0000 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2014-02-17 21:38:03 +0000 |
commit | e6bd8b06d62bb623eabc0938a3b3ba8029970af8 (patch) | |
tree | b7a8db760d8013b69325b82198b2bf80eb09f5d3 /app-editors/xemacs | |
parent | Linux patch 3.4.80 (diff) | |
download | historical-e6bd8b06d62bb623eabc0938a3b3ba8029970af8.tar.gz historical-e6bd8b06d62bb623eabc0938a3b3ba8029970af8.tar.bz2 historical-e6bd8b06d62bb623eabc0938a3b3ba8029970af8.zip |
Install gnuserv binaries with -xemacs suffix to avoid file collisions with app-emacs/gnuserv; active versions of gnuclient and gnudoit can now be selected with the gnuclient eselect module, bug 177936.
Package-Manager: portage-2.2.8-r1/cvs/Linux x86_64
Manifest-Sign-Key: 0x9433907D693FB5B8!
Diffstat (limited to 'app-editors/xemacs')
-rw-r--r-- | app-editors/xemacs/ChangeLog | 11 | ||||
-rw-r--r-- | app-editors/xemacs/Manifest | 29 | ||||
-rw-r--r-- | app-editors/xemacs/xemacs-21.4.22-r3.ebuild | 252 | ||||
-rw-r--r-- | app-editors/xemacs/xemacs-21.5.34-r2.ebuild | 246 |
4 files changed, 521 insertions, 17 deletions
diff --git a/app-editors/xemacs/ChangeLog b/app-editors/xemacs/ChangeLog index fa52b0d9da02..08eaec1e6dba 100644 --- a/app-editors/xemacs/ChangeLog +++ b/app-editors/xemacs/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for app-editors/xemacs # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-editors/xemacs/ChangeLog,v 1.168 2014/02/02 22:42:57 matsl Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-editors/xemacs/ChangeLog,v 1.169 2014/02/17 21:37:43 ulm Exp $ + +*xemacs-21.5.34-r2 (17 Feb 2014) +*xemacs-21.4.22-r3 (17 Feb 2014) + + 17 Feb 2014; Ulrich Müller <ulm@gentoo.org> +xemacs-21.4.22-r3.ebuild, + +xemacs-21.5.34-r2.ebuild: + Install gnuserv binaries with -xemacs suffix to avoid file collisions with + app-emacs/gnuserv; active versions of gnuclient and gnudoit can now be + selected with the gnuclient eselect module, bug 177936. *xemacs-21.5.34-r1 (02 Feb 2014) diff --git a/app-editors/xemacs/Manifest b/app-editors/xemacs/Manifest index fc930ee3005e..793cbdc5b7f3 100644 --- a/app-editors/xemacs/Manifest +++ b/app-editors/xemacs/Manifest @@ -22,30 +22,27 @@ DIST xemacs-21.5.31.tar.gz 15802193 SHA256 d59f90b7e72621376a23daa484f1929945d05 DIST xemacs-21.5.33.tar.gz 15781151 SHA256 448c76aa32cd5c84257027846f01b75a5e4f1e9db3278f95e68ff23d59fb8f94 SHA512 75358b5cf2a012d23b95eb918e0ba1abf254db51d979d370f407b67871c6d09e2d59f59fe1acd46149933913222935e2c12be72cdf0314109c568f9f14438151 WHIRLPOOL 29d6a19d8cacc243afd3c21ed96cfabfa956531692e8ce4a454b958d32b08bb3eac47f52ada872ccfdb41082514145c602cc7ed81443bece7529365ba089f454 DIST xemacs-21.5.34.tar.gz 15816932 SHA256 33cc54a6a9a45224a64b6c57c8138b5a5f0f1be368951a6d9ec8c0aec5993ee5 SHA512 b61d88fe530a77b88c2ed0cecd6597ed3c265450bc61f7c6823920f774b2d566ef6fc18a6c33928d846d08d465617d4ccd3c4656606ec8634127a683abbc929a WHIRLPOOL 733aabc45309ff4172ab77492dd85e71f156722f2e06d9a185c0a4260b9fbea607ff8a41dc43fc009cb8cdf3f05d4523778610a501f27a4917ab43cea03c6209 EBUILD xemacs-21.4.22-r2.ebuild 6703 SHA256 a1d56e3a999e2ab07472cc544e3c13ec097b9c8a469d5ce4d4aa6d523af3df0e SHA512 e084f374daf4dd5a1451cb99bb00112cc26edf600cf9f0d1f9301efd93c189d5dca2bda3be6e99fff90089d9b5ab25c68c950452a94ceaa0f59dba676f7e58d0 WHIRLPOOL 35c6e487294025feaf8c67dd56cbf19b8cb673571d83b0d7b38f66fbf89f04d7420dbe6d1533c5fa40e1f4e14609b347a9189862bb6a567baf3970b4501abba1 +EBUILD xemacs-21.4.22-r3.ebuild 7190 SHA256 155c5986d4c40f02371bd907c08f6cbaeb30454be2d072eede4f41479ae03227 SHA512 609d9c2d5fb3d4db7109ce7a26d56c8f6c483e1d70c5268f29261969242c6ee0841ad0ddcfdf2c244f2e3074be7e3c5840a347c6b0b35e77fe443dc93054e439 WHIRLPOOL c0343e44086011a7dc223fe5250ff90481d0d9d9c6e6fb1ea3b23f8dc71ec847df38ea543b9bbe88763e88c5e89710a7b3f222c36b1d92dd9c34ce2c45e07ee9 EBUILD xemacs-21.5.29-r2.ebuild 6934 SHA256 0af5df79d2c90631a4c0f41c8f765687bcf946d88501a4aea87654f35ca919c0 SHA512 36da42b897de66ed783ba6c405e8a569befa9437b902bd34e7f9e0abb8b125a86f781c8b1a0a15283004804ebdb8138bc189063142aab87ac98b94bc1c17996b WHIRLPOOL 0aba4d9d611072e7df57578c8a8beb7688d370119906f5f50f68f56a9ce98158329ad1bb8375984adc693834014a80286740bc22dfa9489f086e52e26657d8b1 EBUILD xemacs-21.5.30.ebuild 6759 SHA256 861b86dc6e75e792850a50e85f8fba7e6cc4dc774ec8d1add2052d8a178bf4fc SHA512 78d7605f38629db2998ab7716b766347516a907637edca73c476d21730c69730b3905b49ca8669d5ee25d3520466953a6fd9227d681318d795a28e8bb137509b WHIRLPOOL 7b16dd9c6ae3584ad28b64f8de7ac293384a29ca02a567921ce854f977b1e52b00d1236fa311b75067c9cf6f4ca83498b46f4d3585e84dc9a5b391c963c756a2 EBUILD xemacs-21.5.31.ebuild 6688 SHA256 432bcc696134f8a483c7c21966e4a82b609544eb9ce7911021c9e225b3809d1c SHA512 cb4cbf988e43c040710152a205280566fd566f3cc912c4d867f5b12cb536b320de19a6ece98cb47d2e16c46cf8643e1088cb0dda43df733e9c7aa100cf64d6d9 WHIRLPOOL 3f07ca4ed70c51df95ba4e808c0c6d45cc525be8c2ad3056c4e9abbde6b28f3a6fa3c0f69842922dcfd047e5b556615e9fb761bf63415adafaa9f9688ee7be67 EBUILD xemacs-21.5.33.ebuild 6603 SHA256 785615ab8c01fac72e53ff26622163bfdbdba8b71ba79073ca4781070ebe0fd3 SHA512 372b233ca55fef5fe7f31ee0a25f2521a287413254f29128a0ef99b7d521c6f313d47f122076c8c463404eaf4bebc95c8ae1261dd135772af2f58695fb7e302c WHIRLPOOL af5f52416e93de507348d9dfec99c5ebef22a504f06ba21990b850d9ce3fa4fcb82365965e4ed0f542e734aefa683d4a46b2cd9cf7ae4c620e0865d0766bbb54 EBUILD xemacs-21.5.34-r1.ebuild 6605 SHA256 2cc7314aa94429590929da7f3f14ed8c871db875f795d294c06e749456ef89b5 SHA512 3297ce8686dc7a2bbc1a0a28ea222928ed2138afbfda2cea8d2148e2a9bc55f1c28c3fb925fb3716406d1e8f6e355f282ffca290417a514f21e44f6776242003 WHIRLPOOL cef5a3759a15415b149c456ffd4bfade0a95574f8a0414f8e131853898e799c88cfaa8e08405edff76164f02fe282f12b12422086fbc7e8ad4c8d751ca587d29 +EBUILD xemacs-21.5.34-r2.ebuild 7105 SHA256 646bef39b2197fffd18aaff743b1a4a9d1319b7e8703fbc0bed3b822810d4142 SHA512 7b4485720befd69c4eb0d97db2c647c95feb34746451f3fc1bb54f8b2fd40eb8bb4dd8e6ae005f74699d115499ffdb1fd7c16620494fd3d632ecb137a803b89c WHIRLPOOL 2e66cc10c5924b929e8cc3c02d550ff40ac610489ada63a502d16207932b38f1313a34ba4c7031abd52ae606404934e427571b651dcd4829d40d819f333096f2 EBUILD xemacs-21.5.34.ebuild 6588 SHA256 8ab1f58fe36b8f4c31fac704af7e6534c7aa106bcd42c194803e8d8a5923a359 SHA512 d5a3f9be3fff9fec4f4c065f80a2ad58a45954fd963ae35a1669c102ab9090ac5401c371fa7cd093f0651efdcff47d79803f3feee3f2ebca8b37b494ee64a60d WHIRLPOOL a25d6711630bd17a8778ed01473936c67cafc3b4ccc143c9fd2964102be4e9ca57d452d1b00933196e250c829941510819be06435348f9ebe88cc91f55e1cdf0 -MISC ChangeLog 28867 SHA256 712008a80019d5a30e44f005a68e6d8e5ca52601af2a68c0902deee2e62c072e SHA512 38d890632cec05b40db2a9c5f4f17ea6f7fef0e695e046cf7edcbba9721868cb34b7b3fc6468c9c52da0a1d1e5e3de4649603cde1241f1ff402214a4051349af WHIRLPOOL 79df37ea634a0ca823e5b483b89dd43045d4ef6c6650c6814bbfc1e9fa87396a096b3722ee39a59dfa288a3c01d80de96be427d9c393b4810df8f5b9e4fed421 +MISC ChangeLog 29244 SHA256 d88df83048068fa4146284bb8e3e1ec9fffd89c17f3ad6138d020b8fc91bccb4 SHA512 77263ec9b52503c900056b8fc4bb5729648b6d216610ed78d252e42620c1fc1ea3ac53ecb5904459365a2fa46bed52554c81697e8bef82448e1f24405593cb29 WHIRLPOOL 4e073bc9d8e83d3bc4489bae09c6055c1f26a816e7503b97de6adcac4589d49109d1b9b4dde7e86a6545228696a309efc7978dc6b37cf4e12f8019ef9490f69f MISC metadata.xml 711 SHA256 abb7f5df5077d65ee8df0ed47e57faabe561de5bd09493912a3f06ef695f8f58 SHA512 b201e8584db8c7f798137dd79d2136639a0456e6127b28259ac42535664d608ff3d290e30f28ba2d71cf6c971ff5f5048d9b7911bff7907f715acbefb54d8048 WHIRLPOOL 0344fe6a29e42f5088260ccd648c83eda9cc13abbd78fa29db799ed66bed2f385735f7cd54aa5e00cf61f0cc1673892f207a553d9ccab55141c76cec2e179bfa -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) -iQJ8BAEBCABmBQJS7snyXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w -ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRERjkwNzZBQzRGQTJCOTQwMTUxOTRGN0Qz -NzcwMzQ2NjBBNTgyOERFAAoJEDdwNGYKWCjegQAP/1MXDi3axqkeHlr604QuUSEF -pUgy/Wg5SrWpsHwe6M8yce64GXjKU/BPq4RnjofNR78QK4Glg5Q5tk6/r5mUtPP5 -rV43Nd9tMCNGmA2RuguzaclebDXtuC38iemHVSMiftWsKYHkvbBIYEotn+aVdG/5 -xY6O96qoYAzr2PIqmI9kDRyuFzJBYv7JPG50CJhNjJ+4PwPXXLPfiypPbRl0bMSH -zBJKbxFdJXRww94sAoMxOsGA70V/wLG43ogi8xwJmd/76xJqOS5NGFX9nFWS6jPU -NQ7+6c0gXMUwei7TicSnmskkBv+B9uKNMiTaUQrqvEfHYYVoQtbcrOXaiP//qifS -pGq3w9rM+R9a0x+oA1LQgoIRfuk7bKgydZXjP3xxxQRaLNeQyujFUEJdNZcQqgVS -cq7lI47Lg70CQAKpdHNkv+qXb71p6QtAbS0/T77+kPcH9Kyp1F7OHWmcKDbDxiWA -Qf79ccmCV0rlRQZKfeTn4jXkLQaHzRSE0mfrAqJuOleXEr8NinEfsG1o4rNY50Ky -z2adgaAxIUZF+WxlFFSdwztrjWprFEEiMlbenpSiaYl+O+H/bIiPL75mPkR1mDlM -oVlyPZ9mxdg7xyLs035EyYkEsY91+DneMXaeSii/JjGl3TvX8DO8HSSnHnWMA4g9 -NVs+nhceQVqqTIU1PxcJ -=N6MQ +iQGcBAEBCAAGBQJTAoE2AAoJEJQzkH1pP7W4vhcL+QHlq9s7s2AVTieHiU2NMMLY +otAwwHwDqZdvu4akMLLBlwW+IMJVejybOgUcaJiaDf0MjLY8ghQ+InTfXGnoJLRK +X5yewxPppXt2cx2YcXYAkLKAb3rsWXcc4s1sofdrCLXRFE3YxQDNE2t03gAXLK0p +2wiVvbKcWmmkf69sWDg4xIpyAAIZDv0O22D/zZ1dkGLEAh2USFmYThVCWpb+f29o +i+MYaxNF3F+du1VWjnbRFXbZDlsAc4I47wyu8aL2qrkTyCeVyy8rJfnpCmUfMjOl +0b50bAJb+suerZKKpBmco5aJk7IpqyxoHo/qPzZash628X9M/CBS4lcjD2uDncaM +jpj72CAUIWRBZ96yFWu9mwk9B7Fs9n9CGdQAwYFLU4k7FPctd8Cm8g4GpWTGZ123 +G/EI5+8K8gzdtrlpQAKEyzBPcJsjPFhP4qeJWJLXYQXuCGa3IJECnXhrpyfdpoXD +u+xSBcq6KomDGeyzon05kLjtrzyiu+T2mvgFSJkAZQ== +=7y0x -----END PGP SIGNATURE----- diff --git a/app-editors/xemacs/xemacs-21.4.22-r3.ebuild b/app-editors/xemacs/xemacs-21.4.22-r3.ebuild new file mode 100644 index 000000000000..4b599e9a86d2 --- /dev/null +++ b/app-editors/xemacs/xemacs-21.4.22-r3.ebuild @@ -0,0 +1,252 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-editors/xemacs/xemacs-21.4.22-r3.ebuild,v 1.1 2014/02/17 21:37:43 ulm Exp $ + +# Note: xemacs currently does not work with a hardened profile. If you +# want to use xemacs on a hardened profile then compile with the +# -nopie flag in CFLAGS or help fix bug #75028. + +EAPI=5 + +export WANT_AUTOCONF="2.1" +inherit autotools eutils toolchain-funcs + +DESCRIPTION="highly customizable open source text editor and application development system" +HOMEPAGE="http://www.xemacs.org/" +SRC_URI="http://ftp.xemacs.org/xemacs-21.4/${P}.tar.gz + http://www.malfunction.de/afterstep/files/NeXT_XEmacs.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86" +IUSE="eolconv gif gpm pop postgres ldap xface nas dnd X jpeg tiff png mule motif freewnn canna xim athena neXt Xaw3d gdbm berkdb" + +X_DEPEND="x11-libs/libXt x11-libs/libXmu x11-libs/libXext x11-misc/xbitmaps" + +RDEPEND=" + berkdb? ( sys-libs/db ) + gdbm? ( >=sys-libs/gdbm-1.8.3 ) + >=sys-libs/zlib-1.1.4 + >=dev-libs/openssl-0.9.6 + >=media-libs/audiofile-0.2.3 + gpm? ( >=sys-libs/gpm-1.19.6 ) + postgres? ( dev-db/postgresql-base ) + ldap? ( net-nds/openldap ) + nas? ( media-libs/nas ) + X? ( $X_DEPEND !Xaw3d? ( !neXt? ( x11-libs/libXaw ) ) ) + dnd? ( x11-libs/dnd ) + motif? ( >=x11-libs/motif-2.3:0 ) + athena? ( x11-libs/libXaw ) + Xaw3d? ( x11-libs/libXaw3d ) + neXt? ( x11-libs/neXtaw ) + xface? ( media-libs/compface ) + tiff? ( media-libs/tiff ) + png? ( >=media-libs/libpng-1.2 ) + jpeg? ( virtual/jpeg ) + canna? ( app-i18n/canna ) + !amd64? ( freewnn? ( app-i18n/freewnn ) ) + >=sys-libs/ncurses-5.2 + >=app-admin/eselect-emacs-1.15" + +DEPEND="${RDEPEND}" + +PDEPEND="app-xemacs/xemacs-base + mule? ( app-xemacs/mule-base )" + +src_unpack() { + unpack ${P}.tar.gz + use neXt && unpack NeXT_XEmacs.tar.gz +} + +src_prepare() { + epatch "${FILESDIR}"/xemacs-21.4.19-texi.patch + + # see bug 58350, 102540 and 143580 + epatch "${FILESDIR}"/xemacs-21.4.19-db.patch + + # Security bug #216880 + epatch "${FILESDIR}"/xemacs-21.4.21-vcdiff.patch + + # Security bug #275397 + epatch "${FILESDIR}"/${P}-large-images.patch + + # Make sure to include deprecated LDAP symbols to avoid runtime + # crashes. + epatch "${FILESDIR}"/${P}-deprecated-ldap.patch + + # Fix compilation with libpng 1.5, bug 384461 + epatch "${FILESDIR}"/${P}-libpng15.patch + + # Some binaries and man pages are installed under suffixed names + # to avoid collions with their GNU Emacs counterparts (see below). + # Fix internal filename references. + sed -i -e 's/exec gnuclient/&-xemacs/' lib-src/gnudoit || die + sed -i -e '/^\.so/s/etags/&-xemacs/' etc/ctags.1 || die + sed -i -e '/^\.so/s/gnuserv/&-xemacs/' etc/gnu{client,doit,attach}.1 || die + + # Run autoconf. XEmacs tries to be smart by providing a stub + # configure.ac file for autoconf 2.59 but this throws our + # autotools eclass so it must be removed first. + rm "${S}"/configure.ac + eautoconf + + use neXt && cp "${WORKDIR}"/NeXT.XEmacs/xemacs-icons/* "${S}"/etc/toolbar/ +} + +src_configure() { + local myconf="" + + 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 + + use dnd && myconf="${myconf} --with-dragndrop --with-offix" + + myconf="${myconf} $(use_with tiff ) $(use_with png )" + myconf="${myconf} $(use_with jpeg ) $(use_with xface )" + else + myconf="${myconf} + --without-x + --without-xpm + --without-dragndrop + --with-gif=no" + fi + + 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 + + myconf="${myconf} $(use_with canna ) $(use_with freewnn wnn )" + fi + + # This determines the type of sounds we are playing + local soundconf="native" + + # This determines how these sounds should be played + use nas && soundconf="${soundconf},nas" + + myconf="${myconf} --with-sound=${soundconf}" + + if use gdbm || use berkdb ; then + use gdbm && mydb="gdbm" + + use berkdb && mydb="${mydb},berkdb" + + myconf="${myconf} --with-database=${mydb}" + else + myconf="${myconf} --without-database" + fi + + # fixes #21264, this should be fixed in 21.4.21 and has been fixed + # in 21.5 for sure. Now that 21.4.21 is out there is no real + # evidence that this indeed got fixed, so keep these exceptions + # for now. + use alpha && myconf="${myconf} --with-system-malloc" + use ppc64 && myconf="${myconf} --with-system-malloc" + use ia64 && myconf="${myconf} --with-system-malloc" + + # Enabling modules will cause segfaults outside the XEmacs build directory + use ia64 && myconf="${myconf} --without-modules" + + einfo "${myconf}" + + # Don't use econf because it uses options which this configure + # script does not understand (like --host). + ./configure ${myconf} ${EXTRA_ECONF} \ + $(use_with gif ) \ + $(use_with gpm ) \ + $(use_with postgres postgresql ) \ + $(use_with ldap ) \ + $(use_with eolconv file-coding ) \ + $(use_with pop ) \ + --compiler=$(tc-getCC) \ + --prefix=/usr \ + --with-ncurses \ + --with-msw=no \ + --mail-locking=flock \ + --with-site-lisp=yes \ + --with-site-modules=yes \ + || die "The configure script failed to run properly" +} + +src_install() { + emake prefix="${D}"/usr \ + mandir="${D}"/usr/share/man/man1 \ + infodir="${D}"/usr/share/info \ + install gzip-el || die "emake install failed" + + # Rename some applications installed in bin so that it is clear + # which application installed them and so that conflicting + # packages (emacs) can't clobber the actual applications. + # Addresses bug #62991. + for i in b2m ctags etags rcs-checkin gnuclient gnudoit gnuattach; do + mv "${D}"/usr/bin/${i} "${D}"/usr/bin/${i}-xemacs || die "mv ${i} failed" + done + + # rename man pages + for i in ctags etags gnuserv gnuclient gnudoit gnuattach; do + mv "${D}"/usr/share/man/man1/${i}{,-xemacs}.1 || die "mv ${i}.1 failed" + done + + # install base packages directories + dodir /usr/lib/xemacs/xemacs-packages/ + dodir /usr/lib/xemacs/site-packages/ + dodir /usr/lib/xemacs/site-modules/ + dodir /usr/lib/xemacs/site-lisp/ + + if use mule; + then + dodir /usr/lib/xemacs/mule-packages + fi + + # remove extraneous info files + cd "${D}"/usr/share/info + rm -f dir info.info texinfo* termcap* standards* + + cd "${S}" + dodoc BUGS CHANGES-* ChangeLog GETTING* INSTALL PROBLEMS README* + dodoc "${FILESDIR}"/README.Gentoo + + newicon "${S}"/etc/${PN}-icon.xpm ${PN}.xpm + + domenu "${FILESDIR}"/${PN}.desktop +} + +pkg_postinst() { + eselect emacs update ifunset + eselect gnuclient update ifunset +} + +pkg_postrm() { + eselect emacs update ifunset + eselect gnuclient update ifunset +} diff --git a/app-editors/xemacs/xemacs-21.5.34-r2.ebuild b/app-editors/xemacs/xemacs-21.5.34-r2.ebuild new file mode 100644 index 000000000000..f3761668ff7a --- /dev/null +++ b/app-editors/xemacs/xemacs-21.5.34-r2.ebuild @@ -0,0 +1,246 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-editors/xemacs/xemacs-21.5.34-r2.ebuild,v 1.1 2014/02/17 21:37:43 ulm Exp $ + +# Note: xemacs currently does not work with a hardened profile. If you +# want to use xemacs on a hardened profile then compile with the +# -nopie flag in CFLAGS or help fix bug #75028. + +EAPI=4 + +export WANT_AUTOCONF="2.5" +inherit eutils flag-o-matic multilib + +DESCRIPTION="highly customizable open source text editor and application development system" +HOMEPAGE="http://www.xemacs.org/" +SRC_URI="http://ftp.xemacs.org/xemacs-21.5/${P}.tar.gz + http://www.malfunction.de/afterstep/files/NeXT_XEmacs.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd" +IUSE="alsa debug eolconv gif gpm pop postgres ldap xface nas dnd X jpeg tiff png mule motif freewnn canna xft xim athena neXt Xaw3d gdbm berkdb" + +X_DEPEND="x11-libs/libXt x11-libs/libXmu x11-libs/libXext x11-misc/xbitmaps" + +RDEPEND=" + berkdb? ( >=sys-libs/db-4 !!<sys-libs/db-4 ) + gdbm? ( >=sys-libs/gdbm-1.8.3[berkdb(+)] ) + >=sys-libs/zlib-1.1.4 + >=dev-libs/openssl-0.9.6 + >=media-libs/audiofile-0.2.3 + gpm? ( >=sys-libs/gpm-1.19.6 ) + postgres? ( dev-db/postgresql-base ) + ldap? ( net-nds/openldap ) + alsa? ( media-libs/alsa-lib ) + nas? ( media-libs/nas ) + X? ( $X_DEPEND !Xaw3d? ( !neXt? ( x11-libs/libXaw ) ) ) + dnd? ( x11-libs/dnd ) + motif? ( >=x11-libs/motif-2.3:0[xft=] ) + athena? ( x11-libs/libXaw ) + Xaw3d? ( x11-libs/libXaw3d ) + xft? ( media-libs/freetype:2 x11-libs/libXft x11-libs/libXrender >=media-libs/fontconfig-2.5.0 ) + neXt? ( x11-libs/neXtaw ) + xface? ( media-libs/compface ) + tiff? ( media-libs/tiff ) + png? ( >=media-libs/libpng-1.2 ) + jpeg? ( virtual/jpeg ) + canna? ( app-i18n/canna ) + freewnn? ( app-i18n/freewnn ) + >=sys-libs/ncurses-5.2 + >=app-admin/eselect-emacs-1.15" + +DEPEND="${RDEPEND} + virtual/pkgconfig" + +PDEPEND="app-xemacs/xemacs-base + mule? ( app-xemacs/mule-base )" + +src_unpack() { + default_src_unpack + + use neXt && unpack NeXT_XEmacs.tar.gz +} + +src_prepare() { + use neXt && cp "${WORKDIR}"/NeXT.XEmacs/xemacs-icons/* "${S}"/etc/toolbar/ + find "${S}"/lisp -name '*.elc' -exec rm {} \; || die + epatch "${FILESDIR}/${P}-ncurses-tinfo.patch" + + # Some binaries and man pages are installed under suffixed names + # to avoid collions with their GNU Emacs counterparts (see below). + # Fix internal filename references. + sed -i -e 's/exec gnuclient/&-xemacs/' lib-src/gnudoit || die + sed -i -e '/^\.so/s/etags/&-xemacs/' etc/ctags.1 || die + sed -i -e '/^\.so/s/gnuserv/&-xemacs/' etc/gnu{client,doit,attach}.1 || die +} + +src_configure() { + local myconf="" + + 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 or use Xaw3d ; 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 + + use dnd && myconf="${myconf} --with-dragndrop --with-offix" + + myconf="${myconf} $(use_with tiff )" + myconf="${myconf} $(use_with png )" + myconf="${myconf} $(use_with jpeg )" + myconf="${myconf} $(use_with xface )" + + use xft && myconf="${myconf} --with-xft=emacs,tabs,menubars,gauges" || + myconf="${myconf} --with-xft=no" + + else + myconf="${myconf} + --without-x + --without-xpm + --without-dragndrop + --with-xft=no + --with-gif=no" + fi + + 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 + + myconf="${myconf} $(use_with canna )" + myconf="${myconf} $(use_with freewnn wnn )" + fi + + # This determines the type of sounds we are playing + local soundconf="native" + + # This determines how these sounds should be played + use nas && soundconf="${soundconf},nas" + use alsa && soundconf="${soundconf},alsa" + + myconf="${myconf} --with-sound=${soundconf}" + + if use gdbm || use berkdb ; then + use gdbm && mydb="gdbm" + use berkdb && mydb="${mydb},berkdb" + + myconf="${myconf} --with-database=${mydb}" + else + myconf="${myconf} --without-database" + fi + + use debug && myconf="${myconf} --with-debug" || + myconf="${myconf} --with-optimization" + + econf ${myconf} \ + $(use_with gif ) \ + $(use_with gpm ) \ + $(use_with postgres postgresql ) \ + $(use_with ldap ) \ + $(use_with eolconv file-coding ) \ + $(use_with pop ) \ + --prefix=/usr \ + --with-ncurses \ + --with-msw=no \ + --with-mail-locking=flock \ + --with-site-lisp=yes \ + --with-site-modules=yes \ + --with-newgc \ + --enable-option-checking=no \ + --with-last-packages=/usr/lib/xemacs \ + || die "configuration failed" +} + +src_install() { + emake prefix="${D}"/usr \ + mandir="${D}"/usr/share/man/man1 \ + infodir="${D}"/usr/share/info \ + libdir="${D}"/usr/$(get_libdir) \ + datadir="${D}"/usr/share \ + install gzip-el || die + + # Rename some applications installed in bin so that it is clear + # which application installed them and so that conflicting + # packages (emacs) can't clobber the actual applications. + # Addresses bug #62991. + for i in b2m ctags etags gnuclient gnudoit gnuattach; do + mv "${D}"/usr/bin/${i} "${D}"/usr/bin/${i}-xemacs || die "mv ${i} failed" + done + + # rename man pages + for i in ctags etags gnuserv gnuclient gnudoit gnuattach; do + mv "${D}"/usr/share/man/man1/${i}{,-xemacs}.1 || die "mv ${i}.1 failed" + done + + # install base packages directories + dodir /usr/lib/xemacs/xemacs-packages/ + dodir /usr/lib/xemacs/site-packages/ + dodir /usr/lib/xemacs/site-modules/ + dodir /usr/lib/xemacs/site-lisp/ + + if use mule; + then + dodir /usr/lib/xemacs/mule-packages + fi + + # remove extraneous info files + cd "${D}"/usr/share/info + rm -f dir info.info texinfo* termcap* standards* + + cd "${S}" + dodoc CHANGES-* ChangeLog INSTALL Installation PROBLEMS README* + + newicon "${S}"/etc/${PN}-icon.xpm ${PN}.xpm + + domenu "${FILESDIR}"/${PN}.desktop +} + +pkg_postinst() { + eselect emacs update ifunset + eselect gnuclient update ifunset + + einfo "*************************************************" + einfo "If you are upgrading from XEmacs 21.4 you should note the following" + einfo "incompatibilities:" + einfo "- Mule-UCS is no longer supported due to proper UTF-8 support in XEmacs 21.5" + einfo "- The X resource class has changed from Emacs to XEmacs," + einfo " settings in your .Xdefaults file should be updated accordingly." + + if use xft; + then + einfo "You have enabled Xft font support. Xft requires font names to be provided" + einfo "in a different way, so you may need to adjust your .Xdefaults accordingly." + fi +} + +pkg_postrm() { + eselect emacs update ifunset + eselect gnuclient update ifunset +} |