[Решено] SAMS2 Makefaile для автоматической сборки

YED аватар

Помнится, кто-то выкладывал файлик Makefile для автоматизации процесса сборки rpm для sams2. В связи с невосполнимой потерей, слезно прошу выложить этот файлик здесь снова, а то по форуму не нашёл его :(
Заранее спасибо!

UPD: http://www.permlug.org/node/5169 -- в этой ветке данный файлик обсуждался, но прикрепленные файлы куда-то исчезли. DogEater, пожалуйста выложи где-нибудь этот волшебный файлик! ;)

YED аватар

Огромное спасибо!

я пользуюсь вот таким скриптом:
--- cut here ---
#!/bin/sh
if [ ! -d trunk ] ; then
echo "No trunk directory";
exit
fi

cd trunk
rev=`svn info | grep ^Revision | awk '{print $2}'`
rm -rf ../sams2-2.0.0-$rev
svn export `pwd` ../sams2-2.0.0-$rev
cd ..
sed -i -e "s|^Epoch:.*|Epoch: $rev|" sams2-2.0.0-$rev/spec/sams2.spec
tar cjf sams2-2.0.0-$rev.tar.bz2 sams2-2.0.0-$rev
rpmbuild -tb sams2-2.0.0-$rev.tar.bz2
--- cut here ---
этот скрипт, как видно из содержания, должен лежать в той-же директории, что и директория trunk.
А чтобы без проблем собиралось под обычным пользователем, нужно в $HOME/.rpmmacros добавить строчку
%_topdir /tmp/RPMS
(если файла нет, то нужно его создать)
Естественно, вместо /tmp/RPMS можно написать свой путь, туда и будут складываться rpm файлы.

Не надо слёзно, просто попроси.
Если хочешь собирать с номером билда - раскомментируй крайних 2 строки в стадии prepare.

all: build

co:
svn co http://svn.nixdev.net/svn/sams/trunk

prepare: co
head -4 trunk/.svn/entries | tail -1 | tr -d '\n' >.epoch
grep -i ^name trunk/spec/sams2.spec | sed -e 's/^Name: //g' | tr -d '\n' >.name
echo -n - >> .name
grep -i ^version trunk/spec/sams2.spec | sed -e 's/^Version: //g' | tr -d '\n'>> .name
sed -i -e 's/\s//g' .name
sed -i -e 's/\n//g' .name
# echo -n - >> .name
# cat .epoch >> .name

tar: prepare
rm -fr `cat .name`
rm -f `cat .name`.tar.bz2
mkdir `cat .name`
cp -fr --target-directory=`cat .name` trunk/*
sed -i -e s/^Epoch.\*/Epoch:\\t\\t`cat .epoch`/g `cat .name`/spec/sams2.spec
find `cat .name` -iname .svn -type d | sort | xargs rm -fr
tar -c `cat .name` >`cat .name`.tar ; bzip2 `cat .name`.tar

build: tar
rpmbuild -tb `cat .name`.tar.bz2

А зачем для Debain makefile? В комплекте идут все скрипты для сборки нормальных deb-пакетов.

И ещё бы для Debian... хотелось бы.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".