summaryrefslogtreecommitdiff
path: root/app-editors/xemacs/files
diff options
context:
space:
mode:
Diffstat (limited to 'app-editors/xemacs/files')
-rw-r--r--app-editors/xemacs/files/README.Gentoo45
-rw-r--r--app-editors/xemacs/files/xemacs-21.4.19-db.patch84
-rw-r--r--app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch32
-rw-r--r--app-editors/xemacs/files/xemacs-21.4.24-glibc-macro.patch28
-rw-r--r--app-editors/xemacs/files/xemacs-21.4.24-ncurses-tinfo.patch12
-rw-r--r--app-editors/xemacs/files/xemacs-21.5.34-gcc5.patch35
-rw-r--r--app-editors/xemacs/files/xemacs-21.5.34-glibc-macro.patch32
-rw-r--r--app-editors/xemacs/files/xemacs-21.5.34-ncurses-tinfo.patch13
-rw-r--r--app-editors/xemacs/files/xemacs.desktop33
9 files changed, 314 insertions, 0 deletions
diff --git a/app-editors/xemacs/files/README.Gentoo b/app-editors/xemacs/files/README.Gentoo
new file mode 100644
index 000000000000..abb71cc90988
--- /dev/null
+++ b/app-editors/xemacs/files/README.Gentoo
@@ -0,0 +1,45 @@
+README.Gentoo
+-------------
+
+This is a quick tutorial on how to configure the XEmacs package user
+interface (package-ui). After you configure package-ui, you will be
+able to download and install XEmacs packages and dependencies while in
+XEmacs. For the complete documentation, see
+/usr/share/doc/xemacs-21.4.*/README.packages.gz
+
+Once XEmacs is emerged onto a Gentoo Linux system, you will only have
+the following elisp modules installed: xemacs-base, efs and
+(optionally if you had mule in USE) mule-base. This guide will show
+how to use package-ui to download and install your own preference in
+elisp modules to ~/.xemacs/xemacs-packages.
+
+First, start XEmacs and load the package-ui elisp module.
+
+ M-x load-library RET package-ui RET
+
+The first thing to set is the download site (package-ui installs via
+network).
+
+ M-x customize-variable RET package-get-remote RET
+
+Insert a new value, then:
+
+ Choice: Remote
+ Host: ibiblio.org
+ Directory: /pub/packages/editors/xemacs/packages/
+
+Make sure you set and save the change. Note, other host/directories
+are possible. The the documentation for package-ui for more
+information. Hint: ibiblio.org is *fast*.
+
+Then set the location package-ui should install to:
+
+ M-x customize-variable RET pui-package-install-dest-dir RET
+
+ Directory: ~/.xemacs/xemacs-packages
+
+Make sure you set and save the change.
+
+At this point you can install your modules:
+
+ M-x pui-list-packages
diff --git a/app-editors/xemacs/files/xemacs-21.4.19-db.patch b/app-editors/xemacs/files/xemacs-21.4.19-db.patch
new file mode 100644
index 000000000000..cf87d60e628a
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs-21.4.19-db.patch
@@ -0,0 +1,84 @@
+This patch fixes several database-related problems.
+
+dbm_open has been moved into gdbm_compat, so we check for that and include it.
+
+ndbm.h is located in /usr/include/gdbm on Gentoo, so we only check
+there, given that we don't support normal dbm installations, and we
+patch database.c as well. Not portable beyond Gentoo, but will work
+for us.
+
+The checks for Berkeley DB only took into account up to version
+3. Added checks to deal with several versions 4 as well.
+
+--- xemacs-21.4.19/configure.in 2005-12-24 01:48:14.000000000 +0100
++++ xemacs-21.4.19-db/configure.in 2006-06-11 22:43:52.000000000 +0200
+@@ -4502,7 +4502,7 @@
+
+ dnl Check for ndbm.h, required for either kind of DBM support.
+ if test "$with_database_gdbm $with_database_dbm" != "no no"; then
+- AC_CHECK_HEADER(ndbm.h, [:], [
++ AC_CHECK_HEADER(gdbm/ndbm.h, [:], [
+ test "$with_database_gdbm" = "yes" -o \
+ "$with_database_dbm" = "yes" && \
+ XE_DIE("Required DBM support cannot be provided.")
+@@ -4513,10 +4513,13 @@
+ if test "$with_database_gdbm" != "no"; then
+ AC_CHECK_LIB(gdbm, dbm_open, [
+ with_database_gdbm=yes with_database_dbm=no libdbm=-lgdbm], [
++ AC_CHECK_LIB(gdbm_compat, dbm_open, [
++ with_database_gdbm=yes with_database_dbm=no libdbm="-lgdbm_compat -lgdbm"], [
+ if test "$with_database_gdbm" = "yes"; then
+ XE_DIE("Required GNU DBM support cannot be provided.")
+ fi
+- with_database_gdbm=no])
++ with_database_gdbm=no], -lgdbm)
++ ])
+ fi
+
+ dnl Check for DBM support in libc and libdbm.
+@@ -4614,11 +4617,30 @@
+ #if DB_VERSION_MAJOR > 2
+ yes
+ #endif
+-], [AC_MSG_RESULT(3); dbfunc=db_create],[
+- AC_MSG_RESULT(2); dbfunc=db_open])],[
+- AC_MSG_RESULT(1); dbfunc=dbopen])
++], [AC_EGREP_CPP(yes,
++[#include <$db_h_file>
++#if DB_VERSION_MAJOR > 3
++yes
++#endif
++], [AC_MSG_RESULT(4); dbfunc=db_create; dbver=4],[
++ AC_MSG_RESULT(3); dbfunc=db_create; dbver=3])],[
++ AC_MSG_RESULT(2); dbfunc=db_open; dbver=2])],[
++ AC_MSG_RESULT(1); dbfunc=dbopen; dbver=1])
+ AC_CHECK_FUNC($dbfunc, with_database_berkdb=yes need_libdb=no, [
+- AC_CHECK_LIB(db, $dbfunc, with_database_berkdb=yes need_libdb=yes)])
++ AC_CHECK_LIB(db, db_create_4002, with_database_berkdb=yes need_libdb=yes)])
++ fi
++
++ dnl Berk db 4.1 decorates public functions with version information
++ if test "$have_database_berkdb" != "yes" -a "$dbver" = "4"; then
++ rm -f $tempcname
++ echo "#include <$db_h_file>" > $tempcname
++ echo "configure___ dbfunc=db_create" >> $tempcname
++ define(TAB, [ ])dnl
++ eval `$CPP -Isrc $tempcname \
++ | sed -n -e "s/[[ TAB]]*=[[ TAB\"]]*/='/" -e "s/[[ TAB\"]]*\$/'/" -e "s/^configure___//p"`
++ rm -f $tempcname
++ AC_MSG_WARN("db_create is really $dbfunc")
++ AC_CHECK_LIB(db, $dbfunc, have_database_berkdb=yes need_libdb=yes)
+ fi
+
+ if test "$with_database_berkdb" = "yes"; then
+--- xemacs-21.4.19/src/database.c 2005-12-24 01:52:35.000000000 +0100
++++ xemacs-21.4.19-db/src/database.c 2006-06-13 21:00:01.000000000 +0200
+@@ -82,7 +82,7 @@
+ #endif /* HAVE_BERKELEY_DB */
+
+ #ifdef HAVE_DBM
+-#include <ndbm.h>
++#include <gdbm/ndbm.h>
+ Lisp_Object Qdbm;
+ #endif /* HAVE_DBM */
+
diff --git a/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch b/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch
new file mode 100644
index 000000000000..494fc51c3b88
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs-21.4.24-gcc5.patch
@@ -0,0 +1,32 @@
+diff -r e2da872593c0 configure.in
+--- a/configure.in Tue Mar 24 22:15:53 2015 -0400
++++ b/configure.in Sun Mar 13 13:48:24 2016 +0100
+@@ -1939,6 +1939,8 @@
+ CFLAGS="-g -O3 -Wall -Wno-switch -Winline -Wmissing-prototypes"
+ dnl Yuck, bad compares have been worth at least 3 crashes!
+ CFLAGS="$CFLAGS -Wsign-compare"
++ dnl Use old gnu inline semantics until we fix the source
++ CFLAGS="$CFLAGS -fgnu89-inline"
+ dnl XEmacs is known not to be strict-aliasing-safe.
+ case "`gcc -v --help 2>&1`" in
+ *-fstrict-aliasing* ) CFLAGS="$CFLAGS -fno-strict-aliasing" ;;
+diff -r e2da872593c0 src/lisp.h
+--- a/src/lisp.h Tue Mar 24 22:15:53 2015 -0400
++++ b/src/lisp.h Sun Mar 13 13:48:24 2016 +0100
+@@ -193,6 +193,8 @@
+ # endif /* GNUC */
+ #endif
+
++#ifndef _GCC_MAX_ALIGN_T
++#define _GCC_MAX_ALIGN_T
+ /* No type has a greater alignment requirement than max_align_t.
+ (except perhaps for types we don't use, like long double) */
+ typedef union
+@@ -202,6 +204,7 @@
+ struct { void (*f)(void); } f;
+ struct { double d; } d;
+ } max_align_t;
++#endif
+
+ #ifndef ALIGNOF
+ # if defined (__GNUC__) && (__GNUC__ >= 2)
diff --git a/app-editors/xemacs/files/xemacs-21.4.24-glibc-macro.patch b/app-editors/xemacs/files/xemacs-21.4.24-glibc-macro.patch
new file mode 100644
index 000000000000..62d26ccc053c
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs-21.4.24-glibc-macro.patch
@@ -0,0 +1,28 @@
+Don't define deprecated glibc symbol
+
+Avoid defining the deprecated symbols _BSD_SOURCE and _SVID_SOURCE
+that xmkmf thinks are needed to compile X programs.
+
+diff -r 09d56098ea2c -r 32a8151f8af7 configure.in
+--- a/configure.in Sat Feb 11 01:24:06 2017 +0100
++++ b/configure.in Sat Feb 11 01:59:40 2017 +0100
+@@ -2868,10 +2868,15 @@
+ * ) val=1 ;;
+ esac
+ dnl Avoid re-AC_DEFINE-ing xmkmf symbols we've already defined above.
+- if grep "^#define $sym " confdefs.h >/dev/null; then :; else
+- if test "$val" = "1"
+- then AC_DEFINE_UNQUOTED($sym)
+- else AC_DEFINE_UNQUOTED($sym,$val)
++dnl Also, glibc doesn't like two of the traditional POSIX macros that xmkmf
++dnl likes us to define; ignore them if appropriate.
++ if grep "^#define $sym " confdefs.h >/dev/null || \
++ test "$have_glibc" = "yes" -a "$sym" = "_BSD_SOURCE" || \
++ test "$have_glibc" = "yes" -a "$sym" = "_SVID_SOURCE";
++ then :; else
++ if test "$val" = "1"
++ then AC_DEFINE_UNQUOTED($sym)
++ else AC_DEFINE_UNQUOTED($sym,$val)
+ fi
+ fi ;;
+ esac
diff --git a/app-editors/xemacs/files/xemacs-21.4.24-ncurses-tinfo.patch b/app-editors/xemacs/files/xemacs-21.4.24-ncurses-tinfo.patch
new file mode 100644
index 000000000000..19b8984db2d0
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs-21.4.24-ncurses-tinfo.patch
@@ -0,0 +1,12 @@
+diff -r e2da872593c0 configure.in
+--- a/configure.in Tue Mar 24 22:15:53 2015 -0400
++++ b/configure.in Mon Apr 17 10:13:05 2017 +0200
+@@ -4449,7 +4449,7 @@
+ AC_CHECK_HEADER(ncurses/curses.h, curses_h_file=ncurses/curses.h)
+ AC_CHECK_HEADER(ncurses/term.h, term_h_file=ncurses/term.h)
+ XE_ADD_OBJS(terminfo.o)
+- XE_PREPEND(-lncurses, LIBS)
++ XE_PREPEND($(pkg-config ncurses --libs), LIBS)
+
+ if test "$ac_cv_header_ncurses_curses_h" != "yes" ; then
+ dnl Try again, and check for the bogus ncurses/ include bug.
diff --git a/app-editors/xemacs/files/xemacs-21.5.34-gcc5.patch b/app-editors/xemacs/files/xemacs-21.5.34-gcc5.patch
new file mode 100644
index 000000000000..025a390f3335
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs-21.5.34-gcc5.patch
@@ -0,0 +1,35 @@
+diff --git a/src/lisp.h b/src/lisp.h
+--- a/src/lisp.h
++++ b/src/lisp.h
+@@ -1154,6 +1154,8 @@
+
+ /* ------------------------ alignment definitions ------------------- */
+
++#if (!defined (__STDC_VERSION__) || __STDC_VERSION__ < 201112L) && \
++ (!defined (__cplusplus) || __cplusplus < 201103L)
+ /* No type has a greater alignment requirement than max_align_t.
+ (except perhaps for types we don't use, like long double) */
+ typedef union
+@@ -1163,6 +1165,7 @@
+ struct { void (*f)(void); } f;
+ struct { double d; } d;
+ } max_align_t;
++#endif
+
+ /* ALIGNOF returns the required alignment of a type -- i.e. a value such
+ that data of this type must begin at a memory address which is a
+@@ -1170,7 +1173,11 @@
+ as the type itself. */
+
+ #ifndef ALIGNOF
+-# if defined (__GNUC__) && (__GNUC__ >= 2)
++# if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
++# define ALIGNOF(type) _Alignof(type)
++# elif defined (__cplusplus) && __cplusplus >= 201103L
++# define ALIGNOF(type) alignof(type)
++# elif defined (__GNUC__) && (__GNUC__ >= 2)
+ /* gcc has an extension that gives us exactly what we want. */
+ # define ALIGNOF(type) __alignof__ (type)
+ # elif ! defined (__cplusplus)
+
+
diff --git a/app-editors/xemacs/files/xemacs-21.5.34-glibc-macro.patch b/app-editors/xemacs/files/xemacs-21.5.34-glibc-macro.patch
new file mode 100644
index 000000000000..b611b15fd8b1
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs-21.5.34-glibc-macro.patch
@@ -0,0 +1,32 @@
+diff -r f412e9f093d4 configure
+--- a/configure Wed Jan 25 00:47:06 2017 +0000
++++ b/configure Sun Jan 29 19:32:47 2017 +0100
+@@ -13507,7 +13507,10 @@
+ -D*=* ) val=`echo '' $word | sed -e 's:^.*=::'` ;;
+ * ) val=1 ;;
+ esac
+- if grep "^#define $sym " confdefs.h >/dev/null; then :; else
++ if grep "^#define $sym " confdefs.h >/dev/null || \
++ test "$have_glibc" = "yes" -a "$sym" = "_BSD_SOURCE" || \
++ test "$have_glibc" = "yes" -a "$sym" = "_SVID_SOURCE";
++ then :; else
+ if test "$val" = "1"
+ then cat >>confdefs.h <<_ACEOF
+ #define $sym 1
+diff -r f412e9f093d4 configure.ac
+--- a/configure.ac Wed Jan 25 00:47:06 2017 +0000
++++ b/configure.ac Sun Jan 29 19:32:47 2017 +0100
+@@ -3136,7 +3136,12 @@
+ * ) val=1 ;;
+ esac
+ dnl Avoid re-AC_DEFINE-ing xmkmf symbols we've already defined above.
+- if grep "^#define $sym " confdefs.h >/dev/null; then :; else
++dnl Also, glibc doesn't like two of the traditional POSIX macros that xmkmf
++dnl likes us to define; ignore them if appropriate.
++ if grep "^#define $sym " confdefs.h >/dev/null || \
++ test "$have_glibc" = "yes" -a "$sym" = "_BSD_SOURCE" || \
++ test "$have_glibc" = "yes" -a "$sym" = "_SVID_SOURCE";
++ then :; else
+ if test "$val" = "1"
+ then AC_DEFINE_UNQUOTED($sym)
+ else AC_DEFINE_UNQUOTED($sym,$val)
diff --git a/app-editors/xemacs/files/xemacs-21.5.34-ncurses-tinfo.patch b/app-editors/xemacs/files/xemacs-21.5.34-ncurses-tinfo.patch
new file mode 100644
index 000000000000..a08eda3c8a83
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs-21.5.34-ncurses-tinfo.patch
@@ -0,0 +1,13 @@
+diff -r 6355de501637 configure
+--- a/configure Thu Jan 23 15:03:16 2014 +0000
++++ b/configure Fri Jan 31 23:55:12 2014 +0100
+@@ -19699,7 +19699,8 @@
+ extra_objs="$extra_objs terminfo.o" && if test "$verbose" = "yes"; then
+ echo " xemacs will be linked with \"terminfo.o\""
+ fi
+- LIBS="-lncurses $LIBS" && if test "$verbose" = "yes"; then echo " Prepending \"-lncurses\" to \$LIBS"; fi
++ ncurses_libs=$(pkg-config ncurses --libs)
++ LIBS="$ncurses_libs $LIBS" && if test "$verbose" = "yes"; then echo " Prepending \"$ncurses_libs\" to \$LIBS"; fi
+
+ if test "$ac_cv_header_ncurses_curses_h" != "yes" ; then
+ save_c_switch_site="$c_switch_site"
diff --git a/app-editors/xemacs/files/xemacs.desktop b/app-editors/xemacs/files/xemacs.desktop
new file mode 100644
index 000000000000..93f14a731f2b
--- /dev/null
+++ b/app-editors/xemacs/files/xemacs.desktop
@@ -0,0 +1,33 @@
+[Desktop Entry]
+Name=XEmacs Text Editor
+Name[bg]=редактор XEmacs
+Name[ca]=Editor XEmacs
+Name[cs]=Editor XEmacs
+Name[da]=XEmacs tekstredigerer
+Name[de]=XEmacs Texteditor
+Name[eo]=La redaktilo XEmakso
+Name[es]=Emacs para X
+Name[et]=Emacs X'i kasutajaliidesega
+Name[fi]=XEmacs editori
+Name[fr]=Éditeur XEmacs
+Name[hu]=XEmacs szövegszerkesztő
+Name[is]=XEmacs-ritill
+Name[it]=Emacs per X
+Name[ja]=XEmacs テキスト・エディター
+Name[mk]=Софистицираниот XEmacs уредувач
+Name[no]=XEmacs-tekstredigerer
+Name[pt]=Editor XEmacs
+Name[ro]=Editorul XEmacs
+Name[ru]=Редактор XEmacs
+Name[sk]=Editor XEmacs
+Name[sl]=Urejevalnik XEmacs
+Name[uk]=Редактор XEmacs
+GenericName=Text Editor
+Comment=Edit text
+MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
+Exec=xemacs %f
+Icon=xemacs
+Type=Application
+Terminal=false
+Categories=Utility;TextEditor;
+StartupWMClass=Emacs