Am 22.06.2019 um 11:58 schrieb Matthias Fechner: > What is the correct way to getting these dependencies fetched and > correctly included into the work-source in the fetch step using go?
Here a short summary what I had to do to build the port successfully with go deps. Thanks a lot for all that helped here! Add: USES= go:modules I had to use this USES as the port is using gmake to build everything: USES= gmake go:modules,no_targets As gmake is used, the GOFLAGS must be passed to gmake with: MAKE_ENV= GOFLAGS="${GO_BUILDFLAGS}" The port uses gitlab to fetch the distfiles, so I had to tell the ports that github is not the default: USE_GITHUB= nodefault The next step is then to create the GH_TUPLE and GL_TUPLE (depending where the go libs are hosted, for they were on github and gitlab). For this a very handy tool from Dmitri is existing: ports-mgmt/modules2tuple To simplify it, I create a new target: gomod-deps: patch (cd ${WRKSRC} && go mod vendor) (cd ${WRKSRC} && modules2tuple vendor/modules.txt) Just execute `make gomod-deps` and you should see the required GH/GL_TUPLE lines. For the GL_TUPLE lines I had to put in the full length for the commit hash, as the short one does not work. I'm not sure if this is a port problem or a gitlab limitation, a task for later to look into it. The last section of the TUPLE line must not contain the character `-` if this is the case, replace it by a `_`. I think the script from Dmitri is doing this already for the GH_TUPLE lines. Put the TUPLE lines into the Makefile, run `make makesum` and your port should be prepare to be able to build. If you need a full example, please have a look into devel/gitaly. Have fun and thanks again to all that helped me! Gruß Matthias -- "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning." -- Rich Cook
signature.asc
Description: OpenPGP digital signature