mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 03:53:32 +01:00
create-mkspec.sh, pkg.sh: Fix RPM specs missing files from devel packages
This commit makes pkg.sh and create-mkspec.sh check, if a -devel package is specified, and if not, adds the contents of the -devel file list from the install log to the -run file list. This also involves adding a [-s subpackage] option to the pkg.sh milk-install-log command. Not implemented for debian packages. Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
1b7645f67e
commit
0371cec047
2 changed files with 31 additions and 16 deletions
|
|
@ -25,8 +25,14 @@ _cat()
|
||||||
sed 's/^ *|//'
|
sed 's/^ *|//'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
subpackages()
|
||||||
|
{
|
||||||
|
echo $SUBPACKAGES
|
||||||
|
}
|
||||||
|
|
||||||
LICENSE=`cfg_value global.license`
|
LICENSE=`cfg_value global.license`
|
||||||
[ "$LICENSE" ] || LICENSE="janware GmbH proprietary license"
|
[ "$LICENSE" ] || LICENSE="janware GmbH proprietary license"
|
||||||
|
SUBPACKAGES=`cfg_value global.subpackages`
|
||||||
|
|
||||||
_cat << EOT
|
_cat << EOT
|
||||||
|echo "Name: \$NAME"
|
|echo "Name: \$NAME"
|
||||||
|
|
@ -45,7 +51,7 @@ _cat << EOT
|
||||||
|echo "`cfg_value description`"
|
|echo "`cfg_value description`"
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
EOT
|
||||||
cfg_value global.subpackages | grep -q run && _cat << EOT
|
subpackages | grep -q run && _cat << EOT
|
||||||
|# ---------------------------------------
|
|# ---------------------------------------
|
||||||
|echo "%package -n \$NAME-run"
|
|echo "%package -n \$NAME-run"
|
||||||
|echo "Summary: `cfg_value summary`"
|
|echo "Summary: `cfg_value summary`"
|
||||||
|
|
@ -56,7 +62,7 @@ cfg_value global.subpackages | grep -q run && _cat << EOT
|
||||||
|echo "Runtime package"
|
|echo "Runtime package"
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
EOT
|
||||||
cfg_value global.subpackages | grep -q devel && _cat << EOT
|
subpackages | grep -q devel && _cat << EOT
|
||||||
|# ---------------------------------------
|
|# ---------------------------------------
|
||||||
|echo "%package -n \$NAME-devel"
|
|echo "%package -n \$NAME-devel"
|
||||||
|echo "Summary: `cfg_value summary`, development package"
|
|echo "Summary: `cfg_value summary`, development package"
|
||||||
|
|
@ -67,7 +73,7 @@ cfg_value global.subpackages | grep -q devel && _cat << EOT
|
||||||
|echo "Development package"
|
|echo "Development package"
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
EOT
|
||||||
cfg_value global.subpackages | grep -q run && _cat << EOT
|
subpackages | grep -q run && _cat << EOT
|
||||||
|# ---------------------------------------
|
|# ---------------------------------------
|
||||||
|echo "%prep -n \$NAME-run"
|
|echo "%prep -n \$NAME-run"
|
||||||
|echo ""
|
|echo ""
|
||||||
|
|
@ -89,12 +95,12 @@ _cat << EOT
|
||||||
|echo "> \$INSTALL_LOG"
|
|echo "> \$INSTALL_LOG"
|
||||||
|echo "make install"
|
|echo "make install"
|
||||||
|echo "export PATH=$MOD_SCRIPT_DIR:\\\$PATH"
|
|echo "export PATH=$MOD_SCRIPT_DIR:\\\$PATH"
|
||||||
|echo "/bin/bash pkg.sh milk-install-log -p \\\$ENV_PREFIX -n \$NAME -t rpm \$INSTALL_LOG \`dirname \$INSTALL_LOG\`"
|
|echo "/bin/bash pkg.sh milk-install-log -p \\\$ENV_PREFIX -n \$NAME -t rpm -s \\"$SUBPACKAGES\\" \$INSTALL_LOG \`dirname \$INSTALL_LOG\`"
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
EOT
|
||||||
|
|
||||||
# -- scripts
|
# -- scripts
|
||||||
for p in `cfg_value global.subpackages`; do
|
for p in `$SUBPACKAGES`; do
|
||||||
for stage in pre preun post postun; do
|
for stage in pre preun post postun; do
|
||||||
echo "================= processing stage $stage: cfg_section pkg.$p.$stage" >&2
|
echo "================= processing stage $stage: cfg_section pkg.$p.$stage" >&2
|
||||||
cfg_section pkg.$p.$stage >&2
|
cfg_section pkg.$p.$stage >&2
|
||||||
|
|
@ -113,10 +119,10 @@ _cat << EOT
|
||||||
|echo "%clean"
|
|echo "%clean"
|
||||||
|#echo 'rm -rf \$RPM_BUILD_ROOT'
|
|#echo 'rm -rf \$RPM_BUILD_ROOT'
|
||||||
EOT
|
EOT
|
||||||
cfg_value global.subpackages | grep -q run && _cat << EOT
|
subpackages | grep -q run && _cat << EOT
|
||||||
|echo "%files -n \$NAME-run -f \$INSTALL_LOG.\$NAME-run"
|
|echo "%files -n \$NAME-run -f \$INSTALL_LOG.\$NAME-run"
|
||||||
EOT
|
EOT
|
||||||
if cfg_value global.subpackages | grep -q devel; then _cat << EOT
|
if subpackages | grep -q devel; then _cat << EOT
|
||||||
|echo "%files -n \$NAME-devel -f \$INSTALL_LOG.\$NAME-devel"
|
|echo "%files -n \$NAME-devel -f \$INSTALL_LOG.\$NAME-devel"
|
||||||
EOT
|
EOT
|
||||||
cfg_section pkg.devel.post
|
cfg_section pkg.devel.post
|
||||||
|
|
|
||||||
|
|
@ -857,7 +857,7 @@ cmd_milk_install_log()
|
||||||
{
|
{
|
||||||
milk_install_log_usage()
|
milk_install_log_usage()
|
||||||
{
|
{
|
||||||
echo "usage: $myname [-h] [-n pkg-name] [-t rpm|deb] [-p remove-prefix] install-log output-dir"
|
echo "usage: $myname milk-install-log [-h] [-n pkg-name] [-t rpm|deb] [-p remove-prefix] [-s subpackages] install-log output-dir"
|
||||||
[ "$1" ] && exit $1
|
[ "$1" ] && exit $1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -878,9 +878,11 @@ cmd_milk_install_log()
|
||||||
chmod 755 $1
|
chmod 755 $1
|
||||||
}
|
}
|
||||||
|
|
||||||
local type name prefix in out
|
local type name prefix in out subpackages
|
||||||
set -- `getopt ht:p:n: "$@"`
|
|
||||||
|
|
||||||
|
subpackages="run devel"
|
||||||
|
|
||||||
|
eval set -- `getopt -- ht:p:n:s: "$@"`
|
||||||
while [ "$1" != -- ]; do
|
while [ "$1" != -- ]; do
|
||||||
case $1 in
|
case $1 in
|
||||||
-h)
|
-h)
|
||||||
|
|
@ -891,14 +893,20 @@ cmd_milk_install_log()
|
||||||
name="$2"; shift;;
|
name="$2"; shift;;
|
||||||
-p)
|
-p)
|
||||||
prefix="$2"; shift;;
|
prefix="$2"; shift;;
|
||||||
|
-s)
|
||||||
|
subpackages="$2"; shift;;
|
||||||
*)
|
*)
|
||||||
|
echo -e "Unexpected argument >$1<\n" >&2
|
||||||
milk_install_log_usage 1;;
|
milk_install_log_usage 1;;
|
||||||
esac
|
esac
|
||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
shift
|
shift
|
||||||
|
|
||||||
[ $# != 2 ] && milk_install_log_usage 1
|
[ $# != 2 ] && {
|
||||||
|
echo -e "Too many arguments >$*<\n" >&2
|
||||||
|
milk_install_log_usage 1
|
||||||
|
}
|
||||||
|
|
||||||
in=$1
|
in=$1
|
||||||
out=$2
|
out=$2
|
||||||
|
|
@ -913,6 +921,8 @@ cmd_milk_install_log()
|
||||||
rpm)
|
rpm)
|
||||||
cat $in | sed "s% $prefix% %" | grep -ve $filter_devel > $in.$name-run
|
cat $in | sed "s% $prefix% %" | grep -ve $filter_devel > $in.$name-run
|
||||||
cat $in | sed "s% $prefix% %" | grep -e $filter_devel > $in.$name-devel
|
cat $in | sed "s% $prefix% %" | grep -e $filter_devel > $in.$name-devel
|
||||||
|
# TODO: this is unimplemented for debian packages
|
||||||
|
echo $subpackages | grep -q devel || cat $in.$name-devel >> $in.$name-run
|
||||||
;;
|
;;
|
||||||
deb)
|
deb)
|
||||||
cat $in | grep -v "%dir" | sed "s% $prefix% %; s%//*%/%g; s/.*) *//" | grep -ve $filter_devel | sed 's/\(.*\)\/\([^/]\+\) *$/inst-root\1\/\2 \1/' > $out/$name-run.install
|
cat $in | grep -v "%dir" | sed "s% $prefix% %; s%//*%/%g; s/.*) *//" | grep -ve $filter_devel | sed 's/\(.*\)\/\([^/]\+\) *$/inst-root\1\/\2 \1/' > $out/$name-run.install
|
||||||
|
|
@ -974,7 +984,6 @@ SCM=cvs
|
||||||
[ "$CVS_RSH" ] && SSH=$CVS_RSH
|
[ "$CVS_RSH" ] && SSH=$CVS_RSH
|
||||||
[ -d .git ] && SCM=git
|
[ -d .git ] && SCM=git
|
||||||
|
|
||||||
|
|
||||||
opts='ht:p:m:N:R:D:X:Y:P:a:F:B:A:'
|
opts='ht:p:m:N:R:D:X:Y:P:a:F:B:A:'
|
||||||
args=("$@")
|
args=("$@")
|
||||||
global_args=()
|
global_args=()
|
||||||
|
|
@ -1088,10 +1097,10 @@ need-release)
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
update-version)
|
update-version)
|
||||||
eval check_update_version "@" || exit 0
|
check_update_version "@" || exit 0
|
||||||
;;
|
;;
|
||||||
version)
|
version)
|
||||||
eval cmd_version "$@"
|
cmd_version "$@"
|
||||||
;;
|
;;
|
||||||
build)
|
build)
|
||||||
check_cwd
|
check_cwd
|
||||||
|
|
@ -1128,10 +1137,10 @@ hash)
|
||||||
calculate_hash
|
calculate_hash
|
||||||
;;
|
;;
|
||||||
log-install)
|
log-install)
|
||||||
eval cmd_log_install "$@"
|
cmd_log_install "$@"
|
||||||
;;
|
;;
|
||||||
milk-install-log)
|
milk-install-log)
|
||||||
eval cmd_milk_install_log "$@"
|
cmd_milk_install_log "$@"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
usage 1
|
usage 1
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue