mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 03:53:32 +01:00
create-mkspec.sh: Heavy beautification and simplification
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
0d14436afb
commit
2ffe744709
1 changed files with 29 additions and 64 deletions
|
|
@ -1,5 +1,10 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
_cat()
|
||||||
|
{
|
||||||
|
sed 's/^ *|//'
|
||||||
|
}
|
||||||
|
|
||||||
cfg_section()
|
cfg_section()
|
||||||
{
|
{
|
||||||
ini_section "$inifile" $@
|
ini_section "$inifile" $@
|
||||||
|
|
@ -15,14 +20,11 @@ cfg_escape()
|
||||||
sed 's/\\/\\\\/g; s/\$/\\$/g; s/`/\\`/g'
|
sed 's/\\/\\\\/g; s/\$/\\$/g; s/`/\\`/g'
|
||||||
}
|
}
|
||||||
|
|
||||||
_cat()
|
# unneeded but kept, because it might come in handy in the future
|
||||||
|
have_pkg()
|
||||||
{
|
{
|
||||||
sed 's/^ *|//'
|
echo "$subpackages" | grep -q "\(^[ ]*\|[ ]\+\)$1\([ ]\+\|$\)"
|
||||||
}
|
return $?
|
||||||
|
|
||||||
subpackages()
|
|
||||||
{
|
|
||||||
echo $subpackages
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# -- here we go
|
# -- here we go
|
||||||
|
|
@ -54,39 +56,8 @@ _cat <<- EOT
|
||||||
|echo "%description"
|
|echo "%description"
|
||||||
|echo "`cfg_value description`"
|
|echo "`cfg_value description`"
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
|
||||||
|
|
||||||
subpackages | grep -q run && _cat <<- EOT
|
|
||||||
|# ---------------------------------------
|
|
||||||
|echo "%package -n \$NAME-run"
|
|
||||||
|echo "Summary: `cfg_value summary`"
|
|
||||||
|echo "Group: `cfg_value global.group`"
|
|
||||||
|[ "\$REQUIRES_RUN" ] && echo "Requires: \$REQUIRES_RUN"
|
|
||||||
|[ "\$CONFLICTS_RUN" ] && echo "Conflicts: \$CONFLICTS_RUN"
|
|
||||||
|echo "%description -n \$NAME-run"
|
|
||||||
|echo "Runtime package"
|
|
||||||
|echo ""
|
|
||||||
EOT
|
|
||||||
|
|
||||||
subpackages | grep -q devel && _cat <<- EOT
|
|
||||||
|# ---------------------------------------
|
|
||||||
|echo "%package -n \$NAME-devel"
|
|
||||||
|echo "Summary: `cfg_value summary`, development package"
|
|
||||||
|echo "Group: `cfg_value global.group`"
|
|
||||||
|[ "\$REQUIRES_DEVEL" ] && echo "Requires: \$REQUIRES_DEVEL"
|
|
||||||
|[ "\$CONFLICTS_DEVEL" ] && echo "Conflicts: \$CONFLICTS_DEVEL"
|
|
||||||
|echo "%description -n \$NAME-devel"
|
|
||||||
|echo "Development package"
|
|
||||||
|echo ""
|
|
||||||
EOT
|
|
||||||
|
|
||||||
subpackages | grep -q run && _cat <<- EOT
|
|
||||||
|# ---------------------------------------
|
|# ---------------------------------------
|
||||||
|echo "%prep -n \$NAME-run"
|
|echo "%prep -n \$NAME-run"
|
||||||
|echo ""
|
|
||||||
EOT
|
|
||||||
|
|
||||||
_cat <<- EOT
|
|
||||||
|echo "%setup -q -n \$NAME-\$V"
|
|echo "%setup -q -n \$NAME-\$V"
|
||||||
|echo ""
|
|echo ""
|
||||||
|echo "%build"
|
|echo "%build"
|
||||||
|
|
@ -106,11 +77,24 @@ _cat <<- EOT
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
EOT
|
||||||
|
|
||||||
# -- scripts
|
|
||||||
|
|
||||||
for p in $subpackages; do
|
for p in $subpackages; do
|
||||||
|
|
||||||
|
P=${p^^}
|
||||||
|
|
||||||
|
_cat <<- EOT
|
||||||
|
|echo "# --------------------------------------- subpackage $p"
|
||||||
|
|echo "%package -n \$NAME-$p"
|
||||||
|
|echo "Summary: `cfg_value summary`"
|
||||||
|
|echo "Group: `cfg_value global.group`"
|
||||||
|
|[ "\$REQUIRES_$P" ] && echo "Requires: \$REQUIRES_$P"
|
||||||
|
|[ "\$CONFLICTS_$P" ] && echo "Conflicts: \$CONFLICTS_$P"
|
||||||
|
|echo "%description -n \$NAME-$p"
|
||||||
|
|echo "Runtime package"
|
||||||
|
|echo ""
|
||||||
|
EOT
|
||||||
|
|
||||||
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
|
||||||
cfg_section pkg.$p.$stage | grep -q . && {
|
cfg_section pkg.$p.$stage | grep -q . && {
|
||||||
_cat <<- EOT
|
_cat <<- EOT
|
||||||
|
|
@ -121,29 +105,10 @@ for p in $subpackages; do
|
||||||
echo "EOT"
|
echo "EOT"
|
||||||
}
|
}
|
||||||
done
|
done
|
||||||
done
|
|
||||||
|
|
||||||
_cat <<- EOT
|
|
||||||
|echo ""
|
|
||||||
|echo "%clean"
|
|
||||||
|#echo 'rm -rf \$RPM_BUILD_ROOT'
|
|
||||||
EOT
|
|
||||||
|
|
||||||
subpackages | grep -q run && _cat <<- EOT
|
|
||||||
|echo "%files -n \$NAME-run -f \$INSTALL_LOG.\$NAME-run"
|
|
||||||
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
|
|
||||||
else
|
|
||||||
_cat <<- EOT
|
_cat <<- EOT
|
||||||
|# don't remember why this was needed
|
|echo "%files -n \$NAME-$p -f \$INSTALL_LOG.\$NAME-$p"
|
||||||
|#echo "%exclude /opt/\$NAME/make/*.mk"
|
|
||||||
EOT
|
|
||||||
fi
|
|
||||||
|
|
||||||
_cat <<- EOT
|
|
||||||
|echo '%defattr (-, root, root)'
|
|echo '%defattr (-, root, root)'
|
||||||
EOT
|
|echo ""
|
||||||
|
EOT
|
||||||
|
done
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue