/redhat/slony-I.specfile

https://github.com/azlev/slony1-engine · Unknown · 184 lines · 145 code · 39 blank · 0 comment · 0 complexity · c702b4b1a465ca195051e671c4246ae6 MD5 · raw file

  1. %{!?perltools:%define perltools 1}
  2. %{!?docs:%define docs 0}
  3. %{?buildrhel3:%define kerbdir /usr/kerberos}
  4. %{!?kerbdir:%define kerbdir "/usr"}
  5. %define pg_version %(rpm -q --queryformat '%{VERSION}' postgresql-devel)
  6. Summary: A "master to multiple slaves" replication system with cascading and failover.
  7. Name: slony1
  8. Version: 1.1.1
  9. Release: 1_PG%{pg_version}
  10. License: Berkeley/BSD
  11. Group: Applications/Databases
  12. URL: http://slony.info/
  13. Packager: Devrim Gunduz <devrim@PostgreSQL.org>
  14. Source0: slony1-%{version}.tar.bz2
  15. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
  16. BuildRequires: postgresql-devel
  17. Requires: postgresql-server = %{pg_version}
  18. %if %docs
  19. BuildRequires: docbook-style-dsssl
  20. %endif
  21. %define prefix /usr
  22. %description
  23. Slony-I will be a "master to multiple slaves" replication
  24. system with cascading and failover.
  25. The big picture for the development of Slony-I is to build
  26. a master-slave system that includes all features and
  27. capabilities needed to replicate large databases to a
  28. reasonably limited number of slave systems.
  29. Slony-I is planned as a system for data centers and backup
  30. sites, where the normal mode of operation is that all nodes
  31. are available
  32. %if %docs
  33. %package docs
  34. Summary: Documentation for Slony-I
  35. Group: Applications/Databases
  36. Prereq: postgresql-slony1-engine-HEAD_20050917-%{release}
  37. %description docs
  38. The postgresql-slony1-engine-docs package includes some documentation for Slony-I.
  39. %endif
  40. %prep
  41. %setup -q -n slony1-%{version}
  42. %build
  43. CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS
  44. CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS
  45. CPPFLAGS="${CPPFLAGS} -I%{_includedir}/et -I%{kerbdir}/include" ; export CPPFLAGS
  46. CFLAGS="${CFLAGS} -I%{_includedir}/et -I%{kerbdir}/include" ; export CFLAGS
  47. # Strip out -ffast-math from CFLAGS....
  48. CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100`
  49. export LIBNAME=%{_lib}
  50. ./configure --includedir %{_includedir}/pgsql \
  51. %if %perltools
  52. --with-perltools=%{_bindir} \
  53. %endif
  54. %if %docs
  55. --with-docs --with-docdir=/usr/share/doc \
  56. %endif
  57. --datadir %{_datadir}/pgsql --sysconfdir=/etc --with-pglibdir=%{_libdir}/pgsql
  58. autoconf
  59. make
  60. %if %perltools
  61. cd tools
  62. make
  63. %endif
  64. %install
  65. rm -rf $RPM_BUILD_ROOT
  66. install -d $RPM_BUILD_ROOT%{_bindir}
  67. install -d $RPM_BUILD_ROOT%{_sysconfdir}
  68. install -d $RPM_BUILD_ROOT%{_datadir}/pgsql/
  69. install -d $RPM_BUILD_ROOT%{_libdir}/pgsql/
  70. make DESTDIR=$RPM_BUILD_ROOT install
  71. install -m 0755 src/backend/slony1_funcs.so $RPM_BUILD_ROOT%{_libdir}/pgsql/slony1_funcs.so
  72. install -m 0755 src/backend/*.sql $RPM_BUILD_ROOT%{_datadir}/pgsql/
  73. install -m 0755 tools/*.sh $RPM_BUILD_ROOT%{_bindir}/
  74. install -m 0755 share/slon.conf-sample $RPM_BUILD_ROOT%{_sysconfdir}/slon.conf
  75. %if %perltools
  76. cd tools
  77. make DESTDIR=$RPM_BUILD_ROOT install
  78. /bin/rm -rf altperl/*.pl altperl/ToDo altperl/README altperl/Makefile altperl/CVS
  79. install -m 0755 altperl/slon_tools.conf-sample $RPM_BUILD_ROOT%{_sysconfdir}/slon_tools.conf
  80. install -m 0755 altperl/* $RPM_BUILD_ROOT%{_bindir}/
  81. install -m 0755 altperl/slon-tools $RPM_BUILD_ROOT%{_libdir}/pgsql/slon-tools.pm
  82. /bin/rm -f $RPM_BUILD_ROOT%{_sysconfdir}/slon_tools.conf-sample
  83. /bin/rm -f $RPM_BUILD_ROOT%{_bindir}/slon_tools.conf-sample
  84. /bin/rm -f $RPM_BUILD_ROOT%{_libdir}/slon-tools.pm
  85. /bin/rm -f $RPM_BUILD_ROOT%{_bindir}/slon-tools.pm
  86. %endif
  87. %clean
  88. rm -rf $RPM_BUILD_ROOT
  89. %files
  90. %defattr(-,root,root,-)
  91. %{_bindir}/*
  92. %{_libdir}/pgsql/slony1_funcs.so
  93. %{_datadir}/pgsql/*.sql
  94. %config(noreplace) %{_sysconfdir}/slon.conf
  95. %if %perltools
  96. %{_libdir}/pgsql/slon-tools.pm
  97. %config(noreplace) %{_sysconfdir}/slon_tools.conf
  98. %endif
  99. %if %docs
  100. %files docs
  101. %defattr(-,root,root)
  102. %doc COPYRIGHT UPGRADING HISTORY-1.1 INSTALL SAMPLE doc/adminguide doc/concept doc/howto doc/implementation doc/support
  103. %endif
  104. %changelog
  105. * Wed Dec 21 2005 Devrim Gunduz <devrim@commandprompt.com> postgresql-slony1-engine
  106. - Added a buildrhel3 macro to fix RHEL 3 RPM builds
  107. - Added a kerbdir macro
  108. * Wed Dec 14 2005 Devrim Gunduz <devrim@commandprompt.com> postgresql-slony1-engine
  109. - Fixed the spec file so that during upgrade, conf files will not be replaced, and a .rpmnew will be created.
  110. * Thu Nov 24 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  111. - Created bindir
  112. * Wed Oct 26 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  113. - Modify CPPFLAGS and CFLAGS to fix builds on RHEL -- Per Philip Yarra
  114. * Tue Oct 18 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  115. - Created a new package : -docs and moved all the docs there.
  116. - Fixed the problem in http://gborg.postgresql.org/pipermail/slony1-general/2005-October/003105.html
  117. * Sat Oct 01 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  118. - Upgrade to 1.1.1
  119. * Tue Jul 12 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  120. - Added a line to check postgresql RPM version and tag SlonyI RPM with it.
  121. - Updated Requires files so that it checks correct PostgreSQL version
  122. - Moved autoconf line into correct place.
  123. * Thu Jun 08 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  124. - Added UPGRADING, HISTORY-1.1, INSTALL, SAMPLE among installed files, reflecting the change in GNUMakefile.in
  125. * Thu Jun 02 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  126. - Apply a new %docs macro and disable building of docs by default.
  127. - Remove slon-tools.conf-sample from bindir.
  128. - Removed --bindir and --libdir, since they are not needed.
  129. * Mon Apr 10 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  130. - More fixes on RPM builds
  131. * Thu Apr 07 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  132. - More fixes on RPM builds
  133. * Tue Apr 04 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  134. - Fix RPM build errors, regarding to tools/ .
  135. * Thu Apr 02 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  136. - Added docs to installed files list.
  137. - Added perltools, so that tools/altperl may be compiled.
  138. - Updated the spec file
  139. * Thu Mar 17 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  140. - Update to 1.1.0beta1
  141. - Remove PostgreSQL source dependency
  142. * Thu Mar 17 2005 Devrim Gunduz <devrim@PostgreSQL.org> postgresql-slony1-engine
  143. - Fix RPM builds
  144. * Thu Mar 18 2004 Daniel Berrange <berrange@redhat.com> postgresql-slony1-engine
  145. - Initial RPM packaging