You are not logged in.

#1 2005-03-16 16:24:41

luisfeser
Member
From: Spain / España
Registered: 2004-02-21
Posts: 53

How to replace a program version with a cvs version??

Hello all,

I'm using amule-cvs make with this PKGBUILD:

pkgname=amule
pkgver=cvs
pkgrel=5
pkgdesc="aMule is a eMule-like client for ed2k p2p network"
url="http://www.amule.org"
license="GPL"
depends=('wxgtk' 'curl>=7.12.0' 'libjpeg' 'libtiff'
         'perl' 'x-server' 'gd>=2.0.0' 'crypto++')
source=(http://www.hirnriss.net/files/cvs/aMule-CVS-20050315.tar.bz2)

build() {
  cd $startdir/src/amule-$pkgver
  ./configure --prefix=/usr --disable-embedded_crypto --enable-amulecmd --enable-webserver --enable-optimise --enable-amule-daemon
  make || return 1
  make prefix=$startdir/pkg/usr install
}

And works well, but the problem is when i do a "pacman -Su" it say that want to install (upgrade) amule-cvs with amule-rc8.
What can i do in my PKGBUILD for solve it??

may be the option "replaces=()" that i can see in PKGBUILD.proto??

Thanks smile

Offline

#2 2005-03-16 17:02:43

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: How to replace a program version with a cvs version??

ummm it's your versioning....

I usually use:

pkgname=blah-cvs
pkgver=1.1.1.1.1
...
provides=('blah')

so that way the version compar can work... don't use cvs as the version, use something so that the release will overwrite it

Offline

#3 2005-03-16 23:23:07

luisfeser
Member
From: Spain / España
Registered: 2004-02-21
Posts: 53

Re: How to replace a program version with a cvs version??

Thanks phrakture, that works smile

Now i have this:

pkgname=amule-cvs
pkgver=20050316

Offline

#4 2005-03-17 02:33:29

dtw
Forum Fellow
From: UK
Registered: 2004-08-03
Posts: 4,439
Website

Re: How to replace a program version with a cvs version??

I made this but could'nt find anywhere to post it - it automaticaly sets the date as the pkgver and updates the PKGBUILD afterwards:

# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org
pkgname=
pkgver=
pkgrel=
pkgdesc="This will checkout and package the latest CVS version."
url=
license=
depends=()
provides=()
conflicts=
makedepends=('cvs')

cvsmod=""
cvsroot=""

build() {
  cd $startdir/src
  touch ~/.cvspass
  cvs -d $cvsroot login
  msg "Connecting to $cvsmod CVS server...."
  cvs -z3 -d $cvsroot/$cvsmod co $cvsmod
  cd $cvsmod
  ./autogen.sh

  msg "CVS checkout done or server timeout"
  msg "Starting make..."

  rm -r ../$cvsmod-build
  mkdir ../$cvsmod-build

  cd ../$cvsmod-build
  ../$cvsmod/configure --prefix=/usr
  make || return 1
  make DESTDIR=$startdir/pkg install

  # Correct the pkgver in our PKGBUILD - this allows correct gensync operation
  # NOTE: pkgver variable must be declared with first 10 lines of PKGBUILD!
  cd $startdir
  old_pkgver=$pkgver
  pkgver=`date +%m%d%y`
  sed -i "1,11 s|pkgver=$old_pkgver|pkgver=$pkgver|" ./PKGBUILD
}
# vim:syntax=sh

Offline

Board footer

Powered by FluxBB