Avoid crashing when users have the antiquated PyXML package installed. Python tries to be nice and loads it when we import xml, but it isn't compatible. Instead, we force Python to use the standard library xml module. [Daniel Miller] Fix a bug in DiffViewer causing this crash: TypeError: GtkTextBuffer.set_text() argument 1 must be string or read-only buffer, not NmapParserSAX Crash happened when trying to compare two scans within Zenmap. [Daniel Miller] - USES python instead of USE_PYTHON=yes - Use USE_PYTHON=distutils instead of USE_PYDISTUTILS=yes - Use USE_PYTHON=autoplist instead of PYDISTUTILS_AUTOPLIST=yes
86 lines
2.7 KiB
Makefile
86 lines
2.7 KiB
Makefile
# Created by: Daniel Roethlisberger <daniel@roe.ch>
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= zenmap
|
|
PORTVERSION= 6.47
|
|
CATEGORIES= security ipv6
|
|
MASTER_SITES= http://nmap.org/dist/ \
|
|
SF/nemysisfreebsdp/security/:icons
|
|
DISTNAME= nmap-${PORTVERSION}
|
|
DISTFILES= nmap-${PORTVERSION}${EXTRACT_SUFX} \
|
|
${PORTNAME}.png:icons
|
|
EXTRACT_ONLY= nmap-${PORTVERSION}${EXTRACT_SUFX}
|
|
|
|
MAINTAINER= nemysis@FreeBSD.org
|
|
COMMENT= GUI frontend for the Nmap scanning utility
|
|
|
|
LICENSE= GPLv2
|
|
|
|
RUN_DEPENDS= nmap:${PORTSDIR}/security/nmap \
|
|
${PYTHON_PACKAGENAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3
|
|
|
|
WRKSRC= ${WRKDIR}/${DISTNAME}/${PORTNAME}
|
|
|
|
USES= dos2unix python tar:bzip2
|
|
DOS2UNIX_GLOB= *.xml
|
|
USE_GNOME= pygtk2
|
|
USE_PYTHON= autoplist distutils
|
|
|
|
OPTIONS_DEFINE= NLS
|
|
OPTIONS_SUB= yes
|
|
|
|
NLS_CONFIGURE_ENABLE= nls
|
|
NLS_USES= gettext
|
|
|
|
SUB_FILES= zenmap-root
|
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
post-extract:
|
|
@${RM} -f ${WRKSRC}/install_scripts/unix/su-to-zenmap.sh
|
|
@${CP} -a ${FILESDIR}/pc-su ${WRKSRC}/install_scripts/unix/su-to-zenmap.sh
|
|
|
|
post-patch:
|
|
@${FIND} ${WRKSRC} -name '*.py' -or -name '*.pyw' | ${XARGS} \
|
|
${REINPLACE_CMD} -e 's|^.*#!.*python.*$$|#!${PYTHON_CMD}|'
|
|
@${REINPLACE_CMD} -e 's|^.*#!.*python.*$$|#!${PYTHON_CMD}|' \
|
|
${WRKSRC}/zenmap
|
|
@${FIND} ${WRKSRC}/../ndiff -name '*.py' | ${XARGS} \
|
|
${REINPLACE_CMD} -e 's|^.*#!.*python.*$$|#!${PYTHON_CMD}|'
|
|
@${REINPLACE_CMD} -e 's|su-to-zenmap.sh|zenmap-root|; \
|
|
s| %F||' \
|
|
${WRKSRC}/install_scripts/unix/zenmap-root.desktop
|
|
@${REINPLACE_CMD} -e 's|Security;|Security;System;|' \
|
|
${WRKSRC}/install_scripts/unix/zenmap-root.desktop \
|
|
${WRKSRC}/install_scripts/unix/zenmap.desktop
|
|
@${REINPLACE_CMD} \
|
|
-e '/self.create_uninstaller/s|^|#|; \
|
|
s|distutils\.command\.install |setuptools\.command\.install |; \
|
|
s|self.saved_prefix, pixmaps_dir, ||' \
|
|
${WRKSRC}/setup.py
|
|
@${REINPLACE_CMD} \
|
|
-e 's|share/man/man1|man/man1|; \
|
|
s|"install": checked_install||' \
|
|
${WRKSRC}/../ndiff/setup.py
|
|
@${FIND} ${WRKSRC} -name "*.bak" -delete
|
|
@${FIND} ${WRKSRC}/../ndiff -name "*.bak" -delete
|
|
|
|
.if ! ${PORT_OPTIONS:MNLS}
|
|
@${REINPLACE_CMD} -i '' '/locale_dir, mo_find, /d' ${WRKSRC}/setup.py
|
|
.endif
|
|
|
|
post-install:
|
|
${INSTALL_SCRIPT} ${WRKDIR}/zenmap-root ${STAGEDIR}${PREFIX}/bin/
|
|
@(cd ${STAGEDIR}${DATADIR} && ${CHMOD} 754 su-to-zenmap.sh)
|
|
${INSTALL_MAN} ${WRKSRC}/../docs/zenmap.1 \
|
|
${STAGEDIR}${MAN1PREFIX}/man/man1/
|
|
@(cd ${WRKSRC}/../ndiff \
|
|
&& ${PYTHON_CMD} setup.py install --prefix=${STAGEDIR}${PREFIX})
|
|
@(cd ${STAGEDIR}${PYTHON}${PYTHON_SITELIBDIR} && ${RM} ndiff.pyc)
|
|
@(cd ${STAGEDIR}${PYTHON}${PYTHON_SITELIBDIR} && ${PYTHON_CMD} -m compileall .)
|
|
@(cd ${STAGEDIR}${PYTHON}${PYTHON_SITELIBDIR} && ${PYTHON_CMD} -O -m compileall .)
|
|
|
|
${INSTALL_DATA} ${_DISTDIR}/${PORTNAME}.png \
|
|
${STAGEDIR}${PREFIX}/share/pixmaps/
|
|
|
|
.include <bsd.port.mk>
|