Import the latest versions of the scripts

This commit is contained in:
Pierre Pronchery 2019-09-14 04:32:18 +02:00
parent 2ba9833e11
commit 28faa2762a
4 changed files with 125 additions and 41 deletions

View File

@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
#$Id$ #$Id$
#Copyright (c) 2011-2015 Pierre Pronchery <khorben@defora.org> #Copyright (c) 2011-2019 Pierre Pronchery <khorben@defora.org>
# #
#Redistribution and use in source and binary forms, with or without #Redistribution and use in source and binary forms, with or without
#modification, are permitted provided that the following conditions are met: #modification, are permitted provided that the following conditions are met:
@ -25,8 +25,8 @@
#variables #variables
CONFIGSH="${0%/pkgconfig.sh}/../config.sh"
PREFIX="/usr/local" PREFIX="/usr/local"
[ -f "../config.sh" ] && . "../config.sh"
DEBUG="_debug" DEBUG="_debug"
DEVNULL="/dev/null" DEVNULL="/dev/null"
PROGNAME="pkgconfig.sh" PROGNAME="pkgconfig.sh"
@ -35,6 +35,7 @@ INSTALL="install -m 0644"
MKDIR="mkdir -m 0755 -p" MKDIR="mkdir -m 0755 -p"
RM="rm -f" RM="rm -f"
SED="sed" SED="sed"
[ -f "$CONFIGSH" ] && . "$CONFIGSH"
#functions #functions
@ -66,7 +67,7 @@ _usage()
clean=0 clean=0
install=0 install=0
uninstall=0 uninstall=0
while getopts "ciuP:" name; do while getopts "ciuO:P:" name; do
case $name in case $name in
c) c)
clean=1 clean=1
@ -79,6 +80,9 @@ while getopts "ciuP:" name; do
install=0 install=0
uninstall=1 uninstall=1
;; ;;
O)
export "${OPTARG%%=*}"="${OPTARG#*=}"
;;
P) P)
PREFIX="$OPTARG" PREFIX="$OPTARG"
;; ;;
@ -89,7 +93,7 @@ while getopts "ciuP:" name; do
esac esac
done done
shift $(($OPTIND - 1)) shift $(($OPTIND - 1))
if [ $# -eq 0 ]; then if [ $# -lt 0 ]; then
_usage _usage
exit $? exit $?
fi fi
@ -103,6 +107,16 @@ if [ -z "$VERSION" ]; then
_error "The VERSION variable needs to be set" _error "The VERSION variable needs to be set"
exit $? exit $?
fi fi
[ -z "$BINDIR" ] && BINDIR="$PREFIX/bin"
[ -z "$DATADIR" ] && DATADIR="$PREFIX/share"
[ -z "$INCLUDEDIR" ] && INCLUDEDIR="$PREFIX/include"
[ -z "$LIBDIR" ] && LIBDIR="$PREFIX/lib"
[ -z "$LIBEXECDIR" ] && LIBEXECDIR="$PREFIX/libexec"
[ -z "$MANDIR" ] && MANDIR="$DATADIR/man"
if [ -z "$SYSCONFDIR" ]; then
SYSCONFDIR="$PREFIX/etc"
[ "$PREFIX" = "/usr" ] && SYSCONFDIR="/etc"
fi
PKGCONFIG="$PREFIX/lib/pkgconfig" PKGCONFIG="$PREFIX/lib/pkgconfig"
exec 3>&1 exec 3>&1
@ -148,10 +162,19 @@ while [ $# -gt 0 ]; do
#create #create
source="${target#$OBJDIR}" source="${target#$OBJDIR}"
source="${source}.in" source="${source}.in"
$DEBUG $SED -e "s;@PACKAGE@;$PACKAGE;" \ ([ -z "$OBJDIR" ] || $DEBUG $MKDIR -- "${target%/*}") || exit 2
-e "s;@VERSION@;$VERSION;" \ $DEBUG $SED -e "s;@PACKAGE@;$PACKAGE;g" \
-e "s;@PREFIX@;$PREFIX;" \ -e "s;@VERSION@;$VERSION;g" \
-e "s;@RPATH@;$RPATH;" \ -e "s;@PREFIX@;$PREFIX;g" \
-e "s;@BINDIR@;$BINDIR;g" \
-e "s;@DATADIR@;$DATADIR;g" \
-e "s;@INCLUDEDIR@;$INCLUDEDIR;g" \
-e "s;@LIBDIR@;$LIBDIR;g" \
-e "s;@LIBEXECDIR@;$LIBEXECDIR;g" \
-e "s;@MANDIR@;$MANDIR;g" \
-e "s;@PWD@;$PWD;g" \
-e "s;@RPATH@;$RPATH;g" \
-e "s;@SYSCONFDIR@;$SYSCONFDIR;g" \
-- "$source" > "$target" -- "$source" > "$target"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
$DEBUG $RM -- "$target" $DEBUG $RM -- "$target"

View File

@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
#$Id$ #$Id$
#Copyright (c) 2012-2015 Pierre Pronchery <khorben@defora.org> #Copyright (c) 2012-2017 Pierre Pronchery <khorben@defora.org>
# #
#Redistribution and use in source and binary forms, with or without #Redistribution and use in source and binary forms, with or without
#modification, are permitted provided that the following conditions are met: #modification, are permitted provided that the following conditions are met:
@ -114,7 +114,7 @@ _usage()
clean=0 clean=0
install=0 install=0
uninstall=0 uninstall=0
while getopts "ciuP:" name; do while getopts "ciO:uP:" name; do
case "$name" in case "$name" in
c) c)
clean=1 clean=1
@ -123,6 +123,9 @@ while getopts "ciuP:" name; do
uninstall=0 uninstall=0
install=1 install=1
;; ;;
O)
export "${OPTARG%%=*}"="${OPTARG#*=}"
;;
u) u)
install=0 install=0
uninstall=1 uninstall=1
@ -137,7 +140,7 @@ while getopts "ciuP:" name; do
esac esac
done done
shift $((OPTIND - 1)) shift $((OPTIND - 1))
if [ $# -eq 0 ]; then if [ $# -lt 1 ]; then
_usage _usage
exit $? exit $?
fi fi
@ -167,7 +170,7 @@ while [ $# -gt 0 ]; do
xpath="string(/refentry/refmeta/manvolnum)" xpath="string(/refentry/refmeta/manvolnum)"
section=$($XMLLINT --xpath "$xpath" "$source") section=$($XMLLINT --xpath "$xpath" "$source")
if [ $? -eq 0 -a -n "$section" ]; then if [ $? -eq 0 -a -n "$section" ]; then
instdir="$DATADIR/man/html$section" instdir="$MANDIR/html$section"
fi fi
;; ;;
pdf) pdf)

View File

@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
#$Id$ #$Id$
#Copyright (c) 2012-2015 Pierre Pronchery <khorben@defora.org> #Copyright (c) 2012-2017 Pierre Pronchery <khorben@defora.org>
# #
#Redistribution and use in source and binary forms, with or without #Redistribution and use in source and binary forms, with or without
#modification, are permitted provided that the following conditions are met: #modification, are permitted provided that the following conditions are met:
@ -72,7 +72,7 @@ _usage()
clean=0 clean=0
install=0 install=0
uninstall=0 uninstall=0
while getopts "ciuP:" name; do while getopts "ciO:uP:" name; do
case "$name" in case "$name" in
c) c)
clean=1 clean=1
@ -81,6 +81,9 @@ while getopts "ciuP:" name; do
uninstall=0 uninstall=0
install=1 install=1
;; ;;
O)
export "${OPTARG%%=*}"="${OPTARG#*=}"
;;
u) u)
install=0 install=0
uninstall=1 uninstall=1
@ -95,7 +98,7 @@ while getopts "ciuP:" name; do
esac esac
done done
shift $((OPTIND - 1)) shift $((OPTIND - 1))
if [ $# -eq 0 ]; then if [ $# -lt 1 ]; then
_usage _usage
exit $? exit $?
fi fi

View File

@ -1,42 +1,97 @@
#!/bin/sh #!/bin/sh
#$Id$ #$Id$
#Copyright (c) 2016-2017 Pierre Pronchery <khorben@defora.org> #Copyright (c) 2011-2017 Pierre Pronchery <khorben@defora.org>
#This file is part of DeforaOS System libApp
#This program is free software: you can redistribute it and/or modify
#it under the terms of the GNU General Public License as published by
#the Free Software Foundation, version 3 of the License.
# #
#This program is distributed in the hope that it will be useful, #Redistribution and use in source and binary forms, with or without
#but WITHOUT ANY WARRANTY; without even the implied warranty of #modification, are permitted provided that the following conditions are met:
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#GNU General Public License for more details.
# #
#You should have received a copy of the GNU General Public License # * Redistributions of source code must retain the above copyright notice, this
#along with this program. If not, see <http://www.gnu.org/licenses/>. # list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
#THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
#AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
#IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
#DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
#FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
#DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
#SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
#CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
#OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
#OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#variables #variables
PROGNAME="appbroker.sh" PROGNAME="appbroker.sh"
#executables #executables
APPBROKER="$OBJDIR../tools/AppBroker$EXEEXT" APPBROKER="AppBroker"
DIFF="diff"
DEBUG="_debug" DEBUG="_debug"
MKTEMP="mktemp"
RM="rm -f"
#functions #functions
#appbroker
_appbroker()
{
target="$1"
appinterface="$2"
$DEBUG $APPBROKER -o "$target" "$appinterface"
}
#debug
_debug()
{
echo "$@" 1>&3
"$@"
}
#usage
_usage()
{
echo "Usage: $PROGNAME [-c] target..." 1>&2
return 1
}
#main #main
tmpfile=$($MKTEMP) clean=0
[ $? -eq 0 ] || exit 2 while getopts "cO:P:" name; do
interface="$1" case "$name" in
expected="${interface%.interface}.expected" c)
$APPBROKER -o "$tmpfile" "$interface" clean=1
ret=$? ;;
if [ $ret -eq 0 ]; then O)
$DIFF -- "$expected" "$tmpfile" export "${OPTARG%%=*}"="${OPTARG#*=}"
ret=$? ;;
P)
#XXX ignored for compatibility
;;
?)
_usage
exit $?
;;
esac
done
shift $((OPTIND - 1))
if [ $# -lt 1 ]; then
_usage
exit $?
fi fi
$RM -- "$tmpfile"
exit $ret [ "$clean" -ne 0 ] && exit 0
exec 3>&1
while [ $# -gt 0 ]; do
target="$1"
shift
source="${target#$OBJDIR}"
appinterface="${source##*/}"
appinterface="../data/${appinterface%%.h}.interface"
_appbroker "$target" "$appinterface" || exit 2
done