Update to 23.2 pretest version

This commit is contained in:
Karel Klíč 2010-03-22 10:14:49 +00:00
parent 815d30932e
commit f27bef1c3f
10 changed files with 13 additions and 273 deletions

View File

@ -1 +1 @@
emacs-23.1.tar.bz2
emacs-23.1.94.tar.gz

View File

@ -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

View File

@ -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

View File

@ -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)

View File

@ -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)))

View File

@ -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;
}
}

View File

@ -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? */

View File

@ -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;

View File

@ -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 <kklic@redhat.com> - 1:23.1.94-1
- Update to 23.2 pretest version
- Removed patches applied by upstream
* Fri Mar 19 2010 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 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

View File

@ -1 +1 @@
17f7f0ba68a0432d58fa69d05a2225be emacs-23.1.tar.bz2
cacd29cf682e0c2ac8635b86e1526f1b emacs-23.1.94.tar.gz