You are not logged in.
Hi there,
I have some questions about cvs daily snapshot.
The problem is for the package eo-snapshot in AUR
Here is the PKGBUILD
# Contributor: Sebastien Piccand <sebcactus@gmail.com>
pkgname=eo-snapshot
pkgver=20060411
_ver=11Apr2006
pkgrel=1
pkgdesc="EO is a templates-based, ANSI-C++ compliant evolutionary computation library"
url="http://eodev.sourceforge.net/"
license="LGPL"
depends=()
source=(http://www.lri.fr/~marc/EO/snapshot/eo_src.tgz)
md5sums=('f4e001d00405292712e5a62599749c3d')
build() {
cd $startdir/src/eo${_ver}
./autogen.sh
./configure --prefix=/usr
make || return 1
make DESTDIR=$startdir/pkg install
}
I have to remove the _ver variable which is not required.
I have to use the daily snapshot because:
1. The stable version does not compile
2. I don't have access to CVS
The version(=folderOfSources=date) of the package is a bit weird and stored as:
11Apr2006.
I was asked to change the version so I moved it to 20060411 which seems to be the case for the usual snapshots.
I used the variable _ver so that one has just have to modify the beginning of the PKGBUILD when a new snapshot comes. But it is definitely not really needed so I have to remove it, which means you have to edit the build() function at each snapshot.
A workaround is to use
cd $startdir/src/eo*
instead of
cd $startdir/src/eo11Apr2006
in the build(function)
In this case now the version of the snapshot is only discriminated by:
1. the pkgver
2. the md5sum
But the package is updated daily and there should be a way to simplify the update process. The daily snapshot does not contain the date so we can't have access to the previous snapshot.
Can I, as for the CVS versions, use an empty md5sum() and just the date for the pkgver ?
Or should the package be a mess to maintain ?
Thanks
Offline
When you say you don't have access to CVS, do you mean that the EO project does not provide CVS access, or that you can't access it for some reason? Typically, SF projects use SF's CVS service.
Re the md5sum, you can use an empty one. Make sure it is clearly stated in your comments.
<edit>
I've just checked out the current CVS code, so it's definitely available. If you want to write a CVS PKGBUILD for it, I'll build it for you, and upload the package for you to test.
Offline
Sorry - I forgot about the $startdir/src/eo* part of your question. If you want/have to stick with the daily snapshot, here's a bit of bash trickery that you could use:
cd $startdir/src/eo`date -d $pkgver +%d%b%Y`
Offline
Hi,
Sorry I was away. Thanks for the help
About the CVS stuff, I only have access to the Internet from the University and they have a proxy+firewall that prevents me from using CVS.
I think that a true CVS package would be better for the community but I can't test/use it
For the moment I will stick with the daily snapshot and use your trick, thanks.
Offline
I think that a true CVS package would be better for the community but I can't test/use it
Well, my previous offer stands - I'd be happy to build it, using my CVS access and your PKGBUILD, and then upload it somewhere for you to test.
Offline
Thanks I will give it a try.
Offline
Here is the cvs pkgbuild
# Contributor: Sebastien Piccand <sebcactus>
pkgname=eo-cvs
pkgver=20060419
pkgrel=1
pkgdesc="EO is a templates-based, ANSI-C++ compliant evolutionary computation library"
url="http://eodev.sourceforge.net/"
license="LGPL"
source=()
md5sums=()
conflicts=('eo-snapshot' 'galib')
provides=('eo')
makedepends=('cvs')
_cvsroot=":pserver:anonymous:@cvs.sourceforge.net:/cvsroot/eodev"
_cvsmod="eo"
build() {
cd $startdir/src
msg "Connecting to $_cvsmod.sourceforge.net CVS server...."
cvs -z3 -d $_cvsroot co -D $pkgver -f $_cvsmod
cd $_cvsmod
./autogen.sh
msg "CVS checkout done or server timeout"
msg "Starting make..."
cp -r ../$_cvsmod ../${_cvsmod-build}
cd ../${_cvsmod-build}
./configure --prefix=/usr
make || return 1
make DESTDIR=$startdir/pkg install
}
Offline
Thanks - here's the package:
eo-cvs-20060419-1.pkg.tar.gz
md5sum: 122cd8c28333f65fd64ac40ea9a6b1ff
Offline
Thanks a lot.
The package is working.
I now have some questions about the provides() and conflicts() fields of some packages.
Here are 2 packages I put on AUR recently: eo-snapshot, eo-cvs
I am thinking of removing eo-snapshot but it can be good to keep it for people who don't have access to CVS.
In this case eo-snapshot and eo-cvs will conflict. Once a new, working, stable version of eo will be out, I (or anybody) will probably make a package (called eo).
So I am thinking of using the fields provides=('eo') for both packages, and conflicts=('eo-snapshot') or ('eo-cvs')
Is it the right thing to do ?
An other question:
libge can use galib if it is compiled with galib support, so should I make a libge-galib version (with galib in makedepends) or put a comment somewhere (where) that asks the user to install galib before building libge to enable the galib support ?
An other one
eo-cvs(or eo-snapshot) and galib both provide a /usr/lib/libga.a file, so they conflict with one another. Is there any workaround to install both?
Offline