On Thu, May 22, 2003 at 03:40:38PM +0400, Alexey I. Froloff wrote: > Таки полез я [...] в недра buildreq... > > CLEAN_REQS= > for r in $REQS; do > echo "$REQS" |grep -qs "^$r-" && continue ||: > rs="${r#lib}" > if [ "$rs" != "$r" ];then > echo "$REQS" |grep -qs "^$rs\$" && continue ||: > fi > CLEAN_REQS="$CLEAN_REQS $r" > done > echo $CLEAN_REQS >"$OUTFILE" > > Этот момент немного непонятен. > > если есть "name" и "name-*", выкидываем "name" > если есть "name" и "libname", выкидываем "libname" > > Почему именно так? Не лучше ли: Кажется, лучше. Никто не против? > если есть "name" и "name-devel*", выкидываем "name" > (для lib*) > если есть "libname" и "name-devel*", выкидываем "libname" > (для libffmpeg и ffmpeg-devel например, вчера столкнулся) > Возможно можно (положительные примеры XFree86 и quakeforge): > если есть "name-libs" и "name-devel*", выкидываем "name-libs" > > CLEAN_REQS= > for r in $REQS; do > echo "$REQS" |grep -qs "^$r-devel" && continue ||: > rs="${r#lib}" > if [ "$rs" != "$r" ];then > echo "$REQS" |grep -qs "^$rs-devel\$" && continue ||: > # Или даже так: > #echo "$REQS" |grep -qs "^$rs-devel" && continue ||: > fi > rs="${r%-libs}" > if [ "$rs" != "$r" ];then > echo "$REQS" |grep -qs "^$rs-devel\$" && continue ||: > # Или даже так: > #echo "$REQS" |grep -qs "^$rs-devel" && continue ||: > fi > CLEAN_REQS="$CLEAN_REQS $r" > done > echo $CLEAN_REQS >"$OUTFILE" -- ldv