Forráskód Böngészése

fix postfix segfaults by avoidance of berkeley db

Waldemar Brodkorb 13 éve
szülő
commit
c46017c022

+ 4 - 2
package/postfix/Makefile

@@ -9,8 +9,7 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		b3ff47a38db920fc15bb207f42da53db
 PKG_DESCR:=		Postfix MTA
 PKG_SECTION:=		mail
-PKG_BUILDDEP:=		db
-PKG_DEPENDS:=		libdb
+PKG_BUILDDEP:=		tinycdb
 PKG_URL:=		http://www.postfix.org/
 PKG_SITES:=		http://de.postfix.org/ftpmirror/official/
 
@@ -25,6 +24,9 @@ CONFIG_STYLE:=		manual
 ALL_TARGET:=		
 INSTALL_STYLE:=		manual
 
+do-configure:
+	(cd $(WRKBUILD) && make -f Makefile.init makefiles "CCARGS=-DHAS_CDB -I$(STAGING_DIR)/usr/include" "AUXLIBS=$(STAGING_DIR)/usr/lib/libcdb.a")
+
 postfix-install:
 	$(INSTALL_DIR) $(IDIR_POSTFIX)/etc/postfix
 	$(CP) $(WRKBUILD)/conf/* $(IDIR_POSTFIX)/etc/postfix

+ 17 - 5
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:36:33.561684585 +0100
++++ postfix-2.8.7/makedefs	2011-12-04 11:53:35.807716569 +0100
 @@ -97,8 +97,8 @@ error() {
  
  case $# in
@@ -11,7 +11,7 @@
      VERSION=`(uname -v) 2>/dev/null`
      case "$VERSION" in
       dcosx*) SYSTEM=$VERSION;;
-@@ -343,20 +343,6 @@ EOF
+@@ -343,31 +343,7 @@ EOF
  		esac
  		;;
      Linux.3*)	SYSTYPE=LINUX3
@@ -29,6 +29,18 @@
 -		    echo "See the RELEASE_NOTES file for more information." 1>&2
 -		    exit 1
 -		fi
- 		SYSLIBS="-ldb"
- 		for name in nsl resolv
- 		do
+-		SYSLIBS="-ldb"
+-		for name in nsl resolv
+-		do
+-		    for lib in /usr/lib64 /lib64 /usr/lib /lib
+-		    do
+-			test -e $lib/lib$name.a -o -e $lib/lib$name.so && {
+-			    SYSLIBS="$SYSLIBS -l$name"
+-			    break
+-			}
+-		    done
+-		done
++		SYSLIBS="-lresolv"
+ 		;;
+      GNU.0*|GNU/kFreeBSD.[567]*)
+      		SYSTYPE=GNU0

+ 0 - 33
package/postfix/patches/patch-src_util_Makefile_in

@@ -1,33 +0,0 @@
---- postfix-2.8.7.orig/src/util/Makefile.in	2011-04-15 18:52:47.000000000 +0200
-+++ postfix-2.8.7/src/util/Makefile.in	2011-12-03 13:16:59.000000000 +0100
-@@ -4,8 +4,8 @@ SRCS	= alldig.c allprint.c argv.c argv_s
- 	attr_scan_plain.c auto_clnt.c base64_code.c basename.c binhash.c \
- 	chroot_uid.c cidr_match.c clean_env.c close_on_exec.c concatenate.c \
- 	ctable.c dict.c dict_alloc.c dict_cdb.c dict_cidr.c dict_db.c \
--	dict_dbm.c dict_debug.c dict_env.c dict_ht.c dict_ni.c dict_nis.c \
--	dict_nisplus.c dict_open.c dict_pcre.c dict_regexp.c dict_sdbm.c \
-+	dict_dbm.c dict_debug.c dict_env.c dict_ht.c dict_ni.c \
-+	dict_open.c dict_pcre.c dict_regexp.c dict_sdbm.c \
- 	dict_static.c dict_tcp.c dict_unix.c dir_forest.c doze.c dummy_read.c \
- 	dummy_write.c duplex_pipe.c environ.c events.c exec_command.c \
- 	fifo_listen.c fifo_trigger.c file_limit.c find_inet.c fsspace.c \
-@@ -39,8 +39,8 @@ OBJS	= alldig.o allprint.o argv.o argv_s
- 	attr_scan_plain.o auto_clnt.o base64_code.o basename.o binhash.o \
- 	chroot_uid.o cidr_match.o clean_env.o close_on_exec.o concatenate.o \
- 	ctable.o dict.o dict_alloc.o dict_cdb.o dict_cidr.o dict_db.o \
--	dict_dbm.o dict_debug.o dict_env.o dict_ht.o dict_ni.o dict_nis.o \
--	dict_nisplus.o dict_open.o dict_pcre.o dict_regexp.o dict_sdbm.o \
-+	dict_dbm.o dict_debug.o dict_env.o dict_ht.o dict_ni.o \
-+	dict_open.o dict_pcre.o dict_regexp.o dict_sdbm.o \
- 	dict_static.o dict_tcp.o dict_unix.o dir_forest.o doze.o dummy_read.o \
- 	dummy_write.o duplex_pipe.o environ.o events.o exec_command.o \
- 	fifo_listen.o fifo_trigger.o file_limit.o find_inet.o fsspace.o \
-@@ -72,7 +72,7 @@ OBJS	= alldig.o allprint.o argv.o argv_s
- HDRS	= argv.h attr.h attr_clnt.h auto_clnt.h base64_code.h binhash.h \
- 	chroot_uid.h cidr_match.h clean_env.h connect.h ctable.h dict.h \
- 	dict_cdb.h dict_cidr.h dict_db.h dict_dbm.h dict_env.h dict_ht.h \
--	dict_ni.h dict_nis.h dict_nisplus.h dict_pcre.h dict_regexp.h \
-+	dict_ni.h dict_pcre.h dict_regexp.h \
- 	dict_sdbm.h dict_static.h dict_tcp.h dict_unix.h dir_forest.h \
- 	events.h exec_command.h find_inet.h fsspace.h fullname.h \
- 	get_domainname.h get_hostname.h hex_code.h hex_quote.h host_port.h \

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

@@ -1,24 +0,0 @@
---- 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

BIN
package/tinycdb/.Makefile.swp


+ 28 - 0
package/tinycdb/Makefile

@@ -0,0 +1,28 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=		tinycdb
+PKG_VERSION:=		0.77
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		c00e5fb96c30356ac3b67b2ab5d5641b
+PKG_DESCR:=		CDB implementation
+PKG_SECTION:=		db
+PKG_URL:=		http://www.corpit.ru/mjt/tinycdb/
+PKG_SITES:=		http://www.corpit.ru/mjt/tinycdb/
+
+DISTFILES:=             ${PKG_NAME}_${PKG_VERSION}.tar.gz
+
+include $(TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,TINYCDB,tinycdb,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+
+CONFIG_STYLE:=		manual
+
+tinycdb-install:
+	$(INSTALL_DIR) $(IDIR_TINYCDB)/usr/lib
+	$(INSTALL_BIN) $(WRKINST)/usr/lib/libcdb.a \
+		$(IDIR_TINYCDB)/usr/lib
+
+include ${TOPDIR}/mk/pkg-bottom.mk

+ 22 - 0
package/tinycdb/patches/patch-Makefile

@@ -0,0 +1,22 @@
+--- tinycdb-0.77.orig/Makefile	2009-01-31 18:12:21.000000000 +0100
++++ tinycdb-0.77/Makefile	2011-12-04 11:35:29.779689052 +0100
+@@ -7,7 +7,7 @@
+ 
+ VERSION = 0.77
+ 
+-prefix=/usr/local
++prefix=/usr
+ exec_prefix=$(prefix)
+ bindir=$(exec_prefix)/bin
+ libdir=$(exec_prefix)/lib
+@@ -18,8 +18,8 @@ mandir=$(prefix)/man
+ NSSCDB_DIR = $(sysconfdir)
+ DESTDIR=
+ 
+-CC = cc
+-CFLAGS = -O
++CC ?= cc
++CFLAGS ?= -O
+ 
+ AR = ar
+ ARFLAGS = rv

+ 13 - 0
package/tinycdb/patches/patch-Makefile.orig

@@ -0,0 +1,13 @@
+--- tinycdb-0.77.orig/Makefile	2009-01-31 18:12:21.000000000 +0100
++++ tinycdb-0.77/Makefile	2011-12-04 11:34:00.495686810 +0100
+@@ -18,8 +18,8 @@ mandir=$(prefix)/man
+ NSSCDB_DIR = $(sysconfdir)
+ DESTDIR=
+ 
+-CC = cc
+-CFLAGS = -O
++CC ?= cc
++CFLAGS ?= -O
+ 
+ AR = ar
+ ARFLAGS = rv