new upstream pretest tarball, many changes brought from RHEL/devel

This commit is contained in:
Charles Coldwell 2007-05-22 14:32:18 +00:00
parent 13fe6dae42
commit fc47e9e670
3 changed files with 95 additions and 115 deletions

View File

@ -1,2 +1,2 @@
emacs-22.0.95.tar.gz emacs-22.0.990.tar.gz
php-mode-1.1.0.tgz php-mode-1.2.0.tgz

View File

@ -1,20 +1,24 @@
# This file is encoded in UTF-8. -*- coding: utf-8 -*- # This file is encoded in UTF-8. -*- coding: utf-8 -*-
%define expurgate 0
%define humorless 0
%define paranoid 1
Summary: GNU Emacs text editor Summary: GNU Emacs text editor
Name: emacs Name: emacs
Version: 22.0.95 Version: 22.0.990
Release: 1%{?dist} Release: 1%{?dist}
License: GPL License: GPL
URL: http://www.gnu.org/software/emacs/ URL: http://www.gnu.org/software/emacs/
Group: Applications/Editors Group: Applications/Editors
Source0: ftp://alpha.gnu.org/gnu/emacs/pretest/emacs-%{version}.tar.gz Source0: ftp://alpha.gnu.org/gnu/emacs/pretest/emacs-%{version}.tar.gz
Source1: emacs.desktop Source1: emacs.desktop
Source2: emacs.png Source2: default.el
Source3: dotemacs.el Source3: dotemacs.el
Source4: site-start.el Source4: site-start.el
Source5: http://www.python.org/emacs/python-mode/python-mode.el Source5: http://www.python.org/emacs/python-mode/python-mode.el
Source6: http://cvs.xemacs.org/viewcvs.cgi/XEmacs/packages/xemacs-packages/prog-modes/rpm-spec-mode.el Source6: http://cvs.xemacs.org/viewcvs.cgi/XEmacs/packages/xemacs-packages/prog-modes/rpm-spec-mode.el
Source7: http://download.sourceforge.net/php-mode/php-mode-1.1.0.tgz Source7: http://download.sourceforge.net/php-mode/php-mode-1.2.0.tgz
Source8: php-mode-init.el Source8: php-mode-init.el
Source9: ssl.el Source9: ssl.el
Source10: python-mode-init.el Source10: python-mode-init.el
@ -24,8 +28,6 @@ Source13: focus-init.el
Source14: po-mode.el Source14: po-mode.el
Source15: po-mode-init.el Source15: po-mode-init.el
Source16: po-mode-auto-replace-date-71264.patch Source16: po-mode-auto-replace-date-71264.patch
Source18: default.el
Source19: wrapper
Source20: igrep.el Source20: igrep.el
Source21: igrep-init.el Source21: igrep-init.el
Buildroot: %{_tmppath}/%{name}-%{version}-root Buildroot: %{_tmppath}/%{name}-%{version}-root
@ -37,12 +39,6 @@ Requires: xorg-x11-fonts-ISO8859-1-75dpi
Requires: emacs-common = %{version}-%{release} Requires: emacs-common = %{version}-%{release}
Conflicts: gettext < 0.10.40 Conflicts: gettext < 0.10.40
# C and build patches
# Lisp and doc patches
%define paranoid 1
%description %description
Emacs is a powerful, customizable, self-documenting, modeless text Emacs is a powerful, customizable, self-documenting, modeless text
editor. Emacs contains special code editing features, a scripting editor. Emacs contains special code editing features, a scripting
@ -95,113 +91,72 @@ Emacs packages or see some elisp examples.
%prep %prep
%setup -q %setup -q
%if %{expurgate}
rm -f etc/sex.6 etc/condom.1 etc/celibacy.1
%endif
%if %{humorless}
rm -f etc/COOKIES etc/JOKES etc/future-bug
%endif
%if %{paranoid}
rm -f lisp/play/tetris.el
%endif
# install rest of site-lisp files # install rest of site-lisp files
( cd site-lisp ( cd site-lisp
cp %SOURCE5 %SOURCE6 %SOURCE9 %SOURCE14 %SOURCE20 . cp %SOURCE2 %SOURCE4 %SOURCE5 %SOURCE6 %SOURCE9 %SOURCE14 %SOURCE20 .
tar xfz %SOURCE7
# xemacs compat patch for rpm-spec-mode # xemacs compat patch for rpm-spec-mode
patch < %SOURCE12 patch < %SOURCE12
# fix po-auto-replace-revision-date nil # fix po-auto-replace-revision-date nil
patch < %SOURCE16 ) patch < %SOURCE16 )
%if %{paranoid}
# avoid trademark issues
( cd lisp/play
rm -f tetris.el tetris.elc )
%endif
%build %build
export CFLAGS="-DMAIL_USE_LOCKF -DSYSTEM_PURESIZE_EXTRA=16777216 $RPM_OPT_FLAGS"
# stack-protector causes crashing on i386 (#174730) # First, build the binary without X support
%ifarch %{ix86} %configure --without-x
CFLAGS=`echo $CFLAGS | sed -e "s/ -fstack-protector//"` %__make %{?_smp_mflags} -C src emacs
%endif mv src/emacs-%{version}.1 src/emacs-%{version}-nox
# Now, rebuild with full X support
%configure --with-pop --with-sound --with-gtk %configure --with-pop --with-sound --with-gtk
%__make %{?_smp_mflags} bootstrap
%__make bootstrap
%__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
# make sure patched lisp files get byte-compiled # make sure patched lisp files get byte-compiled
%emacsbatch -f batch-byte-compile site-lisp/*.el src/emacs -batch --no-init-file --no-site-file -f batch-byte-compile site-lisp/*.el
%__make %{?_smp_mflags} -C lisp updates
%install %install
rm -rf $RPM_BUILD_ROOT rm -rf %{buildroot}
%makeinstall
# workaround #101818 (vm/break dumper problem) install -m 0755 src/emacs-%{version}-nox %{buildroot}%{_bindir}
make install \
prefix=%{?buildroot:%{buildroot}}%{_prefix} \
exec_prefix=%{?buildroot:%{buildroot}}%{_exec_prefix} \
bindir=%{?buildroot:%{buildroot}}%{_bindir} \
sbindir=%{?buildroot:%{buildroot}}%{_sbindir} \
sysconfdir=%{?buildroot:%{buildroot}}%{_sysconfdir} \
datadir=%{?buildroot:%{buildroot}}%{_datadir} \
includedir=%{?buildroot:%{buildroot}}%{_includedir} \
libdir=%{?buildroot:%{buildroot}}%{_libdir} \
libexecdir=%{?buildroot:%{buildroot}}%{_libexecdir} \
localstatedir=%{?buildroot:%{buildroot}}%{_localstatedir} \
sharedstatedir=%{?buildroot:%{buildroot}}%{_sharedstatedir} \
mandir=%{?buildroot:%{buildroot}}%{_mandir} \
infodir=%{?buildroot:%{buildroot}}%{_infodir}
# suffix binaries with -x
mv $RPM_BUILD_ROOT%{_bindir}/emacs{,-x}
mv $RPM_BUILD_ROOT%{_bindir}/emacs-%{version}{,-x}
# rebuild without X support
# remove the versioned binary with X support so that we end up with .1 suffix for emacs-nox too
rm src/emacs-%{version}.*
%configure --without-x
%__make %{?_smp_mflags}
# install the emacs without X
install -m 0755 src/emacs-%{version}.1 $RPM_BUILD_ROOT%{_bindir}/emacs-%{version}-nox
ln $RPM_BUILD_ROOT%{_bindir}/emacs{-%{version},}-nox
# install wrapper script
install -m 0755 %SOURCE19 $RPM_BUILD_ROOT%{_bindir}/emacs-%{version}
ln -s %{_bindir}/emacs-%{version} $RPM_BUILD_ROOT%{_bindir}/emacs
# make sure movemail isn't setgid
chmod 755 $RPM_BUILD_ROOT%{emacs_libexecdir}/movemail
%define site_lisp $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp
mkdir -p %{site_lisp}
install -m 0644 %SOURCE4 %{site_lisp}/site-start.el
install -m 0644 %SOURCE18 %{site_lisp}
mv $RPM_BUILD_ROOT%{_bindir}/{etags,etags.emacs}
mv $RPM_BUILD_ROOT%{_mandir}/man1/{ctags.1,gctags.1}
mv $RPM_BUILD_ROOT%{_bindir}/{ctags,gctags}
# GNOME / KDE files
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
install -m 0644 %SOURCE1 $RPM_BUILD_ROOT%{_datadir}/applications/gnu-emacs.desktop
mkdir -p $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -m 0644 %SOURCE2 $RPM_BUILD_ROOT%{_datadir}/pixmaps/
# install site-lisp files # install site-lisp files
%define site_lisp %{buildroot}%{_datadir}/emacs/site-lisp
mkdir -p %{site_lisp}
install -m 0644 site-lisp/*.el{,c} %{site_lisp} install -m 0644 site-lisp/*.el{,c} %{site_lisp}
# alternatives will create a symlink to /usr/bin/emacs-22.0.99
rm %{buildroot}%{_bindir}/emacs
mv %{buildroot}%{_bindir}/{etags,etags.emacs}
mv %{buildroot}%{_mandir}/man1/{ctags.1,gctags.1}
mv %{buildroot}%{_bindir}/{ctags,gctags}
# GNOME / KDE files
mkdir -p %{buildroot}%{_datadir}/applications
install -m 0644 %SOURCE1 %{buildroot}%{_datadir}/applications/gnu-emacs.desktop
mkdir -p %{site_lisp}/site-start.d mkdir -p %{site_lisp}/site-start.d
install -m 0644 $RPM_SOURCE_DIR/*-init.el %{site_lisp}/site-start.d install -m 0644 $RPM_SOURCE_DIR/*-init.el %{site_lisp}/site-start.d
# default initialization file # default initialization file
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/skel mkdir -p %{buildroot}%{_sysconfdir}/skel
install -m 0644 %SOURCE3 $RPM_BUILD_ROOT%{_sysconfdir}/skel/.emacs install -m 0644 %SOURCE3 %{buildroot}%{_sysconfdir}/skel/.emacs
# after everything is installed, remove info dir # after everything is installed, remove info dir
rm -f $RPM_BUILD_ROOT%{_infodir}/dir rm -f %{buildroot}%{_infodir}/dir
rm $RPM_BUILD_ROOT%{_localstatedir}/games/emacs/* rm %{buildroot}%{_localstatedir}/games/emacs/*
# #
# create file lists # create file lists
@ -213,9 +168,7 @@ rm -f *-filelist {common,el}-*-files
find .%{_datadir}/emacs/%{version}/lisp \ find .%{_datadir}/emacs/%{version}/lisp \
.%{_datadir}/emacs/%{version}/leim \ .%{_datadir}/emacs/%{version}/leim \
.%{_datadir}/emacs/site-lisp \( -type f -name '*.elc' -fprint $TOPDIR/common-lisp-none-elc-files \) -o \( -type d -fprintf $TOPDIR/common-lisp-dir-files "%%%%dir %%p\n" \) -o \( -name '*.el.gz' -fprint $TOPDIR/el-bytecomped-files -o -fprint $TOPDIR/common-not-comped-files \) .%{_datadir}/emacs/site-lisp \( -type f -name '*.elc' -fprint $TOPDIR/common-lisp-none-elc-files \) -o \( -type d -fprintf $TOPDIR/common-lisp-dir-files "%%%%dir %%p\n" \) -o \( -name '*.el.gz' -fprint $TOPDIR/el-bytecomped-files -o -fprint $TOPDIR/common-not-comped-files \) )
)
# put the lists together after filtering ./usr to /usr # put the lists together after filtering ./usr to /usr
sed -i -e "s|\.%{_prefix}|%{_prefix}|" *-files sed -i -e "s|\.%{_prefix}|%{_prefix}|" *-files
@ -227,6 +180,26 @@ rm -rf $RPM_BUILD_ROOT
%define info_files ada-mode autotype calc ccmode cl dired-x ebrowse ediff efaq eintr elisp0 elisp1 elisp emacs emacs-mime emacs-xtra erc eshell eudc flymake forms gnus idlwave info message mh-e newsticker org pcl-cvs pgg rcirc reftex sc ses sieve smtpmail speedbar tramp url viper vip widget woman %define info_files ada-mode autotype calc ccmode cl dired-x ebrowse ediff efaq eintr elisp0 elisp1 elisp emacs emacs-mime emacs-xtra erc eshell eudc flymake forms gnus idlwave info message mh-e newsticker org pcl-cvs pgg rcirc reftex sc ses sieve smtpmail speedbar tramp url viper vip widget woman
%post
if [ $1 -ge 1 ] ; then
alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-%{version} 80
fi
%preun
if [ $1 -eq 0 ] ; then
alternatives --remove emacs %{_bindir}/emacs-%{version}
fi
%post nox
if [ $1 -ge 1 ] ; then
alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-%{version}-nox 70
fi
%preun nox
if [ $1 -eq 0 ] ; then
alternatives --remove emacs %{_bindir}/emacs-%{version}-nox
fi
%post common %post common
for f in %{info_files}; do for f in %{info_files}; do
/sbin/install-info %{_infodir}/$f.gz %{_infodir}/dir --section="GNU Emacs" 2> /dev/null || : /sbin/install-info %{_infodir}/$f.gz %{_infodir}/dir --section="GNU Emacs" 2> /dev/null || :
@ -244,37 +217,25 @@ fi
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%{_bindir}/emacs
%{_bindir}/emacs-%{version} %{_bindir}/emacs-%{version}
%{_bindir}/emacs-x
%{_bindir}/emacs-%{version}-x
%dir %{_libexecdir}/emacs
%dir %{_libexecdir}/emacs/%{version}
%dir %{emacs_libexecdir}
%{_datadir}/applications/gnu-emacs.desktop %{_datadir}/applications/gnu-emacs.desktop
%{_datadir}/pixmaps/emacs.png
%files nox %files nox
%defattr(-,root,root) %defattr(-,root,root)
%{_bindir}/emacs
%{_bindir}/emacs-%{version}
%{_bindir}/emacs-nox
%{_bindir}/emacs-%{version}-nox %{_bindir}/emacs-%{version}-nox
%dir %{_libexecdir}/emacs
%dir %{_libexecdir}/emacs/%{version}
%dir %{emacs_libexecdir}
%files -f common-filelist common %files -f common-filelist common
%defattr(-,root,root) %defattr(-,root,root)
%config(noreplace) %{_sysconfdir}/skel/.emacs %config(noreplace) %{_sysconfdir}/skel/.emacs
%doc etc/NEWS BUGS README %doc etc/NEWS BUGS README
%exclude %{_bindir}/emacs %exclude %{_bindir}/emacs-%{version}
%exclude %{_bindir}/emacs-* %exclude %{_bindir}/emacs-%{version}-nox
%{_bindir}/* %{_bindir}/*
%{_mandir}/*/* %{_mandir}/*/*
%{_infodir}/* %{_infodir}/*
%dir %{_datadir}/emacs %dir %{_datadir}/emacs
%dir %{_datadir}/emacs/%{version} %dir %{_datadir}/emacs/%{version}
%dir %{emacs_libexecdir}
%{_datadir}/emacs/%{version}/etc %{_datadir}/emacs/%{version}/etc
%{_datadir}/emacs/%{version}/site-lisp %{_datadir}/emacs/%{version}/site-lisp
%{_libexecdir}/emacs %{_libexecdir}/emacs
@ -287,6 +248,25 @@ fi
%dir %{_datadir}/emacs/%{version} %dir %{_datadir}/emacs/%{version}
%changelog %changelog
* Mon May 21 2007 Chip Coldwell <coldwell@redhat.com> - 22.0.990-1
- new pretest tarball from FSF
- removed Ulrich Drepper's patch to prevent mmapped pages during dumping
removed BuildRequires: glibc >= 2.5.90-22
(bug traced to glibc Resolves: bz239344)
- fix alternatives removal scriptlet (Resolves: bz239745)
* Thu May 17 2007 Chip Coldwell <coldwell@redhat.com> - 22.0.99-4
- format of freed blocks changed between glibc 2.5.90-21 and 2.5.90-22
- BuildRequires: glibc >= 2.5.90-22 (Ulrich Drepper)
* Sun May 13 2007 Chip Coldwell <coldwell@redhat.com> - 22.0.99-2
- prevent mmapped pages during dumping (Ulrich Drepper Resolves: bz239344)
* Tue Apr 24 2007 Chip Coldwell <coldwell@redhat.com> - 22.0.99-1
- new (last?) pretest tarball from FSF
- update to php-mode-1.2.0 (Ville Skyttä Resolves: bz235941)
- use /etc/alternatives instead of wrapper script
* Tue Mar 6 2007 Chip Coldwell <coldwell@redhat.com> - 22.0.95-1 * Tue Mar 6 2007 Chip Coldwell <coldwell@redhat.com> - 22.0.95-1
- new pretest tarball from FSF - new pretest tarball from FSF

View File

@ -1,2 +1,2 @@
07ae2a749fec6decbdf65ae3673d5546 emacs-22.0.95.tar.gz 809ab62a9b9c36a9d685021a907f6022 emacs-22.0.990.tar.gz
aad009f7cff4019aac9a466ec9b55aaf php-mode-1.1.0.tgz c4ee5e37db3921d6a9aa6d7c417ccadb php-mode-1.2.0.tgz