On 02/13/16 08:14, Antoine Jacoutot wrote: > On Sat, Feb 13, 2016 at 01:35:38AM +0100, Dmitrij D. Czarkoff wrote: >> Antoine Jacoutot said: >>> unset GOPATH; export >>> GOPATH="/exopi-obj/pobj/xlsx2csv-20150225/go:/usr/local/go-pkg"; go install >>> -x github.com/tealeg/xlsx2csv >>> WORK=/tmp/go-build671266662 >>> mkdir -p $WORK/github.com/tealeg/xlsx/_obj/ >>> mkdir -p $WORK/github.com/tealeg/ >>> cd /usr/local/go-pkg/src/github.com/tealeg/xlsx >>> /usr/local/go/pkg/tool/openbsd_amd64/compile -o >>> $WORK/github.com/tealeg/xlsx.a -trimpath $WORK -p github.com/tealeg/xlsx >>> -complete -buildid 90518c0c038b7176e8b01fb5b752aef4df0eb80d -D >>> _/usr/local/go-pkg/src/github.com/tealeg/xlsx -I $WORK -pack ./cell.go >>> ./col.go ./date.go ./doc.go ./file.go ./hsl.go ./lib.go ./reftable.go >>> ./row.go ./sheet.go ./style.go ./templates.go ./theme.go ./write.go >>> ./xmlContentTypes.go ./xmlSharedStrings.go ./xmlStyle.go ./xmlTheme.go >>> ./xmlWorkbook.go ./xmlWorksheet.go >> >> For some reason go tries to rebuild github.com/tealeg/xlsx package >> (textproc/go-xlsx). This should never happen, and it indeed never >> happens on my machine. Interestingly, similar thing happened before >> (http://article.gmane.org/gmane.os.openbsd.ports/77273), and I couldn't >> reproduce it back then either. Maybe something uncommon in your >> environment? > > $ cat /etc/mk.conf > > > BSDSRCDIR=/exopi-cvs/src > XSRCDIR=/exopi-cvs/xenocara > PORTSDIR=/exopi-cvs/ports > BSDOBJDIR=/exopi-obj/obj > XOBJDIR=/exopi-obj/xobj > WRKOBJDIR=/exopi-obj/pobj > MASTER_SITE_OPENBSD=http://ftp.fr.openbsd.org/pub/OpenBSD/distfiles/ > .include "${PORTSDIR}/infrastructure/templates/mk.conf.template" > > dpb host file: > COLOR=1 > DEFAULT build_user=_pbuild stuck=10800 > FETCH_USER=_pfetch > LOG_USER=exopi > STARTUP=/home/exopi/bin/exo-cleanhost > localhost > exopi-1 > exopi-2 > exopi-3 > exopi-4 > exopi-5 > exopi-6 > exopi-7 > > "/exopi-cvs" is NFS mounted > > I wouldn't call this particularly uncommon... > You said that "This should never happen" -- ok but why, because it does; so > what would trigger a rebuild like this? I don't know the first thing about > the go build system. > Once we know that, then we can start hunting. >
$ doas touch -t 201501010000 /usr/local/go-pkg/pkg/openbsd_amd64/github.com/tealeg/xlsx.a That's the one way I found to get the same error. So does install go-xlsx and touch xlsx.a get rid of the problem. To ensure xlsx.a is newer than /usr/local/go-pkg/src/xlsx maybe look at pkg_info -f go-xlsx and time stamps. My package they are all the same. I don't have any nfs. xlsx.a only needs to be one second earlier to cause the problem. $ stat /usr/local/go-pkg/pkg/openbsd_amd64/github.com/tealeg/xlsx.a 1033 2463041 -r--r--r-- 1 root bin 9827192 1113336 "Feb 13 09:17:02 2016" "Feb 10 22:19:12 2016" "Feb 13 09:06:14 2016" 32768 2240 0 /usr/local/go-pkg/pkg/openbsd_amd64/github.com/tealeg/xlsx.a $ doas touch -t 201602102219.11 /usr/local/go-pkg/pkg/openbsd_amd64/github.com/tealeg/xlsx.a $ stat /usr/local/go-pkg/pkg/openbsd_amd64/github.com/tealeg/xlsx.a 1033 2463041 -r--r--r-- 1 root bin 9827192 1113336 "Feb 10 22:19:11 2016" "Feb 10 22:19:11 2016" "Feb 13 09:57:10 2016" 32768 2240 0 /usr/local/go-pkg/pkg/openbsd_amd64/github.com/tealeg/xlsx.a That was enough to cause the problem. lang/go/go.port.mk has MODGO_INSTALL_TARGET = ${INSTALL_DATA_DIR} ${MODGO_PACKAGE_PATH}; \ cp -R ${MODGO_WORKSPACE}/pkg \ ${MODGO_WORKSPACE}/src \ ${MODGO_PACKAGE_PATH}; could try changing pkg and src order if seeing a very small time difference or use two separate cp's MODGO_INSTALL_TARGET = ${INSTALL_DATA_DIR} ${MODGO_PACKAGE_PATH}; \ cp -R ${MODGO_WORKSPACE}/src \ ${MODGO_PACKAGE_PATH}; \ cp -R ${MODGO_WORKSPACE}/pkg \ ${MODGO_PACKAGE_PATH}; I can't repeat the problem just building so can't check any of this is or solves the problem.