From 449b27ae9a03825f36f302b5950a30f2d017f8c3 Mon Sep 17 00:00:00 2001 From: joerg Date: Wed, 27 Jan 2010 18:14:05 +0000 Subject: Basic destdir support. From Steven Drake. --- mail/procmail/Makefile | 12 ++++--- mail/procmail/distinfo | 6 ++-- mail/procmail/patches/patch-ad | 32 ++++++++++++++++-- mail/procmail/patches/patch-ae | 73 ++++++++++++++++++++++++++++++++++-------- 4 files changed, 98 insertions(+), 25 deletions(-) (limited to 'mail/procmail') diff --git a/mail/procmail/Makefile b/mail/procmail/Makefile index 2bf8ebc824a..6cfd1682fc8 100644 --- a/mail/procmail/Makefile +++ b/mail/procmail/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.44 2010/01/21 17:41:07 heinz Exp $ +# $NetBSD: Makefile,v 1.45 2010/01/27 18:14:05 joerg Exp $ # DISTNAME= procmail-3.22 @@ -11,6 +11,8 @@ HOMEPAGE= http://www.procmail.org/ COMMENT= Local mail delivery agent LICENSE= artistic OR gnu-gpl-v2 +PKG_DESTDIR_SUPPORT= destdir + PKG_INSTALLATION_TYPES= overwrite pkgviews MAKE_JOBS_SAFE= no @@ -46,14 +48,14 @@ pre-configure: do-install: cd ${WRKSRC}/new; \ for f in procmail formail lockfile; do \ - ${INSTALL_PROGRAM} $$f ${PREFIX}/bin/$$f; \ + ${INSTALL_PROGRAM} $$f ${DESTDIR}${PREFIX}/bin/$$f; \ done; \ - ${INSTALL_SCRIPT} mailstat ${PREFIX}/bin/mailstat; \ + ${INSTALL_SCRIPT} mailstat ${DESTDIR}${PREFIX}/bin/mailstat; \ for f in procmail.1 formail.1 lockfile.1; do \ - ${INSTALL_MAN} $$f ${PREFIX}/${PKGMANDIR}/man1/$$f; \ + ${INSTALL_MAN} $$f ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/$$f; \ done; \ for f in procmailex.5 procmailrc.5 procmailsc.5; do \ - ${INSTALL_MAN} $$f ${PREFIX}/${PKGMANDIR}/man5/$$f; \ + ${INSTALL_MAN} $$f ${DESTDIR}${PREFIX}/${PKGMANDIR}/man5/$$f; \ done ${SH} ${WRKSRC}/suid.sh .endif diff --git a/mail/procmail/distinfo b/mail/procmail/distinfo index cde142dca23..cbc30062f72 100644 --- a/mail/procmail/distinfo +++ b/mail/procmail/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.12 2009/07/18 03:15:18 smb Exp $ +$NetBSD: distinfo,v 1.13 2010/01/27 18:14:05 joerg Exp $ SHA1 (procmail-3.22.tar.gz) = cd4e44c15559816453fd60349e5a32289f6f2965 RMD160 (procmail-3.22.tar.gz) = e609ec94ea9ab3b93629c62b3e29add497806483 @@ -6,8 +6,8 @@ Size (procmail-3.22.tar.gz) = 226817 bytes SHA1 (patch-aa) = 6e29885f53d24662c5c69ac906ccc36a26665be2 SHA1 (patch-ab) = 5233a6033198dc2baec135a6fba987e7e2b89ff2 SHA1 (patch-ac) = fe2350e704546c2262d546bb615175dd0591ba8b -SHA1 (patch-ad) = 569d357c6afb9d7644c8094878aec08d22ae609d -SHA1 (patch-ae) = 91a3f83d41ba84e218a14c8bfc262fdbb1bc252c +SHA1 (patch-ad) = b35d6d508a15b8e70734ac7ccd58c19db31717ab +SHA1 (patch-ae) = b5ac027b337c8d9cf9c6096a48ef534315e18250 SHA1 (patch-af) = 889f937f50561308c644d5a4bd836eccabbb2938 SHA1 (patch-ag) = 66ae907f1b7ccfa10b5278443a9d9b0277923e61 SHA1 (patch-ba) = 5b0d2513e5320de26696cfaad9475f462579dae3 diff --git a/mail/procmail/patches/patch-ad b/mail/procmail/patches/patch-ad index a19c80e8b66..0ea6cf9a3e1 100644 --- a/mail/procmail/patches/patch-ad +++ b/mail/procmail/patches/patch-ad @@ -1,8 +1,8 @@ -$NetBSD: patch-ad,v 1.3 2000/08/26 14:26:58 wiz Exp $ +$NetBSD: patch-ad,v 1.4 2010/01/27 18:14:05 joerg Exp $ ---- src/recommend.c.orig Thu Nov 25 04:13:36 1999 +--- src/recommend.c.orig 1999-10-20 04:47:45.000000000 +0000 +++ src/recommend.c -@@ -19,7 +19,6 @@ +@@ -19,7 +19,6 @@ int main(argc,argv)const int argc;const { fprintf(stderr,"Please run this program via 'make recommend'\n"); return EX_USAGE; } @@ -10,3 +10,29 @@ $NetBSD: patch-ad,v 1.3 2000/08/26 14:26:58 wiz Exp $ for(p=checkf;*p;p++) if(!stat(*p,&stbuf)&&stbuf.st_mode&S_ISGID) { if(stbuf.st_mode&S_ISGID) +@@ -36,19 +35,19 @@ int main(argc,argv)const int argc;const + } + if(gid!=stbuf.st_gid) + sgid=0; +- printf("chown root %s\n",argv[1]); ++ printf("chown root ${DESTDIR}%s\n",argv[1]); + if(sgid) + if(grp=getgrgid(gid)) +- printf("chgrp %s %s %s\n",grp->gr_name,argv[1],argv[2]); ++ printf("chgrp %s ${DESTDIR}%s ${DESTDIR}%s\n",grp->gr_name,argv[1],argv[2]); + else +- printf("chgrp %u %s %s\n",(unsigned)gid,argv[1],argv[2]); +- printf("chmod %lo %s\n",(unsigned long)(sgid|S_ISUID|PERMIS),argv[1]); ++ printf("chgrp %u ${DESTDIR}%s ${DESTDIR}%s\n",(unsigned)gid,argv[1],argv[2]); ++ printf("chmod %lo ${DESTDIR}%s\n",(unsigned long)(sgid|S_ISUID|PERMIS),argv[1]); + if(sgid) +- printf("chmod %lo %s\n",(unsigned long)(sgid|PERMIS),argv[2]); ++ printf("chmod %lo ${DESTDIR}%s\n",(unsigned long)(sgid|PERMIS),argv[2]); + else if(chmdir==1) + goto nogchmod; + if(chmdir) +- printf("chmod %c+w %s/.\n",chmdir==1?'g':'a',mailspooldir); ++ printf("chmod %c+w ${DESTDIR}%s/.\n",chmdir==1?'g':'a',mailspooldir); + nogchmod: + return EXIT_SUCCESS; + } diff --git a/mail/procmail/patches/patch-ae b/mail/procmail/patches/patch-ae index bb4cd9aebda..ef484d9f2ea 100644 --- a/mail/procmail/patches/patch-ae +++ b/mail/procmail/patches/patch-ae @@ -1,31 +1,76 @@ -$NetBSD: patch-ae,v 1.6 2003/01/20 22:55:44 jschauma Exp $ +$NetBSD: patch-ae,v 1.7 2010/01/27 18:14:05 joerg Exp $ If the ``Housekeeping'' lines stay, `make install; make deinstall; make install' fails. ---- Makefile.1.orig Tue Sep 11 00:53:09 2001 -+++ Makefile.1 Mon Jan 20 17:21:22 2003 -@@ -88,7 +88,7 @@ - @-$(MKDIRS) $(MAN1DIR) 2>$(DEVNULL); exit 0 - @-test -d $(MAN5DIR) || $(RM) $(MAN5DIR); exit 0 - @-$(MKDIRS) $(MAN5DIR) 2>$(DEVNULL); exit 0 +--- Makefile.1.orig 2001-09-11 04:53:09.000000000 +0000 ++++ Makefile.1 +@@ -73,49 +73,47 @@ suid.sh: recommend + install-suid: suid.sh install.bin + @cat suid.sh + @$(SHELL) ./suid.sh +- @cd $(BINDIR); echo Installed in $(BINDIR); ls -l $(BINSS) ++ @cd ${DESTDIR}$(BINDIR); echo Installed in ${DESTDIR}$(BINDIR); ls -l $(BINSS) + + $(MANS): mans + + $(BINS): bins + +-$(BASENAME): +- $(MKDIRS) $(BASENAME) ++${DESTDIR}$(BASENAME): ++ $(MKDIRS) ${DESTDIR}$(BASENAME) + + install.man: $(MANS) $(BASENAME) +- @-$(MKDIRS) $(MANDIR) 2>$(DEVNULL); exit 0 +- @-test -d $(MAN1DIR) || $(RM) $(MAN1DIR); exit 0 +- @-$(MKDIRS) $(MAN1DIR) 2>$(DEVNULL); exit 0 +- @-test -d $(MAN5DIR) || $(RM) $(MAN5DIR); exit 0 +- @-$(MKDIRS) $(MAN5DIR) 2>$(DEVNULL); exit 0 - @chmod 0644 $(MANS) ++ @-$(MKDIRS) ${DESTDIR}$(MANDIR) 2>$(DEVNULL); exit 0 ++ @-test -d ${DESTDIR}$(MAN1DIR) || $(RM) ${DESTDIR}$(MAN1DIR); exit 0 ++ @-$(MKDIRS) ${DESTDIR}$(MAN1DIR) 2>$(DEVNULL); exit 0 ++ @-test -d ${DESTDIR}$(MAN5DIR) || $(RM) ${DESTDIR}$(MAN5DIR); exit 0 ++ @-$(MKDIRS) ${DESTDIR}$(MAN5DIR) 2>$(DEVNULL); exit 0 + @${CHMOD} 0644 $(MANS) @for a in $(MANS1S); \ - do $(INSTALL) new/$$a.1 $(MAN1DIR)/$$a.$(MAN1SUFFIX) || exit 1; \ +- do $(INSTALL) new/$$a.1 $(MAN1DIR)/$$a.$(MAN1SUFFIX) || exit 1; \ ++ do $(INSTALL) new/$$a.1 ${DESTDIR}$(MAN1DIR)/$$a.$(MAN1SUFFIX) || exit 1; \ + if test "X$(MANCOMPRESS)" != "X"; \ +- then $(MANCOMPRESS) -c new/$$a.1 >$(MAN1DIR)/$$a.$(MAN1SUFFIX); \ ++ then $(MANCOMPRESS) -c new/$$a.1 >${DESTDIR}$(MAN1DIR)/$$a.$(MAN1SUFFIX); \ + else :; fi; \ + done + @for a in $(MANS5S); \ +- do $(INSTALL) new/$$a.5 $(MAN5DIR)/$$a.$(MAN5SUFFIX) || exit 1; \ ++ do $(INSTALL) new/$$a.5 ${DESTDIR}$(MAN5DIR)/$$a.$(MAN5SUFFIX) || exit 1; \ if test "X$(MANCOMPRESS)" != "X"; \ -@@ -101,14 +101,12 @@ - then $(MANCOMPRESS) -c new/$$a.5 >$(MAN5DIR)/$$a.$(MAN5SUFFIX); \ +- then $(MANCOMPRESS) -c new/$$a.5 >$(MAN5DIR)/$$a.$(MAN5SUFFIX); \ ++ then $(MANCOMPRESS) -c new/$$a.5 >${DESTDIR}$(MAN5DIR)/$$a.$(MAN5SUFFIX); \ else :; fi; \ done - echo Housekeeping file >install.man install.bin: $(BINS) $(BASENAME) - @-$(MKDIRS) $(BINDIR) 2>$(DEVNULL); exit 0 +- @-$(MKDIRS) $(BINDIR) 2>$(DEVNULL); exit 0 - @chmod 0755 $(BINS) -+ @${CHMOD} 0755 $(BINS) - $(INSTALL) $(BINS) $(BINDIR) - @-dirname / >$(DEVNULL) || $(INSTALL) examples/dirname $(BINDIR) +- $(INSTALL) $(BINS) $(BINDIR) +- @-dirname / >$(DEVNULL) || $(INSTALL) examples/dirname $(BINDIR) - echo Housekeeping file >install.bin ++ @-$(MKDIRS) ${DESTDIR}$(BINDIR) 2>$(DEVNULL); exit 0 ++ @${CHMOD} 0755 $(BINS) ++ $(INSTALL) $(BINS) ${DESTDIR}$(BINDIR) ++ @-dirname / >$(DEVNULL) || $(INSTALL) examples/dirname ${DESTDIR}$(BINDIR) install: @$(MAKE) install.man install.bin + @echo +- @cd $(BINDIR); echo Installed in $(BINDIR); ls -l $(BINSS) +- @cd $(MAN1DIR); echo Installed in $(MAN1DIR); ls -l $(MANS1) +- @cd $(MAN5DIR); echo Installed in $(MAN5DIR); ls -l $(MANS5) ++ @cd ${DESTDIR}$(BINDIR); echo Installed in ${DESTDIR}$(BINDIR); ls -l $(BINSS) ++ @cd ${DESTDIR}$(MAN1DIR); echo Installed in ${DESTDIR}$(MAN1DIR); ls -l $(MANS1) ++ @cd ${DESTDIR}$(MAN5DIR); echo Installed in ${DESTDIR}$(MAN5DIR); ls -l $(MANS5) + @$(MAKE) recommend + + deinstall: -- cgit v1.2.3