Bug 207825 - make makesum creates duplicate distinfo entry (for GH_PROJECT)
Summary: make makesum creates duplicate distinfo entry (for GH_PROJECT)
Status: Closed Feedback Timeout
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Ports Framework (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: Port Management Team
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-09 02:04 UTC by Christopher Hall
Modified: 2016-04-13 11:35 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christopher Hall 2016-03-09 02:04:47 UTC
If the GH_PROJECT contains a entry that is the same as the PORTNAME
then "make makesum" creates duplicate entries for the main archive.

My Makefile contains the lines:

  PORTNNAME = miniature-spoon
  GH_PROJECT = miniature-spoon:miniature_spoon

After removing the file fro distfiles and running "make fetch" I see the following error:

  ===>   miniature-spoon-1.0 depends on file: /usr/local/sbin/pkg - found
  => bitmark-inc-miniature-spoon-v1.0_GH0.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
  => Attempting to fetch https://codeload.github.com/bitmark-inc/miniature-spoon/tar.gz/v1.0?dummy=/bitmark-inc-miniature-spoon-v1.0_GH0.tar.gz
  fetch: 6535: No such file or directory
  bitmark-inc-miniature-spoon-v1.0_GH0.tar.gz   100% of 6535  B  102 MBps 00m00s
  => Attempting to fetch http://distcache.FreeBSD.org/ports-distfiles/bitmark-inc-miniature-spoon-v1.0_GH0.tar.gz 
  fetch: 6535: No such file or directory
  fetch: http://distcache.FreeBSD.org/ports-distfiles/bitmark-inc-miniature-spoon-v1.0_GH0.tar.gz: Not Found
  => Couldn't fetch it - please try to retrieve this
  => port manually into /usr/ports/distfiles/ and try again.
  *** Error code 1

  Stop.

The file is actually downloaded but this error is produced:

  fetch: 6535: No such file or directory

Took me some hours to realise that the number is not an error code bu the name of the file
fetch is trying to download - al lot of searches based on the above error produced nothing.

Looking at "make fetch-list" I see that there are two fetches for the same file and
that command is called like:

  /usr/bin/fetch -Fpr -S 6535 6535 https://codeload.github.com/

As can be seen the file size gets included twice; I checked by changing the sizes to be different
values and determined that one size is from each entry in distinfo.

The FIX: "DO NOT add a ${PORTNAME} entry to the GH_PROJECT list"

Hopefully this report will be found next time I try to search for the same error :)
Comment 1 Mathieu Arnold freebsd_committer 2016-03-09 11:00:23 UTC
It looks like the normal behavior.

The default distfile should not have a group appended, and if it has, it should be DEFAULT, not anything else.
Comment 2 Mathieu Arnold freebsd_committer 2016-03-09 11:02:48 UTC
Thinking again, if you *really* want to put a group that is not DEFAULT for the default distfile, which you should not do, so, I am writing this for posterity, you can use USE_GITHUB=nodefault it will not set the default distfile.

But it is a BAD IDEA, and you SHOULD NOT DO IT, because then, many things are not done, like setting DISTNAME, or WRKSRC properly.