Created attachment 147669 [details] incomplete fix According to make(1) manpage Since make will chdir(2) to ‘.OBJDIR’ before executing any targets, each child process starts with that as its current working directory. and absolute paths are more commonplace in ports without an explicit |cd|. $ export MAKEOBJDIRPREFIX=$HOME/.cache $ export WRKDIRPREFIX=$HOME/.cache $ make -V .OBJDIR /home/foo/.cache/p/security/vuxml $ mkdir /home/foo/.cache/p/security/vuxml $ make validate /bin/sh /p/security/vuxml/files/tidy.sh "/p/security/vuxml/files/tidy.xsl" "/p/security/vuxml/vuln.xml" > "/p/security/vuxml/vuln.xml.tidy" >>> Validating... /usr/local/bin/xmllint --valid --noout /p/security/vuxml/vuln.xml >>> Successful. Checking if tidy differs... ... seems okay Checking for space/tab... ... seems okay /usr/local/bin/python2.7 /p/security/vuxml/files/extra-validation.py Traceback (most recent call last): File "/p/security/vuxml/files/extra-validation.py", line 8, in <module> tree = ET.parse('vuln.xml') File "/usr/local/lib/python2.7/xml/etree/ElementTree.py", line 1182, in parse tree.parse(source, parser) File "/usr/local/lib/python2.7/xml/etree/ElementTree.py", line 647, in parse source = open(source, "rb") IOError: [Errno 2] No such file or directory: 'vuln.xml' *** Error code 1 Stop.
Auto-assigned to maintainer ports-secteam@FreeBSD.org
Created attachment 147670 [details] workaround
A commit references this bug: Author: delphij Date: Fri May 22 07:04:29 UTC 2015 New revision: 386985 URL: https://svnweb.freebsd.org/changeset/ports/386985 Log: Pass full path to the vuln.xml file to extra-validation.py. Without this, if .OBJDIR differs from .CURDIR, the validation would fail. PR: 193923 Reported by: jbeich Changes: head/security/vuxml/Makefile head/security/vuxml/files/extra-validation.py
Fixed differently, thanks for your submission!