Also installing a pkg-config file
This commit is contained in:
parent
9757418c90
commit
3a9d8f25d0
7
Makefile
7
Makefile
|
@ -1,6 +1,6 @@
|
|||
PACKAGE = cpp
|
||||
VERSION = 0.0.1
|
||||
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/cpp.pc.in \
|
||||
$(PACKAGE)-$(VERSION)/data/pkgconfig.sh \
|
||||
$(PACKAGE)-$(VERSION)/data/project.conf \
|
||||
$(PACKAGE)-$(VERSION)/include/cpp.h \
|
||||
$(PACKAGE)-$(VERSION)/include/Makefile \
|
||||
$(PACKAGE)-$(VERSION)/include/project.conf \
|
||||
|
@ -35,6 +39,7 @@ dist:
|
|||
$(PACKAGE)-$(VERSION)/Makefile \
|
||||
$(PACKAGE)-$(VERSION)/COPYING \
|
||||
$(PACKAGE)-$(VERSION)/config.h \
|
||||
$(PACKAGE)-$(VERSION)/config.sh \
|
||||
$(PACKAGE)-$(VERSION)/project.conf
|
||||
$(RM) -- $(PACKAGE)-$(VERSION)
|
||||
|
||||
|
|
5
config.sh
Normal file
5
config.sh
Normal file
|
@ -0,0 +1,5 @@
|
|||
PACKAGE="cpp"
|
||||
VERSION="0.0.1"
|
||||
|
||||
PREFIX="/usr/local"
|
||||
LIBDIR="${PREFIX}/lib"
|
27
data/Makefile
Normal file
27
data/Makefile
Normal file
|
@ -0,0 +1,27 @@
|
|||
TARGETS = cpp.pc
|
||||
PREFIX = /usr/local
|
||||
DESTDIR =
|
||||
RM = rm -f
|
||||
LN = ln -f
|
||||
MKDIR = mkdir -p
|
||||
INSTALL = install
|
||||
|
||||
|
||||
all: $(TARGETS)
|
||||
|
||||
cpp.pc: cpp.pc.in ../config.sh
|
||||
./pkgconfig.sh "cpp.pc"
|
||||
|
||||
clean:
|
||||
$(RM) -- $(cpp.pc_OBJS)
|
||||
|
||||
distclean: clean
|
||||
$(RM) -- $(TARGETS)
|
||||
|
||||
install: all
|
||||
./pkgconfig.sh -p "$(DESTDIR)$(PREFIX)" install "cpp.pc"
|
||||
|
||||
uninstall:
|
||||
./pkgconfig.sh -p "$(DESTDIR)$(PREFIX)" uninstall "cpp.pc"
|
||||
|
||||
.PHONY: all clean distclean install uninstall
|
10
data/cpp.pc.in
Normal file
10
data/cpp.pc.in
Normal file
|
@ -0,0 +1,10 @@
|
|||
prefix=PREFIX
|
||||
includedir=${prefix}/include
|
||||
exec_prefix=${prefix}
|
||||
libdir=${exec_prefix}/lib
|
||||
|
||||
Name: cpp
|
||||
Description: DeforaOS Development code pre-processor
|
||||
Version: VERSION
|
||||
Cflags: -I${includedir}
|
||||
Libs: -Wl,-R${libdir} -L${libdir} -lcpp
|
55
data/pkgconfig.sh
Executable file
55
data/pkgconfig.sh
Executable 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
8
data/project.conf
Normal file
|
@ -0,0 +1,8 @@
|
|||
targets=cpp.pc
|
||||
dist=Makefile,cpp.pc.in,pkgconfig.sh
|
||||
|
||||
[cpp.pc]
|
||||
type=script
|
||||
script=./pkgconfig.sh
|
||||
depends=cpp.pc.in,../config.sh
|
||||
install=
|
|
@ -1,6 +1,6 @@
|
|||
package=cpp
|
||||
version=0.0.1
|
||||
config=h
|
||||
config=h,sh
|
||||
|
||||
subdirs=include,src
|
||||
dist=Makefile,COPYING,config.h
|
||||
subdirs=data,include,src
|
||||
dist=Makefile,COPYING,config.h,config.sh
|
||||
|
|
Loading…
Reference in New Issue
Block a user