Merge pull request #88075 from mroi/patch-libmilter
libmilter: fix compilation on Darwin
This commit is contained in:
commit
d659f968ba
|
@ -0,0 +1,28 @@
|
|||
Fix build issues on Darwin.
|
||||
|
||||
--- a/devtools/OS/Darwin 2014-03-05 01:59:45.000000000 +0100
|
||||
+++ b/devtools/OS/Darwin 2020-05-18 14:47:57.000000000 +0200
|
||||
@@ -8,6 +8,8 @@
|
||||
# We look a lot more like 4.4BSD than NeXTStep or OpenStep.
|
||||
#
|
||||
define(`confCC', `cc -traditional-cpp -pipe ${Extra_CC_Flags}')
|
||||
+define(`confCCOPTS_SO', `-fPIC')
|
||||
+define(`confSOEXT', `dylib')
|
||||
define(`confMAPDEF', `-DNEWDB -DNIS -DMAP_REGEX -DNETINFO -DAUTO_NETINFO_ALIASES -DAUTO_NETINFO_HOSTS')
|
||||
define(`confENVDEF', `-DDARWIN')
|
||||
define(`confLDOPTS', `${Extra_LD_Flags}')
|
||||
--- a/sendmail/sendmail.h 2020-05-18 14:51:17.000000000 +0200
|
||||
+++ b/sendmail/sendmail.h 2020-05-18 14:51:00.000000000 +0200
|
||||
@@ -104,7 +104,11 @@
|
||||
# endif /* NETX25 */
|
||||
|
||||
# if NAMED_BIND
|
||||
-# include <arpa/nameser.h>
|
||||
+# ifdef __APPLE__
|
||||
+# include <arpa/nameser_compat.h>
|
||||
+# else
|
||||
+# include <arpa/nameser.h>
|
||||
+# endif
|
||||
# ifdef NOERROR
|
||||
# undef NOERROR /* avoid <sys/streams.h> conflict */
|
||||
# endif /* NOERROR */
|
|
@ -28,10 +28,11 @@ stdenv.mkDerivation rec {
|
|||
define(\`confLIBGRP', \`root')
|
||||
APPENDDEF(\`confENVDEF', \`-DNETINET6')
|
||||
EOF
|
||||
export MILTER_SOVER=1
|
||||
sh Build -f ./a.m4
|
||||
'';
|
||||
|
||||
patches = [ ./install.patch ./sharedlib.patch ./glibc-2.30.patch ];
|
||||
patches = [ ./install.patch ./sharedlib.patch ./glibc-2.30.patch ./darwin.patch ];
|
||||
|
||||
nativeBuildInputs = [ m4 ];
|
||||
|
||||
|
|
|
@ -16,28 +16,29 @@ diff -Nru sendmail-8.14.3.orig/devtools/M4/UNIX/milterlibrary.m4 sendmail-8.14.3
|
|||
+#
|
||||
+divert(0)dnl
|
||||
+include(confBUILDTOOLSDIR`/M4/'bldM4_TYPE_DIR`/links.m4')dnl
|
||||
+define(`confSOEXT', ifdef(`confSOEXT', `confSOEXT', `so'))dnl
|
||||
+bldLIST_PUSH_ITEM(`bldC_PRODUCTS', bldCURRENT_PRODUCT)dnl
|
||||
+bldPUSH_TARGET(bldCURRENT_PRODUCT`.so' bldCURRENT_PRODUCT`.a')dnl
|
||||
+bldPUSH_TARGET(bldCURRENT_PRODUCT`.'confSOEXT 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`.'confSOEXT: ${BEFORE} ${bldCURRENT_PRODUCT`OBJS'}
|
||||
+ ${CCLINK} ${LDOPTS_SO} -o bldCURRENT_PRODUCT.confSOEXT ifdef(`confSONAME',`-Wl,confSONAME,bldCURRENT_PRODUCT.confSOEXT.${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
|
||||
+install-`'bldCURRENT_PRODUCT: bldCURRENT_PRODUCT.confSOEXT bldCURRENT_PRODUCT.a
|
||||
+ifdef(`bldINSTALLABLE', ` ifdef(`confMKDIR', `if [ ! -d "${DESTDIR}${bldINSTALL_DIR`'LIBDIR}" ]; then confMKDIR -p "${DESTDIR}${bldINSTALL_DIR`'LIBDIR}"; else :; fi ')
|
||||
+ ${INSTALL} -c bldCURRENT_PRODUCT.so "${DESTDIR}${LIBDIR}/bldCURRENT_PRODUCT.so.${MILTER_SOVER}"
|
||||
+ ${LN} ${LNOPTS} bldCURRENT_PRODUCT.so.${MILTER_SOVER} "${DESTDIR}${LIBDIR}/bldCURRENT_PRODUCT.so"
|
||||
+ ${INSTALL} -c bldCURRENT_PRODUCT.a "${DESTDIR}${LIBDIR}"')
|
||||
+ ${INSTALL} -c bldCURRENT_PRODUCT.confSOEXT "${DESTDIR}${LIBDIR}/bldCURRENT_PRODUCT.confSOEXT.${MILTER_SOVER}"
|
||||
+ ${LN} ${LNOPTS} bldCURRENT_PRODUCT.confSOEXT.${MILTER_SOVER} "${DESTDIR}${LIBDIR}/bldCURRENT_PRODUCT.confSOEXT"
|
||||
+ ${INSTALL} -c -m 644 bldCURRENT_PRODUCT.a "${DESTDIR}${LIBDIR}"')
|
||||
+
|
||||
+bldCURRENT_PRODUCT-clean:
|
||||
+ rm -f ${OBJS} bldCURRENT_PRODUCT.so bldCURRENT_PRODUCT.a ${MANPAGES}
|
||||
+ rm -f ${OBJS} bldCURRENT_PRODUCT.confSOEXT bldCURRENT_PRODUCT.a ${MANPAGES}
|
||||
+
|
||||
+divert(0)
|
||||
+COPTS+= confCCOPTS_SO
|
||||
|
|
Loading…
Reference in New Issue