USE_GITHUB and submodules

Mathieu Arnold mat at FreeBSD.org
Tue May 19 21:35:19 UTC 2015


+--On 19 mai 2015 16:14:58 -0230 Jonathan Anderson <jonathan at FreeBSD.org>
wrote:
| Hi all,
| 
| Is there a mechanism for using the USE_GITHUB variable in a port that
| depends on submodules? For instance, the Rust port requires an embedded
| (and modified) version of LLVM, which it includes as a submodule. Right
| now I'm attempting to add the following to a `post-extract` rule:
| 
| post-extract:
|     cd ${WRKSRC} && \
|     git init && \
|     git remote add origin https://github.com/${GH_ACCOUNT}/${PORTNAME} &&
| \     git fetch && \
|     git reset --hard ${PORTVERSION} && \
|     git submodule init && \
|     git submodule update --recursive
| 
| But this seems quite hackish! It would be great if submodules Just
| Worked... but alternatively, is there a USE_GITHUB_URL or somesuch that
| would check things out via Git instead of tarball to save me the `git
| init` through `git reset` steps?

You should not do it that way.  First, when building on the cluster, you
only have network access during the *fetch targets.  Second, you should
fetch all the different submodules by URL, and move them at the right place
in post-extract, or something, see sysutils/consul for example.  I know,
it's aweful, but it's how it should be done for now.

-- 
Mathieu Arnold


More information about the freebsd-ports mailing list