Waldemar Brodkorb 13 éve
szülő
commit
00b2b3fdc4

+ 29 - 3
package/postfix/Makefile

@@ -10,9 +10,12 @@ PKG_MD5SUM:=		b3ff47a38db920fc15bb207f42da53db
 PKG_DESCR:=		Postfix MTA
 PKG_SECTION:=		mail
 PKG_BUILDDEP:=		db
+PKG_DEPENDS:=		libdb
 PKG_URL:=		http://www.postfix.org/
 PKG_SITES:=		http://de.postfix.org/ftpmirror/official/
 
+PKG_HOST_DEPENDS:=	!darwin
+
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,POSTFIX,postfix,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
@@ -20,10 +23,33 @@ $(eval $(call PKG_template,POSTFIX,postfix,$(PKG_VERSION)-${PKG_RELEASE},${PKG_D
 XAKE_FLAGS+=		GCC_HONOUR_COPTS=s
 CONFIG_STYLE:=		manual
 ALL_TARGET:=		
+INSTALL_STYLE:=		manual
 
 postfix-install:
-	$(INSTALL_DIR) $(IDIR_POSTFIX)/usr/bin
-	$(INSTALL_BIN) $(WRKINST)/usr/bin/postfix \
-		$(IDIR_POSTFIX)/usr/bin
+	$(INSTALL_DIR) $(IDIR_POSTFIX)/etc/postfix
+	$(CP) $(WRKBUILD)/conf/* $(IDIR_POSTFIX)/etc/postfix
+	$(CP) ./files/main.cf $(IDIR_POSTFIX)/etc/postfix
+	$(INSTALL_DIR) $(IDIR_POSTFIX)/usr/sbin
+	$(CP) $(WRKBUILD)/bin/* $(IDIR_POSTFIX)/usr/sbin
+	$(INSTALL_DIR) $(IDIR_POSTFIX)/usr/libexec/postfix
+	$(CP) $(WRKBUILD)/libexec/* $(IDIR_POSTFIX)/usr/libexec/postfix
+	rm $(IDIR_POSTFIX)/usr/libexec/postfix/master.cf
+	rm $(IDIR_POSTFIX)/usr/libexec/postfix/main.cf
+	rm $(IDIR_POSTFIX)/usr/libexec/postfix/postfix-script
+	mv $(IDIR_POSTFIX)/etc/postfix/postfix-script \
+		$(IDIR_POSTFIX)/usr/libexec/postfix/
+	rm $(IDIR_POSTFIX)/usr/libexec/postfix/postfix-files
+	mv $(IDIR_POSTFIX)/etc/postfix/postfix-files \
+		$(IDIR_POSTFIX)/usr/libexec/postfix/
+	rm $(IDIR_POSTFIX)/usr/libexec/postfix/post-install
+	mv $(IDIR_POSTFIX)/etc/postfix/post-install \
+		$(IDIR_POSTFIX)/usr/libexec/postfix/
+	rm $(IDIR_POSTFIX)/usr/libexec/postfix/postfix-wrapper
+	mv $(IDIR_POSTFIX)/etc/postfix/postfix-wrapper \
+		$(IDIR_POSTFIX)/usr/libexec/postfix/
+	rm $(IDIR_POSTFIX)/usr/libexec/postfix/postmulti-script
+	mv $(IDIR_POSTFIX)/etc/postfix/postmulti-script \
+		$(IDIR_POSTFIX)/usr/libexec/postfix/
+	chmod 755 $(IDIR_POSTFIX)/usr/libexec/postfix/*
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 13 - 0
package/postfix/files/main.cf

@@ -0,0 +1,13 @@
+queue_directory = /var/spool/postfix
+command_directory = /usr/sbin
+daemon_directory = /usr/libexec/postfix
+data_directory = /var/lib/postfix
+mail_owner = postfix
+unknown_local_recipient_reject_code = 550
+debug_peer_level = 2
+debugger_command =
+	 PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
+	 ddd $daemon_directory/$process_name $process_id & sleep 5
+
+sendmail_path = /usr/sbin/sendmail
+setgid_group = postdrop

+ 35 - 0
package/postfix/files/postfix.init

@@ -0,0 +1,35 @@
+#!/bin/sh
+#PKG postfix
+#INIT 80
+. /etc/rc.conf
+
+case $1 in
+autostop) ;;
+autostart)
+	test x"${postfix:-NO}" = x"NO" && exit 0
+	exec sh $0 start
+	;;
+start)
+	[ -d /var/spool/postfix ] || mkdir -p /var/spool/postfix
+	[ -d /var/lib/postfix ] || mkdir -p /var/lib/postfix
+	chown postfix /var/lib/postfix
+	mount -o remount,rw /
+	chgrp postdrop /usr/sbin/postqueue
+	chgrp postdrop /usr/sbin/postdrop
+	chmod 2755 /usr/sbin/postqueue /usr/sbin/postdrop
+	mount -o remount,ro /
+	postfix start
+	;;
+stop)
+	postfix stop
+	;;
+restart)
+	sh $0 stop
+	sh $0 start
+	;;
+*)
+	echo "Usage: $0 {start | stop | restart}"
+	exit 1
+	;;
+esac
+exit $?

+ 9 - 0
package/postfix/files/postfix.postinst

@@ -0,0 +1,9 @@
+#!/bin/sh
+. $IPKG_INSTROOT/etc/functions.sh
+add_rcconf postfix postfix NO
+gid=$(get_next_gid)
+add_group postfix $gid
+add_user postfix $(get_next_uid) $gid /etc/postfix
+gid=$(get_next_gid)
+add_group postdrop $gid
+add_service smtp 25/tcp

+ 22 - 1
package/postfix/patches/patch-makedefs

@@ -1,5 +1,5 @@
 --- postfix-2.8.7.orig/makedefs	2011-11-03 00:46:22.000000000 +0100
-+++ postfix-2.8.7/makedefs	2011-12-03 13:06:00.000000000 +0100
++++ postfix-2.8.7/makedefs	2011-12-03 13:36:33.561684585 +0100
 @@ -97,8 +97,8 @@ error() {
  
  case $# in
@@ -11,3 +11,24 @@
      VERSION=`(uname -v) 2>/dev/null`
      case "$VERSION" in
       dcosx*) SYSTEM=$VERSION;;
+@@ -343,20 +343,6 @@ EOF
+ 		esac
+ 		;;
+     Linux.3*)	SYSTYPE=LINUX3
+-		if [ -f /usr/include/db.h ]
+-		then
+-		    : we are all set
+-		elif [ -f /usr/include/db/db.h ]
+-		then
+-		    CCARGS="$CCARGS -I/usr/include/db"
+-		else
+-		    # On a properly installed system, Postfix builds
+-		    # by including <db.h> and by linking with -ldb
+-		    echo "No <db.h> include file found." 1>&2
+-		    echo "Install the appropriate db*-devel package first." 1>&2
+-		    echo "See the RELEASE_NOTES file for more information." 1>&2
+-		    exit 1
+-		fi
+ 		SYSLIBS="-ldb"
+ 		for name in nsl resolv
+ 		do

+ 24 - 0
package/postfix/patches/patch-src_util_dict_open_c

@@ -0,0 +1,24 @@
+--- postfix-2.8.7.orig/src/util/dict_open.c	2011-04-11 19:37:49.000000000 +0200
++++ postfix-2.8.7/src/util/dict_open.c	2011-12-03 13:38:06.889686949 +0100
+@@ -202,8 +202,6 @@
+ #include <dict_sdbm.h>
+ #include <dict_dbm.h>
+ #include <dict_db.h>
+-#include <dict_nis.h>
+-#include <dict_nisplus.h>
+ #include <dict_ni.h>
+ #include <dict_pcre.h>
+ #include <dict_regexp.h>
+@@ -242,12 +240,6 @@ static const DICT_OPEN_INFO dict_open_in
+     DICT_TYPE_HASH, dict_hash_open,
+     DICT_TYPE_BTREE, dict_btree_open,
+ #endif
+-#ifdef HAS_NIS
+-    DICT_TYPE_NIS, dict_nis_open,
+-#endif
+-#ifdef HAS_NISPLUS
+-    DICT_TYPE_NISPLUS, dict_nisplus_open,
+-#endif
+ #ifdef HAS_NETINFO
+     DICT_TYPE_NETINFO, dict_ni_open,
+ #endif