[devel] gear - с чего начинать

Anton Farygin =?iso-8859-1?q?rider_=CE=C1_altlinux=2Ecom?=
Сб Май 6 17:31:41 MSD 2006


Alexey I. Froloff wrote:
> * Anton Farygin <rider@> [060506 16:23]:
>> тут raorn бросал враппер на rpm, я его логику несколько модифицировал, 
>> сейчас обкатаю на нескольких пакетах.. и Дима добавит генерялку 
>> тарболлов из каталогов в gear.. вот тогда запоём ;)
> Ты патчи мне бросай ;-)  Кстати, есть смысл проверять наличие
> .rpmwrapmacros сначала в текущем каталоге, а потом уже в
> $allow_prefix...
> 
> rsync://rsync.altlinux.ru/people/raorn/git/rpmwrapper.git/

Основной патч: искать .rpmwrapmacros начиная с текущего каталога и выше.

И добавлять define для _macropath, который потом использовать как:
$ cat alterator-packages.git/.rpmwrapmacros
%_topdir        %_macropath
%_sourcedir     %{_topsrcdir}/SOURCES
%_specdir       %{_topsrcdir}/alterator-packages
%_tmppath       %{_topsrcdir}/tmp


diff --git a/rpmwrapper b/rpmwrapper
index f123ec4..362fa28 100755
--- a/rpmwrapper
+++ b/rpmwrapper
@@ -18,16 +18,10 @@ args=

  sIFS="$IFS"
  IFS=":"
-for i in $allow_prefix; do
-    case "$cwd" in
-       $i/*|$i)
-           [ -f "$cwd/$macrofile" ] && rpmmacros="$cwd/$macrofile" ||:
-           [ -z "$rpmmacros" -a -f "$i/$macrofile" ] && 
rpmmacros="$i/$macrofile" ||:
-           ;;
-       *)
-           continue
-           ;;
-    esac
+startdir=$PWD
+while [ "$startdir" != "/" ];do
+    [ -f "$startdir/$macrofile" ] && prefix="$startdir" && break
+    startdir=`dirname $startdir`
  done
  IFS="$sIFS"

@@ -52,4 +46,4 @@ include:      /usr/lib/rpm/rpmrc
  macrofiles:    ${macrofiles+$macrofiles:}$rpmmacros
  EOF
  fi
-[ -x "$RPM_PREFIX/$PROG" ]  && "$RPM_PREFIX/$PROG" $args "$@"
+[ -x "$RPM_PREFIX/$PROG" ]  && "$RPM_PREFIX/$PROG" --define "_macropath 
$prefix" $args "$@"



Подробная информация о списке рассылки Devel