From 74066c403a6ee86ab6d97d0fbf91c457b726be6a Mon Sep 17 00:00:00 2001 From: Wynn Wolf Arbor Date: Wed, 10 Jun 2020 12:16:52 +0200 Subject: mail-filter/libmilter: Add 1.0.2_p1 This ebuild contains fixes for musl-based systems. See [1]. [1] https://github.com/gentoo/gentoo/pull/16139 Package-Manager: Portage-2.3.99, Repoman-2.3.22 --- mail-filter/libmilter/Manifest | 10 + mail-filter/libmilter/files/gentoo.config.m4 | 5 + .../libmilter/files/libmilter-build-system.patch | 89 +++++++++ .../libmilter/files/libmilter-glibc-2.30.patch | 25 +++ .../files/libmilter-musl-disable-cdefs.patch | 11 ++ .../files/libmilter-musl-stack-size.patch | 42 ++++ .../libmilter/files/libmilter-sharedlib.patch | 55 ++++++ .../files/sendmail-8.14.6-build-system.patch | 211 +++++++++++++++++++++ mail-filter/libmilter/libmilter-1.0.2_p1.ebuild | 79 ++++++++ mail-filter/libmilter/metadata.xml | 9 + 10 files changed, 536 insertions(+) create mode 100644 mail-filter/libmilter/Manifest create mode 100644 mail-filter/libmilter/files/gentoo.config.m4 create mode 100644 mail-filter/libmilter/files/libmilter-build-system.patch create mode 100644 mail-filter/libmilter/files/libmilter-glibc-2.30.patch create mode 100644 mail-filter/libmilter/files/libmilter-musl-disable-cdefs.patch create mode 100644 mail-filter/libmilter/files/libmilter-musl-stack-size.patch create mode 100644 mail-filter/libmilter/files/libmilter-sharedlib.patch create mode 100644 mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch create mode 100644 mail-filter/libmilter/libmilter-1.0.2_p1.ebuild create mode 100644 mail-filter/libmilter/metadata.xml (limited to 'mail-filter') diff --git a/mail-filter/libmilter/Manifest b/mail-filter/libmilter/Manifest new file mode 100644 index 0000000..804d181 --- /dev/null +++ b/mail-filter/libmilter/Manifest @@ -0,0 +1,10 @@ +AUX gentoo.config.m4 168 BLAKE2B bbd9a011f6ca442aebb3f4e0177dfae6c1f8b246a493205be7b9b1b9837fd5bf0eac59cc46eebe639f9938d9d3eea99ff48962938a69198560ce76c8458a5906 SHA512 68b4c02527845ec54c694cbf6f4f7c589aa1317269d25cee6e65ea69243d29215790294180588c3436e72dd6f86163234111d3a762e926da3bfb7acf69f1c4b3 +AUX libmilter-build-system.patch 6855 BLAKE2B 987a71369b672d74835cb37a4ad5ceb58aa8b0fd451ffbcfbcba8ff89dafae58d0c9d412fec8c2a0f0621cce4b8bfce3ee618aa399feb6d7523bd22e3a210fe3 SHA512 d36adc49d5fec792139a921b5292ad0a6d71c11a31093cb1249f4e19b8255bb5a287beb3537b2ec0316d97505233cdd708bac27c0d4e1f54464918d4730be43b +AUX libmilter-glibc-2.30.patch 686 BLAKE2B 51a3053970fea27ca54fad929148e47ca3091150c3330bbd1b3841a44bed1735e0b9941bd4042e7ccc1eb00b87a65639a4b156db664dfece0b5b146873305ce1 SHA512 5fe9d972e459f95268e56a1a7ddae9ec06c19a7bd070a2a32fc45b4cb99aaae335481f01bab5cd4e2a841e25928962749373cbffcaefb08692fda0b896a56cf1 +AUX libmilter-musl-disable-cdefs.patch 352 BLAKE2B 192218bd59e4b5b4b7b7dd8f0a7a3ea19a3df1de3d32ad11c3b7159e55d92d7a2a500c7449dcd2c63b2d84934a18205f45b2962e7a80621697e81bcfbd7e1bdf SHA512 1305d7b0d0742d26fcb742b8751672ec03033abc2b01bb95a31c533dd197903138c3d39468fe104fb4779017d036f5c1656e06454e891e08155b34bbe1718292 +AUX libmilter-musl-stack-size.patch 1522 BLAKE2B c2348f569cf69d52418beef8b2fc5fea31d5e100ab849220aca1ebbae44a955c482c375a02ddf43524894574355cebdc292b9566bfa420dead96df2d229a44a8 SHA512 d3e12943fe7e9babdf700a2d8c0229bc16fa2ea16097615600341dee13f137b157ffa4b03f76c92ba9c5552ca3bf01cb598f6a6201720408df3a37247001a219 +AUX libmilter-sharedlib.patch 2843 BLAKE2B d64be1f4f4561a4056bca9784f00b4c965adbf30e99e1b9318162e6a3dad043eb508e925234a586443a8e8fd992f8aee67557f6c3d1e54f644d9c6c8fa7c267a SHA512 31c36b57739946c1b9c7c85307fe5c53c45d7f8cbf427a0f2248db8b74871a6f5a30ef1af524915821aeca54310d28272bcd0a587cb918192214fa5c30e4a8da +AUX sendmail-8.14.6-build-system.patch 12909 BLAKE2B 7643aad99583e533246834a069611588dc667ff2c664eb9c6c088d8f340f69306a9e2f56da6f967c34ebdfafcd697498f29f2a05dccce51083b59d9829f4bc8d SHA512 0e03b7cfd7f3002a36fed2fca60240314bac175a502ca9bda8397e7ad07e26faf8d3437bbdcdb9cda4dbc6b4917ca0ed1b5c9126ad246044dc7da8ce3ad70b54 +DIST sendmail.8.15.2.tar.gz 2207417 BLAKE2B 3d9dfb5bc2b535e30ef2fc61333e12a9b1fc45a5d730d2bed1ef956adb574721833f87aeba0475705b76e0c7d6cf00f9a10025bffb0de6c6b4dae606eb2ec399 SHA512 04feb37316c13b66b1518596507a7da7c16cb0bf1abf10367f7fd888a428fadb093a9efa55342fa55b936c3f0cbdc63b9e2505cd99201a69a0c05b8ad65f49f9 +EBUILD libmilter-1.0.2_p1.ebuild 2236 BLAKE2B 57053f5fb70d80508b216e0d1fd19f6db0ba7a9c27e77efe04e9b06888b46dd3bd9eb10b6f838555bc506b67a7c0b215416ab1186f802415aec22c479ce384a3 SHA512 38e533ffca49ed0307eb20c7daa7a9ee9f6543dd75ea45a12bb080bff760d1e14d9061440dd225514439a3fc26135344c3ca5c28503c42e405fabf22b18b53ab +MISC metadata.xml 300 BLAKE2B 410778ccb51b94b32d34d1c9b70f2deff712ad96143c4bd4bbf027f6910e7dfa700dfd8ee07c774043a3d4b7ad6507e5457af71a44fda6b3a81b46cd976b9185 SHA512 07af4a01f72fbe8c5ccdbfa72ea3a869e07a9907f8e878d6df03d1fc3061304280fc9e813958061f00f101571343ada901ec2fd1917760c60c631804498089e5 diff --git a/mail-filter/libmilter/files/gentoo.config.m4 b/mail-filter/libmilter/files/gentoo.config.m4 new file mode 100644 index 0000000..5e1b55f --- /dev/null +++ b/mail-filter/libmilter/files/gentoo.config.m4 @@ -0,0 +1,5 @@ +define(`confOPTIMIZE', `@@CFLAGS@@') +define(`confLDOPTS', `@@LDFLAGS@@') +define(`confCC', `@@CC@@') +define(`confENVDEF', `@@ENVDEF@@') +define(`confCCOPTS_SO', `-fPIC') diff --git a/mail-filter/libmilter/files/libmilter-build-system.patch b/mail-filter/libmilter/files/libmilter-build-system.patch new file mode 100644 index 0000000..d9991d3 --- /dev/null +++ b/mail-filter/libmilter/files/libmilter-build-system.patch @@ -0,0 +1,89 @@ +diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/defines.m4 sendmail-8.14.3/devtools/M4/UNIX/defines.m4 +--- sendmail-8.14.3.orig/devtools/M4/UNIX/defines.m4 2006-10-06 07:44:44.000000000 +0200 ++++ sendmail-8.14.3/devtools/M4/UNIX/defines.m4 2009-09-20 10:16:43.000000000 +0200 +@@ -26,7 +26,7 @@ + CCLINK = ifdef(`confCCLINK', `confCCLINK', `confCC') + # Linker for libraries + LD= ifdef(`confLD', `confLD', `confCC') +-LDOPTS= ifdef(`confLDOPTS', `confLDOPTS') ifdef(`confMT', ifdef(`confMTLDOPTS', `confMTLDOPTS', `'), `') ++LDOPTS= ifdef(`confLDOPTS', `confLDOPTS') + LDOPTS_SO= ${LDOPTS} ifdef(`confLDOPTS_SO', `confLDOPTS_SO', `-shared') + + # Shell +@@ -71,7 +71,7 @@ + LIBADD= ifdef(`conf_'bldCURRENT_PRD`_LIBS', `conf_'bldCURRENT_PRD`_LIBS') + + # libraries required on your system +-LIBS= ${LIBADD} ifdef(`confLIBS', `confLIBS') ifdef(`conf_'bldCURRENT_PRD`_LIB_POST', `conf_'bldCURRENT_PRD`_LIB_POST') ++LIBS= ${LIBADD} ifdef(`confLIBS', `confLIBS') ifdef(`conf_'bldCURRENT_PRD`_LIB_POST', `conf_'bldCURRENT_PRD`_LIB_POST') ifdef(`confMT', ifdef(`confMTLDOPTS', `confMTLDOPTS', `'), `') + + # location of sendmail binary (usually /usr/sbin or /usr/lib) + BINDIR= ifdef(`confMBINDIR', `confMBINDIR', `/usr/sbin') +diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/executable.m4 sendmail-8.14.3/devtools/M4/UNIX/executable.m4 +--- sendmail-8.14.3.orig/devtools/M4/UNIX/executable.m4 2006-10-06 07:44:44.000000000 +0200 ++++ sendmail-8.14.3/devtools/M4/UNIX/executable.m4 2009-09-20 10:16:43.000000000 +0200 +@@ -30,12 +30,12 @@ + + ifdef(`bldNO_INSTALL', , + `install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT ifdef(`bldTARGET_INST_DEP', `bldTARGET_INST_DEP') +- ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${bldINSTALL_DIR`'BINDIR} ]; then confMKDIR -p ${DESTDIR}${bldINSTALL_DIR`'BINDIR}; else :; fi ') +- ${INSTALL} -c -o ${bldBIN_TYPE`'BINOWN} -g ${bldBIN_TYPE`'BINGRP} -m ${bldBIN_TYPE`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${bldINSTALL_DIR`'BINDIR} ++ ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${bldINSTALL_DIR`'BINDIR}" ]; then confMKDIR -p "${DESTDIR}${bldINSTALL_DIR`'BINDIR}"; else :; fi ') ++ ${INSTALL} -c -o ${bldBIN_TYPE`'BINOWN} -g ${bldBIN_TYPE`'BINGRP} -m ${bldBIN_TYPE`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${bldINSTALL_DIR`'BINDIR}" + ifdef(`bldTARGET_LINKS', `bldMAKE_TARGET_LINKS(${bldINSTALL_DIR`'BINDIR}/bldCURRENT_PRODUCT, ${bldCURRENT_PRODUCT`'TARGET_LINKS})')') + + strip-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT +- ${STRIP} ${STRIPOPTS} ${DESTDIR}${bldINSTALL_DIR`'BINDIR}`'/bldCURRENT_PRODUCT ++ ${STRIP} ${STRIPOPTS} "${DESTDIR}${bldINSTALL_DIR`'BINDIR}`'/bldCURRENT_PRODUCT" + + bldCURRENT_PRODUCT-clean: + rm -f ${OBJS} bldCURRENT_PRODUCT ${MANPAGES} +diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/library.m4 sendmail-8.14.3/devtools/M4/UNIX/library.m4 +--- sendmail-8.14.3.orig/devtools/M4/UNIX/library.m4 2006-09-06 00:56:53.000000000 +0200 ++++ sendmail-8.14.3/devtools/M4/UNIX/library.m4 2009-09-20 10:16:43.000000000 +0200 +@@ -27,8 +27,8 @@ + ifdef(`bldLINK_SOURCES', `bldMAKE_SOURCE_LINKS(bldLINK_SOURCES)') + + install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT.a +-ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${bldINSTALL_DIR`'LIBDIR} ]; then confMKDIR -p ${DESTDIR}${bldINSTALL_DIR`'LIBDIR}; else :; fi ') +- ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a ${DESTDIR}${LIBDIR}') ++ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${LIBDIR}" ]; then confMKDIR -p "${DESTDIR}${LIBDIR}"; else :; fi ') ++ ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a "${DESTDIR}${LIBDIR}"') + + bldCURRENT_PRODUCT-clean: + rm -f ${OBJS} bldCURRENT_PRODUCT.a ${MANPAGES} +diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/manpage.m4 sendmail-8.14.3/devtools/M4/UNIX/manpage.m4 +--- sendmail-8.14.3.orig/devtools/M4/UNIX/manpage.m4 2006-09-08 00:13:07.000000000 +0200 ++++ sendmail-8.14.3/devtools/M4/UNIX/manpage.m4 2009-09-20 10:16:43.000000000 +0200 +@@ -68,11 +68,11 @@ + ifdef(`confNO_MAN_INSTALL', `divert(-1)', `dnl') + define(`bldMAN_INSTALL_CMD', + `ifdef(`confDONT_INSTALL_CATMAN', `dnl', +-` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC} ]; then confMKDIR -p ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}; else :; fi ') +- ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).`${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}' `${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}'') ++` ifdef(`confMKDIR', `if [ ! -d "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}" ]; then confMKDIR -p "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}"; else :; fi ') ++ ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).`${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}' "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}''") + ifdef(`confINSTALL_RAWMAN', +-` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN} ]; then confMKDIR -p ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}; else :; fi ') +- ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).bldGET_MAN_SOURCE_NUM($1) `${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}'', `dnl')' ++` ifdef(`confMKDIR', `if [ ! -d "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'" ]; then confMKDIR -p "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'"; else :; fi ') ++ ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).bldGET_MAN_SOURCE_NUM($1) "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}''", `dnl')' + )dnl + bldFOREACH(`bldMAN_INSTALL_CMD(', `bldMAN_PAGES') + ifdef(`confNO_MAN_INSTALL', `divert(0)', `dnl') +diff -Nru sendmail-8.14.3.orig/libmilter/Makefile.m4 sendmail-8.14.3/libmilter/Makefile.m4 +--- sendmail-8.14.3.orig/libmilter/Makefile.m4 2009-09-20 09:53:44.000000000 +0200 ++++ sendmail-8.14.3/libmilter/Makefile.m4 2009-09-20 10:18:35.000000000 +0200 +@@ -32,9 +32,9 @@ + MFAPI= ${SRCDIR}/inc`'lude/libmilter/mfapi.h + MFDEF= ${SRCDIR}/inc`'lude/libmilter/mfdef.h + install-mfapi: ${MFAPI} +- if [ ! -d ${DESTDIR}${INCLUDEDIR}/libmilter ]; then mkdir -p ${DESTDIR}${INCLUDEDIR}/libmilter; else :; fi +- ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFAPI} ${DESTDIR}${INCLUDEDIR}/libmilter/mfapi.h +- ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFDEF} ${DESTDIR}${INCLUDEDIR}/libmilter/mfdef.h ++ if [ ! -d "${DESTDIR}${INCLUDEDIR}/libmilter" ]; then mkdir -p "${DESTDIR}${INCLUDEDIR}/libmilter"; else :; fi ++ ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFAPI} "${DESTDIR}${INCLUDEDIR}/libmilter/mfapi.h" ++ ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFDEF} "${DESTDIR}${INCLUDEDIR}/libmilter/mfdef.h" + divert(0) + + bldFINISH diff --git a/mail-filter/libmilter/files/libmilter-glibc-2.30.patch b/mail-filter/libmilter/files/libmilter-glibc-2.30.patch new file mode 100644 index 0000000..5ceac84 --- /dev/null +++ b/mail-filter/libmilter/files/libmilter-glibc-2.30.patch @@ -0,0 +1,25 @@ +--- a/libmilter/sm_gethost.c 2014-03-05 01:59:45.000000000 +0100 ++++ b/libmilter/sm_gethost.c 2019-11-14 18:59:41.885353232 +0100 +@@ -51,18 +51,20 @@ sm_getipnodebyname(name, family, flags, + { + bool resv6 = true; + struct hostent *h; +- ++#ifdef RES_USE_INET6 + if (family == AF_INET6) + { + /* From RFC2133, section 6.1 */ + resv6 = bitset(RES_USE_INET6, _res.options); + _res.options |= RES_USE_INET6; + } ++#endif + SM_SET_H_ERRNO(0); + h = gethostbyname(name); ++#ifdef RES_USE_INET6 + if (family == AF_INET6 && !resv6) + _res.options &= ~RES_USE_INET6; +- ++#endif + /* the function is supposed to return only the requested family */ + if (h != NULL && h->h_addrtype != family) + { diff --git a/mail-filter/libmilter/files/libmilter-musl-disable-cdefs.patch b/mail-filter/libmilter/files/libmilter-musl-disable-cdefs.patch new file mode 100644 index 0000000..6dc4ac6 --- /dev/null +++ b/mail-filter/libmilter/files/libmilter-musl-disable-cdefs.patch @@ -0,0 +1,11 @@ +--- a/include/sm/os/sm_os_linux.h 2020-06-09 11:57:46.789786561 +0200 ++++ b/include/sm/os/sm_os_linux.h 2020-06-09 11:57:49.174781812 +0200 +@@ -33,7 +33,7 @@ + # endif /* LINUX_VERSION_CODE */ + #endif /* SM_CONF_SHM */ + +-#define SM_CONF_SYS_CDEFS_H 1 ++#define SM_CONF_SYS_CDEFS_H 0 + #ifndef SM_CONF_SEM + # define SM_CONF_SEM 2 + #endif /* SM_CONF_SEM */ diff --git a/mail-filter/libmilter/files/libmilter-musl-stack-size.patch b/mail-filter/libmilter/files/libmilter-musl-stack-size.patch new file mode 100644 index 0000000..9993adf --- /dev/null +++ b/mail-filter/libmilter/files/libmilter-musl-stack-size.patch @@ -0,0 +1,42 @@ +Set default pthread stack size to 256 KB + +This patch tries to fix various crashes for applications depending on libmilter +by setting the stack size for pthreads to 256 KB. The default stack size for +musl libc is set to 80 KB whereas glibc has it set to 8 MB. This causes problems +when a large amount of memory is allocated on the stack. + +For example, opendkim allocates blocks of 64 KB multiple times, which causes +libmilter (and therefore opendkim) to crash. For now, a stack size of 256 KB +looks sufficient and makes opendkim stop crashing. + +Fixes https://bugs.alpinelinux.org/issues/6360 + +--- a/libmilter/libmilter.h ++++ b/libmilter/libmilter.h +@@ -127,10 +127,10 @@ + # define MI_SOCK_READ(s, b, l) read(s, b, l) + # define MI_SOCK_READ_FAIL(x) ((x) < 0) + # define MI_SOCK_WRITE(s, b, l) write(s, b, l) +- +-# define thread_create(ptid,wr,arg) pthread_create(ptid, NULL, wr, arg) + # define sthread_get_id() pthread_self() + ++extern int thread_create(pthread_t *ptid, void *(*wr) (void *), void *arg); ++ + typedef pthread_mutex_t smutex_t; + # define smutex_init(mp) (pthread_mutex_init(mp, NULL) == 0) + # define smutex_destroy(mp) (pthread_mutex_destroy(mp) == 0) +--- a/libmilter/main.c ++++ b/libmilter/main.c +@@ -16,6 +16,12 @@ + #include + #include + ++int thread_create(pthread_t *ptid, void *(*wr) (void *), void *arg) { ++ pthread_attr_t attr; ++ pthread_attr_init(&attr); ++ pthread_attr_setstacksize(&attr,256*1024); ++ return pthread_create(ptid, &attr, wr, arg); ++} + + static smfiDesc_ptr smfi = NULL; diff --git a/mail-filter/libmilter/files/libmilter-sharedlib.patch b/mail-filter/libmilter/files/libmilter-sharedlib.patch new file mode 100644 index 0000000..43ec786 --- /dev/null +++ b/mail-filter/libmilter/files/libmilter-sharedlib.patch @@ -0,0 +1,55 @@ +diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/milterlibrary.m4 sendmail-8.14.3/devtools/M4/UNIX/milterlibrary.m4 +--- sendmail-8.14.3.orig/devtools/M4/UNIX/milterlibrary.m4 1970-01-01 01:00:00.000000000 +0100 ++++ sendmail-8.14.3/devtools/M4/UNIX/milterlibrary.m4 2009-08-22 21:51:10.000000000 +0200 +@@ -0,0 +1,39 @@ ++divert(-1) ++# ++# Copyright (c) 1999-2001 Sendmail, Inc. and its suppliers. ++# All rights reserved. ++# ++# By using this file, you agree to the terms and conditions set ++# forth in the LICENSE file which can be found at the top level of ++# the sendmail distribution. ++# ++# ++# Definitions for Makefile construction for sendmail ++# ++divert(0)dnl ++include(confBUILDTOOLSDIR`/M4/'bldM4_TYPE_DIR`/links.m4')dnl ++bldLIST_PUSH_ITEM(`bldC_PRODUCTS', bldCURRENT_PRODUCT)dnl ++bldPUSH_TARGET(bldCURRENT_PRODUCT`.so' bldCURRENT_PRODUCT`.a')dnl ++bldPUSH_INSTALL_TARGET(`install-'bldCURRENT_PRODUCT)dnl ++bldPUSH_CLEAN_TARGET(bldCURRENT_PRODUCT`-clean')dnl ++ ++include(confBUILDTOOLSDIR`/M4/'bldM4_TYPE_DIR`/defines.m4') ++divert(bldTARGETS_SECTION) ++bldCURRENT_PRODUCT.so: ${BEFORE} ${bldCURRENT_PRODUCT`OBJS'} ++ ${CCLINK} ${LDOPTS_SO} -o bldCURRENT_PRODUCT.so -Wl,confSONAME,bldCURRENT_PRODUCT.so.${MILTER_SOVER} ${bldCURRENT_PRODUCT`OBJS'} -lc ${LIBS} ++bldCURRENT_PRODUCT.a: ${BEFORE} ${bldCURRENT_PRODUCT`OBJS'} ++ ${AR} ${AROPTS} bldCURRENT_PRODUCT.a ${bldCURRENT_PRODUCT`OBJS'} ++ ${RANLIB} ${RANLIBOPTS} bldCURRENT_PRODUCT.a ++ifdef(`bldLINK_SOURCES', `bldMAKE_SOURCE_LINKS(bldLINK_SOURCES)') ++ ++install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT.so bldCURRENT_PRODUCT.a ++ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${bldINSTALL_DIR`'LIBDIR}" ]; then confMKDIR -p "${DESTDIR}${bldINSTALL_DIR`'LIBDIR}"; else :; fi ') ++ ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${UBINMODE} bldCURRENT_PRODUCT.so "${DESTDIR}${LIBDIR}/bldCURRENT_PRODUCT.so.${MILTER_SOVER}" ++ ${LN} ${LNOPTS} bldCURRENT_PRODUCT.so.${MILTER_SOVER} "${DESTDIR}${LIBDIR}/bldCURRENT_PRODUCT.so" ++ ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a "${DESTDIR}${LIBDIR}"') ++ ++bldCURRENT_PRODUCT-clean: ++ rm -f ${OBJS} bldCURRENT_PRODUCT.so bldCURRENT_PRODUCT.a ${MANPAGES} ++ ++divert(0) ++COPTS+= confCCOPTS_SO +diff -Nru sendmail-8.14.3.orig/libmilter/Makefile.m4 sendmail-8.14.3/libmilter/Makefile.m4 +--- sendmail-8.14.3.orig/libmilter/Makefile.m4 2008-04-08 07:23:44.000000000 +0200 ++++ sendmail-8.14.3/libmilter/Makefile.m4 2009-08-22 21:53:35.000000000 +0200 +@@ -9,7 +9,7 @@ + SMSRCDIR=ifdef(`confSMSRCDIR', `confSMSRCDIR', `${SRCDIR}/sendmail') + PREPENDDEF(`confINCDIRS', `-I${SMSRCDIR} ') + +-bldPRODUCT_START(`library', `libmilter') ++bldPRODUCT_START(`milterlibrary', `libmilter') + define(`bldINSTALLABLE', `true') + define(`LIBMILTER_EXTRAS', `errstring.c strl.c') + APPENDDEF(`confENVDEF', `-DNOT_SENDMAIL -Dsm_snprintf=snprintf') diff --git a/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch b/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch new file mode 100644 index 0000000..3348e92 --- /dev/null +++ b/mail-filter/libmilter/files/sendmail-8.14.6-build-system.patch @@ -0,0 +1,211 @@ +diff -Nru sendmail-8.14.3.orig/cf/cf/Makefile sendmail-8.14.3/cf/cf/Makefile +--- sendmail-8.14.3.orig/cf/cf/Makefile 2005-06-14 04:16:34.000000000 +0200 ++++ sendmail-8.14.3/cf/cf/Makefile 2009-09-20 10:55:50.000000000 +0200 +@@ -80,10 +80,10 @@ + install-cf: install-sendmail-cf install-submit-cf + + install-sendmail-cf: $(CF).cf +- $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(CF).cf ${DESTDIR}$(MAILDIR)/sendmail.cf ++ $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(CF).cf "${DESTDIR}$(MAILDIR)/sendmail.cf" + + install-submit-cf: $(SUBMIT).cf +- $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(SUBMIT).cf ${DESTDIR}$(MAILDIR)/submit.cf ++ $(INSTALL) -c -o $(CFOWN) -g $(CFGRP) -m $(CFMODE) $(SUBMIT).cf "${DESTDIR}$(MAILDIR)/submit.cf" + + depend: + +diff -Nru sendmail-8.14.6.orig/devtools/M4/UNIX/defines.m4 sendmail-8.14.6/devtools/M4/UNIX/defines.m4 +--- sendmail-8.14.6.orig/devtools/M4/UNIX/defines.m4 2012-01-21 00:07:08.000000000 +0000 ++++ sendmail-8.14.6/devtools/M4/UNIX/defines.m4 2012-12-27 08:13:15.792214375 +0000 +@@ -26,7 +26,7 @@ + CCLINK = ifdef(`confCCLINK', `confCCLINK', `confCC') + # Linker for libraries + LD= ifdef(`confLD', `confLD', `confCC') +-LDOPTS= ifdef(`confLDOPTS', `confLDOPTS') ifdef(`confMT', ifdef(`confMTLDOPTS', `confMTLDOPTS', `'), `') ++LDOPTS= ifdef(`confLDOPTS', `confLDOPTS') + LDOPTS_SO= ${LDOPTS} ifdef(`confLDOPTS_SO', `confLDOPTS_SO', `-shared') + + # Shell +@@ -71,7 +71,7 @@ + LIBADD= ifdef(`conf_'bldCURRENT_PRD`_LIBS', `conf_'bldCURRENT_PRD`_LIBS') + + # libraries required on your system +-LIBS= ${LIBADD} ifdef(`confLIBS', `confLIBS') ifdef(`conf_'bldCURRENT_PRD`_LIB_POST', `conf_'bldCURRENT_PRD`_LIB_POST') ++LIBS= ${LIBADD} ifdef(`confLIBS', `confLIBS') ifdef(`conf_'bldCURRENT_PRD`_LIB_POST', `conf_'bldCURRENT_PRD`_LIB_POST') ifdef(`confMT', ifdef(`confMTLDOPTS', `confMTLDOPTS', `'), `') + + # location of sendmail binary (usually /usr/sbin or /usr/lib) + BINDIR= ifdef(`confMBINDIR', `confMBINDIR', `/usr/sbin') +diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/executable.m4 sendmail-8.14.3/devtools/M4/UNIX/executable.m4 +--- sendmail-8.14.3.orig/devtools/M4/UNIX/executable.m4 2006-10-06 07:44:44.000000000 +0200 ++++ sendmail-8.14.3/devtools/M4/UNIX/executable.m4 2009-09-20 10:50:36.000000000 +0200 +@@ -30,12 +30,12 @@ + + ifdef(`bldNO_INSTALL', , + `install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT ifdef(`bldTARGET_INST_DEP', `bldTARGET_INST_DEP') +- ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${bldINSTALL_DIR`'BINDIR} ]; then confMKDIR -p ${DESTDIR}${bldINSTALL_DIR`'BINDIR}; else :; fi ') +- ${INSTALL} -c -o ${bldBIN_TYPE`'BINOWN} -g ${bldBIN_TYPE`'BINGRP} -m ${bldBIN_TYPE`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${bldINSTALL_DIR`'BINDIR} ++ ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${bldINSTALL_DIR`'BINDIR}" ]; then confMKDIR -p "${DESTDIR}${bldINSTALL_DIR`'BINDIR}"; else :; fi ') ++ ${INSTALL} -c -o ${bldBIN_TYPE`'BINOWN} -g ${bldBIN_TYPE`'BINGRP} -m ${bldBIN_TYPE`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${bldINSTALL_DIR`'BINDIR}" + ifdef(`bldTARGET_LINKS', `bldMAKE_TARGET_LINKS(${bldINSTALL_DIR`'BINDIR}/bldCURRENT_PRODUCT, ${bldCURRENT_PRODUCT`'TARGET_LINKS})')') + + strip-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT +- ${STRIP} ${STRIPOPTS} ${DESTDIR}${bldINSTALL_DIR`'BINDIR}`'/bldCURRENT_PRODUCT ++ ${STRIP} ${STRIPOPTS} "${DESTDIR}${bldINSTALL_DIR`'BINDIR}`'/bldCURRENT_PRODUCT" + + bldCURRENT_PRODUCT-clean: + rm -f ${OBJS} bldCURRENT_PRODUCT ${MANPAGES} +diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/library.m4 sendmail-8.14.3/devtools/M4/UNIX/library.m4 +--- sendmail-8.14.3.orig/devtools/M4/UNIX/library.m4 2006-09-06 00:56:53.000000000 +0200 ++++ sendmail-8.14.3/devtools/M4/UNIX/library.m4 2009-09-20 10:50:36.000000000 +0200 +@@ -27,8 +27,8 @@ + ifdef(`bldLINK_SOURCES', `bldMAKE_SOURCE_LINKS(bldLINK_SOURCES)') + + install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT.a +-ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${bldINSTALL_DIR`'LIBDIR} ]; then confMKDIR -p ${DESTDIR}${bldINSTALL_DIR`'LIBDIR}; else :; fi ') +- ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a ${DESTDIR}${LIBDIR}') ++ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${LIBDIR}" ]; then confMKDIR -p "${DESTDIR}${LIBDIR}"; else :; fi ') ++ ${INSTALL} -c -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} bldCURRENT_PRODUCT.a "${DESTDIR}${LIBDIR}"') + + bldCURRENT_PRODUCT-clean: + rm -f ${OBJS} bldCURRENT_PRODUCT.a ${MANPAGES} +--- sendmail-8.14.6.orig/devtools/M4/UNIX/manpage.m4 2012-01-21 00:07:08.000000000 +0000 ++++ sendmail-8.14.6/devtools/M4/UNIX/manpage.m4 2012-12-27 08:28:52.617502447 +0000 +@@ -68,11 +68,11 @@ + ifdef(`confNO_MAN_INSTALL', `divert(-1)', `dnl') + define(`bldMAN_INSTALL_CMD', + `ifdef(`confDONT_INSTALL_CATMAN', `dnl', +-` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC} ]; then confMKDIR -p ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}; else :; fi ') +- ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).`${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}' `${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}'') ++` ifdef(`confMKDIR', `if [ ! -d "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}" ]; then confMKDIR -p "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}"; else :; fi ') ++ ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).`${MAN'bldGET_MAN_SOURCE_NUM($1)`SRC}' "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)}/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}''") + ifdef(`confINSTALL_RAWMAN', +-` ifdef(`confMKDIR', `if [ ! -d ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN} ]; then confMKDIR -p ${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}; else :; fi ') +- ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).bldGET_MAN_SOURCE_NUM($1) `${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}'', `dnl')' ++` ifdef(`confMKDIR', `if [ ! -d "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'" ]; then confMKDIR -p "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'"; else :; fi ') ++ ${INSTALL} -c -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} bldGET_MAN_BASE_NAME($1).bldGET_MAN_SOURCE_NUM($1) "`${DESTDIR}${MAN'bldGET_MAN_SOURCE_NUM($1)`MAN}'/bldGET_MAN_BASE_NAME($1)`.${MAN'bldGET_MAN_SOURCE_NUM($1)`EXT}''", `dnl')' + )dnl + bldFOREACH(`bldMAN_INSTALL_CMD(', `bldMAN_PAGES') + ifdef(`confNO_MAN_INSTALL', `divert(0)', `dnl') +diff -Nru sendmail-8.14.3.orig/libmilter/Makefile.m4 sendmail-8.14.3/libmilter/Makefile.m4 +--- sendmail-8.14.3.orig/libmilter/Makefile.m4 2008-04-08 07:23:44.000000000 +0200 ++++ sendmail-8.14.3/libmilter/Makefile.m4 2009-09-20 10:50:36.000000000 +0200 +@@ -32,9 +32,9 @@ + MFAPI= ${SRCDIR}/inc`'lude/libmilter/mfapi.h + MFDEF= ${SRCDIR}/inc`'lude/libmilter/mfdef.h + install-mfapi: ${MFAPI} +- if [ ! -d ${DESTDIR}${INCLUDEDIR}/libmilter ]; then mkdir -p ${DESTDIR}${INCLUDEDIR}/libmilter; else :; fi +- ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFAPI} ${DESTDIR}${INCLUDEDIR}/libmilter/mfapi.h +- ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFDEF} ${DESTDIR}${INCLUDEDIR}/libmilter/mfdef.h ++ if [ ! -d "${DESTDIR}${INCLUDEDIR}/libmilter" ]; then mkdir -p "${DESTDIR}${INCLUDEDIR}/libmilter"; else :; fi ++ ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFAPI} "${DESTDIR}${INCLUDEDIR}/libmilter/mfapi.h" ++ ${INSTALL} -c -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} ${MFDEF} "${DESTDIR}${INCLUDEDIR}/libmilter/mfdef.h" + divert(0) + + bldFINISH +diff -Nru sendmail-8.14.3.orig/mail.local/Makefile.m4 sendmail-8.14.3/mail.local/Makefile.m4 +--- sendmail-8.14.3.orig/mail.local/Makefile.m4 2006-06-28 23:08:02.000000000 +0200 ++++ sendmail-8.14.3/mail.local/Makefile.m4 2009-09-20 10:56:24.000000000 +0200 +@@ -30,7 +30,7 @@ + force-install: install-mail.local ifdef(`confNO_MAN_BUILD',, `install-docs') + + install-mail.local: mail.local +- ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m ${UBINMODE} mail.local ${DESTDIR}${EBINDIR} ++ ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m ${UBINMODE} mail.local "${DESTDIR}${EBINDIR}" + divert + + bldFINISH +diff -Nru sendmail-8.14.3.orig/rmail/Makefile.m4 sendmail-8.14.3/rmail/Makefile.m4 +--- sendmail-8.14.3.orig/rmail/Makefile.m4 2006-06-28 23:08:04.000000000 +0200 ++++ sendmail-8.14.3/rmail/Makefile.m4 2009-09-20 10:55:29.000000000 +0200 +@@ -31,7 +31,7 @@ + force-install: install-rmail ifdef(`confNO_MAN_BUILD',, `install-docs') + + install-rmail: rmail +- ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m ${UBINMODE} rmail ${DESTDIR}${UBINDIR} ++ ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m ${UBINMODE} rmail "${DESTDIR}${UBINDIR}" + divert + + bldFINISH +diff -Nru sendmail-8.14.3.orig/sendmail/Makefile.m4 sendmail-8.14.3/sendmail/Makefile.m4 +--- sendmail-8.14.3.orig/sendmail/Makefile.m4.orig 2008-03-27 17:13:33.000000000 +0100 ++++ sendmail-8.14.3/sendmail/Makefile.m4 2009-09-20 11:07:24.000000000 +0200 +@@ -14,9 +14,9 @@ + + dnl hack: /etc/mail is not defined as "location of .cf" in the build system + define(`bldTARGET_INST_DEP', ifdef(`confINST_DEP', `confINST_DEP', +-`${DESTDIR}/etc/mail/submit.cf ${DESTDIR}${MSPQ}'))dnl ++`"${DESTDIR}/etc/mail/submit.cf" "${DESTDIR}${MSPQ}"'))dnl + define(`bldTARGET_LINKS', ifdef(`confLINKS', `confLINKS', +-`${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat') ++`"${DESTDIR}${UBINDIR}/newaliases" "${DESTDIR}${UBINDIR}/mailq" "${DESTDIR}${UBINDIR}/hoststat" "${DESTDIR}${UBINDIR}/purgestat"') + )dnl + + # location of sendmail statistics file (usually /etc/mail/ or /var/log) +@@ -43,21 +43,21 @@ + statistics: + ${CP} /dev/null statistics + +-${DESTDIR}/etc/mail/submit.cf: ++"${DESTDIR}/etc/mail/submit.cf": + @echo "Please read INSTALL if anything fails while installing the binary." + @echo "${DESTDIR}/etc/mail/submit.cf will be installed now." + cd ${SRCDIR}/cf/cf && make install-submit-cf + + MSPQ=ifdef(`confMSP_QUEUE_DIR', `confMSP_QUEUE_DIR', `/var/spool/clientmqueue') + +-${DESTDIR}${MSPQ}: ++"${DESTDIR}${MSPQ}": + @echo "Please read INSTALL if anything fails while installing the binary." + @echo "You must have setup a new user ${MSPQOWN} and a new group ${GBINGRP}" + @echo "as explained in sendmail/SECURITY." +- mkdir -p ${DESTDIR}${MSPQ} +- chown ${MSPQOWN} ${DESTDIR}${MSPQ} +- chgrp ${GBINGRP} ${DESTDIR}${MSPQ} +- chmod 0770 ${DESTDIR}${MSPQ} ++ mkdir -p "${DESTDIR}${MSPQ}" ++ chown ${MSPQOWN} "${DESTDIR}${MSPQ}" ++ chgrp ${GBINGRP} "${DESTDIR}${MSPQ}" ++ chmod 0770 "${DESTDIR}${MSPQ}" + + divert(0) + +@@ -68,30 +68,30 @@ + divert(bldTARGETS_SECTION) + + install-set-user-id: bldCURRENT_PRODUCT ifdef(`confNO_HELPFILE_INSTALL',, `install-hf') ifdef(`confNO_STATISTICS_INSTALL',, `install-st') ifdef(`confNO_MAN_BUILD',, `install-docs') +- ${INSTALL} -c -o ${S`'BINOWN} -g ${S`'BINGRP} -m ${S`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR} ++ ${INSTALL} -c -o ${S`'BINOWN} -g ${S`'BINGRP} -m ${S`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${M`'BINDIR}" + for i in ${sendmailTARGET_LINKS}; do \ + rm -f $$i; \ + ${LN} ${LNOPTS} ${M`'BINDIR}/sendmail $$i; \ + done + +-define(`confMTA_LINKS', `${DESTDIR}${UBINDIR}/newaliases ${DESTDIR}${UBINDIR}/mailq ${DESTDIR}${UBINDIR}/hoststat ${DESTDIR}${UBINDIR}/purgestat') ++define(`confMTA_LINKS', `"${DESTDIR}${UBINDIR}/newaliases" "${DESTDIR}${UBINDIR}/mailq" "${DESTDIR}${UBINDIR}/hoststat" "${DESTDIR}${UBINDIR}/purgestat"') + install-sm-mta: bldCURRENT_PRODUCT +- ${INSTALL} -c -o ${M`'BINOWN} -g ${M`'BINGRP} -m ${M`'BINMODE} bldCURRENT_PRODUCT ${DESTDIR}${M`'BINDIR}/sm-mta ++ ${INSTALL} -c -o ${M`'BINOWN} -g ${M`'BINGRP} -m ${M`'BINMODE} bldCURRENT_PRODUCT "${DESTDIR}${M`'BINDIR}/sm-mta" + for i in confMTA_LINKS; do \ + rm -f $$i; \ + ${LN} ${LNOPTS} ${M`'BINDIR}/sm-mta $$i; \ + done + + install-hf: +- if [ ! -d ${DESTDIR}${HFDIR} ]; then mkdir -p ${DESTDIR}${HFDIR}; else :; fi +- ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m 444 helpfile ${DESTDIR}${HFFILE} ++ if [ ! -d "${DESTDIR}${HFDIR}" ]; then mkdir -p "${DESTDIR}${HFDIR}"; else :; fi ++ ${INSTALL} -c -o ${UBINOWN} -g ${UBINGRP} -m 444 helpfile "${DESTDIR}${HFFILE}" + + install-st: statistics +- if [ ! -d ${DESTDIR}${STDIR} ]; then mkdir -p ${DESTDIR}${STDIR}; else :; fi +- ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}${STPATH} ++ if [ ! -d "${DESTDIR}${STDIR}" ]; then mkdir -p "${DESTDIR}${STDIR}"; else :; fi ++ ${INSTALL} -c -o ${SBINOWN} -g ${UBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics "${DESTDIR}${STPATH}" + +-install-submit-st: statistics ${DESTDIR}${MSPQ} +- ${INSTALL} -c -o ${MSPQOWN} -g ${GBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics ${DESTDIR}${MSPQ}/${MSPSTFILE} ++install-submit-st: statistics "${DESTDIR}${MSPQ}" ++ ${INSTALL} -c -o ${MSPQOWN} -g ${GBINGRP} -m ifdef(`confSTMODE', `confSTMODE', `0600') statistics "${DESTDIR}${MSPQ}/${MSPSTFILE}" + + divert(0) + bldPRODUCT_END diff --git a/mail-filter/libmilter/libmilter-1.0.2_p1.ebuild b/mail-filter/libmilter/libmilter-1.0.2_p1.ebuild new file mode 100644 index 0000000..22db7ce --- /dev/null +++ b/mail-filter/libmilter/libmilter-1.0.2_p1.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib toolchain-funcs + +# This library is part of sendmail, but it does not share the version number with it. +# In order to find the right libmilter version number, check SMFI_VERSION definition +# that can be found in ${S}/include/libmilter/mfapi.h (see also SM_LM_VRS_* defines). +# For example, version 1.0.1 has a SMFI_VERSION of 0x01000001. +SENDMAIL_VER=8.15.2 + +DESCRIPTION="The Sendmail Filter API (Milter)" +HOMEPAGE="http://www.sendmail.org/" +SRC_URI="ftp://ftp.sendmail.org/pub/sendmail/sendmail.${SENDMAIL_VER}.tar.gz" + +LICENSE="Sendmail" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86" +IUSE="ipv6 poll" + +DEPEND="!mail-mta/sendmail + !mail-mta/sendmail" +RDEPEND="!mail-mta/sendmail" + +S="${WORKDIR}/sendmail-${SENDMAIL_VER}" + +# build system patch copied from sendmail ebuild +# glibc patch from opensuse +PATCHES=( + "${FILESDIR}/sendmail-8.14.6-build-system.patch" + "${FILESDIR}/${PN}-sharedlib.patch" + "${FILESDIR}/${PN}-glibc-2.30.patch" + ) + +src_prepare() { + default + + local CC="$(tc-getCC)" + local ENVDEF="-DNETUNIX -DNETINET" + use ipv6 && ENVDEF="${ENVDEF} -DNETINET6" + use poll && ENVDEF="${ENVDEF} -DSM_CONF_POLL=1" + + if use elibc_musl; then + use ipv6 && ENVDEF="${ENVDEF} -DNEEDSGETIPNODE" + + eapply "${FILESDIR}/${PN}-musl-stack-size.patch" + eapply "${FILESDIR}/${PN}-musl-disable-cdefs.patch" + fi + + sed -e "s|@@CFLAGS@@|${CFLAGS} -USM_CONF_SYS_CDEFS_H|" \ + -e "s:@@LDFLAGS@@:${LDFLAGS}:" \ + -e "s:@@CC@@:${CC}:" \ + -e "s:@@ENVDEF@@:${ENVDEF}:" \ + "${FILESDIR}/gentoo.config.m4" > "${S}/devtools/Site/site.config.m4" \ + || die "failed to generate site.config.m4" +} + +src_compile() { + pushd libmilter + emake -j1 MILTER_SOVER=${PV} + popd +} + +src_install() { + local MY_LIBDIR=/usr/$(get_libdir) + dodir "${MY_LIBDIR}" + emake DESTDIR="${D}" LIBDIR="${MY_LIBDIR}" MANROOT=/usr/share/man/man \ + SBINOWN=root SBINGRP=0 UBINOWN=root UBINGRP=0 \ + LIBOWN=root LIBGRP=0 GBINOWN=root GBINGRP=0 \ + MANOWN=root MANGRP=0 INCOWN=root INCGRP=0 \ + MSPQOWN=root CFOWN=root CFGRP=0 \ + MILTER_SOVER=${PV} \ + install -C obj.*/libmilter + + dodoc libmilter/README + dodoc libmilter/docs/* +} diff --git a/mail-filter/libmilter/metadata.xml b/mail-filter/libmilter/metadata.xml new file mode 100644 index 0000000..4737466 --- /dev/null +++ b/mail-filter/libmilter/metadata.xml @@ -0,0 +1,9 @@ + + + + +The Sendmail filter API (Milter) + + Use poll instead of select + + -- cgit v1.2.3-2-gb3c3