auto-import changelog data from emacs-21.3-9.src.rpm
Sat Jan 24 2004 Jens Petersen <petersen@redhat.com> - 21.3-9 - base emacs package now only contains emacs binary built with X support - bring back emacs-nox subpackage (emacs built without X support) (#113001) [suggested by Frank Kruchio] - all the common files required by emacs and emacs-nox are now in emacs-common - emacs no longer obsoletes emacs-nox - update php-mode.el to 1.0.5 - add missing rfc1345.el leim input method - update po-compat.el to version in gettext-0.13.1 - update base package summary - add url for python-mode.el and php-mode.el - gctags is now a symlink to ctags.emacs Wed Jan 14 2004 Jens Petersen <petersen@redhat.com> - 21.3-8 - comment out setting transient-mark-mode in skel .emacs (#102441,#90193) [reported by mal@gromco.com, Jonathan Kamens] - improve lang-coding-systems-init.el to set-language-environment for CJK utf-8 locale too and use utf-8 for default-coding-systems and terminal-coding-system (#111172) [Yoshinori Kuniga] - update rpm-spec-mode.el to newer one in xemacs package cvs (#105888) [Dams] - rename etags to etags.emacs and make etags a symlink to it at install time if it doesn't exist (#92256) [marc_soft@merlins.org] - apply editfns.c-Fformat-multibyte-davej.patch to fix multibyte code typo in Fformat [patch from Dave Jones] - add runtime requirements for XFree86-libs, image libraries, ncurses and zlib - improve -el and -leim package summaries - no longer configure build with redundant --with-gcc Tue Nov 25 2003 Jens Petersen <petersen@redhat.com> - buildrequire autoconf213 (#110741) [reported by mvd@mylinux.com.ua]
This commit is contained in:
		
							parent
							
								
									1a2924eb42
								
							
						
					
					
						commit
						45b61eda1d
					
				| @ -7,4 +7,4 @@ | ||||
| (global-font-lock-mode t) | ||||
| 
 | ||||
| ;; enable visual feedback on selections | ||||
| (setq transient-mark-mode t) | ||||
| ;(setq transient-mark-mode t) | ||||
|  | ||||
							
								
								
									
										210
									
								
								emacs.spec
									
									
									
									
									
								
							
							
						
						
									
										210
									
								
								emacs.spec
									
									
									
									
									
								
							| @ -2,10 +2,10 @@ | ||||
| 
 | ||||
| %define muleucs_ver current | ||||
| 
 | ||||
| Summary: The libraries needed to run the GNU Emacs text editor. | ||||
| Summary: GNU Emacs text editor | ||||
| Name: emacs | ||||
| Version: 21.3 | ||||
| Release: 7 | ||||
| Release: 9 | ||||
| License: GPL | ||||
| URL: http://www.gnu.org/software/emacs/ | ||||
| Group: Applications/Editors | ||||
| @ -15,12 +15,11 @@ Source3: emacs.desktop | ||||
| Source4: emacs.png | ||||
| Source5: dotemacs.el | ||||
| Source6: site-start.el | ||||
| Source7: python-mode.el | ||||
| Source8: http://www.tihlde.org/~stigb/rpm-spec-mode.el | ||||
| #Source9: emacs-asian-0.2.tar.bz2 | ||||
| Source7: http://www.python.org/emacs/python-mode/python-mode.el | ||||
| Source8: http://cvs.xemacs.org/viewcvs.cgi/XEmacs/packages/xemacs-packages/prog-modes/rpm-spec-mode.el | ||||
| Source10: ftp://ftp.gnu.org/gnu/emacs/elisp-manual-21-2.8.tar.bz2 | ||||
| # 1.0.2 - http://prdownloads.sourceforge.net/php-mode/php-mode-102.el | ||||
| Source11: php-mode.el | ||||
| Source11: http://prdownloads.sourceforge.net/php-mode/php-mode.el | ||||
| Source12: php-mode-init.el | ||||
| Source13: ssl.el | ||||
| Source16: python-mode-init.el | ||||
| @ -33,7 +32,7 @@ Source23: po-mode-auto-replace-date-71264.patch | ||||
| Source24: ftp://ftp.m17n.org/pub/mule/Mule-UCS/test/Mule-UCS-%{muleucs_ver}.tar.gz | ||||
| Source25: lang-coding-systems-init.el | ||||
| Source26: default.el | ||||
| #Patch1: emacs-21.2-pop.patch  | ||||
| Source27: rfc1345.el | ||||
| Patch2: emacs-21.2-s390.patch | ||||
| Patch3: emacs-21.2-x86_64.patch | ||||
| Patch4: emacs-21.2-sticky-bit-80049.patch | ||||
| @ -42,13 +41,18 @@ Patch6: emacs-21.2-menubar-games.patch | ||||
| Patch7: emacs-21.2-alloc-blockinput-83600.patch | ||||
| Patch8: browse-url-htmlview-84262.patch | ||||
| Patch9: emacs-21.3-ppc64.patch | ||||
| Patch10: editfns.c-Fformat-multibyte-davej.patch | ||||
| Buildroot: %{_tmppath}/%{name}-%{version}-root | ||||
| Prereq: /sbin/install-info, dev | ||||
| BuildRequires: glibc-devel, gcc, XFree86-devel, bzip2, ncurses-devel, zlib-devel, libpng-devel, libjpeg-devel, libungif-devel, libtiff-devel | ||||
| BuildRequires: glibc-devel, gcc, bzip2, ncurses-devel, zlib-devel, autoconf213 | ||||
| Buildrequires: XFree86-devel, Xaw3d-devel, libpng-devel, libjpeg-devel, libungif-devel, libtiff-devel | ||||
| Requires: ncurses, zlib | ||||
| Requires: XFree86-libs, Xaw3d, libpng, libjpeg, libungif, libtiff | ||||
| %ifarch %{ix86} | ||||
| BuildRequires: setarch | ||||
| %endif | ||||
| Obsoletes: emacs-nox, emacs-X11 | ||||
| Requires: emacs-common = %{version}-%{release} | ||||
| Obsoletes: emacs-X11 | ||||
| Conflicts: gettext < 0.10.40 | ||||
| 
 | ||||
| %description | ||||
| @ -57,10 +61,39 @@ editor. Emacs contains special code editing features, a scripting | ||||
| language (elisp), and the capability to read mail, news, and more | ||||
| without leaving the editor. | ||||
| 
 | ||||
| %package el | ||||
| Summary: The sources for elisp programs included with Emacs. | ||||
| This package provides an emacs binary with support for X windows. | ||||
| 
 | ||||
| %package nox | ||||
| Summary: GNU Emacs text editor without X support | ||||
| Group: Applications/Editors | ||||
| Requires: emacs | ||||
| Requires: ncurses, zlib | ||||
| Requires: emacs-common = %{version}-%{release} | ||||
| 
 | ||||
| %description nox | ||||
| Emacs is a powerful, customizable, self-documenting, modeless text | ||||
| editor. Emacs contains special code editing features, a scripting | ||||
| language (elisp), and the capability to read mail, news, and more | ||||
| without leaving the editor. | ||||
| 
 | ||||
| This package provides an emacs binary with no X windows support for running | ||||
| on a terminal. | ||||
| 
 | ||||
| %package common | ||||
| Summary: Emacs common files | ||||
| Group: Applications/Editors | ||||
| 
 | ||||
| %description common | ||||
| Emacs is a powerful, customizable, self-documenting, modeless text | ||||
| editor. Emacs contains special code editing features, a scripting | ||||
| language (elisp), and the capability to read mail, news, and more | ||||
| without leaving the editor. | ||||
| 
 | ||||
| This package contains all the common files needed by emacs or emacs-nox. | ||||
| 
 | ||||
| %package el | ||||
| Summary: Emacs Lisp source files included with Emacs. | ||||
| Group: Applications/Editors | ||||
| Requires: emacs = %{version} | ||||
| 
 | ||||
| %description el | ||||
| Emacs-el contains the emacs-elisp sources for many of the elisp | ||||
| @ -70,9 +103,9 @@ You need to install emacs-el only if you intend to modify any of the | ||||
| Emacs packages or see some elisp examples. | ||||
| 
 | ||||
| %package leim | ||||
| Summary: Emacs Lisp code for input methods for international characters. | ||||
| Summary: Emacs Lisp files for input methods for international characters. | ||||
| Group: Applications/Editors | ||||
| Requires: emacs | ||||
| Requires: emacs = %{version} | ||||
| 
 | ||||
| %description leim | ||||
| The emacs-leim package contains Emacs Lisp code for input methods for | ||||
| @ -92,6 +125,7 @@ sets are included in this package. | ||||
| # block input in `allocate_vectorlike' (alloc.c) | ||||
| %patch7 -p1 -b .block | ||||
| %patch9 -p1 -b .ppc64 | ||||
| %patch10 -p1 -b .multibyte | ||||
| 
 | ||||
| ## Lisp patches | ||||
| # remove game we can't ship | ||||
| @ -102,9 +136,12 @@ rm lisp/finder-inf.el lisp/play/tetris.el* | ||||
| # patches 2 and 3 touch configure.in | ||||
| autoconf-2.13 | ||||
| 
 | ||||
| # add rfc1345 input method (default for UTF-8 lang env) | ||||
| cp -pi %SOURCE27 leim/quail | ||||
| 
 | ||||
| %build | ||||
| export CFLAGS="-DMAIL_USE_LOCKF $RPM_OPT_FLAGS" | ||||
| %configure --with-gcc --with-pop --with-sound | ||||
| %configure --with-pop --with-sound | ||||
| 
 | ||||
| # workaround #101818 (vm/break dumper problem) | ||||
| %ifarch %{ix86} | ||||
| @ -114,23 +151,25 @@ export CFLAGS="-DMAIL_USE_LOCKF $RPM_OPT_FLAGS" | ||||
| %__make %{?_smp_mflags} | ||||
| # remove versioned file so that we end up with .1 suffix and only one DOC file | ||||
| rm src/emacs-%{version}.* | ||||
| 
 | ||||
| TOPDIR=${PWD} | ||||
| %define emacsbatch ${TOPDIR}/src/emacs -batch --no-init-file --no-site-file | ||||
| 
 | ||||
| # setup site-lisp files | ||||
| cp %SOURCE7 %SOURCE8  %SOURCE11 %SOURCE13 %SOURCE20 %SOURCE21 site-lisp | ||||
| # xemacs compat patch | ||||
| patch -d site-lisp < %SOURCE18 | ||||
| # fix po-auto-replace-revision-date nil | ||||
| patch -d site-lisp < %SOURCE23 | ||||
| 
 | ||||
| # make sure patched lisp files get byte-compiled | ||||
| src/emacs -batch -f batch-byte-recompile-directory lisp | ||||
| %emacsbatch -f batch-byte-recompile-directory lisp | ||||
| %emacsbatch -f batch-byte-compile leim/quail/rfc1345.el site-lisp/*.el | ||||
| 
 | ||||
| %__make %{?_smp_mflags} -C lisp updates | ||||
| 
 | ||||
| %define emacsbatch src/emacs -batch --no-init-file --no-site-file | ||||
| 
 | ||||
| # bytecompile python-mode, ssl, php-mode and rpm-spec-mode | ||||
| cp %SOURCE7 %SOURCE8  %SOURCE11 %SOURCE13 %SOURCE20 %SOURCE21 . | ||||
| 
 | ||||
| # xemacs compat patch | ||||
| patch < %SOURCE18 | ||||
| # fix po-auto-replace-revision-date nil | ||||
| patch < %SOURCE23 | ||||
| %{emacsbatch} -f batch-byte-compile *.el | ||||
| 
 | ||||
| ( cd Mule-UCS-%{muleucs_ver} | ||||
|   ../%{emacsbatch} -q --no-site-file -l mucs-comp.el ) | ||||
|   %{emacsbatch} -l mucs-comp.el ) | ||||
| 
 | ||||
| %install | ||||
| rm -rf $RPM_BUILD_ROOT | ||||
| @ -142,20 +181,29 @@ rm -rf $RPM_BUILD_ROOT | ||||
| 
 | ||||
| %makeinstall | ||||
| 
 | ||||
| # rebuild without X support | ||||
| %configure --without-x | ||||
| %__make %{?_smp_mflags} | ||||
| 
 | ||||
| # install the emacs without X | ||||
| install -m 0755 src/emacs $RPM_BUILD_ROOT%{_bindir}/emacs-nox | ||||
| install -m 0755 src/emacs-%{version}.2 $RPM_BUILD_ROOT%{_bindir}/emacs-nox-%{version} | ||||
| install -m 0644 etc/DOC-%{version}.2 $RPM_BUILD_ROOT%{_datadir}/emacs/%{version}/etc/ | ||||
| install -m 0644 lib-src/fns-%{version}.2.el $RPM_BUILD_ROOT%{_libexecdir}/emacs/%{version}/*/ | ||||
| 
 | ||||
| # make sure movemail isn't setgid | ||||
| chmod 755 $RPM_BUILD_ROOT%{_libexecdir}/emacs/%{version}/*/movemail | ||||
| 
 | ||||
| # # install lisp files for Japanese and other Asian languages | ||||
| # tar jxC $RPM_BUILD_ROOT -f %{SOURCE9} | ||||
| 
 | ||||
| rm -f $RPM_BUILD_ROOT%{_infodir}/dir | ||||
| 
 | ||||
| mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp | ||||
| install -m 0644 %SOURCE6 $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.el | ||||
| install -m 0644 %SOURCE26 $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp | ||||
| 
 | ||||
| mv $RPM_BUILD_ROOT%{_mandir}/man1/ctags.1 $RPM_BUILD_ROOT%{_mandir}/man1/gctags.1 | ||||
| mv $RPM_BUILD_ROOT%{_bindir}/ctags $RPM_BUILD_ROOT%{_bindir}/gctags | ||||
| mv $RPM_BUILD_ROOT%{_bindir}/{etags,etags.emacs} | ||||
| mv $RPM_BUILD_ROOT%{_mandir}/man1/{ctags.1,gctags.1} | ||||
| mv $RPM_BUILD_ROOT%{_bindir}/{ctags,ctags.emacs} | ||||
| ln -s ctags.emacs $RPM_BUILD_ROOT%{_bindir}/gctags | ||||
| 
 | ||||
| # GNOME / KDE files | ||||
| mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications | ||||
| @ -164,7 +212,7 @@ mkdir -p $RPM_BUILD_ROOT%{_datadir}/pixmaps | ||||
| install -m 0644 %SOURCE4 $RPM_BUILD_ROOT%{_datadir}/pixmaps/ | ||||
| 
 | ||||
| # install site-lisp files | ||||
| install -m 0644 *.el *.elc $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/ | ||||
| install -m 0644 site-lisp/*.el{,c} $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/ | ||||
| 
 | ||||
| mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d | ||||
| install -m 0644 $RPM_SOURCE_DIR/*-init.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d | ||||
| @ -176,7 +224,7 @@ install -m 0644 %SOURCE5 $RPM_BUILD_ROOT%{_sysconfdir}/skel/.emacs | ||||
| # elisp reference manual | ||||
| tar jxf %{SOURCE10} | ||||
| ( cd elisp-manual-21-2.8 | ||||
|   install -m 644 elisp elisp-? elisp-?? $RPM_BUILD_ROOT%{_infodir} ) | ||||
|   install -m 644 elisp elisp-* $RPM_BUILD_ROOT%{_infodir} ) | ||||
| 
 | ||||
| ( cd Mule-UCS-%{muleucs_ver}/lisp | ||||
|   mkdir %buildroot%{_datadir}/emacs/site-lisp/Mule-UCS | ||||
| @ -185,19 +233,18 @@ tar jxf %{SOURCE10} | ||||
| # | ||||
| # create file lists | ||||
| # | ||||
| SRC_TOP=$PWD | ||||
| rm -f *-filelist {base,el,leim}-*-files | ||||
| pushd $RPM_BUILD_ROOT | ||||
| rm -f *-filelist {common,el,leim}-*-files | ||||
| ( TOPDIR=${PWD} | ||||
|   cd $RPM_BUILD_ROOT | ||||
| 
 | ||||
| find .%{_datadir}/emacs/%{version}/lisp .%{_datadir}/emacs/site-lisp \( -type f -not -name '*.el' -fprint $SRC_TOP/base-lisp-none-elc-files \) -o \( -type d -fprintf $SRC_TOP/base-lisp-dir-files "%%%%dir %%p\n" \) -o \( -name '*.el' \( -exec test -e '{}'c \; -fprint $SRC_TOP/el-bytecomped-files -o -fprint $SRC_TOP/base-not-comped-files \) \) | ||||
|   find .%{_datadir}/emacs/%{version}/lisp .%{_datadir}/emacs/site-lisp \( -type f -not -name '*.el' -fprint $TOPDIR/common-lisp-none-elc-files \) -o \( -type d -fprintf $TOPDIR/common-lisp-dir-files "%%%%dir %%p\n" \) -o \( -name '*.el' ! -name site-start.el \( -exec test -e '{}'c \; -fprint $TOPDIR/el-bytecomped-files -o -fprint $TOPDIR/common-not-comped-files \) \) | ||||
| 
 | ||||
| find .%{_datadir}/emacs/%{version}/leim \( -name '*.elc' -fprint $SRC_TOP/leim-elc-files \) -o \( -type d -fprintf $SRC_TOP/leim-dir-files "%%%%dir %%p\n" -fprintf $SRC_TOP/el-leim-dir-files "%%%%dir %%p\n" \) -o \( -name '*.el' \( -exec test -e '{}'c \; -fprint $SRC_TOP/el-leim-bytecomped-files -o -fprint $SRC_TOP/leim-not-comped-files \) \) | ||||
| 
 | ||||
| popd | ||||
|   find .%{_datadir}/emacs/%{version}/leim \( -name '*.elc' -fprint $TOPDIR/leim-elc-files \) -o \( -type d -fprintf $TOPDIR/leim-dir-files "%%%%dir %%p\n" -fprintf $TOPDIR/el-leim-dir-files "%%%%dir %%p\n" \) -o \( -name '*.el' \( -exec test -e '{}'c \; -fprint $TOPDIR/el-leim-bytecomped-files -o -fprint $TOPDIR/leim-not-comped-files \) \) | ||||
| ) | ||||
| 
 | ||||
| # put the lists together after filtering  ./usr to /usr | ||||
| perl -pi -e "s|\.%{_prefix}|%{_prefix}|" *-files | ||||
| cat base-*-files > base-filelist | ||||
| cat common-*-files > common-filelist | ||||
| cat el-*-files > el-filelist | ||||
| cat leim-*-files > leim-filelist | ||||
| 
 | ||||
| @ -205,12 +252,15 @@ cat leim-*-files > leim-filelist | ||||
| rm -rf $RPM_BUILD_ROOT | ||||
|     | ||||
| %define info_files ccmode cl dired-x ediff emacs forms gnus info message mh-e reftex sc vip viper widget elisp | ||||
| %post | ||||
| %post common | ||||
| for f in %{info_files}; do | ||||
|   /sbin/install-info %{_infodir}/$f.gz %{_infodir}/dir --section="GNU Emacs" 2> /dev/null || : | ||||
| done | ||||
| 
 | ||||
| %preun | ||||
| # make etags a symlink to etags.emacs if etags doesn't exist | ||||
| [ -e %{_bindir}/etags ] || ln -s etags.emacs %{_bindir}/etags | ||||
| 
 | ||||
| %preun common | ||||
| if [ "$1" = 0 ]; then | ||||
| for f in %{info_files}; do | ||||
|   /sbin/install-info --delete %{_infodir}/$f.gz %{_infodir}/dir \ | ||||
| @ -218,30 +268,44 @@ for f in %{info_files}; do | ||||
| done | ||||
| fi | ||||
| 
 | ||||
| %files | ||||
| %defattr(-,root,root) | ||||
| %{_bindir}/emacs | ||||
| %{_bindir}/emacs-%{version} | ||||
| %dir %{_datadir}/emacs/%{version}/etc | ||||
| %{_datadir}/emacs/%{version}/etc/DOC-%{version}.1 | ||||
| %dir %{_libexecdir}/emacs/%{version}/* | ||||
| %{_libexecdir}/emacs/%{version}/*/fns-%{version}.1.el | ||||
| 
 | ||||
| %files -f base-filelist | ||||
| %files nox | ||||
| %defattr(-,root,root) | ||||
| %{_bindir}/emacs-nox | ||||
| %{_bindir}/emacs-nox-%{version} | ||||
| %dir %{_datadir}/emacs/%{version}/etc | ||||
| %{_datadir}/emacs/%{version}/etc/DOC-%{version}.2 | ||||
| %dir %{_libexecdir}/emacs/%{version}/* | ||||
| %{_libexecdir}/emacs/%{version}/*/fns-%{version}.2.el | ||||
| 
 | ||||
| %files -f common-filelist common | ||||
| %defattr(-,root,root) | ||||
| %config(noreplace) %{_sysconfdir}/skel/.emacs | ||||
| %doc etc/NEWS BUGS README  | ||||
| %exclude %{_bindir}/emacs | ||||
| %exclude %{_bindir}/emacs-%{version} | ||||
| %exclude %{_bindir}/emacs-nox | ||||
| %exclude %{_bindir}/emacs-nox-%{version} | ||||
| %{_bindir}/* | ||||
| %{_mandir}/*/* | ||||
| %{_infodir}/* | ||||
| %dir %{_datadir}/emacs | ||||
| # %dir %{_datadir}/emacs/site-lisp | ||||
| # %{_datadir}/emacs/site-lisp/python-mode.elc | ||||
| # %{_datadir}/emacs/site-lisp/php-mode.elc | ||||
| # %{_datadir}/emacs/site-lisp/po-*.elc | ||||
| # %{_datadir}/emacs/site-lisp/rpm-spec-mode.elc | ||||
| # %{_datadir}/emacs/site-lisp/ssl.elc | ||||
| # %{_datadir}/emacs/site-lisp/subdirs.el | ||||
| # %{_datadir}/emacs/site-lisp/site-start.d/*.el | ||||
| # %{_datadir}/emacs/site-lisp/lang | ||||
| %dir %{_datadir}/emacs/%{version} | ||||
| %{_datadir}/emacs/%{version}/etc | ||||
| %exclude %{_datadir}/emacs/%{version}/etc/DOC-%{version}.* | ||||
| # quieten startup when -leim and -el aren't installed | ||||
| %dir %{_datadir}/emacs/%{version}/leim | ||||
| %{_datadir}/emacs/%{version}/site-lisp | ||||
| %{_libexecdir}/emacs | ||||
| %exclude %{_libexecdir}/emacs/%{version}/*/fns-%{version}.*.el | ||||
| %attr(0644,root,root) %config %{_datadir}/emacs/site-lisp/site-start.el | ||||
| # %dir %{_datadir}/emacs/site-lisp/site-start.d | ||||
| %{_datadir}/applications/gnu-emacs.desktop | ||||
| @ -249,16 +313,42 @@ fi | ||||
| 
 | ||||
| %files -f el-filelist el | ||||
| %defattr(-,root,root) | ||||
| # %{_datadir}/emacs/site-lisp/python-mode.el | ||||
| # %{_datadir}/emacs/site-lisp/php-mode.el | ||||
| # %{_datadir}/emacs/site-lisp/po-*.el | ||||
| # %{_datadir}/emacs/site-lisp/ssl.el | ||||
| # %{_datadir}/emacs/site-lisp/rpm-spec-mode.el | ||||
| 
 | ||||
| %files -f leim-filelist leim | ||||
| %defattr(-,root,root) | ||||
| 
 | ||||
| %changelog | ||||
| * Sat Jan 24 2004 Jens Petersen <petersen@redhat.com> - 21.3-9 | ||||
| - base emacs package now only contains emacs binary built with X support | ||||
| - bring back emacs-nox subpackage (emacs built without X support) (#113001) | ||||
|   [suggested by Frank Kruchio] | ||||
| - all the common files required by emacs and emacs-nox are now in emacs-common | ||||
| - emacs no longer obsoletes emacs-nox | ||||
| - update php-mode.el to 1.0.5 | ||||
| - add missing rfc1345.el leim input method | ||||
| - update po-compat.el to version in gettext-0.13.1 | ||||
| - update base package summary | ||||
| - add url for python-mode.el and php-mode.el | ||||
| - gctags is now a symlink to ctags.emacs | ||||
| 
 | ||||
| * Wed Jan 14 2004 Jens Petersen <petersen@redhat.com> - 21.3-8 | ||||
| - comment out setting transient-mark-mode in skel .emacs (#102441,#90193) | ||||
|   [reported by mal@gromco.com, Jonathan Kamens] | ||||
| - improve lang-coding-systems-init.el to set-language-environment for CJK | ||||
|   utf-8 locale too and use utf-8 for default-coding-systems and | ||||
|   terminal-coding-system (#111172) [Yoshinori Kuniga] | ||||
| - update rpm-spec-mode.el to newer one in xemacs package cvs (#105888) [Dams] | ||||
| - rename etags to etags.emacs and make etags a symlink to it at install time | ||||
|   if it doesn't exist (#92256) [marc_soft@merlins.org] | ||||
| - apply editfns.c-Fformat-multibyte-davej.patch to fix multibyte code typo | ||||
|   in Fformat [patch from Dave Jones] | ||||
| - add runtime requirements for XFree86-libs, image libraries, ncurses and zlib | ||||
| - improve -el and -leim package summaries | ||||
| - no longer configure build with redundant --with-gcc | ||||
| 
 | ||||
| * Tue Nov 25 2003 Jens Petersen <petersen@redhat.com> | ||||
| - buildrequire autoconf213 (#110741) [reported by mvd@mylinux.com.ua] | ||||
| 
 | ||||
| * Mon Oct 27 2003 Jens Petersen <petersen@redhat.com> - 21.3-7 | ||||
| - use "setarch i386" to build on ix86 (#101818) [reported by Michael Redinger] | ||||
| - use __make to %%build and %%install | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								rfc1345.el
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								rfc1345.el
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										291
									
								
								rpm-spec-mode.el
									
									
									
									
									
								
							
							
						
						
									
										291
									
								
								rpm-spec-mode.el
									
									
									
									
									
								
							| @ -3,7 +3,7 @@ | ||||
| ;; Copyright (C) 1997-2002 Stig Bjørlykke, <stigb@tihlde.org> | ||||
| 
 | ||||
| ;; Author:   Stig Bjørlykke, <stigb@tihlde.org> | ||||
| ;; Keywords: unix, languages | ||||
| ;; Keywords: unix, languages, rpm | ||||
| ;; Version:  0.12 | ||||
| 
 | ||||
| ;; This file is part of XEmacs. | ||||
| @ -33,6 +33,7 @@ | ||||
| ;;     Tim Powers <timp@redhat.com> and Trond Eivind Glomsrød | ||||
| ;;          <teg@redhat.com> for Red Hat adaptions and some fixes. | ||||
| ;;     Chmouel Boudjnah <chmouel@mandrakesoft.com> for Mandrake fixes. | ||||
| ;;     Ville Skyttä  <scop@xemacs.org> for some fixes. | ||||
| 
 | ||||
| ;;; ToDo: | ||||
| 
 | ||||
| @ -69,11 +70,6 @@ | ||||
|   :prefix "rpm-spec-" | ||||
|   :group 'languages) | ||||
| 
 | ||||
| (defcustom rpm-spec-build-command "rpmbuild" | ||||
|   "Command for building a RPM package." | ||||
|   :type 'string | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-add-attr nil | ||||
|   "Add \"%attr\" entry for file listings or not." | ||||
|   :type 'boolean | ||||
| @ -95,7 +91,7 @@ timecheck age." | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-buildroot "" | ||||
|   "Override the BuildRoot tag with directory <dir>." | ||||
|   "When building, override the BuildRoot tag with directory <dir>." | ||||
|   :type 'string | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| @ -125,11 +121,20 @@ This is used during Tempo template completion." | ||||
|   :type 'boolean | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (define-obsolete-variable-alias | ||||
|   'rpm-spec-test 'rpm-spec-nobuild) | ||||
| 
 | ||||
| (defcustom rpm-spec-nobuild nil | ||||
|   "Do not execute any build stages.  Useful for testing out spec files." | ||||
|   :type 'boolean | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-quiet nil | ||||
|   "Print as little as possible. | ||||
| Normally only error messages will be displayed." | ||||
|   :type 'boolean | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-sign-gpg nil | ||||
|   "Embed a GPG signature in the package. | ||||
| This signature can be used to verify the integrity and the origin of | ||||
| @ -142,11 +147,6 @@ the package." | ||||
|   :type 'boolean | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-old-rpm nil | ||||
|   "Set if using `rpm' as command for building packages." | ||||
|   :type 'boolean | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (define-obsolete-variable-alias | ||||
|   'rpm-initialize-sections 'rpm-spec-initialize-sections) | ||||
| 
 | ||||
| @ -179,8 +179,50 @@ value returned by function `user-mail-address'." | ||||
|                  string) | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-indent-heading-values nil | ||||
|   "*Indent values for all tags in the \"heading\" of the spec file." | ||||
|   :type 'boolean | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-use-compilation-mode t | ||||
|   "*If non-nil, build in `compilation-mode' if it's available." | ||||
|   :type 'boolean | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-default-release "1" | ||||
|   "*Default value for the Release tag in new spec files." | ||||
|   :type 'string | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-default-epoch nil | ||||
|   "*If non-nil, default value for the Epoch tag in new spec files." | ||||
|   :type '(choice (const :tag "No Epoch" nil) integer) | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-default-buildroot | ||||
|   "%{_tmppath}/%{name}-%{version}-%{release}-root" | ||||
|   "*Default value for the BuildRoot tag in new spec files." | ||||
|   :type 'integer | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-default-build-section "" | ||||
|   "*Default %build section in new spec files." | ||||
|   :type 'string | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-default-install-section "rm -rf $RPM_BUILD_ROOT\n" | ||||
|   "*Default %install section in new spec files." | ||||
|   :type 'string | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defcustom rpm-spec-default-clean-section "rm -rf $RPM_BUILD_ROOT\n" | ||||
|   "*Default %clean section in new spec files." | ||||
|   :type 'string | ||||
|   :group 'rpm-spec) | ||||
| 
 | ||||
| (defgroup rpm-spec-faces nil | ||||
|   "Font lock faces for `rpm-spec-mode'." | ||||
|   :prefix "rpm-spec-" | ||||
|   :group 'rpm-spec | ||||
|   :group 'faces) | ||||
| 
 | ||||
| @ -188,12 +230,12 @@ value returned by function `user-mail-address'." | ||||
| ;; variables used by navigation functions. | ||||
| 
 | ||||
| (defconst rpm-sections | ||||
|   '("preamble" "description" "prep" "setup" "build" "install" "clean" | ||||
|   '("preamble" "description" "prep" "setup" "build" "install" "check" "clean" | ||||
|     "changelog" "files") | ||||
|   "Partial list of section names.") | ||||
| (defvar rpm-section-list | ||||
|   '(("preamble") ("description") ("prep") ("setup") ("build") ("install") | ||||
|     ("clean") ("changelog") ("files")) | ||||
|     ("check") ("clean") ("changelog") ("files")) | ||||
|   "Partial list of section names.") | ||||
| (defconst rpm-scripts | ||||
|   '("pre" "post" "preun" "postun" | ||||
| @ -204,60 +246,67 @@ value returned by function `user-mail-address'." | ||||
|   (eval-when-compile | ||||
|     (concat "^%" | ||||
|             (regexp-opt | ||||
|              ;; From RPM 4.1 sources, file build/parseSpec.c: partList[]. | ||||
|              '("build" "changelog" "clean" "description" "files" "install" | ||||
|                "package" "post" "postun" "pre" "prep" "preun" "trigger" | ||||
|                "triggerin" "triggerpostun" "triggerun" "verifyscript") t) | ||||
|              ;; From RPM 4.2 sources, file build/parseSpec.c: partList[]. | ||||
|              '("build" "changelog" "check" "clean" "description" "files" | ||||
|                "install" "package" "post" "postun" "pre" "prep" "preun" | ||||
|                "trigger" "triggerin" "triggerpostun" "triggerun" | ||||
|                "verifyscript") t) | ||||
|             "\\b")) | ||||
|   "Regular expression to match beginning of a section.") | ||||
| 
 | ||||
| ;;------------------------------------------------------------ | ||||
| 
 | ||||
| (defface rpm-spec-tag-face | ||||
|   '(( ((class color) (background light)) (:foreground "blue") ) | ||||
|   '(( ((class color) (background light)) (:foreground "blue3") ) | ||||
|     ( ((class color) (background dark)) (:foreground "blue") )) | ||||
|   "*The face used for tags." | ||||
|   "*Face for tags." | ||||
|   :group 'rpm-spec-faces) | ||||
| 
 | ||||
| (defface rpm-spec-macro-face | ||||
|   '(( ((class color) (background light)) (:foreground "purple") ) | ||||
|     ( ((class color) (background dark)) (:foreground "yellow") )) | ||||
|   "*The face used for macros." | ||||
|   "*Face for RPM macros and variables." | ||||
|   :group 'rpm-spec-faces) | ||||
| 
 | ||||
| (defface rpm-spec-var-face | ||||
|   '(( ((class color) (background light)) (:foreground "maroon") ) | ||||
|     ( ((class color) (background dark)) (:foreground "maroon") )) | ||||
|   "*The face used for environment variables." | ||||
|   "*Face for environment variables." | ||||
|   :group 'rpm-spec-faces) | ||||
| 
 | ||||
| (defface rpm-spec-doc-face | ||||
|   '(( ((class color) (background light)) (:foreground "magenta") ) | ||||
|   '(( ((class color) (background light)) (:foreground "magenta3") ) | ||||
|     ( ((class color) (background dark)) (:foreground "magenta") )) | ||||
|   "*The face used for document files." | ||||
|   "*Face for %doc entries in %files." | ||||
|   :group 'rpm-spec-faces) | ||||
| 
 | ||||
| (defface rpm-spec-dir-face | ||||
|   '(( ((class color) (background light)) (:foreground "green") ) | ||||
|   '(( ((class color) (background light)) (:foreground "green4") ) | ||||
|     ( ((class color) (background dark)) (:foreground "green") )) | ||||
|   "*The face used for directories." | ||||
|   "*Face for %dir entries in %files." | ||||
|   :group 'rpm-spec-faces) | ||||
| 
 | ||||
| (defface rpm-spec-package-face | ||||
|   '(( ((class color) (background light)) (:foreground "red") ) | ||||
|   '(( ((class color) (background light)) (:foreground "red3") ) | ||||
|     ( ((class color) (background dark)) (:foreground "red") )) | ||||
|   "*The face used for files." | ||||
|   "*Face for package tag." | ||||
|   :group 'rpm-spec-faces) | ||||
| 
 | ||||
| (defface rpm-spec-ghost-face | ||||
|   '(( ((class color) (background light)) (:foreground "red") ) | ||||
|   '(( ((class color) (background light)) (:foreground "gray50") ) | ||||
|     ( ((class color) (background dark)) (:foreground "red") )) | ||||
|   "*The face used for ghost tags." | ||||
|   "*Face for %ghost and %config entries in %files." | ||||
|   :group 'rpm-spec-faces) | ||||
| 
 | ||||
| (defface rpm-spec-section-face | ||||
|   '(( ((class color) (background light)) (:foreground "purple" :underline t) ) | ||||
|     ( ((class color) (background dark)) (:foreground "yellow" :underline t) )) | ||||
|   "*Face for section markers." | ||||
|   :group 'rpm-spec-faces) | ||||
| 
 | ||||
| ;;; GNU emacs font-lock needs these... | ||||
| (defvar rpm-spec-macro-face | ||||
|   'rpm-spec-macro-face "*Face for macros.") | ||||
|   'rpm-spec-macro-face "*Face for RPM macros and variables.") | ||||
| (defvar rpm-spec-var-face | ||||
|   'rpm-spec-var-face "*Face for environment variables.") | ||||
| (defvar rpm-spec-tag-face | ||||
| @ -265,11 +314,13 @@ value returned by function `user-mail-address'." | ||||
| (defvar rpm-spec-package-face | ||||
|   'rpm-spec-package-face "*Face for package tag.") | ||||
| (defvar rpm-spec-dir-face | ||||
|   'rpm-spec-dir-face "*Face for directory entries.") | ||||
|   'rpm-spec-dir-face "*Face for %dir entries in %files.") | ||||
| (defvar rpm-spec-doc-face | ||||
|   'rpm-spec-doc-face "*Face for documentation entries.") | ||||
|   'rpm-spec-doc-face "*Face for %doc entries in %files.") | ||||
| (defvar rpm-spec-ghost-face | ||||
|   'rpm-spec-ghost-face "*Face for \"%ghost\" files.") | ||||
|   'rpm-spec-ghost-face "*Face for %ghost and %config entries in %files.") | ||||
| (defvar rpm-spec-section-face | ||||
|   'rpm-spec-section-face "*Face for section markers.") | ||||
| 
 | ||||
| (defvar rpm-default-umask "-" | ||||
|   "*Default umask for files, specified with \"%attr\".") | ||||
| @ -281,9 +332,11 @@ value returned by function `user-mail-address'." | ||||
| ;;------------------------------------------------------------ | ||||
| 
 | ||||
| (defvar rpm-no-gpg nil "Tell rpm not to sign package.") | ||||
| (defvar rpm-spec-build-command "rpmbuild" "Command to build rpms.") | ||||
| (defvar rpm-spec-nobuild-option "--nobuild" "Option for no build.") | ||||
| 
 | ||||
| (defvar rpm-tags-list | ||||
|   ;; From RPM 4.1 sources, file build/parsePreamble.c: preambleList[].") | ||||
|   ;; From RPM 4.2 sources, file build/parsePreamble.c: preambleList[].") | ||||
|   '(("AutoProv") | ||||
|     ("AutoReq") | ||||
|     ("AutoReqProv") | ||||
| @ -332,7 +385,7 @@ value returned by function `user-mail-address'." | ||||
|   "List of elements that are valid tags.") | ||||
| 
 | ||||
| (defvar rpm-group-tags-list | ||||
|   ;; From RPM 4.1 sources, file GROUPS. | ||||
|   ;; From RPM 4.2 sources, file GROUPS. | ||||
|   '(("Amusements/Games") | ||||
|     ("Amusements/Graphics") | ||||
|     ("Applications/Archiving") | ||||
| @ -421,9 +474,10 @@ value returned by function `user-mail-address'." | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xi" 'rpm-change-timecheck-option) | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xn" 'rpm-toggle-nobuild) | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xo" 'rpm-files-owner) | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xp" 'rpm-change-target-option) | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xr" 'rpm-toggle-rmsource) | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xq" 'rpm-toggle-quiet) | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xs" 'rpm-toggle-short-circuit) | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xt" 'rpm-change-target-option) | ||||
|   (define-key rpm-spec-mode-map "\C-c\C-xu" 'rpm-files-umask) | ||||
|   ;;(define-key rpm-spec-mode-map "\C-q" 'indent-spec-exp) | ||||
|   ;;(define-key rpm-spec-mode-map "\t" 'sh-indent-line) | ||||
| @ -466,6 +520,8 @@ value returned by function `user-mail-address'." | ||||
|                 :style toggle :selected rpm-spec-clean] | ||||
|                ["No build"      rpm-toggle-nobuild | ||||
|                 :style toggle :selected rpm-spec-nobuild] | ||||
|                ["Quiet"         rpm-toggle-quiet | ||||
|                 :style toggle :selected rpm-spec-quiet] | ||||
|                ["GPG sign"      rpm-toggle-sign-gpg | ||||
|                 :style toggle :selected rpm-spec-sign-gpg] | ||||
|                ["Ignore dependencies" rpm-toggle-nodeps | ||||
| @ -488,33 +544,35 @@ value returned by function `user-mail-address'." | ||||
|               ))) | ||||
| 
 | ||||
| (defvar rpm-spec-font-lock-keywords | ||||
|   '( | ||||
|     ("%[a-zA-Z0-9_]+" 0 rpm-spec-macro-face) | ||||
|     ("^\\([a-zA-Z0-9]+\\)\\(\([a-zA-Z0-9,]+\)\\):" | ||||
|   (list | ||||
|    (cons rpm-section-regexp rpm-spec-section-face) | ||||
|    '("%[a-zA-Z0-9_]+" 0 rpm-spec-macro-face) | ||||
|    '("^\\([a-zA-Z0-9]+\\)\\(\([a-zA-Z0-9,_]+\)\\):" | ||||
|      (1 rpm-spec-tag-face) | ||||
|      (2 rpm-spec-ghost-face)) | ||||
|     ("^\\([a-zA-Z0-9]+\\):" 1 rpm-spec-tag-face) | ||||
|     ("%\\(de\\(fine\\|scription\\)\\|files\\|package\\)[ \t]+\\([^-][^ \t\n]*\\)" | ||||
|    '("^\\([a-zA-Z0-9]+\\):" 1 rpm-spec-tag-face) | ||||
|    '("%\\(de\\(fine\\|scription\\)\\|files\\|package\\)[ \t]+\\([^-][^ \t\n]*\\)" | ||||
|      (3 rpm-spec-package-face)) | ||||
|     ("%p\\(ost\\|re\\)\\(un\\)?[ \t]+\\([^-][^ \t\n]*\\)" | ||||
|    '("%p\\(ost\\|re\\)\\(un\\)?[ \t]+\\([^-][^ \t\n]*\\)" | ||||
|      (3 rpm-spec-package-face)) | ||||
|     ("%configure " 0 rpm-spec-macro-face) | ||||
|     ("%dir[ \t]+\\([^ \t\n]+\\)[ \t]*" 1 rpm-spec-dir-face) | ||||
|     ("%doc\\(dir\\)?[ \t]+\\(.*\\)\n" 2 rpm-spec-doc-face) | ||||
|     ("%\\(ghost\\|config\\)[ \t]+\\(.*\\)\n" 2 rpm-spec-ghost-face) | ||||
|     ("^%.+-[a-zA-Z][ \t]+\\([a-zA-Z0-9\.-]+\\)" 1 rpm-spec-doc-face) | ||||
|     ("^\\(.+\\)(\\([a-zA-Z]\\{2,2\\}\\)):" | ||||
|    '("%configure " 0 rpm-spec-macro-face) | ||||
|    '("%dir[ \t]+\\([^ \t\n]+\\)[ \t]*" 1 rpm-spec-dir-face) | ||||
|    '("%doc\\(dir\\)?[ \t]+\\(.*\\)\n" 2 rpm-spec-doc-face) | ||||
|    '("%\\(ghost\\|config\\([ \t]*(.*)\\)?\\)[ \t]+\\(.*\\)\n" | ||||
|      3 rpm-spec-ghost-face) | ||||
|    '("^%.+-[a-zA-Z][ \t]+\\([a-zA-Z0-9\.-]+\\)" 1 rpm-spec-doc-face) | ||||
|    '("^\\(.+\\)(\\([a-zA-Z]\\{2,2\\}\\)):" | ||||
|      (1 rpm-spec-tag-face) | ||||
|      (2 rpm-spec-doc-face)) | ||||
|     ("^\\*\\(.*[0-9] \\)\\(.*\\)\\(<.*>\\)\\(.*\\)\n" | ||||
|    '("^\\*\\(.*[0-9] \\)\\(.*\\)<\\(.*\\)>\\(.*\\)\n" | ||||
|      (1 rpm-spec-dir-face) | ||||
|      (2 rpm-spec-package-face) | ||||
|      (3 rpm-spec-tag-face) | ||||
|      (4 font-lock-warning-face)) | ||||
|     ("%{[^{}]*}" 0 rpm-spec-macro-face) | ||||
|     ("$[a-zA-Z0-9_]+" 0 rpm-spec-var-face) | ||||
|     ("${[a-zA-Z0-9_]+}" 0 rpm-spec-var-face) | ||||
|     ) | ||||
|      (4 rpm-spec-ghost-face)) | ||||
|    '("%{[^{}]*}" 0 rpm-spec-macro-face) | ||||
|    '("$[a-zA-Z0-9_]+" 0 rpm-spec-var-face) | ||||
|    '("${[a-zA-Z0-9_]+}" 0 rpm-spec-var-face) | ||||
|    ) | ||||
|   "Additional expressions to highlight in `rpm-spec-mode'.") | ||||
| 
 | ||||
| ;;Initialize font lock for xemacs | ||||
| @ -526,6 +584,8 @@ value returned by function `user-mail-address'." | ||||
| 
 | ||||
| ;;------------------------------------------------------------ | ||||
| 
 | ||||
| (add-hook 'rpm-spec-mode-new-file-hook 'rpm-spec-initialize) | ||||
| 
 | ||||
| ;;;###autoload | ||||
| (defun rpm-spec-mode () | ||||
|   "Major mode for editing RPM spec files. | ||||
| @ -553,13 +613,13 @@ with no args, if that value is non-nil." | ||||
|                     "Post menu for `rpm-spec-mode'." rpm-spec-mode-menu) | ||||
|   (easy-menu-add rpm-spec-mode-menu) | ||||
| 
 | ||||
|   (if (= (buffer-size) 0) | ||||
|       (rpm-spec-initialize)) | ||||
|   (if (and (= (buffer-size) 0) rpm-spec-initialize-sections) | ||||
|       (run-hooks 'rpm-spec-mode-new-file-hook)) | ||||
| 
 | ||||
|   (if (executable-find "rpmbuild") | ||||
|       (setq rpm-spec-build-command "rpmbuild") | ||||
|     (setq rpm-spec-old-rpm t) | ||||
|     (setq rpm-spec-build-command "rpm")) | ||||
|   (if (not (executable-find "rpmbuild")) | ||||
|       (progn | ||||
| 	(setq rpm-spec-build-command "rpm") | ||||
| 	(setq rpm-spec-nobuild-option "--test"))) | ||||
|    | ||||
|   (make-local-variable 'paragraph-start) | ||||
|   (setq paragraph-start (concat "$\\|" page-delimiter)) | ||||
| @ -608,7 +668,7 @@ with no args, if that value is non-nil." | ||||
|                            (substring (current-time-string) -4) " " | ||||
|                            fullname " <" address ">" | ||||
|                            (and rpm-spec-insert-changelog-version | ||||
|                                 (concat " " (rpm-find-spec-version t)))))) | ||||
|                                 (concat " - " (rpm-find-spec-version t)))))) | ||||
|       (if (not (search-forward string nil t)) | ||||
|           (insert "\n" string "\n") | ||||
|         (forward-line 2)) | ||||
| @ -878,6 +938,9 @@ leave point at previous location." | ||||
| 
 | ||||
| (defun rpm-build (buildoptions) | ||||
|   "Build this RPM package." | ||||
|   (if (and (buffer-modified-p) | ||||
|            (y-or-n-p (format "Buffer %s modified, save it? " (buffer-name)))) | ||||
|       (save-buffer)) | ||||
|   (setq rpm-buffer-name | ||||
|         (concat "*" rpm-spec-build-command " " buildoptions " " | ||||
|                 (file-name-nondirectory buffer-file-name) "*")) | ||||
| @ -906,18 +969,23 @@ leave point at previous location." | ||||
|       (setq buildoptions (cons "--target" (cons rpm-spec-target | ||||
|                                                 buildoptions)))) | ||||
|   (if rpm-spec-nobuild | ||||
|       (setq buildoptions (cons (if rpm-spec-old-rpm "--test" "--nobuild") | ||||
| 			       buildoptions))) | ||||
|       (setq buildoptions (cons rpm-spec-nobuild-option buildoptions))) | ||||
|   (if rpm-spec-quiet | ||||
|       (setq buildoptions (cons "--quiet" buildoptions))) | ||||
|   (if rpm-spec-nodeps | ||||
|       (setq buildoptions (cons "--nodeps" buildoptions))) | ||||
|   (if (and rpm-spec-sign-gpg (not rpm-no-gpg)) | ||||
|       (setq buildoptions (cons "--sign" buildoptions))) | ||||
|   (save-excursion | ||||
|     (set-buffer (get-buffer rpm-buffer-name)) | ||||
|     (and rpm-spec-use-compilation-mode | ||||
|          (fboundp 'compilation-mode) | ||||
|          (compilation-mode)) | ||||
|     (goto-char (point-max))) | ||||
|   (let ((process | ||||
|          (apply 'start-process rpm-spec-build-command rpm-buffer-name | ||||
| 		rpm-spec-build-command buildoptions))) | ||||
|   (let* ((process-environment (cons "EMACS=t" process-environment)) | ||||
|          (process | ||||
|           (apply 'start-process rpm-spec-build-command rpm-buffer-name | ||||
|                  rpm-spec-build-command buildoptions))) | ||||
|     (if (and rpm-spec-sign-gpg (not rpm-no-gpg)) | ||||
|         (let ((rpm-passwd-cache (read-passwd "GPG passphrase: "))) | ||||
|           (process-send-string process (concat rpm-passwd-cache "\n")))) | ||||
| @ -1022,9 +1090,17 @@ command." | ||||
|   (interactive "p") | ||||
|   (setq rpm-spec-nobuild (not rpm-spec-nobuild)) | ||||
|   (rpm-update-mode-name) | ||||
|   (message (concat "Turned `" (if rpm-spec-old-rpm "--test" "--nobuild") "' " | ||||
|   (message (concat "Turned `" rpm-spec-nobuild-option "' " | ||||
|                    (if rpm-spec-nobuild "on" "off") "."))) | ||||
| 
 | ||||
| (defun rpm-toggle-quiet (&optional arg) | ||||
|   "Toggle `rpm-spec-quiet'." | ||||
|   (interactive "p") | ||||
|   (setq rpm-spec-quiet (not rpm-spec-quiet)) | ||||
|   (rpm-update-mode-name) | ||||
|   (message (concat "Turned `--quiet' " | ||||
|                    (if rpm-spec-quiet "on" "off") "."))) | ||||
| 
 | ||||
| (defun rpm-toggle-sign-gpg (&optional arg) | ||||
|   "Toggle `rpm-spec-sign-gpg'." | ||||
|   (interactive "p") | ||||
| @ -1059,6 +1135,7 @@ command." | ||||
|                       (if rpm-spec-nobuild       "N") | ||||
|                       (if rpm-spec-rmsource      "R") | ||||
|                       (if rpm-spec-short-circuit "S") | ||||
| 		      (if rpm-spec-quiet         "Q") | ||||
|                       )) | ||||
|   (if (not (equal modes "")) | ||||
|       (setq mode-name (concat mode-name ":" modes)))) | ||||
| @ -1128,14 +1205,19 @@ See `search-forward-regexp'." | ||||
|                (search-forward-regexp (concat | ||||
|                                        field ":[ \t]*\\(.*?\\)[ \t]*$") max) | ||||
|                (match-string 1)))) | ||||
|         (if (string-match "%{?\\([^}]*\\)}?$" str) | ||||
|             (progn | ||||
|               (goto-char (point-min)) | ||||
|               (search-forward-regexp | ||||
|                (concat "%define[ \t]+" (substring str (match-beginning 1) | ||||
|                                                   (match-end 1)) | ||||
|                        "[ \t]+\\(.*\\)")) | ||||
|               (match-string 1)) | ||||
|         (if (string-match "\\(%{?\\)\\([a-zA-Z0-9_]*\\)\\(}?\\)" str) | ||||
|             (let ((end-string (substring str (match-end 3)))) | ||||
|               (concat (substring str 0 (match-beginning 1)) | ||||
|                       (progn | ||||
|                         (goto-char (point-min)) | ||||
|                         (search-forward-regexp | ||||
|                          (concat "%define[ \t]+" | ||||
|                                  (substring str | ||||
|                                             (match-beginning 2) | ||||
|                                             (match-end 2)) | ||||
|                                  "[ \t]+\\(.*\\)")) | ||||
|                         (match-string 1)) | ||||
|                       end-string)) | ||||
|           str))))) | ||||
| 
 | ||||
| (defun rpm-find-spec-version (&optional with-epoch) | ||||
| @ -1182,7 +1264,7 @@ if one is present in the file." | ||||
| 
 | ||||
| (defun rpm-spec-initialize () | ||||
|   "Create a default spec file if one does not exist or is empty." | ||||
|   (let (file name version (release "1")) | ||||
|   (let (file name version (release rpm-spec-default-release)) | ||||
|     (setq file (if (buffer-file-name) | ||||
|                    (file-name-nondirectory (buffer-file-name)) | ||||
|                  (buffer-name))) | ||||
| @ -1197,30 +1279,52 @@ if one is present in the file." | ||||
|      ((eq (string-match "\\(.*\\).spec" file) 0) | ||||
|       (setq name (match-string 1 file)))) | ||||
| 
 | ||||
|     (if rpm-spec-indent-heading-values | ||||
| 	(insert | ||||
| 	 "Summary:        " | ||||
| 	 "\nName:           " (or name "") | ||||
| 	 "\nVersion:        " (or version "") | ||||
| 	 "\nRelease:        " (or release "") | ||||
| 	 (if rpm-spec-default-epoch | ||||
| 	     (concat "\nEpoch:          " | ||||
| 		     (int-to-string rpm-spec-default-epoch)) | ||||
| 	   "") | ||||
| 	 "\nLicense:        " | ||||
| 	 "\nGroup:          " | ||||
| 	 "\nURL:            " | ||||
| 	 "\nSource0:        %{name}-%{version}.tar.gz" | ||||
| 	 "\nBuildRoot:      " rpm-spec-default-buildroot) | ||||
|       (insert | ||||
|        "Summary: " | ||||
|        "\nName: " (or name "") | ||||
|        "\nVersion: " (or version "") | ||||
|        "\nRelease: " (or release "") | ||||
|        (if rpm-spec-default-epoch | ||||
| 	   (concat "\nEpoch: " (int-to-string rpm-spec-default-epoch)) | ||||
| 	 "") | ||||
|        "\nLicense: " | ||||
|        "\nGroup: " | ||||
|        "\nURL: " | ||||
|        "\nSource0: %{name}-%{version}.tar.gz" | ||||
|        "\nBuildRoot: " rpm-spec-default-buildroot)) | ||||
| 
 | ||||
|     (insert | ||||
|      "Summary: " | ||||
|      "\nName: " (or name "") | ||||
|      "\nVersion: " (or version "") | ||||
|      "\nRelease: " (or release "") | ||||
|      "\nLicense: " | ||||
|      "\nGroup: " | ||||
|      "\nURL: " | ||||
|      "\nSource0: %{name}-%{version}.tar.gz" | ||||
|      "\nBuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot" | ||||
|      "\n\n%description\n" | ||||
|      "\n%prep" | ||||
|      "\n%setup -q" | ||||
|      "\n\n%build" | ||||
|      "\n\n%install" | ||||
|      "\nrm -rf $RPM_BUILD_ROOT" | ||||
|      "\n\n%clean" | ||||
|      "\nrm -rf $RPM_BUILD_ROOT" | ||||
|      "\n\n%build\n" | ||||
|      (or rpm-spec-default-build-section "") | ||||
|      "\n%install\n" | ||||
|      (or rpm-spec-default-install-section "") | ||||
|      "\n%clean\n" | ||||
|      (or rpm-spec-default-clean-section "") | ||||
|      "\n\n%files" | ||||
|      "\n%defattr(-,root,root,-)" | ||||
|      "\n%doc\n" | ||||
|      "\n\n%changelog\n") | ||||
| 
 | ||||
|     (rpm-add-change-log-entry "Initial build.\n"))) | ||||
|     (end-of-line 1) | ||||
|     (rpm-add-change-log-entry "Initial build."))) | ||||
| 
 | ||||
| ;;------------------------------------------------------------ | ||||
| 
 | ||||
| @ -1232,8 +1336,7 @@ if one is present in the file." | ||||
|            rpm-spec-mode-version | ||||
|            " by Stig Bjørlykke, <stigb@tihlde.org>"))) | ||||
| 
 | ||||
| ;;;###autoload | ||||
| (add-to-list 'auto-mode-alist '("\\.spec$" . rpm-spec-mode)) | ||||
| ;;;###autoload(add-to-list 'auto-mode-alist '("\\.spec\\(\\.in\\)?$" . rpm-spec-mode)) | ||||
| 
 | ||||
| (provide 'rpm-spec-mode) | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user