New way of running configuration scripts during compilation
This commit is contained in:
parent
cc59cecdf3
commit
b3d2d5ac50
|
@ -10,7 +10,7 @@ INSTALL = install
|
||||||
all: $(TARGETS)
|
all: $(TARGETS)
|
||||||
|
|
||||||
libDesktop.pc: libDesktop.pc.in ../config.sh
|
libDesktop.pc: libDesktop.pc.in ../config.sh
|
||||||
./pkgconfig.sh "libDesktop.pc"
|
./pkgconfig.sh -P "$(PREFIX)" -- "libDesktop.pc"
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(RM) -- $(libDesktop.pc_OBJS)
|
$(RM) -- $(libDesktop.pc_OBJS)
|
||||||
|
@ -19,9 +19,9 @@ distclean: clean
|
||||||
$(RM) -- $(TARGETS)
|
$(RM) -- $(TARGETS)
|
||||||
|
|
||||||
install: all
|
install: all
|
||||||
./pkgconfig.sh -p "$(DESTDIR)$(PREFIX)" install "libDesktop.pc"
|
./pkgconfig.sh -P "$(DESTDIR)$(PREFIX)" -i -- "libDesktop.pc"
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
./pkgconfig.sh -p "$(DESTDIR)$(PREFIX)" uninstall "libDesktop.pc"
|
./pkgconfig.sh -P "$(DESTDIR)$(PREFIX)" -u -- "libDesktop.pc"
|
||||||
|
|
||||||
.PHONY: all clean distclean install uninstall
|
.PHONY: all clean distclean install uninstall
|
||||||
|
|
|
@ -24,32 +24,58 @@ _debug()
|
||||||
#usage
|
#usage
|
||||||
_usage()
|
_usage()
|
||||||
{
|
{
|
||||||
echo "Usage: pkgconfig.sh target" 1>&2
|
echo "Usage: pkgconfig.sh [-i|-u][-P prefix] target" 1>&2
|
||||||
echo " pkgconfig.sh -p prefix install target" 1>&2
|
|
||||||
echo " pkgconfig.sh -p prefix uninstall target" 1>&2
|
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#main
|
#main
|
||||||
if [ $# -eq 4 -a "$1" = "-p" ]; then
|
args=`getopt iuP: $*`
|
||||||
PREFIX="$2"
|
if [ $? -ne 0 ]; then
|
||||||
PKGCONFIG="$PREFIX/lib/pkgconfig"
|
|
||||||
|
|
||||||
if [ "$3" = "install" ]; then
|
|
||||||
$DEBUG $MKDIR "$PKGCONFIG" || exit 2
|
|
||||||
$DEBUG $INSTALL "$4" "$PKGCONFIG/$4" || exit 2
|
|
||||||
exit 0
|
|
||||||
elif [ "$3" = "uninstall" ]; then
|
|
||||||
$DEBUG $RM "$PKGCONFIG/$4" || exit 2
|
|
||||||
exit 0
|
|
||||||
else
|
|
||||||
echo "pkgconfig.sh: $3: Unknown operation" 1>&2
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
if [ $# -ne 1 ]; then
|
|
||||||
_usage
|
_usage
|
||||||
exit $?
|
exit $?
|
||||||
fi
|
fi
|
||||||
|
set -- $args
|
||||||
|
install=0
|
||||||
|
uninstall=0
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
-i)
|
||||||
|
install=1
|
||||||
|
;;
|
||||||
|
-u)
|
||||||
|
uninstall=1
|
||||||
|
;;
|
||||||
|
-P)
|
||||||
|
PREFIX="$2"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--)
|
||||||
|
shift
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
$SED -e "s,PREFIX,$PREFIX," -e "s,VERSION,$VERSION," "$1.in" > "$1"
|
PKGCONFIG="$PREFIX/lib/pkgconfig"
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
target="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
#uninstall
|
||||||
|
if [ "$uninstall" -eq 1 ]; then
|
||||||
|
$DEBUG $RM "$PKGCONFIG/$target" || exit 2
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
#create
|
||||||
|
$SED -e "s,PREFIX,$PREFIX," -e "s,VERSION,$VERSION," "$target.in" \
|
||||||
|
> "$target" || exit 2
|
||||||
|
|
||||||
|
#install
|
||||||
|
if [ "$install" -eq 1 ]; then
|
||||||
|
$DEBUG $MKDIR "$PKGCONFIG" || exit 2
|
||||||
|
$DEBUG $INSTALL "$target" "$PKGCONFIG/$target" || exit 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
Loading…
Reference in New Issue
Block a user