1c2532eacSjasper#!/bin/sh
2c2532eacSjasper#
3*4802b73fSjasper# $OpenBSD: generate_pkgconfig.sh,v 1.2 2012/07/07 08:25:21 jasper Exp $
4c2532eacSjasper#
5c2532eacSjasper# Copyright (c) 2010-2012 Jasper Lievisse Adriaanse <jasper@openbsd.org>
6c2532eacSjasper#
7c2532eacSjasper# Permission to use, copy, modify, and distribute this software for any
8c2532eacSjasper# purpose with or without fee is hereby granted, provided that the above
9c2532eacSjasper# copyright notice and this permission notice appear in all copies.
10c2532eacSjasper#
11c2532eacSjasper# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12c2532eacSjasper# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13c2532eacSjasper# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
14c2532eacSjasper# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15c2532eacSjasper# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16c2532eacSjasper# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
17c2532eacSjasper# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18c2532eacSjasper#
19c2532eacSjasper# Generate pkg-config file for expat.
20c2532eacSjasper
21c2532eacSjasperusage() {
22c2532eacSjasper	echo "usage: ${0##*/} -c current_directory -o obj_directory"
23c2532eacSjasper	exit 1
24c2532eacSjasper}
25c2532eacSjasper
26c2532eacSjaspercurdir=
27c2532eacSjasperobjdir=
28c2532eacSjasperwhile getopts "c:o:" flag; do
29c2532eacSjasper	case "$flag" in
30c2532eacSjasper		c)
31c2532eacSjasper			curdir=$OPTARG
32c2532eacSjasper			;;
33c2532eacSjasper		o)
34c2532eacSjasper			objdir=$OPTARG
35c2532eacSjasper			;;
36c2532eacSjasper		*)
37c2532eacSjasper			usage
38c2532eacSjasper			;;
39c2532eacSjasper	esac
40c2532eacSjasperdone
41c2532eacSjasper
42c2532eacSjasper[ -n "${curdir}" ] || usage
43c2532eacSjasperif [ ! -d "${curdir}" ]; then
44c2532eacSjasper	echo "${0##*/}: ${curdir}: not found"
45c2532eacSjasper	exit 1
46c2532eacSjasperfi
47c2532eacSjasper[ -n "${objdir}" ] || usage
48c2532eacSjasperif [ ! -w "${objdir}" ]; then
49c2532eacSjasper	echo "${0##*/}: ${objdir}: not found or not writable"
50c2532eacSjasper	exit 1
51c2532eacSjasperfi
52c2532eacSjasper
53c2532eacSjasperversion_major_re="s/#define[[:blank:]]XML_MAJOR_VERSION[[:blank:]](.*)/\1/p"
54c2532eacSjasperversion_minor_re="s/#define[[:blank:]]XML_MINOR_VERSION[[:blank:]](.*)/\1/p"
55c2532eacSjasperversion_micro_re="s/#define[[:blank:]]XML_MICRO_VERSION[[:blank:]](.*)/\1/p"
56c2532eacSjasperversion_file=${curdir}/lib/expat.h
57c2532eacSjasperlib_version=$(sed -nE ${version_major_re} ${version_file}).$(sed -nE ${version_minor_re} ${version_file}).$(sed -nE ${version_micro_re} ${version_file})
58c2532eacSjasper
59c2532eacSjasperpc_file="${objdir}/expat.pc"
60c2532eacSjaspercat > ${pc_file} << __EOF__
61c2532eacSjasperprefix=/usr
62c2532eacSjasperexec_prefix=\${prefix}
63c2532eacSjasperlibdir=\${exec_prefix}/lib
64c2532eacSjasperincludedir=\${prefix}/include
65c2532eacSjasper
66c2532eacSjasperName: expat
67c2532eacSjasperDescription: expat XML parser
68*4802b73fSjasperURL: http://www.libexpat.org
69c2532eacSjasperVersion: ${lib_version}
70c2532eacSjasperLibs: -L\${libdir} -lexpat
71c2532eacSjasperCflags: -I\${includedir}
72c2532eacSjasper__EOF__
73