running make makesum for multiple github repos

Willem Jan Withagen wjw at digiware.nl
Sun Nov 27 12:57:20 UTC 2016


On 27-11-2016 13:34, Mathieu Arnold wrote:
> Le 27/11/2016 à 12:57, Willem Jan Withagen a écrit :
>> On 26-11-2016 21:10, Mathieu Arnold wrote:
>>> Le 25/11/2016 à 12:46, Willem Jan Withagen a écrit :
>>>> Hi,
>>>>
>>>> I'm try in to make a port for Ceph, but it depens on a lot of github
>>>> modules.
>>> From having a quick look at the GH_TUPLE, it seems you have duplicate
>>> tags, the fourth field.  You seem to always put :ceph, but it *must* be
>>> unique.
>>>
>>> Also, you are using master at least twice, you must not use branch
>>> names, you must put tags or commit hashes.
>> Hi Mathieu,
>>
>> Your remarks pushed me in the right direction.
>> I needed to fix two things:
>> Fetching all the repos, and they needed to be IN the tree that is
>> fetched with master.
>>
>> So indeed the fourth field (which is called group) needs to be
>> different, then all the repos are fetched. Placing them in
>> subdirectories of ${WRKSRC} is done by adding the path after a / after
>> the group.
>>
>> IMHO a sort of an illogical last element of GH_TUPLE. And perhaps
>> deserves a bit/lot more explaining in the handbook.
> 
> It is all documented in the USE_GITHUB section[1] of the Porter's
> Handbook. The format of GH_TUPLE is described there too, and there are a
> few examples, including one extended one describing what you are trying
> to do.

I have reread the section, but still cannot really understand what I did
from the text... But that perhaps says more about me. :)

Perhaps it would help if the group/subdir is a more verbosely explained.
It, for one, does not tell that group needs to be exclusive for each
repo. And I still have no clue as to its function.

In the fourth field the group is required, and subdir is optional.

> The GH_TUPLE format is a bit strange, I agree, but the subdirectory
> could not be put in another place because the third field (commit or
> tag) can contain a / (there are a few examples in the tree), and the
> path can contain a : (I stumbled upon one).
> Also, GH_SUBDIR is optional, and it was a bad idea to put an optional
> part in the middle of the string.
> (And I'm not talking about the fact that GH_SUBDIR is newer than
> GH_TUPLE, and that backward compatibility needed to be kept.)

GH_TUPLE is also not very often used in the ports. So there are not that
many examples to find. And I appreciate backwards compatibility, and
starting to escape chars will not make it more ledgible.

>> It now looks like:
>> GH_TUPLE+=      ceph:xxHash:v0.5.1-2-g1f40c65:xxHash/src/xxHash
>> GH_TUPLE+=      ceph:isa-l:v2.16.0:isal/src/isa-l
>> GH_TUPLE+=      ceph:lua:lua-5.3-ceph:lua/src/lua
>> GH_TUPLE+=      ceph:Beast:999e2fa:Beast/src/Beast
>> GH_TUPLE+=      boostorg:boost:boost-1.61.0-275-g1790aff:boost/src/boost
>> GH_TUPLE+=      ceph:dpdk:a38e5ec:dpd/src/dpd
> 
> 1:
> https://www.freebsd.org/doc/en/books/porters-handbook/makefile-distfiles.html#makefile-master_sites-github
> 

That is where i got my info...

Thanx,
--WjW


More information about the freebsd-ports mailing list