diff --git a/bugzilla-301352-fix-wrong-incrementing-in-macros.patch b/bugzilla-301352-fix-wrong-incrementing-in-macros.patch index 7d40660..51046f7 100644 --- a/bugzilla-301352-fix-wrong-incrementing-in-macros.patch +++ b/bugzilla-301352-fix-wrong-incrementing-in-macros.patch @@ -6,8 +6,8 @@ Index: xemacs-21.5.29/src/mule-ccl.c Lisp_Object map, content, attrib, value; int point, size, fin_ic; -- j = XCHAR_OR_INT (ccl_prog[ic++]); /* number of maps. */ -+ j = XCHAR_OR_INT (ccl_prog[ic]); ic++; /* number of maps. */ +- j = XCHAR_OR_FIXNUM (ccl_prog[ic++]); /* number of maps. */ ++ j = XCHAR_OR_FIXNUM (ccl_prog[ic]); ic++; /* number of maps. */ fin_ic = ic + j; op = reg[rrr]; if ((j > reg[RRR]) && (j >= 0)) @@ -15,8 +15,8 @@ Index: xemacs-21.5.29/src/mule-ccl.c for (;i < j;i++) { size = XVECTOR (Vcode_conversion_map_vector)->size; -- point = XCHAR_OR_INT (ccl_prog[ic++]); -+ point = XCHAR_OR_INT (ccl_prog[ic]); ic++; +- point = XCHAR_OR_FIXNUM (ccl_prog[ic++]); ++ point = XCHAR_OR_FIXNUM (ccl_prog[ic]); ic++; if (point >= size) continue; map = XVECTOR (Vcode_conversion_map_vector)->contents[point]; @@ -24,8 +24,8 @@ Index: xemacs-21.5.29/src/mule-ccl.c stack_idx_of_map_multiple = 0; map_set_rest_length = -- XCHAR_OR_INT (ccl_prog[ic++]); /* number of maps and separators. */ -+ XCHAR_OR_INT (ccl_prog[ic]); ic++; /* number of maps and separators. */ +- XCHAR_OR_FIXNUM (ccl_prog[ic++]); /* number of maps and separators. */ ++ XCHAR_OR_FIXNUM (ccl_prog[ic]); ic++; /* number of maps and separators. */ fin_ic = ic + map_set_rest_length; op = reg[rrr]; @@ -33,8 +33,8 @@ Index: xemacs-21.5.29/src/mule-ccl.c { Lisp_Object map, attrib, value, content; int size, point; -- j = XCHAR_OR_INT (ccl_prog[ic++]); /* map_id */ -+ j = XCHAR_OR_INT (ccl_prog[ic]); ic++; /* map_id */ +- j = XCHAR_OR_FIXNUM (ccl_prog[ic++]); /* map_id */ ++ j = XCHAR_OR_FIXNUM (ccl_prog[ic]); ic++; /* map_id */ op = reg[rrr]; if (j >= XVECTOR (Vcode_conversion_map_vector)->size) { diff --git a/xemacs-21.4.8-xevent.patch b/xemacs-21.4.8-xevent.patch index 188843f..3d58825 100644 --- a/xemacs-21.4.8-xevent.patch +++ b/xemacs-21.4.8-xevent.patch @@ -2,20 +2,17 @@ Index: src/event-Xt.c =================================================================== --- src/event-Xt.c.orig +++ src/event-Xt.c -@@ -1224,9 +1224,13 @@ x_event_to_emacs_event (XEvent *x_event, +@@ -1224,8 +1224,11 @@ x_event_to_emacs_event (XEvent *x_event, if (modifiers & XEMACS_MOD_SHIFT) { - int Mode_switch_p = *state & xd->ModeMask; - KeySym bot = XLookupKeysym (ev, Mode_switch_p ? 2 : 0); -- KeySym top = XLookupKeysym (ev, Mode_switch_p ? 3 : 1); -+ KeySym top, bot; ++ KeySym bot; + XKeyEvent tmpev = *ev; + + tmpev.state = *state & (xd->ModeMask | ~0xff); + XLookupString(&tmpev, NULL, 0, &bot, NULL); -+ tmpev.state |= ShiftMask; -+ XLookupString(&tmpev, NULL, 0, &top, NULL); - if (top && bot && top != bot) - modifiers &= ~XEMACS_MOD_SHIFT; - } + if (x_keysym && bot && x_keysym != bot) + modifiers &= ~XEMACS_MOD_SHIFT; + } diff --git a/xemacs-21.5.31.tar.gz b/xemacs-21.5.31.tar.gz deleted file mode 100644 index a5a43dd..0000000 --- a/xemacs-21.5.31.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d59f90b7e72621376a23daa484f1929945d0527350a10989fd086bde9d0a997d -size 15802193 diff --git a/xemacs-21.5.32.tar.gz b/xemacs-21.5.32.tar.gz new file mode 100644 index 0000000..cccf0c7 --- /dev/null +++ b/xemacs-21.5.32.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e2b7bfffac365ba563914e56faa40ec75199deff337715732a489a23f061828 +size 12359653 diff --git a/xemacs-level3.patch b/xemacs-level3.patch index 741719f..92c09b6 100644 --- a/xemacs-level3.patch +++ b/xemacs-level3.patch @@ -23,9 +23,9 @@ Index: xemacs-21.5.29/src/event-Xt.c return 0; } @@ -872,8 +881,17 @@ x_to_emacs_keysym (XKeyPressedEvent *eve - than passing in 0) to avoid crashes on German IRIX */ char dummy[256]; XLookupString (event, dummy, 200, &keysym, 0); + *x_keysym_out = keysym; - return (IsModifierKey (keysym) || keysym == XK_Mode_switch ) - ? Qnil : x_keysym_to_emacs_keysym (keysym, simple_p); + return (IsModifierKey (keysym) @@ -43,9 +43,9 @@ Index: xemacs-21.5.29/src/event-Xt.c #endif /* ! XIM_MOTIF */ @@ -932,8 +950,17 @@ x_to_emacs_keysym (XKeyPressedEvent *eve - { case XLookupKeySym: case XLookupBoth: + *x_keysym_out = keysym; - return (IsModifierKey (keysym) || keysym == XK_Mode_switch ) - ? Qnil : x_keysym_to_emacs_keysym (keysym, simple_p); + return (IsModifierKey (keysym) diff --git a/xemacs.patch b/xemacs.patch index 501a4e0..231b2ef 100644 --- a/xemacs.patch +++ b/xemacs.patch @@ -268,18 +268,18 @@ Index: xemacs-21.5.29/lisp/x-win-xfree86.el =================================================================== --- xemacs-21.5.29.orig/lisp/x-win-xfree86.el +++ xemacs-21.5.29/lisp/x-win-xfree86.el -@@ -101,6 +101,10 @@ +@@ -99,6 +99,11 @@ ;; define also the control, meta, and meta-control versions. (loop for mods in '(() (control) (meta) (meta control)) do - (define-key function-key-map `[(,@mods ,key)] `[(shift ,@mods ,sane-key)]) -- )))) -- -+ ))) + (define-key function-key-map `[(,@mods ,key)] +- `[(shift ,@mods ,sane-key)]))))) ++ `[(shift ,@mods ,sane-key)])))) +;; Begin insert +;; set Symbol delete == [delete] to delete-char + (load "term/func-keys" t t) +;; End insert +) + ;;; x-win-xfree86.el ends here Index: xemacs-21.5.29/site-packages/lisp/term/func-keys.el =================================================================== diff --git a/xemacs.spec b/xemacs.spec index cf200c4..23c477d 100644 --- a/xemacs.spec +++ b/xemacs.spec @@ -45,7 +45,7 @@ BuildRequires: gpm %define xbindir /usr/bin %define xincludes /usr/include %define xlibraries /usr/%{_lib} -%define _id b604d235f028 +%define _id 900a0a8796c3 %define _hg beta-%{_id} Url: http://www.xemacs.org PreReq: permissions @@ -53,10 +53,10 @@ Requires: ctags Requires: xemacs-info Requires: xemacs-packages Conflicts: gnuserv -Version: 21.5.31 +Version: 21.5.32 Release: 0 Summary: XEmacs -License: GPL-2.0+ +License: GPL-3.0+ Group: Productivity/Editors/Emacs BuildRoot: %{_tmppath}/%{name}-%{version}-build # Howto get the Mercurial tree of XEmacs: @@ -65,7 +65,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build # # delete the .hg directory before creating the tarball in order # not to make the source rpm huge. -Source0: http://ftp.freenet.de/pub/ftp.xemacs.org/tux/xemacs/xemacs-21.5/xemacs-21.5.31.tar.gz +Source0: http://ftp.freenet.de/pub/ftp.xemacs.org/tux/xemacs/xemacs-21.5/xemacs-%version.tar.gz Source1: xe-list.el Source2: fix-load-history.el Source3: xemacs.desktop @@ -151,11 +151,11 @@ echo Use xft, requires X11, Xft, Xrender, freetype, and fontconfig support. %else echo Use xfs, that is XFontSet support for internationalized menubar. %endif -%setup -q +%setup -q -n xemacs-xemacs-%_id %patch3 -p1 %patch18 -p0 -b .xevent %patch20 -p1 -%patch22 -p0 +#%patch22 -p0 %patch23 -p1 %patch27 -p1 -b .lvl3 %patch28 -p1 -b .movemail @@ -251,7 +251,7 @@ LIBEXEC=${LIB}/xemacs/${VERSION} # this prints the Xresources used for the Menus to stdout # when the Menus are used. LDFLAGS= -export CFLAGS LDFLAGS +## export CFLAGS LDFLAGS # # Maybe there are emacs and xemacs on the # same system, therefore put binaries into /usr/X11R6/bin @@ -291,6 +291,7 @@ SPECIAL="--with-database=berkdb,gdbm \ --with-canna \ --with-tty=yes \ --with-site-lisp \ +%if 0 %ifarch ia64 ppc ppc64 s390x s390 %ix86 x86_64 %arm --disable-mc-alloc \ --disable-kkcc \ @@ -300,6 +301,7 @@ SPECIAL="--with-database=berkdb,gdbm \ --with-kkcc \ --with-newgc \ %endif +%endif %ifnarch s390 --enable-sound=native \ --with-gpm \ @@ -309,11 +311,15 @@ SPECIAL="--with-database=berkdb,gdbm \ %if %enable_dump_in_exec --enable-dump-in-exec \ %else +%if 0 --disable-dump-in-exec \ %endif +%endif %else +%if 0 --enable-pdump=no \ %endif +%endif %if ! %enable_xfs --with-xft=emacs,menubars,tabs,gauges \ %endif @@ -356,7 +362,7 @@ MAIL="--enable-clash-detection \ # --with-xim=xlib, the above comment from './configure --help' # seems to be incorrect in that respect.) # -MULE="--enable-mule \ +MULE="--with-mule \ --with-xim=xlib \ %if %enable_xfs --with-xfs \ @@ -367,12 +373,17 @@ MULE="--enable-mule \ # # Compilation # -COMP="--with-gcc \ +##--with-gcc \ +COMP=" \ --with-dynamic \ --with-debug \ --enable-error-checking=none \ +%if 0 --with-cflags=\"${CFLAGS}\" \ --with-ldflags=\"${LDFLAGS}\" \ +%else + --with-cflags=\"${RPM_OPT_FLAGS}\" \ +%endif " eval ./configure $SYS $COMP $PREFIX $SPECIAL $X11 $MULE $MAIL make %{?jobs:-j %jobs}