configure

Sat, 31 Oct 2015 20:10:21 +0100

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sat, 31 Oct 2015 20:10:21 +0100
changeset 109
8a0a7754f123
parent 94
6b15a094d996
child 204
e870a7c8f223
permissions
-rwxr-xr-x

experimental BSD support

#!/bin/sh
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
#
# Copyright 2013 Olaf Wintermann. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
#   1. Redistributions of source code must retain the above copyright
#      notice, this list of conditions and the following disclaimer.
#
#   2. Redistributions in binary form must reproduce the above copyright
#      notice, this list of conditions and the following disclaimer in the
#      documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#

#
# TODO: parse arguments
#

OS=`uname -s`
HOST=`uname -n`
INSTALL_DIR=`pwd`/work

LIBS_CFLAGS=`pkg-config --cflags libxml-2.0 openssl`
LIBS_LDFLAGS=`pkg-config --libs libxml-2.0 openssl`

# create config.mk
echo "generate config.mk"

cat > config.mk << __EOF__
#
# config.mk generated by configure
#

INSTALL_DIR = $INSTALL_DIR
HOST = $HOST

__EOF__

# platform

if [ $OS = SunOS ]; then
   CCONF=suncc.mk
   PLATFORM=solaris.mk
fi

if [ $OS = Linux ]; then
    if `type clang > /dev/null`; then
        CCONF=clang.mk
    else
        CCONF=gcc.mk
    fi
    PLATFORM=linux.mk
fi

if [ $OS = Darwin ]; then
    CCONF=clang.mk
    PLATFORM=osx.mk
fi

ISBSD=`echo $OS | grep -c BSD`
if [ $ISBSD = 1 ]; then
   if `type clang > /dev/null`; then
        CCONF=clang.mk
    else
        CCONF=gcc.mk
    fi
    PLATFORM=bsd.mk
fi

echo "
include \$(BUILD_ROOT)/make/$CCONF
include \$(BUILD_ROOT)/make/$PLATFORM

CFLAGS += $LIBS_CFLAGS
LDFLAGS += $LIBS_LDFLAGS

" >> config.mk


mercurial