rpms/xemacs/devel xemacs-21.5.28-xemacs-base-autoloads.patch, NONE, 1.1 xemacs.spec, 1.44, 1.45
Ville Skyttä
scop at fedoraproject.org
Thu Feb 26 20:56:32 UTC 2009
Author: scop
Update of /cvs/pkgs/rpms/xemacs/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv22469
Modified Files:
xemacs.spec
Added Files:
xemacs-21.5.28-xemacs-base-autoloads.patch
Log Message:
* Thu Feb 26 2009 Ville Skyttä <ville.skytta at iki.fi> - 21.5.28-11
- Apply upstream autoload changes to be able to build recent XEmacs packages.
- Make support for XIM optional at build time, still enabled by default.
- Drop support for building without stack protector compiler flags.
- Make -info subpackage noarch when built for Fedora >= 10.
- Improve icon cache and desktop database refresh scriptlets.
- Use %global instead of %define.
xemacs-21.5.28-xemacs-base-autoloads.patch:
--- NEW FILE xemacs-21.5.28-xemacs-base-autoloads.patch ---
diff -up xemacs-21.5.28/lisp/autoload.el~ xemacs-21.5.28/lisp/autoload.el
--- xemacs-21.5.28/lisp/autoload.el~ 2006-05-30 00:25:49.000000000 +0300
+++ xemacs-21.5.28/lisp/autoload.el 2009-02-22 23:36:20.000000000 +0200
@@ -226,6 +226,41 @@ the section of autoloads for a file.")
;; Parsing the source file text.
;; Autoloads in C source differ from those in Lisp source.
+; Add operator definitions to autoload-operators.el in the xemacs-base
+; package.
+(ignore-errors (require 'autoload-operators))
+
+; As autoload-operators is new, provide stopgap measure for a while.
+(if (not (boundp 'autoload-make-autoload-operators))
+ (progn
+ (defvar autoload-make-autoload-operators
+ '(defun define-skeleton defmacro define-derived-mode define-generic-mode
+ easy-mmode-define-minor-mode easy-mmode-define-global-mode
+ define-minor-mode defun* defmacro*)
+ "`defun'-like operators that use `autoload' to load the library.")
+
+ (defvar autoload-make-autoload-complex-operators
+ '(easy-mmode-define-minor-mode easy-mmode-define-global-mode
+ define-minor-mode)
+ "`defun'-like operators to macroexpand before using `autoload'.")
+
+ (put 'autoload 'doc-string-elt 3)
+ (put 'defun 'doc-string-elt 3)
+ (put 'defun* 'doc-string-elt 3)
+ (put 'defvar 'doc-string-elt 3)
+ (put 'defcustom 'doc-string-elt 3)
+ (put 'defconst 'doc-string-elt 3)
+ (put 'defmacro 'doc-string-elt 3)
+ (put 'defmacro* 'doc-string-elt 3)
+ (put 'defsubst 'doc-string-elt 3)
+ (put 'define-skeleton 'doc-string-elt 2)
+ (put 'define-derived-mode 'doc-string-elt 4)
+ (put 'easy-mmode-define-minor-mode 'doc-string-elt 2)
+ (put 'define-minor-mode 'doc-string-elt 2)
+ (put 'define-generic-mode 'doc-string-elt 7)
+ ;; defin-global-mode has no explicit docstring.
+ (put 'easy-mmode-define-global-mode 'doc-string-elt 1000)))
+
(defun make-autoload (form file)
"Turn FORM into an autoload or defvar for source file FILE.
Returns nil if FORM is not a special autoload form (i.e. a function definition
@@ -233,8 +268,7 @@ or macro definition or a defcustom)."
(let ((car (car-safe form)) expand)
(cond
;; For complex cases, try again on the macro-expansion.
- ((and (memq car '(easy-mmode-define-global-mode
- easy-mmode-define-minor-mode define-minor-mode))
+ ((and (memq car autoload-make-autoload-complex-operators)
(setq expand (let ((load-file-name file)) (macroexpand form)))
(eq (car expand) 'progn)
(memq :autoload-end expand))
@@ -246,10 +280,7 @@ or macro definition or a defcustom)."
(cdr expand)))))
;; For special function-like operators, use the `autoload' function.
- ((memq car '(defun define-skeleton defmacro define-derived-mode
- define-generic-mode easy-mmode-define-minor-mode
- easy-mmode-define-global-mode
- define-minor-mode defun* defmacro*))
+ ((memq car autoload-make-autoload-operators)
(let* ((macrop (memq car '(defmacro defmacro*)))
(name (nth 1 form))
(body (nthcdr (get car 'doc-string-elt) form))
@@ -513,7 +546,8 @@ Updates AUTOLOADS-DONE and returns the n
(let ((begin (point)))
(forward-sexp)
(forward-line 1)
- (princ (buffer-substring begin (point)) outbuf)))
+ (princ (buffer-substring begin (point)) outbuf))
+ (setq autoloads-done (cons '<immediate> autoloads-done)))
(t
(princ (buffer-substring
(progn
@@ -767,41 +801,6 @@ at the beginning of lines and ^L charact
(insert "\\^L")))
(goto-char p2))))))))
-;;; Forms which have doc-strings which should be printed specially.
-;;; A doc-string-elt property of ELT says that (nth ELT FORM) is
-;;; the doc-string in FORM.
-;;;
-;;; There used to be the following note here:
-;;; ;;; Note: defconst and defvar should NOT be marked in this way.
-;;; ;;; We don't want to produce defconsts and defvars that
-;;; ;;; make-docfile can grok, because then it would grok them twice,
-;;; ;;; once in foo.el (where they are given with ;;;###autoload) and
-;;; ;;; once in loaddefs.el.
-;;;
-;;; Counter-note: Yes, they should be marked in this way.
-;;; make-docfile only processes those files that are loaded into the
-;;; dumped Emacs, and those files should never have anything
-;;; autoloaded here. The above-feared problem only occurs with files
-;;; which have autoloaded entries *and* are processed by make-docfile;
-;;; there should be no such files.
-
-(put 'autoload 'doc-string-elt 3)
-(put 'defun 'doc-string-elt 3)
-(put 'defun* 'doc-string-elt 3)
-(put 'defvar 'doc-string-elt 3)
-(put 'defcustom 'doc-string-elt 3)
-(put 'defconst 'doc-string-elt 3)
-(put 'defmacro 'doc-string-elt 3)
-(put 'defmacro* 'doc-string-elt 3)
-(put 'defsubst 'doc-string-elt 3)
-(put 'define-skeleton 'doc-string-elt 2)
-(put 'define-derived-mode 'doc-string-elt 4)
-(put 'easy-mmode-define-minor-mode 'doc-string-elt 2)
-(put 'define-minor-mode 'doc-string-elt 2)
-(put 'define-generic-mode 'doc-string-elt 7)
-;; defin-global-mode has no explicit docstring.
-(put 'easy-mmode-define-global-mode 'doc-string-elt 1000)
-
(defun autoload-trim-file-name (file)
"Returns relative pathname of FILE including the last directory.
Index: xemacs.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xemacs/devel/xemacs.spec,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -r1.44 -r1.45
--- xemacs.spec 26 Feb 2009 08:26:41 -0000 1.44
+++ xemacs.spec 26 Feb 2009 20:56:01 -0000 1.45
@@ -8,19 +8,16 @@
%bcond_with xft
%bcond_without mule
%bcond_without nox
-%bcond_without stackprot
+%bcond_without xim
%ifarch ia64
%bcond_with modules
%else
%bcond_without modules
%endif
-%define xver %(echo %{version} | sed -e 's/\\.\\([0-9]\\+\\)$/-b\\1/')
-%define xbuild %(echo %{_build} | sed -e 's/^\\([^-]*-[^-]*-[^-]*\\).*/\\1/')
-
Name: xemacs
Version: 21.5.28
-Release: 10%{?dist}
+Release: 11%{?dist}
Summary: Different version of Emacs
Group: Applications/Editors
@@ -47,6 +44,8 @@
Patch10: %{name}-21.5.28-revert-modified-245017.patch
Patch11: %{name}-21.5.28-autoconf262-449626.patch
Patch12: %{name}-21.5.28-3d-athena.patch
+# From upstream hg
+Patch13: %{name}-21.5.28-xemacs-base-autoloads.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -94,6 +93,9 @@
Requires(post): coreutils
Provides: xemacs(bin) = %{version}-%{release}
+%global xver %(echo %{version} | sed -e 's/\\.\\([0-9]\\+\\)$/-b\\1/')
+%global xbuild %(echo %{_build} | sed -e 's/^\\([^-]*-[^-]*-[^-]*\\).*/\\1/')
+
%description
XEmacs is a highly customizable open source text editor and
application development system. It is protected under the GNU General
@@ -155,6 +157,9 @@
%package info
Summary: XEmacs documentation in GNU texinfo format
Group: Documentation
+%if 0%{?fedora} >= 10
+BuildArch: noarch
+%endif
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
@@ -205,6 +210,7 @@
%patch10 -p0
%patch11 -p1
%patch12 -p1
+%patch13 -p1
sed -i -e 's/"lib"/"%{_lib}"/' lisp/setup-paths.el
@@ -217,10 +223,6 @@
%build
CFLAGS="${CFLAGS:-$RPM_OPT_FLAGS -fno-strict-aliasing}"
-%if ! %{with stackprot}
-CFLAGS="$(echo $CFLAGS | sed -e 's/-fstack-protector\s*//g')"
-CFLAGS="$(echo $CFLAGS | sed -e 's/--param=ssp-buffer-size=[0-9]\+\s*//')"
-%endif
%if %{with gtk}
CFLAGS="$CFLAGS $(pkg-config libglade --cflags)"
%endif
@@ -296,7 +298,7 @@
--with-widgets=athena \
--with-dialogs=athena \
--with-scrollbars=lucid \
- --with-xim=xlib \
+ --with-xim=%{?with_xim:xlib}%{!?with_xim:no} \
%endif
%if ! %{with wnn}
--without-wnn
@@ -426,22 +428,22 @@
%{_sbindir}/alternatives --install %{_bindir}/xemacs xemacs \
%{_bindir}/xemacs-%{xver} 80
touch --no-create %{_datadir}/icons/hicolor &>/dev/null
-if [ -x %{_bindir}/gtk-update-icon-cache ] ; then
- %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
-fi
-update-desktop-database -q %{_datadir}/applications 2>/dev/null
:
%postun
[ -e %{_bindir}/xemacs-%{xver} ] || \
%{_sbindir}/alternatives --remove xemacs %{_bindir}/xemacs-%{xver}
-touch --no-create %{_datadir}/icons/hicolor &>/dev/null
-if [ -x %{_bindir}/gtk-update-icon-cache ] ; then
- %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor
+if [ $1 -eq 0 ] ; then
+ update-desktop-database %{_datadir}/applications &>/dev/null
+ touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null
fi
-update-desktop-database -q %{_datadir}/applications 2>/dev/null
:
+%posttrans
+update-desktop-database %{_datadir}/applications &>/dev/null
+gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+
%post nox
# rm because alternatives won't overwrite pre-alternatives symlink, bug?
rm -f %{_bindir}/xemacs && \
@@ -545,6 +547,14 @@
%changelog
+* Thu Feb 26 2009 Ville Skyttä <ville.skytta at iki.fi> - 21.5.28-11
+- Apply upstream autoload changes to be able to build recent XEmacs packages.
+- Make support for XIM optional at build time, still enabled by default.
+- Drop support for building without stack protector compiler flags.
+- Make -info subpackage noarch when built for Fedora >= 10.
+- Improve icon cache and desktop database refresh scriptlets.
+- Use %%global instead of %%define.
+
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 21.5.28-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
More information about the fedora-extras-commits
mailing list