FS#34693 - [pacman] [makepkg] wrong description in manpage PKGBUILD for VCS source url
Attached to Project:
Pacman
Opened by Lone_Wolf (Lone_Wolf) - Monday, 08 April 2013, 23:48 GMT
Last edited by Allan McRae (Allan) - Thursday, 11 April 2013, 23:48 GMT
Opened by Lone_Wolf (Lone_Wolf) - Monday, 08 April 2013, 23:48 GMT
Last edited by Allan McRae (Allan) - Thursday, 11 April 2013, 23:48 GMT
|
Details
pacman 4.1.0-2
from man PKGBUILD : USING VCS SOURCES Building a developmental version of a package using sources from a version control system (VCS) is enabled by specifying the source in the form source=('folder::url#fragment'). Currently makepkg supports the bzr, git, hg and svn protocols. The source URL is divided into three components: folder (optional) Specifies an alternate folder name for makepkg to download the VCS source into. --------------------- The above text suggests that you can use an arbitrary folder for the checkout, (as is the case with non-vcs sources) but if you use a folder it NEEDS to be the same as used in the svn checkout command given by upstream. example : svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm The correct source for this in PKGBUILD source array is : llvm::svn+http://llvm.org/svn/llvm-project/llvm/trunk however llvm-amdgpu-svn::svn+http://llvm.org/svn/llvm-project/llvm/trunk fails . Please clarify the difference between the use of folder::VCS and folder::sourcefile . Maybe use something like upstream_folder for VCS instead of plain folder ? |
This task depends upon
==> Retrieving sources...
-> Cloning llvm-amdgpu-svn svn repo...
A llvm-amdgpu-svn/bindings
A llvm-amdgpu-svn/bindings/README.txt
Everything is being downloaded into the llvm-amdgpu-svn directory as requested.
(i was working on adapting both git and svn packages to pacman 4.1 VCS sources)
for git you have to use the #fragment to get a specific branch, while for svn you have to change the url to checkout a specific branch.
fictional example :
i wnat the git branch test1 of git://myproject.com into folder my_test :
my_test::git://myproject.com/#branch=test1
i want the svn branch test1 of svn://myproject.com into folder my_test :
my_test::svn://myproject.com/branches/test1
so this is not a bug in makepkg, but due to the differences between git and svn wrt branch/tags handling .
Since there maybe more people that get confused by this, what is the best place to document this :
the PKGBUILD manpage or a wiki page ?
If a wiki page, which page would you recommend ?