[MacPorts] #45353: base - git and mercurial fetching target directory
MacPorts
noreply at macports.org
Sun Oct 12 12:25:14 PDT 2014
#45353: base - git and mercurial fetching target directory
--------------------------+----------------------------
Reporter: and.damore@… | Owner: macports-dev@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: base | Version: 2.3.1
Keywords: base | Port:
--------------------------+----------------------------
Portfetch supports five types of VCS: bazaar, CVS, subversion, mercurial
and git.
Fetch procedures portfetch::gitfetch and portfetch::hgfetch clone the
remote repository into a directory whose name depends on ''$worksrcpath''
This means that if a portfile author sets ''worksrcdir'' to
''${distname}/src/'' because the repository contains its source files in a
subdirectory called ''src/'', then the repository itself gets cloned as
''${distname}/src'' and the actual source files will be stored at
''${distname}/src/src''.
This isn't the expected behavior.
I'm patching portfetch::gitfetch and portfetch::hgfetch so they'll clone
the repository to what would have been the default worksrcdir.
This way setting ''worksrcdir'' to ''${distname}/src'' correctly execute
the phases in ''${worksrcpath}''.
This can potentially break ports with augmented phases that are already
coping with the previous wrong behavior, I'll do a check in dports tree to
see if there are any of those before committing.
Meanwhile any comment is appreciated.
--
Ticket URL: <https://trac.macports.org/ticket/45353>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list