FS#12440 - [vim] PKGBUILD doesn't build - _patchlevel almost always wrong
Attached to Project:
Arch Linux
Opened by Isaac G (IsaacG) - Sunday, 14 December 2008, 03:00 GMT
Last edited by Tobias Kieslich (tobias) - Sunday, 13 September 2009, 22:40 GMT
Opened by Isaac G (IsaacG) - Sunday, 14 December 2008, 03:00 GMT
Last edited by Tobias Kieslich (tobias) - Sunday, 13 September 2009, 22:40 GMT
|
Details
Description:
vim PKGBUILD file defines a _patchlevel and the fetch_patches.sh buildscript requires the _patchlevel to be equal to the number of patches found on vim.org[1] which is rarely ever true since vim.org[1] is constantly adding patches. Suggestion: set _patchlevel based on the patch file from vim.org [1] ftp://ftp.vim.org/pub/vim/patches/MD5SUMS |
This task depends upon
Closed by Tobias Kieslich (tobias)
Sunday, 13 September 2009, 22:40 GMT
Reason for closing: Implemented
Additional comments about closing: It will always build what you ask for, but it will warn you and stall for 10 seconds if you actually build an older version than what is available online.
Sunday, 13 September 2009, 22:40 GMT
Reason for closing: Implemented
Additional comments about closing: It will always build what you ask for, but it will warn you and stall for 10 seconds if you actually build an older version than what is available online.
[1] pkgver=${_srcver}.${_patchlevel}
[2] depends=("vi>=${pkgver}" 'perl' 'python' 'acl')
If upstream adds a patch in the time you're building gvim and vim, you'll have to redo the whole package. This is also true when someone else needs to do an architecture rebuild for x86_64 for example.
Is ABS supposed to provide a simple, always working, mechanism for compiling packages on your own?
Or is the aim of the ABS to allow people to build the latest package, without as much emphasis on it always being straightforward and always working?
The PKGBUILD should be able to build the same package as one sees in the repos.
ftp://ftp.vim.org/pub/vim/patches/MD5SUMS
provides:
An error occurred while loading ftp://ftp.vim.org/pub/vim/patches/MD5SUMS:
Could not connect to host ftp.vim.org.
which leads to :
http://ftp.vim.org giving:
ftp.vim.org has been registered for future usage.
Couldn't find a mirror that worked
My guess their ftp server is down. Nothing wrong with our PKGBUILD files on that part.
I visited #vim on FreeNode and it seems it might be a DNS record or something.
Try 192.87.102.43 and 192.87.102.42
the wole build thing is madness and extremely hackish in order to force vim's source structure into our PKGBUILD way. I have this check in there to make sure that we always build the absolutely latest version of vim. in Theory there shall never be a reason to build older versions, because any new version is pretty much a bug fix. I agree with Jan that in theory it breaks ABS, yet for me it was always the most practical way as it allows me to make sure I'm uptodate and I can find out the most recent version number just from the scripts output. If it makes people happy I can remove it, it's just a tad more work for me to build it then. Either way I'm not religious about it.
ba91b19374cee90f71b8f4ab1d92dc0f 7.2.001-100.gz
looks like they added a compressed patch to the list and fetch_patches can not process it
adding this
sed -i '/7.2.001-100.gz/d' MD5SUMS
to fetch_patches.sh will let it build but you will miss that patch
That way the PKGBUILD always stays consistent with the package. And it is very easy to update, just get the new MD5SUMS file.
Maybe the patchlevel variable could then be dropped.
As for that .gz patch, it should be easy to support. It might be even possible to do something funny like this :
(zcat $patch 2>/dev/null || cat $patch) | patch -p1 :)
You can now build the package with any patchlevel you want to.
This one uses patch collections mentioned in MD5SUMS as .gz to speed up download of the patches.