Re: [Ekiga-list] Source snapshots for DEB-SRC



On 10/01/12 00:21, Dima Sorkin wrote:
Hi.
   I would like to try the snapshots for Debian/SID, however no snapshots are for PowerPC. Do Ekiga developers have some kind of 'deb-src' compatible repository, thus I could fullfill the dependencies and build the snapshots from source for my machine (powerpc) with apt-get.

I create snapshots for amd64 and i386.

Here is my script to generate snapshots. See the comments at the beginning to create the directories. Afterwards use ./build to build a snapshot. Feel free to use it for your needs.

--
Eugen
#!/bin/bash
# contact: Eugen Dedu pu-pm univ-fcomte fr
# expects to have original SVN directories ptlib-svn, opal-svn and ekiga-svn
#   and a file 'changelog' inside them.  This can be done with:
# svn co https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/ptlib/branches/v2_10 ptlib-svn
# svn co https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/opal/branches/v3_10 opal-svn
# git clone git://git.gnome.org/ekiga ekiga-svn
# for i in ptlib opal; do cd $i-svn; svn2cl -i -o changelog; cd ..; done

cd ~/softs/ekiga

suff=svn
if [ $# = 0 ]; then
#### 3 modifs made pour non-free
#	dirs="ptlib opal opal-non-free ekiga"
	dirs="ptlib opal ekiga"
elif [ $1 = "opal" ]; then
	dirs="opal opal-non-free ekiga"
elif [ $1 = "opal-non-free" ]; then
	dirs="opal-non-free ekiga"
elif [ $1 = "ekiga" ]; then
	dirs="ekiga"
elif [ $1 = "stable" ]; then
	dirs="ptlib opal opal-non-free ekiga"
    suff=stable
else
	echo "Bad parameter"; exit 3
fi

#check directories
if [ ! -e ptlib-$suff -o ! -e opal-$suff -o ! -e ekiga-$suff ]; then
	echo 'Please do a fresh installation + changelog in *-$suff directories: svn co'
	exit 1
fi

date
if [ $# = 0 -o x$1 = "xstable" ]; then
#svn update, get changelogs
for i in ptlib opal ekiga; do
	echo -n "======== Processing $i..."
	cd $i-$suff
	if [ $i = "ekiga" ]; then
		echo "git pull"
		commit=`git log|head -1|cut -d" " -f2`
		git pull
		git log $commit..
		git log|head -40 >changelog
	else
		echo "svn up"
		REVOLD=`svn info|sed -ne '/^Rev/s,^.* ,,p'`
		svn up
		REVNEW=`svn info|sed -ne '/^Rev/s,^.* ,,p'`
		echo "Updating changelog..."
		if [ $REVOLD -ne $REVNEW ]; then
			svn2cl -r $REVNEW:`expr $REVOLD + 1` -i -o changelog-old-tmp
			# sometimes there is no record even if revisions are different
			if [ `cat changelog-old-tmp | wc -l` -le 2 ]; then
				rm changelog-old-tmp
			else
				cat changelog-old-tmp
			fi
			cat changelog >>changelog-old-tmp
			mv -f changelog-old-tmp changelog
		fi
	fi
	cd ..
done

echo -en "\aContinue? (ctrl-c to stop)  "; date
read
fi

if [ x$1 = "xstable" ]; then
    echo "pt stable: remove pulse from ptlib/control et rules"
    read
fi

date=`date "+%Y%m%d"`
for i in $dirs; do
	echo "Removing $i and $i.orig..."
	rm -rf $i $i.orig

	echo -n "Exporting $i-svn to $i..."
	if [ $i = "ekiga" ]; then
        cp -a $i-$suff $i
        rm -rf $i/.git
	elif [ $i = "opal-non-free" ]; then
		svn export opal-$suff $i
        cp -a opal-$suff/changelog $i
	else
		svn export $i-$suff $i
        cp -a $i-$suff/changelog $i
    fi

	test $i = "opal" && rm -rf $i/plugins/audio/iLBC

    # truncate changelog, since it is too large
    head -100 $i/changelog >$i/changelog.trunc
    mv $i/changelog.trunc $i/changelog

	echo "Creating $i.orig..."
	cp -a $i $i.orig

	cd $i
	echo "Copying debian files in $i and updating the date in debian files..."
	cp -a ../debian/snapshots/$i/debian .
	sed -i "s/20080418/$date/g" debian/changelog
	sed -i "s/Sun, 18 Apr 2008 00:00:00 +0200/`date -R`/g" debian/changelog
	#if [ $i = "ekiga" ]; then sed -i "s/20080418/$date/g" debian/menu; fi

	if [ $i = "ptlib" ]; then
		while dpkg -l|grep libpt-snap >/dev/null; do
            echo -e "\aUninstalling libpt, libopal and ekiga, enter root pwd."
            su -c "dpkg -P libpt-snapshot{,-dev,-dbg} libopal-snapshot{,-dev,-dbg} ekiga-snapshot{,-dbg}"
        done
	elif [ $i = "opal" ]; then
		echo -e "\aInstalling the newly built libpt packages, enter root pwd."
		while ! su -c "dpkg -i ../libpt-snapshot{,-dev,-dbg}_*.deb"; do sleep 1; done
	elif [ $i = "ekiga" ]; then
		echo -e "\aInstalling the newly built opal packages, enter root pwd."
		while ! su -c "dpkg -i ../libopal-snapshot{,-dev,-dbg}_*.deb"; do sleep 1; done
	fi
    if [ $i != "opal-non-free" ]; then
	    echo -n "Building $i packages..."; date
	    debuild -us -uc --lintian-opts -i >/dev/null
    else
	    echo -n "Creating $i files, to be built later..."; date
	    debuild -us -uc -d -S --lintian-opts -i >/dev/null
    fi
	if [ $? -ne 0 ]; then
		echo "debuild returned value is not zero, something was broken, exiting"
        less $i*build
		exit 4
	fi
	cd ..
done

date
#execute ekiga to test if it works fine
echo -e "\aInstalling the new ekiga package, enter root password to su."
while ! su -c "dpkg -i ekiga-snapshot{,-dbg}_*.deb"; do sleep 1; done
ekiga-snapshot -d 4 2>/tmp/gdb-ekiga.txt

date

#check debdiff
olddate=`basename ~/misc/dsiff98/ekiga/ekiga-snapshot_*.deb | cut -d- -f3`
for i in libpt-snapshot*.deb libopal-snapshot*.deb ekiga-snapshot*.deb; do
    echo ================= $i ===
    debdiff ~/misc/dsiff98/ekiga/`echo $i|sed s/$date/$olddate/` $i
done|less

#echo "Building i386 packages..."
#su -c "./build-i386"

#cd /var/cache/pbuilder/result
#for i in libopal-snapshot-plugins-non-free*amd64*.deb; do
#    echo ================= $i ===
#    echo ~/misc/dsiff98/ekiga/`echo $i|sed s/$date/$olddate/` $i
#    debdiff ~/misc/dsiff98/ekiga/`echo $i|sed s/$date/$olddate/` $i
#done
#cd -

#update Web site
echo -ne "\aMove files to dsiff98 directory? (ctrl-c to quit)"
read

cd ~/softs/ekiga
j=`ls ~/misc/dsiff98/ekiga/ekiga-snapshot*build | cut -d- -f3`  # get date
if [ x$j != "x" ]; then
    echo "Moving old files to old/$j..."
    mkdir old/$j
    mv ~/misc/dsiff98/ekiga/* old/$j
else
    echo No ekiga package files found, so nothing copied to old directory
fi
#echo "Removing old files..."
#rm -f ~/misc/dsiff98/ekiga/*
echo "Moving amd64 files inside..."
mv -f *.deb *.build *.changes ~/misc/dsiff98/ekiga
######mv ekiga-snapshot_* opal-snapshot_* ptlib-snapshot_* opal-snapshot-non-free_* ~/misc/dsiff98/ekiga
mv ekiga-snapshot_* opal-snapshot_* ptlib-snapshot_* ~/misc/dsiff98/ekiga
#echo "Copying i386 files inside..."
#generated files : deb dsc diff.gz orig.tar.gz build changes
#rm Packages libx264* *.orig.tar.gz *.diff.gz *.dsc *.changes
#echo "NOT Copying stable non-free"
##################cp non-free/* ~/misc/dsiff98/ekiga
cd ~/misc/dsiff98/ekiga
######cp -i /var/cache/pbuilder/result/*.deb .
rm *.orig.tar.gz
echo "Uploading to Internet..."
cd ..
./mirror.lftp
date


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]