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:
Jan Lindemann 2018-08-31 11:19:44 +00:00
commit 0371cec047
2 changed files with 31 additions and 16 deletions

View file

@ -25,8 +25,14 @@ _cat()
sed 's/^ *|//'
}
subpackages()
{
echo $SUBPACKAGES
}
LICENSE=`cfg_value global.license`
[ "$LICENSE" ] || LICENSE="janware GmbH proprietary license"
SUBPACKAGES=`cfg_value global.subpackages`
_cat << EOT
|echo "Name: \$NAME"
@ -45,7 +51,7 @@ _cat << EOT
|echo "`cfg_value description`"
|echo ""
EOT
cfg_value global.subpackages | grep -q run && _cat << EOT
subpackages | grep -q run && _cat << EOT
|# ---------------------------------------
|echo "%package -n \$NAME-run"
|echo "Summary: `cfg_value summary`"
@ -56,7 +62,7 @@ cfg_value global.subpackages | grep -q run && _cat << EOT
|echo "Runtime package"
|echo ""
EOT
cfg_value global.subpackages | grep -q devel && _cat << EOT
subpackages | grep -q devel && _cat << EOT
|# ---------------------------------------
|echo "%package -n \$NAME-devel"
|echo "Summary: `cfg_value summary`, development package"
@ -67,7 +73,7 @@ cfg_value global.subpackages | grep -q devel && _cat << EOT
|echo "Development package"
|echo ""
EOT
cfg_value global.subpackages | grep -q run && _cat << EOT
subpackages | grep -q run && _cat << EOT
|# ---------------------------------------
|echo "%prep -n \$NAME-run"
|echo ""
@ -89,12 +95,12 @@ _cat << EOT
|echo "> \$INSTALL_LOG"
|echo "make install"
|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 ""
EOT
# -- scripts
for p in `cfg_value global.subpackages`; do
for p in `$SUBPACKAGES`; do
for stage in pre preun post postun; do
echo "================= processing stage $stage: cfg_section pkg.$p.$stage" >&2
cfg_section pkg.$p.$stage >&2
@ -113,10 +119,10 @@ _cat << EOT
|echo "%clean"
|#echo 'rm -rf \$RPM_BUILD_ROOT'
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"
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"
EOT
cfg_section pkg.devel.post