exim.spec 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. ##
  2. ## exim.spec -- OpenPKG RPM Specification
  3. ## Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
  4. ## Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
  5. ##
  6. ## Permission to use, copy, modify, and distribute this software for
  7. ## any purpose with or without fee is hereby granted, provided that
  8. ## the above copyright notice and this permission notice appear in all
  9. ## copies.
  10. ##
  11. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  12. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  13. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  14. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  15. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  16. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  17. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  18. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  19. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  20. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  21. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  22. ## SUCH DAMAGE.
  23. ##
  24. # package information
  25. Name: exim
  26. Summary: Exim Mail Transfer Agent
  27. URL: http://www.exim.org/
  28. Vendor: Philip Hazel
  29. Packager: The OpenPKG Project
  30. Distribution: OpenPKG [EXP]
  31. Group: Mail
  32. License: GPL
  33. Version: 3.33
  34. Release: 0
  35. # list of sources
  36. Source0: ftp://ftp.csx.cam.ac.uk/pub/software/email/exim/exim-%{version}.tar.bz2
  37. Source1: exim-man.tar.gz
  38. Source2: rc.exim
  39. # build information
  40. Prefix: %{l_prefix}
  41. BuildRoot: %{l_buildroot}
  42. BuildPreReq: OpenPKG, openpkg >= 0.9-33, perl, gzip, openssl, db, tar
  43. PreReq: OpenPKG, openpkg >= 0.9-33, perl, gzip
  44. AutoReq: no
  45. AutoReqProv: no
  46. %description
  47. Exim is a message transfer agent (MTA) developed at the University
  48. of Cambridge for use on Unix systems connected to the Internet.
  49. In style it is similar to Smail 3, but its facilities are more
  50. extensive, and in particular it has some defences against mail
  51. bombs and unsolicited junk mail in the form of options for refusing
  52. messages from particular hosts, networks, or senders. It can be
  53. installed in place of sendmail, although the configuration of Exim
  54. is quite different to that of Sendmail.
  55. %prep
  56. %setup -q
  57. %{l_gzip} -d -c %{SOURCE exim-man.tar.gz} | %{l_tar} xvf -
  58. %build
  59. mkdir Local
  60. cp src/EDITME Local/Makefile
  61. ( echo "CC=%{l_cc}"
  62. echo "CFLAGS=%{l_cflags -O}"
  63. echo "EXIM_UID=%{l_fsuid}"
  64. echo "EXIM_GID=%{l_fsgid}"
  65. echo "LOG_FILE_PATH=%{l_prefix}/var/exim/log/%s.log"
  66. echo "PID_FILE_PATH=%{l_prefix}/var/exim/run/%s.pid"
  67. echo "SPOOL_DIRECTORY=%{l_prefix}/var/exim/spool"
  68. echo "INFO_DIRECTORY=%{l_prefix}/info"
  69. echo "SUPPORT_MOVE_FROZEN_MESSAGES=yes"
  70. echo "SUPPORT_TLS=yes"
  71. echo "TLS_INCLUDE=-I%{l_prefix}/include"
  72. echo "TLS_LIBS=-L%{l_prefix}/lib -lssl -lcrypto"
  73. echo "TRANSPORT_LMTP=yes"
  74. echo "INCLUDE=-I%{l_prefix}/include"
  75. echo "DBMLIB=-ldb"
  76. echo "USE_DB=yes"
  77. echo "PERL_COMMAND=%{l_prefix}/bin/perl"
  78. echo "CHOWN_COMMAND=true"
  79. ) >>Local/Makefile
  80. %{l_rpmtool} subst \
  81. 's;^\(BIN_DIRECTORY=\).*;\1%{l_prefix}/bin;' \
  82. 's;^\(COMPRESS_COMMAND=\).*;\1%{l_prefix}/bin/gzip;' \
  83. 's;^\(ZCAT_COMMAND=\).*;\1%{l_prefix}/bin/zcat;' \
  84. 's;^\(CONFIGURE_FILE=\).*;\1%{l_prefix}/etc/exim/exim.conf;' \
  85. 's;^\(EXIM_MONITOR=.*\);#\1;' \
  86. -- Local/Makefile
  87. %{l_rpmtool} subst \
  88. 's;^\(CHOWN_COMMAND=\).*;\1true;' \
  89. -- OS/Makefile-`uname`
  90. make="%{l_make}"
  91. mflags="%{l_mflags}"
  92. case "%{l_target}" in
  93. *-freebsd* ) make="/usr/bin/make"; mflags="" ;;
  94. esac
  95. $make $mflags makefile
  96. $make $mflags
  97. %install
  98. rm -rf $RPM_BUILD_ROOT
  99. %{l_rpmtool} subst -s \
  100. "s;^\\(BIN_DIRECTORY=\\).*;\\1$RPM_BUILD_ROOT%{l_prefix}/bin;" \
  101. "s;^\\(CONFIGURE_FILE=\\).*;\\1$RPM_BUILD_ROOT%{l_prefix}/etc/exim/exim.conf;" \
  102. "s;^\\(SPOOL_DIRECTORY=\\).*;\\1$RPM_BUILD_ROOT%{l_prefix}/var/exim/spool;" \
  103. "s;^\\(INFO_DIRECTORY=\\).*;\\1$RPM_BUILD_ROOT%{l_prefix}/info;" \
  104. "s;^\\(LOG_FILE_PATH=\\).*;\\1$RPM_BUILD_ROOT%{l_prefix}/var/exim/log/\\%s.log;" \
  105. "s;^\\(PID_FILE_PATH=\\).*;\\1$RPM_BUILD_ROOT%{l_prefix}/var/exim/run/\\%s.pid;" \
  106. -- Local/Makefile
  107. %{l_shtool} mkdir -f -p -m 755 \
  108. $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d \
  109. $RPM_BUILD_ROOT%{l_prefix}/bin \
  110. $RPM_BUILD_ROOT%{l_prefix}/sbin \
  111. $RPM_BUILD_ROOT%{l_prefix}/etc/exim \
  112. $RPM_BUILD_ROOT%{l_prefix}/var/exim/run \
  113. $RPM_BUILD_ROOT%{l_prefix}/var/exim/log \
  114. $RPM_BUILD_ROOT%{l_prefix}/man/man8
  115. make="%{l_make}"
  116. mflags="%{l_mflags}"
  117. case "%{l_target}" in
  118. *-freebsd* ) make="/usr/bin/make"; mflags="" ;;
  119. esac
  120. INST_CHOWN=true; export INST_CHOWN
  121. $make $mflags install
  122. %{l_shtool} install -c -m 644 \
  123. exim-man/*.8 $RPM_BUILD_ROOT%{l_prefix}/man/man8/
  124. strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
  125. ( cd $RPM_BUILD_ROOT%{l_prefix}/sbin
  126. ln -s ../bin/exim sendmail
  127. ln -s ../bin/exim mailq
  128. )
  129. ( echo "#!/bin/sh"
  130. echo "%{l_prefix}/sbin/sendmail -bi"
  131. ) >$RPM_BUILD_ROOT%{l_prefix}/sbin/newaliases
  132. chmod 755 $RPM_BUILD_ROOT%{l_prefix}/sbin/newaliases
  133. %{l_shtool} install -c -m 755 \
  134. -e 's;@l_prefix@;%{l_prefix};g' \
  135. %{SOURCE rc.exim} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
  136. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
  137. %{l_files_std} \
  138. '%attr(4755,root,%{l_fsgrp}) %{l_prefix}/bin/exim'
  139. %files -f files
  140. %clean
  141. rm -rf $RPM_BUILD_ROOT