#!/bin/sh # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # APR script designed to allow easy command line access to APR configuration # parameters. APR_MAJOR_VERSION="@APR_MAJOR_VERSION@" APR_DOTTED_VERSION="@APR_DOTTED_VERSION@" prefix="@prefix@" exec_prefix="@exec_prefix@" bindir="@bindir@" libdir="@libdir@" datarootdir="@datadir@" datadir="@datadir@" installbuilddir="@installbuilddir@" includedir="@includedir@" CC="@CC@" CPP="@CPP@" SHELL="@SHELL@" CPPFLAGS="@EXTRA_CPPFLAGS@" CFLAGS="@EXTRA_CFLAGS@" LDFLAGS="@EXTRA_LDFLAGS@" LIBS="@EXTRA_LIBS@" EXTRA_INCLUDES="@EXTRA_INCLUDES@" SHLIBPATH_VAR="@shlibpath_var@" APR_SOURCE_DIR="@apr_srcdir@" APR_BUILD_DIR="@apr_builddir@" APR_SO_EXT="@so_ext@" APR_LIB_TARGET="@export_lib_target@" APR_LIBNAME="@APR_LIBNAME@" # NOTE: the following line is modified during 'make install': alter with care! location=@APR_CONFIG_LOCATION@ show_usage() { cat << EOF Usage: apr-$APR_MAJOR_VERSION-config [OPTION] Known values for OPTION are: --prefix[=DIR] change prefix to DIR --bindir print location where binaries are installed --includedir print location where headers are installed --cc print C compiler name --cpp print C preprocessor name and any required options --cflags print C compiler flags --cppflags print C preprocessor flags --includes print include information --ldflags print linker flags --libs print additional libraries to link against --srcdir print APR source directory --installbuilddir print APR build helper directory --link-ld print link switch(es) for linking to APR --link-libtool print the libtool inputs for linking to APR --shlib-path-var print the name of the shared library path env var --apr-la-file print the path to the .la file, if available --apr-so-ext print the extensions of shared objects on this platform --apr-lib-target print the libtool target information --apr-libtool print the path to APR's libtool --version print the APR's version as a dotted triple --help print this help When linking with libtool, an application should do something like: APR_LIBS="\`apr-$APR_MAJOR_VERSION-config --link-libtool --libs\`" or when linking directly: APR_LIBS="\`apr-$APR_MAJOR_VERSION-config --link-ld --libs\`" An application should use the results of --cflags, --cppflags, --includes, and --ldflags in their build process. EOF } if test $# -eq 0; then show_usage exit 1 fi if test "$location" = "installed"; then LA_FILE="$libdir/lib${APR_LIBNAME}.la" else LA_FILE="$APR_BUILD_DIR/lib${APR_LIBNAME}.la" fi flags="" while test $# -gt 0; do # Normalize the prefix. case "$1" in -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;; *) optarg= ;; esac case "$1" in # It is possible for the user to override our prefix. --prefix=*) prefix=$optarg ;; --prefix) echo $prefix exit 0 ;; --bindir) echo $bindir exit 0 ;; --includedir) if test "$location" = "installed"; then flags="$includedir" elif test "$location" = "source"; then flags="$APR_SOURCE_DIR/include" else # this is for VPATH builds flags="$APR_BUILD_DIR/include $APR_SOURCE_DIR/include" fi echo $flags exit 0 ;; --cc) echo $CC exit 0 ;; --cpp) echo $CPP exit 0 ;; --cflags) flags="$flags $CFLAGS" ;; --cppflags) flags="$flags $CPPFLAGS" ;; --libs) flags="$flags $LIBS" ;; --ldflags) flags="$flags $LDFLAGS" ;; --includes) if test "$location" = "installed"; then flags="$flags -I$includedir $EXTRA_INCLUDES" elif test "$location" = "source"; then flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES" else # this is for VPATH builds flags="$flags -I$APR_BUILD_DIR/include -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES" fi ;; --srcdir) echo $APR_SOURCE_DIR exit 0 ;; --installbuilddir) if test "$location" = "installed"; then echo "${installbuilddir}" elif test "$location" = "source"; then echo "$APR_SOURCE_DIR/build" else # this is for VPATH builds echo "$APR_BUILD_DIR/build" fi exit 0 ;; --version) echo $APR_DOTTED_VERSION exit 0 ;; --link-ld) if test "$location" = "installed"; then ### avoid using -L if libdir is a "standard" location like /usr/lib flags="$flags -L$libdir -l${APR_LIBNAME}" else ### this surely can't work since the library is in .libs? flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}" fi ;; --link-libtool) # If the LA_FILE exists where we think it should be, use it. If we're # installed and the LA_FILE does not exist, assume to use -L/-l # (the LA_FILE may not have been installed). If we're building ourselves, # we'll assume that at some point the .la file be created. if test -f "$LA_FILE"; then flags="$flags $LA_FILE" elif test "$location" = "installed"; then ### avoid using -L if libdir is a "standard" location like /usr/lib # Since the user is specifying they are linking with libtool, we # *know* that -R will be recognized by libtool. flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}" else flags="$flags $LA_FILE" fi ;; --shlib-path-var) echo "$SHLIBPATH_VAR" exit 0 ;; --apr-la-file) if test -f "$LA_FILE"; then flags="$flags $LA_FILE" fi ;; --apr-so-ext) echo "$APR_SO_EXT" exit 0 ;; --apr-lib-target) echo "$APR_LIB_TARGET" exit 0 ;; --apr-libtool) if test "$location" = "installed"; then echo "${installbuilddir}/libtool" else echo "$APR_BUILD_DIR/libtool" fi exit 0 ;; --help) show_usage exit 0 ;; *) show_usage exit 1 ;; esac # Next please. shift done if test -n "$flags"; then echo "$flags" fi exit 0