Makefile 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. # $OpenBSD: Makefile,v 1.57 2015/07/15 20:45:24 ajacoutot Exp $
  2. COMMENT= virus/spam scanning framework
  3. V= 4.85
  4. Vs= 2
  5. Vss= ${Vs}-1
  6. DISTNAME= MailScanner-${V}.${Vss}
  7. PKGNAME= mailscanner-${V}.${Vss:S/-/./}
  8. CATEGORIES= mail
  9. MASTER_SITES= https://s3.amazonaws.com/mailscanner/release/v4/tar/
  10. REVISION= 0
  11. HOMEPAGE= http://www.mailscanner.info/
  12. MAINTAINER= Brad Smith <brad@comstyle.com>
  13. # GPLv2+
  14. PERMIT_PACKAGE_CDROM= Yes
  15. RUN_DEPENDS+= archivers/lha \
  16. archivers/p5-Archive-Zip>=1.30p0 \
  17. archivers/unzip \
  18. archivers/zoo \
  19. converters/p5-Convert-BinHex \
  20. converters/p5-Convert-TNEF \
  21. databases/p5-DBD-SQLite \
  22. databases/p5-DBI \
  23. devel/p5-IO-String \
  24. devel/p5-OLE-Storage_Lite \
  25. devel/p5-Sys-SigAction \
  26. mail/p5-MIME-tools \
  27. mail/tnef>=1.4.7 \
  28. net/p5-Net-CIDR \
  29. net/p5-Net-IP \
  30. net/p5-Sys-Hostname-Long \
  31. net/wget \
  32. security/p5-Digest-SHA1 \
  33. sysutils/p5-Filesys-Df \
  34. textproc/antiword \
  35. www/p5-HTML-Parser
  36. WRKDIST= ${WRKDIR}/MailScanner-${V}.${Vss}
  37. NO_BUILD= Yes
  38. NO_TEST= Yes
  39. post-extract:
  40. @cd ${WRKDIR} && ${TAR} xzf MailScanner-install-${V}.${Vs}/perl-tar/MailScanner-${V}.${Vss}${EXTRACT_SUFX} && \
  41. find ${WRKDIST} -type d | xargs chmod 755
  42. do-install: install_libexec install_etc install_share install_lib install_bin
  43. BINS= MailScanner Quick.Peek df2mbox d2mbox update_bad_phishing_emails
  44. BINS+= update_bad_phishing_sites update_phishing_sites check_mailscanner
  45. BINS+= clean.quarantine clean.SA.cache analyse_SpamAssassin_cache
  46. BINS+= mailscanner_create_locks processing_messages_alert upgrade_MailScanner_conf
  47. _MS_sed_frag= _subst() { sed 's,%PREFIX%,${LOCALBASE},g;s,%SYSCONFDIR%,${SYSCONFDIR},g' \
  48. "$$2" > ${WRKDIST}/file; \
  49. case "$$1" in \
  50. script) ${INSTALL_SCRIPT} -m 755 ${WRKDIST}/file "$$3";; \
  51. data) ${INSTALL_DATA} ${WRKDIST}/file "$$3";; \
  52. *) echo "subst invalid 1st arg, given 1=$$1";exit 2;; \
  53. esac; }; _subst
  54. INST_SCRIPT= ${_MS_sed_frag} script
  55. INST_DATA= ${_MS_sed_frag} data
  56. install_bin:
  57. .for _f in ${BINS}
  58. @${INST_SCRIPT} ${WRKSRC}/bin/${_f} ${PREFIX}/bin/${_f}
  59. .endfor
  60. install_libexec:
  61. ${INSTALL_DATA_DIR} ${PREFIX}/libexec/MailScanner
  62. @${INST_SCRIPT} ${WRKSRC}/bin/MailScanner ${PREFIX}/libexec/MailScanner/MailScanner
  63. ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/MailScanner/libexec
  64. @cd ${WRKSRC}/lib ; find * -name "*-wrapper" | while read f; do ${INST_SCRIPT} "$$f" ${PREFIX}/share/examples/MailScanner/libexec/"$${f}".sample; done
  65. @cd ${WRKSRC}/lib ; find * -name "*-autoupdate" | while read f; do ${INST_SCRIPT} "$$f" ${PREFIX}/share/examples/MailScanner/libexec/"$${f}".sample; done
  66. ETC= MailScanner.conf country.domains.conf filename.rules.conf
  67. ETC+= filetype.rules.conf phishing.bad.sites.conf phishing.safe.sites.conf
  68. ETC+= spam.assassin.prefs.conf spam.lists.conf virus.scanners.conf
  69. ETC+= archives.filename.rules.conf archives.filetype.rules.conf
  70. ETC+= conf.d/README mcp/mcp.spam.assassin.prefs.conf mcp/10_example.cf
  71. ETC+= mcp/v320.pre rules/bounce.rules rules/max.message.size.rules
  72. ETC+= rules/spam.whitelist.rules
  73. install_etc:
  74. ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/MailScanner
  75. ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/MailScanner/conf.d
  76. ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/MailScanner/mcp
  77. ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/MailScanner/rules
  78. .for _f in ${ETC}
  79. @${INST_DATA} ${WRKSRC}/etc/${_f} ${PREFIX}/share/examples/MailScanner/${_f}
  80. .endfor
  81. @${INST_DATA} ${WRKSRC}/etc/rules/EXAMPLES ${PREFIX}/share/examples/MailScanner/rules/EXAMPLES
  82. @${INST_DATA} ${WRKSRC}/etc/rules/README ${PREFIX}/share/examples/MailScanner/rules/README
  83. install_share:
  84. ${INSTALL_DATA_DIR} ${PREFIX}/share/doc
  85. ${INSTALL_DATA_DIR} ${PREFIX}/share/MailScanner
  86. ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/MailScanner
  87. @${INST_DATA} ${WRKDIR}/MailScanner-install-${V}.${Vs}/README ${PREFIX}/share/doc/MailScanner/README
  88. @cd ${WRKSRC}/etc ; find reports -type d -exec ${INSTALL_DATA_DIR} ${PREFIX}'/share/examples/MailScanner/{}' \;
  89. @cd ${WRKSRC}/etc ; find reports -type f ! -name "*.orig" | while read f; do ${INST_DATA} $$f ${PREFIX}/share/examples/MailScanner/$$f; done
  90. @cd ${PREFIX}/share/examples/MailScanner/reports ; find . -name "*.bak" -print0 | xargs -0 rm -f
  91. install_lib:
  92. ${INSTALL_PROGRAM_DIR} ${PREFIX}/lib/MailScanner
  93. ${INSTALL_PROGRAM_DIR} ${PREFIX}/lib/MailScanner/MailScanner
  94. ${INSTALL_PROGRAM_DIR} ${PREFIX}/lib/MailScanner/MailScanner/CustomFunctions
  95. @${INST_SCRIPT} ${WRKSRC}/lib/MailScanner.pm ${PREFIX}/lib/MailScanner/MailScanner.pm
  96. @cd ${WRKSRC}/lib/MailScanner ; find * -type f ! -name "*.orig" | while read f; do ${INST_SCRIPT} $$f ${PREFIX}/lib/MailScanner/MailScanner/$$f ; done
  97. .include <bsd.port.mk>