mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 03:53:32 +01:00
ini-tools.sh: Now not passing inifile as global variable any longer
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
d6847deaf0
commit
0b3332cc56
3 changed files with 63 additions and 28 deletions
|
|
@ -5,6 +5,16 @@ dir=`dirname $0`
|
||||||
inifile=$1
|
inifile=$1
|
||||||
. $dir/ini-tools.sh
|
. $dir/ini-tools.sh
|
||||||
|
|
||||||
|
cfg_section()
|
||||||
|
{
|
||||||
|
cfg_section "$inifile" $@
|
||||||
|
}
|
||||||
|
|
||||||
|
cfg_value()
|
||||||
|
{
|
||||||
|
cfg_value "$inifile" $@
|
||||||
|
}
|
||||||
|
|
||||||
cat << EOT
|
cat << EOT
|
||||||
format_depends()
|
format_depends()
|
||||||
{
|
{
|
||||||
|
|
@ -34,22 +44,22 @@ control()
|
||||||
cat << EOF
|
cat << EOF
|
||||||
Source: \$NAME
|
Source: \$NAME
|
||||||
Maintainer: Jan Lindemann <jan@janware.com>
|
Maintainer: Jan Lindemann <jan@janware.com>
|
||||||
Section: `ini_value global.group`
|
Section: `cfg_value global.group`
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Standards-Version: 3.9.2
|
Standards-Version: 3.9.2
|
||||||
Build-Depends: debhelper (>= 9)
|
Build-Depends: debhelper (>= 9)
|
||||||
EOT
|
EOT
|
||||||
|
|
||||||
ini_value global.subpackages | grep -q run && cat << EOT
|
cfg_value global.subpackages | grep -q run && cat << EOT
|
||||||
|
|
||||||
Package: \$NAME-run
|
Package: \$NAME-run
|
||||||
Architecture: any
|
Architecture: any
|
||||||
Depends: \`format_depends "\${shlibs:Depends}, \${misc:Depends}, \$REQUIRES_RUN"\`
|
Depends: \`format_depends "\${shlibs:Depends}, \${misc:Depends}, \$REQUIRES_RUN"\`
|
||||||
Description: `ini_value summary`
|
Description: `cfg_value summary`
|
||||||
`ini_value description | sed 's/^/ /'`
|
`cfg_value description | sed 's/^/ /'`
|
||||||
EOT
|
EOT
|
||||||
|
|
||||||
ini_value global.subpackages | grep -q devel && cat << EOT
|
cfg_value global.subpackages | grep -q devel && cat << EOT
|
||||||
|
|
||||||
Package: \$NAME-devel
|
Package: \$NAME-devel
|
||||||
Architecture: any
|
Architecture: any
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,19 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
dir=`dirname $0`
|
dir=`dirname $0`
|
||||||
inifile=$1
|
inifile="$1"
|
||||||
. $dir/ini-tools.sh
|
. $dir/ini-tools.sh
|
||||||
|
|
||||||
|
cfg_section()
|
||||||
|
{
|
||||||
|
ini_section "$inifile" $@
|
||||||
|
}
|
||||||
|
|
||||||
|
cfg_value()
|
||||||
|
{
|
||||||
|
ini_value "$inifile" $@
|
||||||
|
}
|
||||||
|
|
||||||
_cat()
|
_cat()
|
||||||
{
|
{
|
||||||
sed 's/^ *|//'
|
sed 's/^ *|//'
|
||||||
|
|
@ -11,7 +21,7 @@ _cat()
|
||||||
|
|
||||||
_cat << EOT
|
_cat << EOT
|
||||||
|echo "Name: \$NAME"
|
|echo "Name: \$NAME"
|
||||||
|echo "Summary: `ini_value summary`"
|
|echo "Summary: `cfg_value summary`"
|
||||||
|echo "Version: \$VERSION"
|
|echo "Version: \$VERSION"
|
||||||
|echo "Release: \$RELEASE"
|
|echo "Release: \$RELEASE"
|
||||||
|echo "License: Jannet IT Services proprietary license"
|
|echo "License: Jannet IT Services proprietary license"
|
||||||
|
|
@ -22,30 +32,30 @@ _cat << EOT
|
||||||
|echo "BuildRoot: /var/tmp/%{name}-buildroot"
|
|echo "BuildRoot: /var/tmp/%{name}-buildroot"
|
||||||
|echo ""
|
|echo ""
|
||||||
|echo "%description"
|
|echo "%description"
|
||||||
|echo "`ini_value description`"
|
|echo "`cfg_value description`"
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
EOT
|
||||||
ini_value global.subpackages | grep -q run && _cat << EOT
|
cfg_value global.subpackages | grep -q run && _cat << EOT
|
||||||
|# ---------------------------------------
|
|# ---------------------------------------
|
||||||
|echo "%package -n \$NAME-run"
|
|echo "%package -n \$NAME-run"
|
||||||
|echo "Summary: `ini_value summary`"
|
|echo "Summary: `cfg_value summary`"
|
||||||
|echo "Group: `ini_value global.group`"
|
|echo "Group: `cfg_value global.group`"
|
||||||
|[ "\$REQUIRES_RUN" ] && echo "Requires: \$REQUIRES_RUN"
|
|[ "\$REQUIRES_RUN" ] && echo "Requires: \$REQUIRES_RUN"
|
||||||
|echo "%description -n \$NAME-run"
|
|echo "%description -n \$NAME-run"
|
||||||
|echo "Runtime package"
|
|echo "Runtime package"
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
EOT
|
||||||
ini_value global.subpackages | grep -q devel && _cat << EOT
|
cfg_value global.subpackages | grep -q devel && _cat << EOT
|
||||||
|# ---------------------------------------
|
|# ---------------------------------------
|
||||||
|echo "%package -n \$NAME-devel"
|
|echo "%package -n \$NAME-devel"
|
||||||
|echo "Summary: `ini_value summary`, development package"
|
|echo "Summary: `cfg_value summary`, development package"
|
||||||
|echo "Group: `ini_value global.group`"
|
|echo "Group: `cfg_value global.group`"
|
||||||
|[ "\$REQUIRES_DEVEL" ] && echo "Requires: \$REQUIRES_DEVEL"
|
|[ "\$REQUIRES_DEVEL" ] && echo "Requires: \$REQUIRES_DEVEL"
|
||||||
|echo "%description -n \$NAME-devel"
|
|echo "%description -n \$NAME-devel"
|
||||||
|echo "Development package"
|
|echo "Development package"
|
||||||
|echo ""
|
|echo ""
|
||||||
EOT
|
EOT
|
||||||
ini_value global.subpackages | grep -q run && _cat << EOT
|
cfg_value global.subpackages | grep -q run && _cat << EOT
|
||||||
|# ---------------------------------------
|
|# ---------------------------------------
|
||||||
|echo "%prep -n \$NAME-run"
|
|echo "%prep -n \$NAME-run"
|
||||||
|echo ""
|
|echo ""
|
||||||
|
|
@ -72,16 +82,16 @@ _cat << EOT
|
||||||
EOT
|
EOT
|
||||||
|
|
||||||
# -- scripts
|
# -- scripts
|
||||||
for p in `ini_value global.subpackages`; do
|
for p in `cfg_value global.subpackages`; do
|
||||||
for stage in preun post postun; do
|
for stage in preun post postun; do
|
||||||
echo "================= processing stage $stage: ini_section pkg.$p.$stage" >&2
|
echo "================= processing stage $stage: cfg_section pkg.$p.$stage" >&2
|
||||||
ini_section pkg.$p.$stage >&2
|
cfg_section pkg.$p.$stage >&2
|
||||||
ini_section pkg.$p.$stage | grep -q . && {
|
cfg_section pkg.$p.$stage | grep -q . && {
|
||||||
_cat <<- EOT
|
_cat <<- EOT
|
||||||
|echo "%$stage -n \$NAME-$p"
|
|echo "%$stage -n \$NAME-$p"
|
||||||
EOT
|
EOT
|
||||||
echo "cat << EOT"
|
echo "cat << EOT"
|
||||||
ini_section pkg.$p.$stage | ini_escape
|
cfg_section pkg.$p.$stage | cfg_escape
|
||||||
echo "EOT"
|
echo "EOT"
|
||||||
}
|
}
|
||||||
done
|
done
|
||||||
|
|
@ -91,13 +101,13 @@ _cat << EOT
|
||||||
|echo "%clean"
|
|echo "%clean"
|
||||||
|#echo 'rm -rf \$RPM_BUILD_ROOT'
|
|#echo 'rm -rf \$RPM_BUILD_ROOT'
|
||||||
EOT
|
EOT
|
||||||
ini_value global.subpackages | grep -q run && _cat << EOT
|
cfg_value global.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 ini_value global.subpackages | grep -q devel; then _cat << EOT
|
if cfg_value global.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
|
||||||
ini_section pkg.devel.post
|
cfg_section pkg.devel.post
|
||||||
else
|
else
|
||||||
_cat << EOT
|
_cat << EOT
|
||||||
|echo "%exclude /opt/\$NAME/make/*.mk"
|
|echo "%exclude /opt/\$NAME/make/*.mk"
|
||||||
|
|
|
||||||
|
|
@ -1,18 +1,21 @@
|
||||||
ini_section()
|
ini_section()
|
||||||
{
|
{
|
||||||
local sec="$1"
|
local inifile="$1"
|
||||||
|
local sec="$2"
|
||||||
cat "$inifile" |
|
cat "$inifile" |
|
||||||
cut -d\# -f1 |
|
cut -d\# -f1 |
|
||||||
tr -s '\n' '\n' |
|
tr -s '\n' '\n' |
|
||||||
sed -n "/\[$sec\]/,/\[/ p" |
|
sed -n "/\[$sec\]/,/\[/ p" |
|
||||||
grep -v '\['
|
grep -v '\[' |
|
||||||
|
sed '/^ *$/ d'
|
||||||
}
|
}
|
||||||
|
|
||||||
ini_value()
|
ini_value()
|
||||||
{
|
{
|
||||||
local path=$1
|
local inifile="$1"
|
||||||
local sec=`echo $1 | sed 's/\.[^.]\+$//'`
|
local path="$2"
|
||||||
local key=`echo $1 | sed 's/.*\.//'`
|
local sec=`echo "$path" | sed 's/\.[^.]\+$//'`
|
||||||
|
local key=`echo "$path" | sed 's/.*\.//'`
|
||||||
|
|
||||||
# echo "path=>$path<"
|
# echo "path=>$path<"
|
||||||
# echo "sec=>$sec<"
|
# echo "sec=>$sec<"
|
||||||
|
|
@ -27,9 +30,20 @@ ini_value()
|
||||||
/^ *$key *=/ !d
|
/^ *$key *=/ !d
|
||||||
s/^ *$key *= *//
|
s/^ *$key *= *//
|
||||||
s/ *$//
|
s/ *$//
|
||||||
|
/^ *$/ d
|
||||||
"
|
"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ini_has_section()
|
||||||
|
{
|
||||||
|
ini_section $@ | grep -q .
|
||||||
|
}
|
||||||
|
|
||||||
|
ini_has_value()
|
||||||
|
{
|
||||||
|
ini_value $@ | grep -q .
|
||||||
|
}
|
||||||
|
|
||||||
ini_escape()
|
ini_escape()
|
||||||
{
|
{
|
||||||
cat | sed '
|
cat | sed '
|
||||||
|
|
@ -37,3 +51,4 @@ ini_escape()
|
||||||
s/`/\\\`/g
|
s/`/\\\`/g
|
||||||
'
|
'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue