Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 May 2015 10:16:18 +0930
From:      Shane Ambler <FreeBSD@ShaneWare.Biz>
To:        Jonathan Anderson <jonathan@FreeBSD.org>, freebsd-ports@freebsd.org
Subject:   Re: USE_GITHUB and submodules
Message-ID:  <555BD95A.6010706@ShaneWare.Biz>
In-Reply-To: <555B84AA.30901@FreeBSD.org>
References:  <555B84AA.30901@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 20/05/2015 04:14, Jonathan Anderson 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:

While you can setup multiple files to be downloaded for a port this
doesn't work with USE_GITHUB, see my 3 year old report -
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=172964

This isn't an official port, but the workaround I came up with was to
setup multiple files by setting MASTER_SITES using --

MASTER_SITES= https://github.com/sambler/myblender/tarball/:base \
     https://github.com/sambler/myblendertranslations/tarball/:trans \
     https://github.com/sambler/myblenderaddons/tarball/:addons \
     https://github.com/sambler/myblendercontrib/tarball/:contrib
DISTFILES= sambler-${PORTVERSION}.${PORTREVISION}:base \
     translate-${PORTVERSION}.${PORTREVISION}:trans \
     addons-${PORTVERSION}.${PORTREVISION}:addons \
     contrib-${PORTVERSION}.${PORTREVISION}:contrib
DIST_SUBDIR= ${PORTNAME}

The DISTFILES names are setup to match my tag format.

This gives you multiple archives for the port, each will be extracted
into the work dir, I then use post-extract to move them into place
within the main source tree and don't depend on git for the port--

post-extract:
# tanslations
     @${MV} ${WRKDIR}/sambler-myblendertranslations-*/*
       ${WRKSRC}/release/datafiles/locale/
# addons
     @${MV} ${WRKDIR}/sambler-myblenderaddons-*/*
       ${WRKSRC}/release/scripts/addons/
# contrib
     @${MV} ${WRKDIR}/sambler-myblendercontrib-*/*
       ${WRKSRC}/release/scripts/addons_contrib/


> 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?
>
> Cheers,
>
>
> Jon
> --
> jonathan@FreeBSD.org
> _______________________________________________
> freebsd-ports@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-ports
> To unsubscribe, send any mail to "freebsd-ports-unsubscribe@freebsd.org"
>


-- 
FreeBSD - the place to B...Software Developing

Shane Ambler




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?555BD95A.6010706>