generate_pkgconfig.sh revision 1.5
1#!/bin/sh 2# 3# $OpenBSD: generate_pkgconfig.sh,v 1.5 2011/03/24 21:31:01 matthieu 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 12curdir= 13objdir= 14while getopts "c:ko:" flag; do 15 case "$flag" in 16 c) 17 curdir=$OPTARG 18 ;; 19 o) 20 objdir=$OPTARG 21 ;; 22 *) 23 usage 24 ;; 25 esac 26done 27 28[ -n "${curdir}" ] || usage 29if [ ! -d "${curdir}" ]; then 30 echo "${0##*/}: ${curdir}: not found" 31 exit 1 32fi 33[ -n "${objdir}" ] || usage 34if [ ! -w "${objdir}" ]; then 35 echo "${0##*/}: ${objdir}: not found or not writable" 36 exit 1 37fi 38 39ssl_version=$(sed -nE 's/^#define[[:blank:]]+SHLIB_VERSION_NUMBER[[:blank:]]+"(.*)".*/\1/p' \ 40 ${curdir}/src/crypto/opensslv.h) 41 42# Put -I${includedir} into Cflags so configure script tests like 43# test -n "`pkg-config --cflags openssl`" 44# don't assume that OpenSSL isn't available. 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: 57Libs: -lcrypto 58Cflags: -I\${includedir} 59__EOF__ 60 61 62pc_file="${objdir}/libssl.pc" 63cat > ${pc_file} << __EOF__ 64prefix=/usr 65exec_prefix=\${prefix} 66libdir=\${exec_prefix}/lib 67includedir=\${prefix}/include 68 69Name: OpenSSL 70Description: Secure Sockets Layer and cryptography libraries 71Version: ${ssl_version} 72Requires: 73Libs: -lssl -lcrypto 74Cflags: -I\${includedir} 75__EOF__ 76 77 78pc_file="${objdir}/openssl.pc" 79cat > ${pc_file} << __EOF__ 80prefix=/usr 81exec_prefix=\${prefix} 82libdir=\${exec_prefix}/lib 83includedir=\${prefix}/include 84 85Name: OpenSSL 86Description: Secure Sockets Layer and cryptography libraries and tools 87Version: ${ssl_version} 88Requires: 89Libs: -lssl -lcrypto 90Cflags: -I\${includedir} 91__EOF__ 92