emacsen-common-vl.spec 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. %define name emacsen-common
  2. %define origname emacsen-common
  3. %define version 0.4
  4. %define prereq_ge() %(LC_ALL="C" rpm -q --queryformat 'PreReq:%%{NAME} >= %%{VERSION}' %1| grep -v "is not")
  5. %define _libdir %{_prefix}/lib
  6. Summary: Common facilities for all emacsen.
  7. Name: %{name}
  8. Version: %{version}
  9. Release: 4%{?_dist_release}
  10. License: GPL
  11. Vendor: %{_vendor}
  12. Group: Development/Languages
  13. Source0: http://www.ad-hoc.org/~xtakei/%{origname}/%{origname}-%{version}.tar.gz
  14. Source10: show-vine-default.sh
  15. Patch: emacsen-common-0.4-emacsclient.patch
  16. Packager: Kazuhisa TAKEI <takei@vinelinux.org>
  17. URL: http://vinelinux.org/
  18. BuildRoot: %{_tmppath}/%{name}-root
  19. BuildArch: noarch
  20. PreReq: rpm
  21. PreReq: gzip
  22. Requires: ruby
  23. %prereq_ge alternatives
  24. BuildPreReq: alternatives
  25. %description
  26. This package contains code that is needed by all the (x)emacs packages.
  27. %prep
  28. %setup -q -n %{origname}
  29. %patch -p1
  30. %build
  31. %install
  32. %__rm -rf $RPM_BUILD_ROOT
  33. %__mkdir_p $RPM_BUILD_ROOT/%{_sysconfdir}/emacs
  34. %__mkdir_p $RPM_BUILD_ROOT/%{_var}/lib/%{origname}
  35. %__mkdir_p $RPM_BUILD_ROOT/%{_libdir}/%{origname}/packages/remove
  36. %__mkdir_p $RPM_BUILD_ROOT/%{_libdir}/%{origname}/packages/install
  37. %__mkdir_p $RPM_BUILD_ROOT/%{_datadir}/%{origname}/site-list
  38. %__mkdir_p $RPM_BUILD_ROOT/%{_var}/lib/emacs
  39. echo "/usr/bin/etags
  40. /usr/bin/rcs-checkin
  41. /usr/bin/emacsclient
  42. /usr/bin/gctags
  43. /usr/bin/b2m
  44. /usr/bin/gnuclient
  45. /usr/bin/ootags" > $RPM_BUILD_ROOT%{_var}/lib/emacs/alternative-filelist
  46. %__cp %{SOURCE10} $RPM_BUILD_ROOT/%{_libdir}/%{origname}/
  47. %__cp scripts/emacs-install.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/.
  48. %__cp scripts/emacs-package-install.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/.
  49. %__cp scripts/generate-package-list.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/.
  50. %__cp scripts/installed-flavors $RPM_BUILD_ROOT/%{_var}/lib/emacsen-common/installed-flavors
  51. %__cp scripts/installed-elisp $RPM_BUILD_ROOT/%{_var}/lib/emacsen-common/installed-elisp
  52. %__cp scripts/change-default-flavors.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/.
  53. %__ln_s -f emacs-package-install.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/emacs-package-install
  54. %__ln_s -f emacs-package-install.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/emacs-package-remove
  55. %__ln_s -f emacs-install.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/emacs-install
  56. %__ln_s -f emacs-install.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/emacs-remove
  57. %__ln_s -f generate-package-list.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/generate-package-list
  58. %__ln_s -f generate-package-list.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/remove-package-list
  59. %__ln_s -f generate-package-list.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/generate-flavors-list
  60. %__ln_s -f generate-package-list.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/remove-flavors-list
  61. #%__ln_s -f change-default-flavors.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/change-default-flavor
  62. #%__ln_s -f change-default-flavors.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/reverse-default-flavor
  63. #%__ln_s -f change-default-flavors.rb $RPM_BUILD_ROOT/%{_libdir}/%{origname}/change-temporary-flavor
  64. #%__make install prefix=$RPM_BUILD_ROOT/%{_prefix}
  65. %clean
  66. %__rm -rf ${RPM_BUILD_ROOT}
  67. %triggerpostun -- emacs < 20.7-0vl7.3
  68. if [ -f %{_var}/lib/emacsen-common/doinstaflavor-emacs ]; then
  69. NEWFLAVOR=$(cat %{_var}/lib/emacsen-common/doinstaflavor-emacs)
  70. %_addflavorslist $NEWFLAVOR
  71. export PRIORITY=10
  72. %_installemacs $NEWFLAVOR
  73. unset PRIORITY
  74. %__rm -rf %{_var}/lib/emacsen-common/doinstaflavor-emacs
  75. fi
  76. %triggerpostun -- xemacs < 21.1.14-0vl6
  77. if [ -f %{_var}/lib/emacsen-common/doinstaflavor-xemacs ]; then
  78. NEWFLAVOR=$(cat %{_var}/lib/emacsen-common/doinstaflavor-xemacs)
  79. %_addflavorslist $NEWFLAVOR
  80. export PRIORITY=15
  81. %_installemacs $NEWFLAVOR
  82. unset PRIORITY
  83. %__rm -rf %{_var}/lib/emacsen-common/doinstaflavor-xemacs
  84. fi
  85. %files
  86. %defattr(-, root, root)
  87. %attr(755,root,root) %{_libdir}/emacsen-common/show-vine-default.sh
  88. %attr(755,root,root) %{_libdir}/emacsen-common/emacs-*
  89. %attr(755,root,root) %{_libdir}/emacsen-common/generate-*
  90. %attr(755,root,root) %{_libdir}/emacsen-common/remove-*
  91. %dir %{_libdir}/emacsen-common/packages/remove
  92. %dir %{_libdir}/emacsen-common/packages/install
  93. %dir %{_sysconfdir}/emacs
  94. %dir %{_libdir}/emacsen-common
  95. %dir %{_var}/lib/emacs
  96. %{_var}/lib/emacs/alternative-filelist
  97. %config(noreplace) %{_var}/lib/emacsen-common/installed-flavors
  98. %config(noreplace) %{_var}/lib/emacsen-common/installed-elisp
  99. %changelog
  100. * Sun Dec 05 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.4-4
  101. - added show-vine-default.sh
  102. * Sun Apr 26 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4-3
  103. - created %%{_sysconfdir}/emacs for vine-default
  104. - added in %%files section:
  105. - %%dir %%{_sysconfdir}/emacs
  106. - %%dir %%{_libdir}/emacsen-common
  107. - %%dir %%{_var}/lib/emacs
  108. * Sat Aug 16 2008 Shu KONNO <owa@bg.wakwak.com> 0.4-2vl5
  109. - added %%define _libdir %%{_prefix}/lib
  110. * Fri Aug 15 2008 Shu KONNO <owa@bg.wakwak.com> 0.4-1vl5
  111. - applied new versioning policy
  112. * Thu Mar 23 2006 Daisuke SUZUKI <daisuke@linux.or.jp> 0.4-0vl23
  113. - use %%{_var}/lib instead of %%{_localstatedir}
  114. * Wed Jul 28 2004 Daisuke SUZUKI <daisuke@linux.or.jp> 0.4-0vl22
  115. - add b2m, gnuclient, ootags to emacs's slave
  116. * Wed Jul 28 2004 Daisuke SUZUKI <daisuke@linux.or.jp> 0.4-0vl21
  117. - fix emacsen-install to add emacsclient as emacs's slave
  118. * Thu Mar 4 2004 Daisuke SUZUKI <daisuke@linux.or.jp> 0.4-0vl20
  119. - add PreReq: gzip
  120. * Wed Apr 3 2002 Jun Nishii <jun@vinelinux.org> 0.4-0vl19
  121. - fix typo in xemacs handling of emacs-install
  122. * Sat Mar 23 2002 Kazuhisa TAKEI <takei@vinelinux.org> 0.4-0vl18
  123. - fixed emacs-install.rb
  124. ( don't remove xemacs-alternatives)
  125. * Sat Mar 23 2002 Kazuhisa TAKEI <takei@vinelinux.org> 0.4-0vl17
  126. - add /usr/bin/xemacs to alternatives.
  127. * Thu Mar 7 2002 Kazuhisa TAKEI <takei@vinelinux.org> 0.4-0vl16
  128. - %triggerin -> %triggerpostun
  129. * Wed Mar 6 2002 Daisuke SUZUKI <daisuke@linux.or.jp> 0.4-0vl15
  130. - add prereq rpm >= 3.0.6-0vl16 for emacsen macros
  131. * Thu Dec 6 2001 Kazuhisa TAKEI <takei@vinelinux.org> 0.4-0vl14
  132. - fixed %triggerin
  133. * Thu Nov 8 2001 Kazuhisa TAKEI <takei@vinelinux.org> 0.4-0vl13
  134. - move /tmp -> /var/lib/emacsen-common (IP(package)C file)
  135. - add %triggerin xemacs
  136. * Sat Oct 6 2001 Kazuhisa TAKEI <takei@vinelinux.org> 0.4-0vl1
  137. - fixed emacs-install.rb ( lacking run update-alternatives when emacsen install)
  138. * Sun Aug 12 2001 Kazuhisa TAKEI <takei@vinelinux.org> 0.2-0vl1
  139. - add routine when install and remove .
  140. * Wed Jul 18 2001 Kazuhisa TAKEI <takei@vinelinux.org> 0.1-0vl1
  141. - initial package