generate_pkgconfig.sh revision 1.1
1#!/bin/sh
2#
3# $OpenBSD: generate_pkgconfig.sh,v 1.1 2010/12/28 14:30:50 jasper Exp $
4#
5# Generate pkg-config files for OpenSSL.
6
7usage() {
8	echo "usage: ${0##*/} [-k] -c current_directory -o obj_directory"
9	exit 1
10}
11
12enable_krb5=false
13curdir=
14objdir=
15while getopts "c:ko:" flag; do
16	case "$flag" in
17		c)
18			curdir=$OPTARG
19			;;
20		k)
21			enable_krb5=true
22			;;
23		o)
24			objdir=$OPTARG
25			;;
26		*)
27			usage
28			;;
29	esac		
30done
31
32[ -n "${curdir}" ] || usage
33if [ ! -w "${curdir}" ]; then
34	echo "${0##*/}: ${curdir}: not found or not writable"
35	exit 1
36fi
37[ -n "${objdir}" ] || usage
38if [ ! -w "${objdir}" ]; then
39	echo "${0##*/}: ${objdir}: not found or not writable"
40	exit 1
41fi
42
43ssl_version=$(sed -nE 's/^#define[[:blank:]]+SHLIB_VERSION_NUMBER[[:blank:]]+"(.*)".*/\1/p' \
44	${curdir}/src/crypto/opensslv.h)
45
46pc_file="${objdir}/libcrypto.pc"
47cat > ${pc_file} << __EOF__
48prefix=/usr
49exec_prefix=\${prefix}
50libdir=\${exec_prefix}/lib
51includedir=\${prefix}/include
52
53Name: OpenSSL-libcrypto
54Description: OpenSSL cryptography library
55Version: ${ssl_version}
56Requires: 
57__EOF__
58echo -n 'Libs: -L${libdir} -lcrypto ' >> ${pc_file}
59${enable_krb5} && echo -n '-L/usr/kerberos/lib ' >> ${pc_file}
60echo '-lz' >> ${pc_file}
61echo -n 'Cflags: -I${includedir} ' >> ${pc_file}
62${enable_krb5} && echo -n '-I/usr/kerberos/include' >> ${pc_file}
63echo '' >> ${pc_file}
64
65
66pc_file="${objdir}/libssl.pc"
67cat > ${pc_file} << __EOF__
68prefix=/usr
69exec_prefix=\${prefix}
70libdir=\${exec_prefix}/lib
71includedir=\${prefix}/include
72
73Name: OpenSSL
74Description: Secure Sockets Layer and cryptography libraries
75Version: ${ssl_version}
76Requires: 
77__EOF__
78echo -n 'Libs: -L${libdir} -lssl -lcrypto ' >> ${pc_file}
79${enable_krb5} && echo -n '-L/usr/kerberos/lib ' >> ${pc_file}
80echo '-lz' >> ${pc_file}
81echo -n 'Cflags: -I${includedir} ' >> ${pc_file}
82${enable_krb5} && echo -n '-I/usr/kerberos/include' >> ${pc_file}
83echo '' >> ${pc_file}
84
85
86pc_file="${objdir}/openssl.pc"
87cat > ${pc_file} << __EOF__
88prefix=/usr
89exec_prefix=\${prefix}
90libdir=\${exec_prefix}/lib
91includedir=\${prefix}/include
92
93Name: OpenSSL
94Description: Secure Sockets Layer and cryptography libraries and tools
95Version: ${ssl_version}
96Requires: 
97__EOF__
98echo -n 'Libs: -L${libdir} -lssl -lcrypto ' >> ${pc_file}
99${enable_krb5} && echo -n '-L/usr/kerberos/lib ' >> ${pc_file}
100echo '-lz' >> ${pc_file}
101echo -n 'Cflags: -I${includedir} ' >> ${pc_file}
102${enable_krb5} && echo -n '-I/usr/kerberos/include' >> ${pc_file}
103echo '' >> ${pc_file}
104