Pacman

Historical bug tracker for the Pacman package manager.

The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues

This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
Tasklist

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
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

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

Closed by  Allan McRae (Allan)
Thursday, 11 April 2013, 23:48 GMT
Reason for closing:  Not a bug
Comment by Allan McRae (Allan) - Tuesday, 09 April 2013, 00:42 GMT
That source line works just fine:


==> 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.
Comment by Lone_Wolf (Lone_Wolf) - Tuesday, 09 April 2013, 09:55 GMT
I've looked at things again and it seems i mixed up how git and svn deal with branches/tags in the new setup .
(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 ?
Comment by Allan McRae (Allan) - Thursday, 11 April 2013, 23:47 GMT
I believe there is a wiki page about VCS packaging. That would be the best place.

Loading...