diff --git a/network/library/libmilter/actions.py b/network/library/libmilter/actions.py new file mode 100644 index 0000000000..c78712032d --- /dev/null +++ b/network/library/libmilter/actions.py @@ -0,0 +1,23 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file https://www.gnu.org/licenses/gpl-3.0.txt + +from pisi.actionsapi import autotools, pisitools, get + +so = "MILTER_SOVER=1.0.2" +j = ''.join([ + ' INCOWN=root INCGRP=root INCMODE=644', + ' LIBOWN=root LIBGRP=root LIBMODE=644 UBINMODE=755 ' + ]) + +def setup(): + pass + +def build(): + autotools.make("-C libmilter %s" % so) + +def install(): + pisitools.dodir("/usr/lib") + autotools.rawInstall("-C libmilter DESTDIR=%s %s %s install" % (get.installDIR(), j, so)) diff --git a/network/library/libmilter/files/alpinelinux/libmilter_sharedlib.patch b/network/library/libmilter/files/alpinelinux/libmilter_sharedlib.patch new file mode 100644 index 0000000000..b65d7408a3 --- /dev/null +++ b/network/library/libmilter/files/alpinelinux/libmilter_sharedlib.patch @@ -0,0 +1,53 @@ +--- /dev/null 2022-11-16 05:56:56.793999937 +0300 ++++ b/devtools/M4/UNIX/milterlibrary.m4 2022-11-16 06:36:04.837260702 +0300 +@@ -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 +--- a/libmilter/Makefile.m4 2021-06-07 22:03:56.000000000 +0300 ++++ b/libmilter/Makefile.m4 2022-11-16 06:37:12.754762349 +0300 +@@ -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/network/library/libmilter/files/site_config_m4.patch b/network/library/libmilter/files/site_config_m4.patch new file mode 100644 index 0000000000..3f28d79ec8 --- /dev/null +++ b/network/library/libmilter/files/site_config_m4.patch @@ -0,0 +1,12 @@ +--- /dev/null 2022-11-16 05:56:56.793999937 +0300 ++++ b/devtools/Site/site.config.m4 2022-11-16 07:57:02.406144281 +0300 +@@ -0,0 +1,9 @@ ++dnl Enable libmilter with a pool of workers ++APPENDDEF(`conf_libmilter_ENVDEF',`-D_FFR_WORKERS_POOL=1') ++APPENDDEF(`conf_libmilter_ENVDEF',`-DMIN_WORKERS=4') ++dnl Use poll instead of select ++APPENDDEF(`conf_libmilter_ENVDEF',`-DSM_CONF_POLL=1') ++dnl Enable IPv6 ++APPENDDEF(`conf_libmilter_ENVDEF',`-DNETINET6=1') ++dnl Add -fPIC ++APPENDDEF(`conf_libmilter_ENVDEF',`-fPIC') diff --git a/network/library/libmilter/pspec.xml b/network/library/libmilter/pspec.xml new file mode 100644 index 0000000000..8b02b43701 --- /dev/null +++ b/network/library/libmilter/pspec.xml @@ -0,0 +1,50 @@ + + + + + libmilter + https://www.proofpoint.com/us/sendmail-open-source + + fury + uglyside@yandex.ru + + custom + library + network.library + Sendmail Mail Filter API. + pass + + https://ftp.sendmail.org/sendmail.8.17.1.tar.gz + + + db-devel + kernel-headers + + + site_config_m4.patch + alpinelinux/libmilter_sharedlib.patch + + + + + libmilter + + db + glibc + + + /usr/lib + /usr/include/libmilter + + + + + + 2022-11-15 + 8.17.1 + First build. + fury + uglyside@yandex.ru + + +