Integrating pkg-config

This commit is contained in:
Pierre Pronchery 2010-12-10 23:14:15 +00:00
parent ed24ad3265
commit 02b8591476
8 changed files with 118 additions and 3 deletions

View File

@ -1,6 +1,6 @@
PACKAGE = libDesktop
VERSION = 0.0.2
SUBDIRS = include src
SUBDIRS = data include src
RM = rm -f
LN = ln -f
TAR = tar -czvf
@ -21,6 +21,10 @@ dist:
$(RM) -r -- $(PACKAGE)-$(VERSION)
$(LN) -s -- . $(PACKAGE)-$(VERSION)
@$(TAR) $(PACKAGE)-$(VERSION).tar.gz -- \
$(PACKAGE)-$(VERSION)/data/Makefile \
$(PACKAGE)-$(VERSION)/data/libDesktop.pc.in \
$(PACKAGE)-$(VERSION)/data/pkgconfig.sh \
$(PACKAGE)-$(VERSION)/data/project.conf \
$(PACKAGE)-$(VERSION)/include/Desktop.h \
$(PACKAGE)-$(VERSION)/include/Makefile \
$(PACKAGE)-$(VERSION)/include/project.conf \
@ -40,6 +44,7 @@ dist:
$(PACKAGE)-$(VERSION)/src/project.conf \
$(PACKAGE)-$(VERSION)/Makefile \
$(PACKAGE)-$(VERSION)/COPYING \
$(PACKAGE)-$(VERSION)/config.sh \
$(PACKAGE)-$(VERSION)/project.conf
$(RM) -- $(PACKAGE)-$(VERSION)

5
config.sh Normal file
View File

@ -0,0 +1,5 @@
PACKAGE="libDesktop"
VERSION="0.0.2"
PREFIX="/usr/local"
LIBDIR="${PREFIX}/lib"

2
data/.cvsignore Normal file
View File

@ -0,0 +1,2 @@
.cvsignore
libDesktop.pc

27
data/Makefile Normal file
View File

@ -0,0 +1,27 @@
TARGETS = libDesktop.pc
PREFIX = /usr/local
DESTDIR =
RM = rm -f
LN = ln -f
MKDIR = mkdir -p
INSTALL = install
all: $(TARGETS)
libDesktop.pc: ../config.sh
./pkgconfig.sh "libDesktop.pc"
clean:
$(RM) -- $(libDesktop.pc_OBJS)
distclean: clean
$(RM) -- $(TARGETS)
install: all
./pkgconfig.sh -p "$(DESTDIR)$(PREFIX)" install "libDesktop.pc"
uninstall:
./pkgconfig.sh -p "$(DESTDIR)$(PREFIX)" uninstall "libDesktop.pc"
.PHONY: all clean distclean install uninstall

11
data/libDesktop.pc.in Normal file
View File

@ -0,0 +1,11 @@
prefix=PREFIX
includedir=${prefix}/include
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
Name: libDesktop
Description: DeforaOS Desktop helper library
Version: VERSION
Requires: gtk+-2.0
Cflags: -I${includedir}
Libs: -Wl,-R${libdir} -L${libdir} -lDesktop

55
data/pkgconfig.sh Executable file
View File

@ -0,0 +1,55 @@
#!/bin/sh
#$Id$
#variables
. "../config.sh"
DEBUG="_debug"
INSTALL="install -m 0644"
MKDIR="mkdir -p"
RM="rm -f"
SED="sed"
#functions
#debug
_debug()
{
echo $@
$@
}
#usage
_usage()
{
echo "Usage: pkgconfig.sh target" 1>&2
echo " pkgconfig.sh -p prefix install target" 1>&2
echo " pkgconfig.sh -p prefix uninstall target" 1>&2
return 1
}
#main
if [ $# -eq 4 -a "$1" = "-p" ]; then
PREFIX="$2"
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
exit $?
fi
$SED -e "s,PREFIX,$PREFIX," -e "s,VERSION,$VERSION," "$1.in" > "$1"

8
data/project.conf Normal file
View File

@ -0,0 +1,8 @@
targets=libDesktop.pc
dist=Makefile,libDesktop.pc.in,pkgconfig.sh
[libDesktop.pc]
type=script
script=./pkgconfig.sh
depends=../config.sh
install=

View File

@ -1,4 +1,6 @@
package=libDesktop
version=0.0.2
subdirs=include,src
dist=Makefile,COPYING
subdirs=data,include,src
config=sh
dist=Makefile,COPYING,config.sh