From ee6b760f43c9c4876d91b37cd861e1673e6baa60 Mon Sep 17 00:00:00 2001 From: Jose V Beneyto Date: Tue, 14 Jun 2011 09:27:04 +0200 Subject: [PATCH] exim: initial import (verified compilation) --- exim/.footprint | 38 +++++++++ exim/.md5sum | 3 + exim/Pkgfile | 47 +++++++++++ exim/exim | 26 ++++++ exim/exim-config.patch | 184 +++++++++++++++++++++++++++++++++++++++++ 5 files changed, 298 insertions(+) create mode 100644 exim/.footprint create mode 100644 exim/.md5sum create mode 100644 exim/Pkgfile create mode 100644 exim/exim create mode 100644 exim/exim-config.patch diff --git a/exim/.footprint b/exim/.footprint new file mode 100644 index 0000000..59dab89 --- /dev/null +++ b/exim/.footprint @@ -0,0 +1,38 @@ +drwxr-xr-x root/root etc/ +drwxr-xr-x root/root etc/exim/ +-rw-r--r-- root/root etc/exim/aliases +-rw-r--r-- root/root etc/exim/exim.conf +drwxr-xr-x root/root etc/rc.d/ +-rwxr-xr-x root/root etc/rc.d/exim +drwxr-xr-x root/root usr/ +drwxr-xr-x root/root usr/bin/ +lrwxrwxrwx root/root usr/bin/mailq -> ../sbin/exim-4.76-1 +drwxr-xr-x root/root usr/man/ +drwxr-xr-x root/root usr/man/man8/ +-rw-r--r-- root/root usr/man/man8/exim.8.gz +drwxr-xr-x root/root usr/sbin/ +-rwxr-xr-x root/root usr/sbin/exicyclog +-rwxr-xr-x root/root usr/sbin/exigrep +lrwxrwxrwx root/root usr/sbin/exim -> exim-4.76-1 +-rwsr-xr-x root/root usr/sbin/exim-4.76-1 +-rwxr-xr-x root/root usr/sbin/exim_checkaccess +-rwxr-xr-x root/root usr/sbin/exim_dbmbuild +-rwxr-xr-x root/root usr/sbin/exim_dumpdb +-rwxr-xr-x root/root usr/sbin/exim_fixdb +-rwxr-xr-x root/root usr/sbin/exim_lock +-rwxr-xr-x root/root usr/sbin/exim_tidydb +-rwxr-xr-x root/root usr/sbin/eximstats +-rwxr-xr-x root/root usr/sbin/exinext +-rwxr-xr-x root/root usr/sbin/exipick +-rwxr-xr-x root/root usr/sbin/exiqgrep +-rwxr-xr-x root/root usr/sbin/exiqsumm +-rwxr-xr-x root/root usr/sbin/exiwhat +lrwxrwxrwx root/root usr/sbin/sendmail -> exim-4.76-1 +drwxr-xr-x root/root var/ +drwxr-xr-x root/root var/log/ +drwxr-x--- mail/mail var/log/exim/ +-rw-r----- mail/mail var/log/exim/exim_mainlog (EMPTY) +-rw-r----- mail/mail var/log/exim/exim_paniclog (EMPTY) +-rw-r----- mail/mail var/log/exim/exim_rejectlog (EMPTY) +drwxr-xr-x root/root var/spool/ +drwxr-x--- mail/mail var/spool/exim/ diff --git a/exim/.md5sum b/exim/.md5sum new file mode 100644 index 0000000..693b8a3 --- /dev/null +++ b/exim/.md5sum @@ -0,0 +1,3 @@ +e00ba95600b51e47d8fedb0ed24d2bf3 exim +58e784b33c7a2ab335ec6400346d6362 exim-4.76.tar.bz2 +46a6407d7a43b0c493afb6e87c658963 exim-config.patch diff --git a/exim/Pkgfile b/exim/Pkgfile new file mode 100644 index 0000000..6aacb0d --- /dev/null +++ b/exim/Pkgfile @@ -0,0 +1,47 @@ +# Description: Mail transfer agent +# URL: http://www.exim.org +# Maintainer: CRUX System Team, core-ports at crux dot nu +# Arch Maintainer: CRUX-ARM System Team, devel at crux-arm dot nu +# Depends on: db openssl libpcre tcp_wrappers + +name=exim +version=4.76 +release=1 +source=(ftp://ftp.exim.org/pub/exim/exim4/$name-$version.tar.bz2 \ + $name $name-config.patch) + +build() { + cd $name-$version + + sed "s/#CFLAGS#/$CFLAGS/" $SRC/$name-config.patch | patch -p1 + cp src/EDITME Local/Makefile + + # build native binaries with host cc + sed 's|buildname=.*|buildname=Linux-arm|' -i Makefile + make -j1 configure + cd build-Linux-arm && gcc -Wall -o buildconfig buildconfig.c && cd - + + make -j1 \ + ARCHTYPE="arm" \ + AR="$CTARGET-ar cq" \ + RANLIB="$CTARGET-ranlib" \ + CC="$CTARGET-gcc" + + sed -i scripts/exim_install -e "s|version=.*$|version=\"exim-$version-$release\"|" + sed -i scripts/exim_install -e "/awk .*/d" + + make DESTDIR=$PKG install + + install -D -m 755 $SRC/exim $PKG/etc/rc.d/exim + install -D -m 644 doc/exim.8 $PKG/usr/man/man8/exim.8 + + install -d $PKG/var/{log,spool} $PKG/usr/bin + install -d -m 0750 -o mail -g mail $PKG/var/{log,spool}/exim + + touch $PKG/var/log/exim/exim_{mainlog,paniclog,rejectlog} + chown mail:mail $PKG/var/log/exim/* + chmod 640 $PKG/var/log/exim/* + + ln -sf $name-$version-1 $PKG/usr/sbin/sendmail + ln -sf ../sbin/$name-$version-1 $PKG/usr/bin/mailq +} diff --git a/exim/exim b/exim/exim new file mode 100644 index 0000000..c47d919 --- /dev/null +++ b/exim/exim @@ -0,0 +1,26 @@ +#!/bin/sh +# +# /etc/rc.d/exim: start/stop exim daemon +# + +case $1 in +start) + /usr/sbin/exim -bd -q15m + ;; +stop) + killall -q /usr/sbin/exim + ;; +restart) + $0 stop + sleep 2 + $0 start + ;; +reload) + kill -s HUP $(pidof exim) + ;; +*) + echo "usage: $0 [start|stop|restart|reload]" + ;; +esac + +# End of file \ No newline at end of file diff --git a/exim/exim-config.patch b/exim/exim-config.patch new file mode 100644 index 0000000..f5d92e9 --- /dev/null +++ b/exim/exim-config.patch @@ -0,0 +1,184 @@ +diff -Nru exim-4.74.orig/src/EDITME exim-4.74/src/EDITME +--- exim-4.74.orig/src/EDITME 2011-01-25 10:08:58.230470315 +0100 ++++ exim-4.74/src/EDITME 2011-01-25 10:09:14.328390661 +0100 +@@ -74,7 +74,7 @@ + # this would be wanted. + ############################################################################### + +- ++CFLAGS=#CFLAGS# + + ############################################################################### + # THESE ARE THINGS YOU MUST SPECIFY # +@@ -100,7 +100,7 @@ + # /usr/local/sbin. The installation script will try to create this directory, + # and any superior directories, if they do not exist. + +-BIN_DIRECTORY=/usr/exim/bin ++BIN_DIRECTORY=/usr/sbin + + + #------------------------------------------------------------------------------ +@@ -116,7 +116,7 @@ + # don't exist. It will also install a default runtime configuration if this + # file does not exist. + +-CONFIGURE_FILE=/usr/exim/configure ++CONFIGURE_FILE=/etc/exim/exim.conf + + # It is possible to specify a colon-separated list of files for CONFIGURE_FILE. + # In this case, Exim will use the first of them that exists when it is run. +@@ -133,7 +133,7 @@ + # deliveries. (Local deliveries run as various non-root users, typically as the + # owner of a local mailbox.) Specifying these values as root is not supported. + +-EXIM_USER= ++EXIM_USER=ref:mail + + # If you specify EXIM_USER as a name, this is looked up at build time, and the + # uid number is built into the binary. However, you can specify that this +@@ -243,7 +243,7 @@ + # MBX, is included only when requested. If you do not know what this is about, + # leave these settings commented out. + +-# SUPPORT_MAILDIR=yes ++SUPPORT_MAILDIR=yes + # SUPPORT_MAILSTORE=yes + # SUPPORT_MBX=yes + +@@ -286,8 +286,8 @@ + LOOKUP_LSEARCH=yes + LOOKUP_DNSDB=yes + +-# LOOKUP_CDB=yes +-# LOOKUP_DSEARCH=yes ++LOOKUP_CDB=yes ++LOOKUP_DSEARCH=yes + # LOOKUP_IBASE=yes + # LOOKUP_LDAP=yes + # LOOKUP_MYSQL=yes +@@ -357,7 +357,7 @@ + # files are defaulted in the OS/Makefile-Default file, but can be overridden in + # local OS-specific make files. + +-EXIM_MONITOR=eximon.bin ++# EXIM_MONITOR=eximon.bin + + + #------------------------------------------------------------------------------ +@@ -552,10 +552,10 @@ + # included in the Exim binary. You will then need to set up the run time + # configuration to make use of the mechanism(s) selected. + +-# AUTH_CRAM_MD5=yes ++AUTH_CRAM_MD5=yes + # AUTH_CYRUS_SASL=yes + # AUTH_DOVECOT=yes +-# AUTH_PLAINTEXT=yes ++AUTH_PLAINTEXT=yes + # AUTH_SPA=yes + + +@@ -655,10 +655,10 @@ + # leave these settings commented out. + + # This setting is required for any TLS support (either OpenSSL or GnuTLS) +-# SUPPORT_TLS=yes ++SUPPORT_TLS=yes + + # Uncomment this setting if you are using OpenSSL +-# TLS_LIBS=-lssl -lcrypto ++TLS_LIBS=-lssl -lcrypto + + # Uncomment these settings if you are using GnuTLS + # USE_GNUTLS=yes +@@ -722,7 +722,7 @@ + # %s. This will be replaced by one of the strings "main", "panic", or "reject" + # to form the final file names. Some installations may want something like this: + +-# LOG_FILE_PATH=/var/log/exim_%slog ++LOG_FILE_PATH=/var/log/exim/exim_%slog + + # which results in files with names /var/log/exim_mainlog, etc. The directory + # in which the log files are placed must exist; Exim does not try to create +@@ -771,7 +771,7 @@ + # files. Both the name of the command and the suffix that it adds to files + # need to be defined here. See also the EXICYCLOG_MAX configuration. + +-COMPRESS_COMMAND=/usr/bin/gzip ++COMPRESS_COMMAND=/bin/gzip + COMPRESS_SUFFIX=gz + + +@@ -779,7 +779,7 @@ + # If the exigrep utility is fed compressed log files, it tries to uncompress + # them using this command. + +-ZCAT_COMMAND=/usr/bin/zcat ++ZCAT_COMMAND=/bin/zcat + + + #------------------------------------------------------------------------------ +@@ -889,9 +889,9 @@ + # You may well also have to specify a local "include" file and an additional + # library for TCP wrappers, so you probably need something like this: + # +-# USE_TCP_WRAPPERS=yes ++USE_TCP_WRAPPERS=yes + # CFLAGS=-O -I/usr/local/include +-# EXTRALIBS_EXIM=-L/usr/local/lib -lwrap ++EXTRALIBS_EXIM=-lwrap + # + # but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM + # as well. +@@ -924,7 +924,7 @@ + # aliases). The following setting can be changed to specify a different + # location for the system alias file. + +-SYSTEM_ALIASES_FILE=/etc/aliases ++SYSTEM_ALIASES_FILE=/etc/exim/aliases + + + #------------------------------------------------------------------------------ +@@ -970,13 +970,13 @@ + # haven't got Perl, Exim will still build and run; you just won't be able to + # use those utilities. + +-# CHOWN_COMMAND=/usr/bin/chown +-# CHGRP_COMMAND=/usr/bin/chgrp +-# CHMOD_COMMAND=/usr/bin/chmod +-# MV_COMMAND=/bin/mv +-# RM_COMMAND=/bin/rm +-# TOUCH_COMMAND=/usr/bin/touch +-# PERL_COMMAND=/usr/bin/perl ++CHOWN_COMMAND=/bin/chown ++CHGRP_COMMAND=/bin/chgrp ++CHMOD_COMMAND=/bin/chmod ++MV_COMMAND=/bin/mv ++RM_COMMAND=/bin/rm ++TOUCH_COMMAND=/bin/touch ++PERL_COMMAND=/usr/bin/perl + + + #------------------------------------------------------------------------------ +@@ -1170,7 +1170,7 @@ + # (process id) to a file so that it can easily be identified. The path of the + # file can be specified here. Some installations may want something like this: + +-# PID_FILE_PATH=/var/lock/exim.pid ++PID_FILE_PATH=/var/run/exim.pid + + # If PID_FILE_PATH is not defined, Exim writes a file in its spool directory + # using the name "exim-daemon.pid". +diff -Nru exim-4.74.orig/src/configure.default exim-4.74/src/configure.default +--- exim-4.74.orig/src/configure.default 2011-01-25 10:08:58.230470315 +0100 ++++ exim-4.74/src/configure.default 2011-01-25 10:09:14.328390661 +0100 +@@ -56,7 +56,7 @@ + # +local_domains, +relay_to_domains, and +relay_from_hosts, respectively. They + # are all colon-separated lists: + +-domainlist local_domains = @ ++domainlist local_domains = @ : localhost + domainlist relay_to_domains = + hostlist relay_from_hosts = 127.0.0.1 + -- 2.26.2