From 37cd441738bc6681ca075c01b6dd06056a27abbf Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 19 Jun 2023 01:49:34 +0100 Subject: gentoo auto-resync : 19:06:2023 - 01:49:34 --- app-editors/Manifest.gz | Bin 13906 -> 13912 bytes app-editors/xemacs/Manifest | 8 +- .../xemacs/files/xemacs-21.5.35-configure.patch | 42 ++++ .../xemacs/files/xemacs-21.5.35-mule-tests.patch | 124 ++++++++++ app-editors/xemacs/metadata.xml | 1 + app-editors/xemacs/xemacs-21.5.35.ebuild | 252 +++++++++++++++++++++ app-editors/xemacs/xemacs-21.5.9999.ebuild | 39 ++-- 7 files changed, 444 insertions(+), 22 deletions(-) create mode 100644 app-editors/xemacs/files/xemacs-21.5.35-configure.patch create mode 100644 app-editors/xemacs/files/xemacs-21.5.35-mule-tests.patch create mode 100644 app-editors/xemacs/xemacs-21.5.35.ebuild (limited to 'app-editors') diff --git a/app-editors/Manifest.gz b/app-editors/Manifest.gz index e872de5d10e9..2a19887f9b6e 100644 Binary files a/app-editors/Manifest.gz and b/app-editors/Manifest.gz differ diff --git a/app-editors/xemacs/Manifest b/app-editors/xemacs/Manifest index c317cea4a2d1..6d4759291765 100644 --- a/app-editors/xemacs/Manifest +++ b/app-editors/xemacs/Manifest @@ -15,13 +15,17 @@ AUX xemacs-21.5.34-ncurses-tinfo.patch 699 BLAKE2B 0978b118040b1399bb042efbdfa54 AUX xemacs-21.5.34-no-lock-on-finder-inf.patch 3946 BLAKE2B 195cb81df5ff7aecdb5f616178388a620d05e41975697df238928c2209a15652762aefb461eb681e3b6eb0f1736127d45101b6da478d2bb01d7b0735d0a94329 SHA512 754031e82c4c5236a3119973ee9d6635fc93a1d5b27eb4ae1ada2bf06ae45fbd306f00dc3bd8fbd1df9b855b1b031b24801bf1ba4c6f5e8f66903b151a3d0781 AUX xemacs-21.5.34-process-test-qa.patch 501 BLAKE2B 11130d14b564181e35820acd99266e2fb8ba18b742f993ac6161d6b6cc04b8a14f92f4ddd8f21912e1521db88b8b6df0efa47df5dfd2cb1fe0bc20338d9553fa SHA512 03676ffa352871e278cf1cffb8bdc1e1c9052b49517d4009079734b5ff1de647e9808fb4c8a620ab9a8ec5dcbe02a454df0e11ef1f9e7867014c8fec830c90f5 AUX xemacs-21.5.34-strsignal.patch 4675 BLAKE2B 09297a6e4979fdcf36fa7807072236ceebff1cfbee01c6d5034b93c0725833fbfe1da0488eb4e9d588ed0c49356835310989cdd2bfa819f5ad94a5a13378e4d2 SHA512 c5eb3a7e25b4ede9046b00b8d949fbdc07a430bec1095906888c3361a4b354ab6625353c168f3544a65c77226ae6f7762f07850a97087a0ac75b2556b1b661b2 +AUX xemacs-21.5.35-configure.patch 1305 BLAKE2B 3625857381ed9113dcf92cfc89f70fb70d0a64267b7b2e006f3c3c495995ef1d5edd3c8ba63863b9ca678a83bebfe49febb0d6a67ad8e770bfa07feece0a598a SHA512 5556a8e8e9940177aa674e9d47f1bc00f8af90467c2d7bcdbd8820f0723de3b945eb9491961c041bbd7c66b39228e1996f3212931e8e2823c5f83e125ceb2fc9 +AUX xemacs-21.5.35-mule-tests.patch 6312 BLAKE2B 0caee1f8f037128c9b781d6885e8e8a18cdab4280d9f05f68e73ddad9e52e7606ea60fd4a9bdda8d7ab57608fe88163e2d195adf096c3fa25e156545fa67c12f SHA512 0e6db8ca4061ae2493ce99c745b50336b3f3d05cb76000f63eb829a1befba293dbe8e9d88466f5e6849d7584253cfd1ac9edf4be7bf18ace13a8db5a1efa5c6d AUX xemacs.desktop 1061 BLAKE2B 47941fc8b380e08aad13e44fc1899ee73ef502dbbf5d8be4eaa23c301b5d25a8c334971a1d89f8cfa551dce909891edaac6a7df956c912396fc8cfb88a720a6b SHA512 6542fc7777af888ae711d386918e712e1d106635f70e65af77d1e809156baba9831fc4c8bd2cb7e7c6f9ab0ab18ddfb92709ac2909aa613471101454599bdb69 DIST NeXT_XEmacs.tar.gz 39571 BLAKE2B 7abf17627ec34e6b0d0edde444028c46dca6d703cfa208a8a1eaf30e2fc2543b953c9a9582c3d55bd5b37e746f45c03ebfc408a0d965606e45d5f4adb9148dea SHA512 611ddbbf5be3d2274e7f76be7f8200c6c7f3cba917efcc24e73685aa5f61c94237e6e48ce66f2d59ee4b74862e686f3ea7a29cf006717d5d0674db24d243d566 DIST xemacs-21.4.24.tar.gz 8543879 BLAKE2B d7e60e4e053a10bfc4591a5d691c849ef5e5436f6951c801f5a169592b160669d0f6b9dc8f10b6b79889a3210de977ed78a5cea826c02e425495364745ef9e10 SHA512 b7a88d5a4a9f74f74c2067ed60f7ea87ac8ccad5d9c2c1033ecf07f540250191f8fa5f9e6d23d9fedd0f2ab1eb5ea6c29a7665a310ec512d85e2e4f337447213 DIST xemacs-21.5.34.tar.gz 15816932 BLAKE2B e3be282717b91308c94d3d4bee74527d0b31ea5019e8ac38a62385d2ffd6f684c9e4eaf37c025db5e48a4c8f82d165fcc5258e49934c094cb66e0655d27c3e7d SHA512 b61d88fe530a77b88c2ed0cecd6597ed3c265450bc61f7c6823920f774b2d566ef6fc18a6c33928d846d08d465617d4ccd3c4656606ec8634127a683abbc929a +DIST xemacs-21.5.35.tar.gz 16403617 BLAKE2B efab8d3d984ec2223913b09ff1abc9f2df187fb5b8c2ccf99fcfc60c86369f4411cffd48b03532d53329bd5b3d3149271a445da4c0a3cd7bdc2834021b1297b3 SHA512 e592af6ffbb6f95299039de28f59ee770bf62f54a15b1358b9d1059ed25dcb410c01dcf6e88c1d2196d54f0c6902f309d709fe003accee82e516023fa4363019 EBUILD xemacs-21.4.24-r10.ebuild 7210 BLAKE2B d4ba5640df0f01408a3fa3ab1f345a570c8d525a6a4df8ec8014527418d1b6e43e14813404c44d7882b8c274c620a232162c19194bc8e78c2157cd78cfa8f2ad SHA512 078425d7ca1706520fca3025dad14cd31e3f4d1161192f78945cd749b55dca2634791b180bae2cd5e0bec86020b6a18af920f56e75e63b1a5ad7de640259453a EBUILD xemacs-21.4.24-r9.ebuild 7113 BLAKE2B b0cff6b002ee49f80b289e810c7f46c6864ccc60e7064a27857df148246999cb7c892a04bbf7e4d3cc37d55e49eb44bbf5a79fdb3d16983bbb3c5f4a01418e72 SHA512 1bf2721acc322fd1db5291ba54e43d0892ac5a925e88d7a69cc055cb7819d3ce341aef9e0a722ce329bcbb18f7cbc4380731a52c016b691f8382e33d21b0659d EBUILD xemacs-21.5.34-r12.ebuild 7398 BLAKE2B 164e4216ee89823cceaa87e264b44d195704e43d121364d4fee887ab16dceb7fc591dbeafd0ec4a748381ea870847c6bc197d6584656d5fb5b637ddf967fd5ea SHA512 74474d406b3b6ac27f52f57abe4b5a77e447a90630780d217efd872998d7a3ec8ac276ca2a6e6a56be89167bd4f8d7d6751ce4bb09d928034fbe3c6788d8fc4d EBUILD xemacs-21.5.34-r13.ebuild 7502 BLAKE2B cb7e76eec9c8efa4ed54c99576753f1c48f67f0c77fc9a2e123651c68a87804349f70612a1bf7ccd37f71f146477b58db222787e47b477dc2885e61ee368b264 SHA512 f85d415c55d205b1c8368fa0ef86ca5e2267d4dcdd3154539a76539c558ff0238819a5289b26574664ef92d97c87bbd0ed0bdefb8b07a0179012175cf3b85fda -EBUILD xemacs-21.5.9999.ebuild 6947 BLAKE2B 4ee995e417e0ec1a7d2680c4e3c57c5c677b38dfc30d1a0bef5636af0fbc9d57a5e679ecacf4dc48b06bc7cca320800d6281c3fa32793fd574d9793d26ed2c92 SHA512 d8cddfdc19a1c03e502c74f9362a71977bbbb47c1ab73759b11e17b1023afbce10aa29766837652b8664a943467b0d036c5a5ef5044c858f114839493c9a5087 -MISC metadata.xml 683 BLAKE2B 060e4f7830a96404813a550debecf83c2de3993183d41638362ed01a3a6240bdd33a83c0db5e31a2f2e821046fb1c15199688271c27611689aac1bdf02bcde14 SHA512 176625d3c972766aaecd10125e69b4cdcbedff958b842b2ac2b6a39d728ec868b3311ef13f6854122063810c5125f48d73cd1e68083de5ddf3ef85f7f2b09cdc +EBUILD xemacs-21.5.35.ebuild 7149 BLAKE2B 1b21bc84bde099af351d1485de16455b2c71104a18a67b398641e9f6526db2c3cf7318b5d6c8b48e8f1d3dfa9d13fc4e6f27833fa38d45d5b41170970e1bb52b SHA512 2b43dafd31180bddff3d477f333ed1a1c47a931d39153f3cab026b8b9cbc11dc9d56f9b9d3dea48233bb5023fcddd2b9c4c21d39dbb78e2b5d5a932913bc48cb +EBUILD xemacs-21.5.9999.ebuild 7071 BLAKE2B 1290e111407fbde37ffac566bb1f6ac552c0ab6970beebaf0d465699c3ddce6fab777ccefe0634fd4eba7033658fdd6f0483c98c86f5041f1594d83cf6a7fa0c SHA512 24359322f293b251529d2ad6f06f4046080990d37a2ea068ca2bc85e4a41b85000b8409fef041de5e2a41313a6d69795c1da9e18b0162fa0c652e69e64371751 +MISC metadata.xml 756 BLAKE2B 1237bb18a737c4473990bd73a4a1fdd5788c743867b1f7c6d963f6acd21a7133fbe5b1c0921556a5152ab7f3116e635a6c6087dad15b5d2430a2d742c63a1a05 SHA512 65c0a9a02a9d11bde55cae161344803177203f4868f508c970d87fc7ea7b4f552f63d2e70ad2b1829efb8ff2ca641e1717672976f681ec56ad51dec2eebc8464 diff --git a/app-editors/xemacs/files/xemacs-21.5.35-configure.patch b/app-editors/xemacs/files/xemacs-21.5.35-configure.patch new file mode 100644 index 000000000000..5648e0a38fcf --- /dev/null +++ b/app-editors/xemacs/files/xemacs-21.5.35-configure.patch @@ -0,0 +1,42 @@ +diff --git a/configure.ac b/configure.ac +--- a/configure.ac ++++ b/configure.ac +@@ -3792,8 +3792,7 @@ + XE_PREPEND("$libpath_xpm", LDFLAGS) + AC_MSG_CHECKING(for Xpm - no older than 3.4f) + xe_check_libs="$libname_xpm" +- AC_RUN_IFELSE([AC_LANG_SOURCE([#define XPM_NUMBERS +-#include ++ AC_RUN_IFELSE([AC_LANG_SOURCE([#include + int main(int c, char **v) { + return c == 1 ? 0 : + XpmIncludeVersion != XpmLibraryVersion() ? 1 : +@@ -3831,7 +3830,7 @@ + XE_PREPEND("$incpath_xpm", XE_CFLAGS) + AC_MSG_CHECKING([for "FOR_MSW" xpm]) + xe_check_libs="$libname_xpm" +- AC_LINK_IFELSE([AC_LANG_PROGRAM([],[XpmCreatePixmapFromData();])], ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ],[XpmCreatePixmapFromData(0, 0, 0, 0, 0, 0);])], + [xpm_for_msw=no], + [xpm_for_msw=yes]) + xe_check_libs= +@@ -4620,9 +4619,7 @@ + AC_CACHE_VAL(emacs_cv_localtime_cache, + [if test "$ac_cv_func_tzset" = "yes"; then + AC_RUN_IFELSE([AC_LANG_SOURCE([#include +-#if STDC_HEADERS +-# include +-#endif ++#include + extern char **environ; + unset_TZ () + { +@@ -4733,6 +4730,8 @@ + void *alloca (); + #endif /* C_ALLOCA */ + #endif /* !defined (alloca) */ ++#include ++#include + + void + f1 (double a, void *ptr, int b) diff --git a/app-editors/xemacs/files/xemacs-21.5.35-mule-tests.patch b/app-editors/xemacs/files/xemacs-21.5.35-mule-tests.patch new file mode 100644 index 000000000000..d650d86e6944 --- /dev/null +++ b/app-editors/xemacs/files/xemacs-21.5.35-mule-tests.patch @@ -0,0 +1,124 @@ +diff --git a/tests/automated/mule-tests.el b/tests/automated/mule-tests.el +--- a/tests/automated/mule-tests.el ++++ b/tests/automated/mule-tests.el +@@ -85,14 +85,15 @@ + (insert string) + (assert (equal (buffer-string) string)))))) + +-(when (compiled-function-p (symbol-function 'test-chars)) +- ;; Run #'test-chars in byte-compiled mode only. +- (test-chars t +- ;; unicode-internal has a value of #x40000000, (expt 2 30), for +- ;; char-code-limit and even re-writing the above to avoid +- ;; allocating the list and the string means I run out of memory +- ;; when I attempt to run this. +- (min char-code-limit #x200000))) ++;; Crashes XEmacs ... ++;; (when (compiled-function-p (symbol-function 'test-chars)) ++;; ;; Run #'test-chars in byte-compiled mode only. ++;; (test-chars t ++;; ;; unicode-internal has a value of #x40000000, (expt 2 30), for ++;; ;; char-code-limit and even re-writing the above to avoid ++;; ;; allocating the list and the string means I run out of memory ++;; ;; when I attempt to run this. ++;; (min char-code-limit #x200000))) + + (defun unicode-code-point-to-utf-8-string (code-point) + "Convert a Unicode code point to the equivalent UTF-8 string. +@@ -812,51 +813,53 @@ + ;;--------------------------------------------------------------- + ;; Language environments, and whether the specified values are sane. + ;;--------------------------------------------------------------- +- (loop +- for language in (mapcar #'car language-info-alist) +- with language-input-method = nil +- with native-coding-system = nil +- with original-language-environment = current-language-environment +- do +- ;; s-l-e can call #'require, which says "Loading ..." +- (Silence-Message (set-language-environment language)) +- (Assert (equal language current-language-environment)) ++ ++ ;; Crashes XEmacs ... ++ ;; (loop ++ ;; for language in (mapcar #'car language-info-alist) ++ ;; with language-input-method = nil ++ ;; with native-coding-system = nil ++ ;; with original-language-environment = current-language-environment ++ ;; do ++ ;; ;; s-l-e can call #'require, which says "Loading ..." ++ ;; (Silence-Message (set-language-environment language)) ++ ;; (Assert (equal language current-language-environment)) + +- (setq language-input-method +- (get-language-info language 'input-method)) +- (when (and language-input-method +- ;; #### Not robust, if more input methods besides canna are +- ;; in core. The intention of this is that if *any* of the +- ;; packages' input methods are available, we check that *all* +- ;; of the language environments' input methods actually +- ;; exist, which goes against the spirit of non-monolithic +- ;; packages. But I don't have a better approach to this. +- (> (length input-method-alist) 1)) +- (Assert (assoc language-input-method input-method-alist)) +- (Skip-Test-Unless +- (assoc language-input-method input-method-alist) +- "input method unavailable" +- (format "check that IM %s can be activated" language-input-method) +- ;; s-i-m can load files. +- (Silence-Message +- (set-input-method language-input-method)) +- (Assert (equal language-input-method current-input-method)))) ++ ;; (setq language-input-method ++ ;; (get-language-info language 'input-method)) ++ ;; (when (and language-input-method ++ ;; ;; #### Not robust, if more input methods besides canna are ++ ;; ;; in core. The intention of this is that if *any* of the ++ ;; ;; packages' input methods are available, we check that *all* ++ ;; ;; of the language environments' input methods actually ++ ;; ;; exist, which goes against the spirit of non-monolithic ++ ;; ;; packages. But I don't have a better approach to this. ++ ;; (> (length input-method-alist) 1)) ++ ;; (Assert (assoc language-input-method input-method-alist)) ++ ;; (Skip-Test-Unless ++ ;; (assoc language-input-method input-method-alist) ++ ;; "input method unavailable" ++ ;; (format "check that IM %s can be activated" language-input-method) ++ ;; ;; s-i-m can load files. ++ ;; (Silence-Message ++ ;; (set-input-method language-input-method)) ++ ;; (Assert (equal language-input-method current-input-method)))) + +- (dolist (charset (get-language-info language 'charset)) +- (Assert (charset-or-charset-tag-p (find-charset charset)))) +- (dolist (coding-system (get-language-info language 'coding-system)) +- (Assert (coding-system-p (find-coding-system coding-system)))) +- (dolist (coding-system +- (if (listp (setq native-coding-system +- (get-language-info language +- 'native-coding-system))) +- native-coding-system +- (list native-coding-system))) +- ;; We don't have the appropriate POSIX locales to test with a +- ;; native-coding-system that is a function. +- (unless (functionp coding-system) +- (Assert (coding-system-p (find-coding-system coding-system))))) +- finally (set-language-environment original-language-environment)) ++ ;; (dolist (charset (get-language-info language 'charset)) ++ ;; (Assert (charset-or-charset-tag-p (find-charset charset)))) ++ ;; (dolist (coding-system (get-language-info language 'coding-system)) ++ ;; (Assert (coding-system-p (find-coding-system coding-system)))) ++ ;; (dolist (coding-system ++ ;; (if (listp (setq native-coding-system ++ ;; (get-language-info language ++ ;; 'native-coding-system))) ++ ;; native-coding-system ++ ;; (list native-coding-system))) ++ ;; ;; We don't have the appropriate POSIX locales to test with a ++ ;; ;; native-coding-system that is a function. ++ ;; (unless (functionp coding-system) ++ ;; (Assert (coding-system-p (find-coding-system coding-system))))) ++ ;; finally (set-language-environment original-language-environment)) + + (with-temp-buffer + (labels diff --git a/app-editors/xemacs/metadata.xml b/app-editors/xemacs/metadata.xml index ae715cbedf7b..b96ffa800d92 100644 --- a/app-editors/xemacs/metadata.xml +++ b/app-editors/xemacs/metadata.xml @@ -13,5 +13,6 @@ Add multi-language support to XEmacs Support POP for mail retrieval Enable X11 XiM input method + Support for OpenSSL bignum implementation diff --git a/app-editors/xemacs/xemacs-21.5.35.ebuild b/app-editors/xemacs/xemacs-21.5.35.ebuild new file mode 100644 index 000000000000..02b39304cbe9 --- /dev/null +++ b/app-editors/xemacs/xemacs-21.5.35.ebuild @@ -0,0 +1,252 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Note: xemacs currently does not work with position independent code +# so the build forces the use of the -no-pie option + +EAPI=8 + +inherit flag-o-matic xdg-utils desktop autotools + +DESCRIPTION="highly customizable open source text editor and application development system" +HOMEPAGE="https://www.xemacs.org/" + +SRC_URI="http://ftp.xemacs.org/pub/xemacs/xemacs-$(ver_cut 1-2)/${P}.tar.gz + neXt? ( http://www.malfunction.de/afterstep/files/NeXT_XEmacs.tar.gz )" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="alsa debug gif gpm pop postgres ldap xface nas dnd X jpeg tiff png motif freewnn xft xim athena neXt Xaw3d gdbm berkdb +bignum" + +X_DEPEND="x11-libs/libXt x11-libs/libXmu x11-libs/libXext x11-misc/xbitmaps" + +RDEPEND=" + berkdb? ( >=sys-libs/db-4:= !!=sys-libs/gdbm-1.8.3:=[berkdb(+)] ) + >=sys-libs/zlib-1.1.4 + >=dev-libs/openssl-0.9.6:0= + >=media-libs/audiofile-0.2.3 + gpm? ( >=sys-libs/gpm-1.19.6 ) + postgres? ( dev-db/postgresql:= ) + 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[unicode(+)] ) + 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:0 ) + jpeg? ( media-libs/libjpeg-turbo:= ) + freewnn? ( app-i18n/freewnn ) + >=sys-libs/ncurses-5.2:= + >=app-eselect/eselect-emacs-1.15 + bignum? ( dev-libs/openssl )" + +DEPEND="${RDEPEND} + virtual/pkgconfig" + +PDEPEND="app-xemacs/xemacs-base + app-xemacs/mule-base" + +src_unpack() { + default_src_unpack +} + +src_prepare() { + use neXt && cp "${WORKDIR}"/NeXT.XEmacs/xemacs-icons/* "${S}"/etc/toolbar/ + find "${S}"/lisp -name '*.elc' -exec rm {} \; || die + eapply "${FILESDIR}/${P}-configure.patch" + eapply "${FILESDIR}/${P}-mule-tests.patch" + + eapply_user + + eautoconf + + # 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="" + + # bug #639642 + test-flags -no-pie >/dev/null && append-flags -no-pie + filter-flags -pie + + 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" + + 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 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 freewnn wnn )" + + # 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 --with-cflags-debugging=" + + use bignum && myconf="${myconf} --with-bignum=openssl" || + myconf="${myconf} --with-bignum=no" + + use freewnn && append-cppflags "-I. -I${ESYSROOT}/usr/include/wnn" + + econf ${myconf} \ + $(use_with gif ) \ + $(use_with gpm ) \ + $(use_with postgres postgresql ) \ + $(use_with ldap ) \ + $(use_with pop ) \ + --prefix=/usr \ + --with-mule \ + --with-unicode-internal \ + --without-canna \ + --with-ncurses \ + --with-msw=no \ + --with-mail-locking=flock \ + --with-site-lisp=yes \ + --with-site-modules=yes \ + --enable-option-checking=no \ + --with-last-packages=/usr/lib/xemacs +} + +src_compile() { + emake EMACSLOADPATH="${S}"/lisp +} + +src_install() { + emake prefix="${ED}"/usr \ + mandir="${ED}"/usr/share/man/man1 \ + infodir="${ED}"/usr/share/info \ + libdir="${ED}"/usr/$(get_libdir) \ + datadir="${ED}"/usr/share \ + install + + # 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 "${ED}"/usr/bin/${i} "${ED}"/usr/bin/${i}-xemacs || die "mv ${i} failed" + done + + # rename man pages + for i in ctags etags gnuserv gnuclient gnudoit gnuattach; do + mv "${ED}"/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/ + dodir /usr/lib/xemacs/mule-packages + + # remove extraneous info files + cd "${ED}"/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 + xdg_desktop_database_update + + 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 + xdg_desktop_database_update +} diff --git a/app-editors/xemacs/xemacs-21.5.9999.ebuild b/app-editors/xemacs/xemacs-21.5.9999.ebuild index f2e01acd2ca1..15945ea32285 100644 --- a/app-editors/xemacs/xemacs-21.5.9999.ebuild +++ b/app-editors/xemacs/xemacs-21.5.9999.ebuild @@ -17,7 +17,7 @@ EHG_REPO_URI="https://foss.heptapod.net/xemacs/xemacs" LICENSE="GPL-3+" SLOT="0" -IUSE="alsa debug gif gpm pop postgres ldap xface nas dnd X jpeg tiff png mule motif freewnn xft xim athena neXt Xaw3d gdbm berkdb" +IUSE="alsa debug gif gpm pop postgres ldap xface nas dnd X jpeg tiff png motif freewnn xft xim athena neXt Xaw3d gdbm berkdb +bignum" X_DEPEND="x11-libs/libXt x11-libs/libXmu x11-libs/libXext x11-misc/xbitmaps" @@ -45,13 +45,14 @@ RDEPEND=" jpeg? ( media-libs/libjpeg-turbo:= ) freewnn? ( app-i18n/freewnn ) >=sys-libs/ncurses-5.2:= - >=app-eselect/eselect-emacs-1.15" + >=app-eselect/eselect-emacs-1.15 + bignum? ( dev-libs/openssl )" DEPEND="${RDEPEND} virtual/pkgconfig" PDEPEND="app-xemacs/xemacs-base - mule? ( app-xemacs/mule-base )" + app-xemacs/mule-base" src_unpack() { mercurial_src_unpack @@ -62,6 +63,7 @@ src_unpack() { src_prepare() { use neXt && cp "${WORKDIR}"/NeXT.XEmacs/xemacs-icons/* "${S}"/etc/toolbar/ find "${S}"/lisp -name '*.elc' -exec rm {} \; || die + eapply "${FILESDIR}/${PN}-21.5.35-mule-tests.patch" eapply_user @@ -123,22 +125,18 @@ src_configure() { --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 + if use xim ; then + if use motif ; then + myconf="${myconf} --with-xim=motif" else - myconf="${myconf} --with-xim=no" + myconf="${myconf} --with-xim=xlib" fi - - myconf="${myconf} $(use_with freewnn wnn )" + else + myconf="${myconf} --with-xim=no" fi + myconf="${myconf} $(use_with freewnn wnn )" + # This determines the type of sounds we are playing local soundconf="native" @@ -160,6 +158,9 @@ src_configure() { use debug && myconf="${myconf} --with-debug" || myconf="${myconf} --with-optimization --with-cflags-debugging=" + use bignum && myconf="${myconf} --with-bignum=openssl" || + myconf="${myconf} --with-bignum=no" + use freewnn && append-cppflags "-I. -I${ESYSROOT}/usr/include/wnn" econf ${myconf} \ @@ -169,6 +170,8 @@ src_configure() { $(use_with ldap ) \ $(use_with pop ) \ --prefix=/usr \ + --with-mule \ + --with-unicode-internal \ --without-canna \ --with-ncurses \ --with-msw=no \ @@ -209,11 +212,7 @@ src_install() { 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 + dodir /usr/lib/xemacs/mule-packages # remove extraneous info files cd "${ED}"/usr/share/info -- cgit v1.2.3