Summary: | [bsd.port.mk] USE_GITHUB feature not fully implemented | ||
---|---|---|---|
Product: | Documentation | Reporter: | Shane <FreeBSD> |
Component: | Books & Articles | Assignee: | freebsd-ports-bugs (Nobody) <ports-bugs> |
Status: | Closed Overcome By Events | ||
Severity: | Affects Only Me | ||
Priority: | Normal | ||
Version: | Latest | ||
Hardware: | Any | ||
OS: | Any |
Description
Shane
2012-10-22 18:50:01 UTC
Responsible Changed From-To: freebsd-ports-bugs->portmgr Over to maintainer(s). As redports is still down you can get the port files I mention from https://github.com/sambler/sambler-redports/tree/master/graphics/blender-sambler Infrastructure PR. I implemented this r387742. Not sure if I'm missing something but I can't get this to work right. Testing with only the following in the Makefile - PORTNAME= blender-sambler PORTVERSION= 2.74 PORTREVISION= 4 CATEGORIES= graphics multimedia USE_GITHUB= yes GH_ACCOUNT= sambler:base # sambler:addons \ # sambler:contrib \ # sambler:trans GH_PROJECT= myblender:base # myblenderaddons:addons \ # myblendercontrib:contrib \ # myblendertranslations:trans GH_TAGNAME= sambler-${PORTVERSION}.${PORTREVISION}:base # addons-${PORTVERSION}.${PORTREVISION}:addons \ # contrib-${PORTVERSION}.${PORTREVISION}:contrib \ # translate-${PORTVERSION}.${PORTREVISION}:trans .include <bsd.port.mk> make fetch-urlall-list gives me two url's ## this url is wrong - it looks like GH/${PORTNAME}/${PORTNAME}/tar.gz/${PORTVERSION} https://codeload.github.com/blender-sambler/blender-sambler/tar.gz/2.74?dummy=/blender-sambler-blender-sambler-2.74_GH0.tar.gz http://distcache.FreeBSD.org/ports-distfiles/blender-sambler-blender-sambler-2.74_GH0.tar.gz # this looks right - GH/${GH_ACCOUNT}/${GH_PROJECT}/tar.gz/${GH_TAGNAME} https://codeload.github.com/sambler/myblender/tar.gz/sambler-2.74.4?dummy=/sambler-myblender-sambler-2.74.4_GH0.tar.gz http://distcache.FreeBSD.org/ports-distfiles/sambler-myblender-sambler-2.74.4_GH0.tar.gz If I remove the group name it will download the one item fine. Once I add a group name to just one item I get a duplicate download of the first item, with one of them being wrong. If I uncomment the other items I will get all four correct urls as well as the one extra for the base item. Remove :base, or use :DEFAULT. Is there some place where it tells you to use :base ? So that I can remove it with extreme prejudice... Yes having one item without a group name does fix this, thanks, but I will change the product to documentation for some improvement. Looking through the docs... there isn't any github specific info yet, so I was using the DISTFILES info... In the porters handbook in 5.4.7.1 paragraph 3 - To support this, each entry in DISTFILES may be followed by a colon and a “tag name”. Each site listed in MASTER_SITES is then followed by a colon, and the tag that indicates which distribution files are downloaded from this site. Example 5.4 MASTER_SITES= ftp://ftp1.example.com/:source1 \ http://www.example.com/:source2 DISTFILES= source1.tar.gz:source1 \ source2.tar.gz:source2 Example 5.5 MASTER_SITES= ftp://ftp.example.com/:source1 \ http://www.example.com/:source2 DISTFILES= source1.tar.gz:source1 \ source2.tar.gz:source2 \ source3.tar.gz:source2 That is the most visible section and states "Each site listed in MASTER_SITES is then followed by a colon, and the tag..." which implies that each item gets a non-default group name (as I was trying). Later, example 5.7 does show items using no group and DEFAULT group, this is getting into more detailed info and could be skipped by many people. Also 5.4.7.2 -> 3 says Elements without a postfix are groupless, they all belong to the special group DEFAULT. Any elements postfixed with DEFAULT, is just being redundant unless an element belongs to both DEFAULT and other groups at the same time (check item 5). These examples are equivalent but the first one is preferred: MASTER_SITES= alpha MASTER_SITES= alpha:DEFAULT Followed by section 4 - Groups are not exclusive, an element may belong to several different groups at the same time and a group can either have either several different elements or none at all. The double "either" could be changed there. I guess this is the closest part to what you refer, but I don't see mention of "don't add a group name to one element" or that one element "must be DEFAULT or nameless", in fact it states "a group can ... have ... none at all". Before the GH_* group support was added I was using MASTER_SITES and DISTFILES setup with the same four groups I applied to the GH_* variables. That implies that the GH_* variables differ from the other variables supporting groups. If you are adjusting the docs maybe you could also add some info for multiple parts to 5.4.2.3. USE_GITHUB. If requiring one DEFAULT group is unique to USE_GITHUB I think this would be the best place to explain that. github variables could also be added to the variable list in 5.4.7.2 -> 7 I think that is all the relevant parts of the porters handbook. |