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.


Reply via email to