From f27bef1c3fb5bc37e8373776dd47427aefbb4846 Mon Sep 17 00:00:00 2001 From: Karel Klíč Date: Mar 22 2010 10:14:49 +0000 Subject: Update to 23.2 pretest version --- diff --git a/.cvsignore b/.cvsignore index a7da9f5..11a8f06 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -emacs-23.1.tar.bz2 +emacs-23.1.94.tar.gz diff --git a/emacs-23.1-cpp.patch b/emacs-23.1-cpp.patch deleted file mode 100644 index 53c42ee..0000000 --- a/emacs-23.1-cpp.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up emacs-23.1/configure.in.cpp emacs-23.1/configure.in ---- emacs-23.1/configure.in.cpp 2009-11-30 13:24:53.000000000 +0100 -+++ emacs-23.1/configure.in 2009-11-30 13:25:45.000000000 +0100 -@@ -2983,7 +2983,7 @@ echo creating lib-src/Makefile - sed -e '1,/start of cpp stuff/d'\ - -e 's,/\*\*/#\(.*\)$,/* \1 */,' \ - < Makefile.c > junk.c -- $CPP $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \ -+ $CPP -P $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \ - sed -e 's/^ / /' -e '/^#/d' -e '/^[ ]*$/d' > junk2.c - cat junk1.c junk2.c > Makefile.new - rm -f junk.c junk1.c junk2.c -@@ -2999,7 +2999,7 @@ echo creating src/Makefile - sed -e '1,/start of cpp stuff/d'\ - -e 's,/\*\*/#\(.*\)$,/* \1 */,' \ - < Makefile.c > junk.c -- $CPP $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \ -+ $CPP -P $cpp_undefs -I. -I$srcdir/src $CPPFLAGS junk.c | \ - sed -e 's/^ / /' -e '/^#/d' -e '/^[ ]*$/d' > junk2.c - cat junk1.c junk2.c > Makefile.new - rm -f junk.c junk1.c junk2.c diff --git a/emacs-23.1-fontdpi.patch b/emacs-23.1-fontdpi.patch deleted file mode 100644 index c3c01a4..0000000 --- a/emacs-23.1-fontdpi.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -up emacs-23.1/src/xterm.c.fontdpi emacs-23.1/src/xterm.c ---- emacs-23.1/src/xterm.c.fontdpi 2010-01-04 09:11:45.000000000 +0100 -+++ emacs-23.1/src/xterm.c 2010-01-04 11:50:19.627777180 +0100 -@@ -10380,17 +10380,31 @@ x_term_init (display_name, xrm_option, r - dpyinfo->visual, AllocNone); - - { -- int screen_number = XScreenNumberOfScreen (dpyinfo->screen); -- double pixels = DisplayHeight (dpyinfo->display, screen_number); -- double mm = DisplayHeightMM (dpyinfo->display, screen_number); -- /* Mac OS X 10.3's Xserver sometimes reports 0.0mm. */ -- dpyinfo->resy = (mm < 1) ? 100 : pixels * 25.4 / mm; -- pixels = DisplayWidth (dpyinfo->display, screen_number); -- mm = DisplayWidthMM (dpyinfo->display, screen_number); -- /* Mac OS X 10.3's Xserver sometimes reports 0.0mm. */ -- dpyinfo->resx = (mm < 1) ? 100 : pixels * 25.4 / mm; -+ /* If we are using Xft, check dpi value in X resources. -+ It is better we use it as well, since Xft will use it, as will all -+ Gnome applications. If our real DPI is smaller or larger than the -+ one Xft uses, our font will look smaller or larger than other -+ for other applications, even if it is the same font name (monospace-10 -+ for example). */ -+ char *v = XGetDefault (dpyinfo->display, "Xft", "dpi"); -+ double d; -+ if (v != NULL && sscanf (v, "%lf", &d) == 1) -+ dpyinfo->resy = dpyinfo->resx = d; - } - -+ if (dpyinfo->resy < 1) -+ { -+ int screen_number = XScreenNumberOfScreen (dpyinfo->screen); -+ double pixels = DisplayHeight (dpyinfo->display, screen_number); -+ double mm = DisplayHeightMM (dpyinfo->display, screen_number); -+ /* Mac OS X 10.3's Xserver sometimes reports 0.0mm. */ -+ dpyinfo->resy = (mm < 1) ? 100 : pixels * 25.4 / mm; -+ pixels = DisplayWidth (dpyinfo->display, screen_number); -+ mm = DisplayWidthMM (dpyinfo->display, screen_number); -+ /* Mac OS X 10.3's Xserver sometimes reports 0.0mm. */ -+ dpyinfo->resx = (mm < 1) ? 100 : pixels * 25.4 / mm; -+ } -+ - dpyinfo->Xatom_wm_protocols - = XInternAtom (dpyinfo->display, "WM_PROTOCOLS", False); - dpyinfo->Xatom_wm_take_focus - diff --git a/emacs-23.1-hexl-mode.patch b/emacs-23.1-hexl-mode.patch deleted file mode 100644 index 15cd903..0000000 --- a/emacs-23.1-hexl-mode.patch +++ /dev/null @@ -1,12 +0,0 @@ -=== modified file 'lisp/hexl.el' ---- lisp/hexl.el 2010-01-13 08:35:10 +0000 -+++ lisp/hexl.el 2010-01-14 00:38:04 +0000 -@@ -779,7 +779,7 @@ - - (defun hexl-printable-character (ch) - "Return a displayable string for character CH." -- (format "%c" (if hexl-iso -+ (format "%c" (if (not (equal hexl-iso "")) - (if (or (< ch 32) (and (>= ch 127) (< ch 160))) - 46 - ch) diff --git a/emacs-23.1-indian.patch b/emacs-23.1-indian.patch deleted file mode 100644 index 503f2cf..0000000 --- a/emacs-23.1-indian.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up emacs-23.1/lisp/language/indian.el.indian emacs-23.1/lisp/language/indian.el ---- emacs-23.1/lisp/language/indian.el.indian 2009-12-03 13:03:04.000000000 +0100 -+++ emacs-23.1/lisp/language/indian.el 2009-12-03 13:05:53.000000000 +0100 -@@ -165,15 +165,15 @@ South Indian language Malayalam is suppo - "Regexp matching a composable sequence of Malayalam characters.") - - (let ((script-regexp-alist -- `((devanagari . ,devanagari-composable-pattern) -+ `((devanagari . "[\x900-\x97F\x200C\x200D]+") - (bengali . "[\x980-\x9FF\x200C\x200D]+") - (gurmukhi . "[\xA00-\xA7F\x200C\x200D]+") - (gujarati . "[\xA80-\xAFF\x200C\x200D]+") - (oriya . "[\xB00-\xB7F\x200C\x200D]+") -- (tamil . ,tamil-composable-pattern) -+ (tamil . "[\xB80-\xBFF\x200C\x200D]+") - (telugu . "[\xC00-\xC7F\x200C\x200D]+") -- (kannada . ,kannada-composable-pattern) -- (malayalam . ,malayalam-composable-pattern)))) -+ (kannada . "[\xC80-\xCFF\x200C\x200D]+") -+ (malayalam . "[\xD00-\xD7F\x200C\x200D]+")))) - (map-char-table - #'(lambda (key val) - (let ((slot (assq val script-regexp-alist))) diff --git a/emacs-23.1-memmove.patch b/emacs-23.1-memmove.patch deleted file mode 100644 index 1e9ac2c..0000000 --- a/emacs-23.1-memmove.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -up emacs-23.1/lib-src/etags.c.memmove emacs-23.1/lib-src/etags.c ---- emacs-23.1/lib-src/etags.c.memmove 2009-06-21 06:37:34.000000000 +0200 -+++ emacs-23.1/lib-src/etags.c 2009-12-08 17:55:41.442792036 +0100 -@@ -6695,13 +6695,13 @@ absolute_filename (file, dir) - else if (cp[0] != '/') - cp = slashp; - #endif -- strcpy (cp, slashp + 3); -+ memmove (cp, slashp + 3, strlen(slashp + 2)); - slashp = cp; - continue; - } - else if (slashp[2] == '/' || slashp[2] == '\0') - { -- strcpy (slashp, slashp + 2); -+ memmove (slashp, slashp + 2, strlen(slashp + 1)); - continue; - } - } diff --git a/emacs-23.1-scroll.patch b/emacs-23.1-scroll.patch deleted file mode 100644 index 96d1e29..0000000 --- a/emacs-23.1-scroll.patch +++ /dev/null @@ -1,82 +0,0 @@ -diff -up emacs-23.1/src/gtkutil.c.scroll emacs-23.1/src/gtkutil.c ---- emacs-23.1/src/gtkutil.c.scroll 2009-06-21 06:38:15.000000000 +0200 -+++ emacs-23.1/src/gtkutil.c 2009-12-02 17:10:08.000000000 +0100 -@@ -3401,6 +3401,38 @@ xg_set_toolkit_scroll_bar_thumb (bar, po - } - } - -+/* Return non-zero if EVENT is for a scroll bar in frame F. -+ When the same X window is used for several Gtk+ widgets, we cannot -+ say for sure based on the X window alone if an event is for the -+ frame. This function does additional checks. -+ -+ Return non-zero if the event is for a scroll bar, zero otherwise. */ -+ -+int -+xg_event_is_for_scrollbar (f, event) -+ FRAME_PTR f; -+ XEvent *event; -+{ -+ int retval = 0; -+ -+ if (f && event->type == ButtonPress) -+ { -+ /* Check if press occurred outside the edit widget. */ -+ GdkDisplay *gdpy = gdk_x11_lookup_xdisplay (FRAME_X_DISPLAY (f)); -+ retval = gdk_display_get_window_at_pointer (gdpy, NULL, NULL) -+ != f->output_data.x->edit_widget->window; -+ } -+ else if (f && (event->type != ButtonRelease || event->type != MotionNotify)) -+ { -+ /* If we are releasing or moving the scroll bar, it has the grab. */ -+ retval = gtk_grab_get_current () != 0 -+ && gtk_grab_get_current () != f->output_data.x->edit_widget; -+ } -+ -+ return retval; -+} -+ -+ - - /*********************************************************************** - Tool bar functions -diff -up emacs-23.1/src/gtkutil.h.scroll emacs-23.1/src/gtkutil.h ---- emacs-23.1/src/gtkutil.h.scroll 2009-06-21 06:38:15.000000000 +0200 -+++ emacs-23.1/src/gtkutil.h 2009-12-02 17:10:08.000000000 +0100 -@@ -180,6 +180,8 @@ extern void xg_set_toolkit_scroll_bar_th - int position, - int whole)); - -+extern int xg_event_is_for_scrollbar P_ ((FRAME_PTR f, XEvent *event)); -+ - - extern void update_frame_tool_bar P_ ((FRAME_PTR f)); - extern void free_frame_tool_bar P_ ((FRAME_PTR f)); -diff -up emacs-23.1/src/xterm.c.scroll emacs-23.1/src/xterm.c ---- emacs-23.1/src/xterm.c.scroll 2009-06-21 06:38:20.000000000 +0200 -+++ emacs-23.1/src/xterm.c 2009-12-02 17:13:24.000000000 +0100 -@@ -6743,6 +6743,12 @@ handle_one_xevent (dpyinfo, eventp, fini - clear_mouse_face (dpyinfo); - } - -+ -+#ifdef USE_GTK -+ if (f && xg_event_is_for_scrollbar (f, &event)) -+ f = 0; -+#endif -+ - if (f) - { - -@@ -6899,6 +6905,11 @@ handle_one_xevent (dpyinfo, eventp, fini - else - f = x_window_to_frame (dpyinfo, event.xbutton.window); - -+#ifdef USE_GTK -+ if (f && xg_event_is_for_scrollbar (f, &event)) -+ f = 0; -+#endif -+ - if (f) - { - /* Is this in the tool-bar? */ diff --git a/emacs-gtk.patch b/emacs-gtk.patch deleted file mode 100644 index 041df1b..0000000 --- a/emacs-gtk.patch +++ /dev/null @@ -1,41 +0,0 @@ ---- emacs-23.1/configure.in.orig 2009-08-31 00:18:44.000000000 +0100 -+++ emacs-23.1/configure.in 2009-08-31 00:18:47.000000000 +0100 -@@ -1514,7 +1514,7 @@ - HAVE_GTK=no - if test "${with_gtk}" = "yes" || test "$USE_X_TOOLKIT" = "maybe"; then - GLIB_REQUIRED=2.6 -- GTK_REQUIRED=2.6 -+ GTK_REQUIRED=2.17.9 - GTK_MODULES="gtk+-2.0 >= $GTK_REQUIRED glib-2.0 >= $GLIB_REQUIRED" - - dnl Checks for libraries. ---- emacs-23.1/src/xfns.c.orig 2009-08-31 00:03:02.000000000 +0100 -+++ emacs-23.1/src/xfns.c 2009-08-31 00:21:39.000000000 +0100 -@@ -468,8 +468,10 @@ - if (!FRAME_X_P (f) || FRAME_X_DISPLAY_INFO (f) != dpyinfo) - continue; - x = f->output_data.x; -- /* Match if the window is this frame's menubar. */ - #ifdef USE_GTK -+ /* Match if the window is this frame's window (button presses are no longer -+ caught by the menubar) or a menu in the menubar. -+ */ - if (x->menubar_widget) - { - GtkWidget *gwdesc = xg_win_to_widget (dpyinfo->display, wdesc); -@@ -477,13 +479,14 @@ - - BLOCK_INPUT; - if (gwdesc != 0 -- && (gwdesc == x->menubar_widget -+ && (gwdesc == gtk_widget_get_parent (gtk_widget_get_parent (x->menubar_widget)) - || gtk_widget_get_parent (gwdesc) == x->menubar_widget)) - found = 1; - UNBLOCK_INPUT; - if (found) return f; - } - #else -+ /* Match if the window is in this frame's menubar */ - if (x->menubar_widget - && lw_window_is_in_menubar (wdesc, x->menubar_widget)) - return f; diff --git a/emacs.spec b/emacs.spec index b482e3b..01e6e18 100644 --- a/emacs.spec +++ b/emacs.spec @@ -3,12 +3,13 @@ Summary: GNU Emacs text editor Name: emacs Epoch: 1 -Version: 23.1 -Release: 26%{?dist} +Version: 23.1.94 +Release: 1%{?dist} License: GPLv3+ URL: http://www.gnu.org/software/emacs/ Group: Applications/Editors -Source0: ftp://ftp.gnu.org/gnu/emacs/emacs-%{version}.tar.bz2 +#Source0: ftp://ftp.gnu.org/gnu/emacs/emacs-%{version}.tar.bz2 +Source0: ftp://alpha.gnu.org/gnu/emacs/pretest/emacs-%{version}.tar.gz Source1: emacs.desktop Source3: dotemacs.el Source4: site-start.el @@ -26,22 +27,7 @@ Patch0: glibc-open-macro.patch Patch1: rpm-spec-mode.patch Patch2: po-mode-auto-replace-date-71264.patch Patch3: rpm-spec-mode-utc.patch -Patch4: emacs-gtk.patch -Patch5: emacs-23.1-xdg.patch -# Fixed in upstream CVS. -Patch6: emacs-23.1-cpp.patch -Patch7: emacs-23.1-scroll.patch -Patch8: emacs-23.1-indian.patch -# Fixed in upstream CVS -Patch9: emacs-23.1-memmove.patch -# Taken from upstream GIT repository -# http://git.savannah.gnu.org/cgit/emacs.git/diff/src/xsettings.c?id=b3a25b88e82569f916712c635207c8bdd590e13b -# rhbz#517272 -Patch10: emacs-23.1-fontdpi.patch - -# Fix https://bugzilla.redhat.com/show_bug.cgi?id=547566 -# Reported upstream: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=5313 -Patch11: emacs-23.1-hexl-mode.patch +Patch4: emacs-23.1-xdg.patch Buildroot: %{_tmppath}/%{name}-%{version}-root BuildRequires: atk-devel, cairo-devel, desktop-file-utils, freetype-devel, fontconfig-devel, dbus-devel, giflib-devel, glibc-devel, gtk2-devel, libpng-devel @@ -145,14 +131,7 @@ Emacs packages or see some elisp examples. %prep %setup -q %patch0 -p1 -b .glibc-open-macro -%patch4 -p1 -b .gtk -%patch5 -p1 -b .xdg -%patch6 -p1 -%patch7 -p1 -b .scroll -%patch8 -p1 -%patch9 -p1 -b .memmove -%patch10 -p1 -b .fontdpi -%patch11 -p0 +%patch4 -p1 -b .xdg # install rest of site-lisp files ( cd site-lisp @@ -180,7 +159,7 @@ rm -f lisp/play/tetris.el lisp/play/tetris.elc rm -f etc/sex.6 etc/condom.1 etc/celibacy.1 etc/COOKIES etc/future-bug etc/JOKES %endif -%define info_files ada-mode auth autotype calc ccmode cl dbus dired-x ebrowse ediff efaq eintr elisp emacs emacs-mime epa erc eshell eudc flymake forms gnus idlwave info mairix-el message mh-e newsticker nxml-mode org pcl-cvs pgg rcirc reftex remember sasl sc ses sieve smtpmail speedbar tramp url vip viper widget woman +%define info_files ada-mode auth autotype calc ccmode cl dbus dired-x ebrowse ede ediff edt eieio efaq eintr elisp emacs emacs-mime epa erc eshell eudc flymake forms gnus idlwave info mairix-el message mh-e newsticker nxml-mode org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve smtpmail speedbar tramp url vip viper widget woman if test "$(perl -e 'while (<>) { if (/^INFO_FILES/) { s/.*=//; while (s/\\$//) { s/\\//; $_ .= <>; }; s/\s+/ /g; s/^ //; s/ $//; print; exit; } }' Makefile.in)" != "%info_files"; then echo Please update info_files >&2 @@ -432,6 +411,10 @@ alternatives --install %{_bindir}/etags emacs.etags %{_bindir}/etags.emacs 80 \ %dir %{_datadir}/emacs/%{version} %changelog +* Mon Mar 22 2010 Karel Klic - 1:23.1.94-1 +- Update to 23.2 pretest version +- Removed patches applied by upstream + * Fri Mar 19 2010 Jonathan G. Underwood - 1:23.1-26 - Fix broken byte compilation of emacs2.py and emacs3.py with the relevant python binaries - requires turning off brp-python-bytecompile script diff --git a/sources b/sources index a6bc022..28707dc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -17f7f0ba68a0432d58fa69d05a2225be emacs-23.1.tar.bz2 +cacd29cf682e0c2ac8635b86e1526f1b emacs-23.1.94.tar.gz