[devel] [git update] packages/rpm: heads/master
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Пт Мар 2 00:28:57 MSK 2007
On Mon, Feb 12, 2007 at 01:08:36AM +0300, Dmitry V. Levin wrote:
> Update of /people/ldv/packages/rpm.git
>
> Changes statistics since `4.0.4-alt72-g6a53902' follows:
> autodeps/linux.prov.in | 2 ++
> autodeps/linux.req.in | 29 +++++++++++++++++++++++++++++
> platform.in | 4 ++--
> 3 files changed, 33 insertions(+), 2 deletions(-)
>
> Changelog since `4.0.4-alt72-g6a53902' follows:
> commit 7227d450caf39c13da3596bd17b60dc4d20c575a
> Merge: 6a53902827037e9f38fbbdbc2509996fc12b52b5 280e69d9a539cf066a3a072e9c8fda6e97a420f1
> Author: Dmitry V. Levin <ldv на altlinux>
> Date: Sun Feb 11 22:02:54 2007 +0000
>
> Merge branch 'master' of git.alt:/people/damir/packages/rpm
>
> commit 280e69d9a539cf066a3a072e9c8fda6e97a420f1
> Author: Damir Shayhutdinov <damir на altlinux>
> Date: Sat Feb 10 19:16:04 2007 +0300
>
> Added hooks for Java autoreq facility.
>
> Signed-off-by: Damir Shayhutdinov <damir на altlinux>
>
> Full diff since `4.0.4-alt72-g6a53902' follows:
> diff --git a/autodeps/linux.prov.in b/autodeps/linux.prov.in
> index cd59580..fc9fb8f 100755
> --- a/autodeps/linux.prov.in
> +++ b/autodeps/linux.prov.in
> @@ -52,6 +52,8 @@ ParseMethod()
> FIND_SHELL=
> FIND_TCL=
> ;;
> + java|nojava)
> + ;;
> lib)
> FIND_LIBS=1
> ;;
> diff --git a/autodeps/linux.req.in b/autodeps/linux.req.in
> index f1980e2..80dfa45 100755
> --- a/autodeps/linux.req.in
> +++ b/autodeps/linux.req.in
> @@ -36,6 +36,7 @@ exit_handler()
> trap exit_handler EXIT
>
> FIND_FILES=
> +FIND_JAVA=
> FIND_LIBPERL=
> FIND_LIBS=
> FIND_MONO=
> @@ -54,6 +55,7 @@ ParseMethod()
> case "${t/%,}" in
> no|none|off|false)
> FIND_FILES=
> + FIND_JAVA=
> FIND_LIBPERL=
> FIND_LIBS=
> FIND_MONO=
> @@ -64,6 +66,12 @@ ParseMethod()
> FIND_SHELL=
> FIND_TCL=
> ;;
> + java)
> + FIND_JAVA=1
> + ;;
> + nojava)
> + FIND_JAVA=
> + ;;
> lib|library)
> FIND_LIBS=1
> ;;
> @@ -131,6 +139,7 @@ ParseMethod()
> FIND_LIBPERL=1
> FIND_LIBS=1
> FIND_MONO=1
> + FIND_JAVA=1
> FIND_PAM=1
> FIND_PERL=1
> FIND_PKGCONFIG=1
> @@ -159,6 +168,7 @@ if [ -n "$FIND_PAM" -o \
> fi
>
> if [ -z "$FIND_FILES" -a \
> + -z "$FIND_JAVA" -a \
> -z "$FIND_LIBPERL" -a \
> -z "$FIND_LIBS" -a \
> -z "$FIND_MONO" -a \
> @@ -187,11 +197,23 @@ case "$LD_PRELOAD" in
> esac
>
> FOUND_REQS=
> +LIST_JAVA=
> LIST_MONO=
> LIST_PERL=
> LIST_PYTHON=
> LIST_TCL=
>
> +FindJavaReqs()
> +{
> + [ -n "$FIND_JAVA" -a -n "$LIST_JAVA" -a -x "@RPMCONFIGDIR@/java.req" ] || return 0
> +
> + local r
> + r="$(printf %s\\n "$LIST_JAVA" |
> + @RPMCONFIGDIR@/java.req "$RPM_BUILD_DIR" "$RPM_BUILD_ROOT" "$RPM_LIBDIR")" || return 1
А какой смысл передавать дополнительные параметры скрипту, если,
во-первых, эти параметры по-прежнему доступны через environment;
а во-вторых, PRM_BUILD_DIR раскрывается совсем не в то, во что хочется,
а в `rpm --eval %_builddir`, который одинаковый для всех пакетов?
По-моему, параметры лучше зарезервировать для того, чтобы брать файлы из
командной строки, а если командная строка пустая, тогда читать список
файлов из stdin.
Кстати, второе обстоятельство довольно тягостно: чтобы получить
информацию из сборочного каталога на стадии find-requires, приходится
копировать ее в %buildroot на стадии %install. Может кто-то припоминает
левые файлы в %buildroot с названием /.perl.req.
> + [ -z "$FOUND_REQS" ] && FOUND_REQS="$r" || FOUND_REQS="$FOUND_REQS
> +$r"
> +}
> +
> FindMonoReqs()
> {
> [ -n "$FIND_MONO" -a -n "$LIST_MONO" -a -x "@RPMCONFIGDIR@/mono.req" ] || return 0
> @@ -425,9 +447,16 @@ $f"
> elif [ -z "${t##*MS Windows PE*}" ]; then
> [ -z "$LIST_MONO" ] && LIST_MONO="$f" || LIST_MONO="$LIST_MONO
> $f"
> + elif [ -z "${t##*Zip archive data*}" -a -z "${f##*.jar}" ] ||
> + [ -z "${t##*compiled Java class data*}" ]; then
> + [ -z "$LIST_JAVA" ] && LIST_JAVA="$f" || LIST_JAVA="$LIST_JAVA
> +$f"
> fi
> done
>
> +# Find requires in listed Java files, if any
> +FindJavaReqs
> +
> # Find requires in listed .Net files, if any
> FindMonoReqs
>
> diff --git a/platform.in b/platform.in
> index 19c778e..3bce5dd 100644
> --- a/platform.in
> +++ b/platform.in
> @@ -454,8 +454,8 @@
> @alt@%_tcl_req_skip ""
> @alt@%_fixup_method binconfig pkgconfig libtool
> @alt@%_strip_method %{?_enable_debug:none}%{!?_enable_debug:executable shared}
> - на alt@%_findreq_default_method files lib mono pam perl pkgconfig python shell tcl
> - на alt@%_findprov_default_method lib mono pam perl pkgconfig python shell tcl
> + на alt@%_findreq_default_method files java lib mono pam perl pkgconfig python shell tcl
> + на alt@%_findprov_default_method java lib mono pam perl pkgconfig python shell tcl
> @alt@
> @alt@%_cleanup_topdir %nil
> @alt@%_compress_topdir %_usr
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20070302/54b4fc3b/attachment-0001.bin>
Подробная информация о списке рассылки Devel