#!/bin/sh
VERSION=0.01
# ------------------------------------------------------------------------------
# gcc compiler option
# -ansi <-- ANSI �€‹’
# -std=c99 <-- C99 �€‹’
# -std=gnu99 <-- C99 + GNU Šg’£
# ------------------------------------------------------------------------------
PREFIX=.
TARGET_OS=OS_WINDOWS
# ------------------------------------------------------------------------------
# print CFLAGS
# ------------------------------------------------------------------------------
function printCFLAGS() {
echo "-I${PREFIX}/include -I${PREFIX}/include/sc -DTARGET_OS=${TARGET_OS}"
}
# ------------------------------------------------------------------------------
# print CXXFLAGS
# ------------------------------------------------------------------------------
function printCXXFLAGS() {
echo "-I${PREFIX}/include -I${PREFIX}/include/sc -DTARGET_OS=${TARGET_OS}"
}
# ------------------------------------------------------------------------------
# print LDFLAGS
# ------------------------------------------------------------------------------
function printLDFLAGS() {
echo "-L${PREFIX}/lib"
}
# ------------------------------------------------------------------------------
# print LIBS
# ------------------------------------------------------------------------------
function printLIBS() {
if [ "${TARGET_OS}" == "OS_WINDOWS" ]; then
echo "-lws2_32"
else
echo "-lpthread -ldl"
fi
}
# ------------------------------------------------------------------------------
# print PREFIX
# ------------------------------------------------------------------------------
function printPREFIX() {
echo "${PREFIX}"
}
# ------------------------------------------------------------------------------
# print Version
# ------------------------------------------------------------------------------
function printVersion()
{
echo "${VERSION}"
}
# ------------------------------------------------------------------------------
# print Usage
# ------------------------------------------------------------------------------
function printUsage()
{
cat <<EOF
Usage: $0 [OPTIONS]...
--cflags C compile option
--cxxflags C++ compile option
--ldflags link option (ex. -L/usr/local/lib)
--libs link option (ex. -lpthread)
--prefix[=DIR] set prefix (or print prefix9
--target[=osname] set target windows or linux
-v,--version print version
-h,--help print this help
EOF
}
# ------------------------------------------------------------------------------
# option analysis
# ------------------------------------------------------------------------------
PREFIX=.
IS_PRINT_CFLAGS=0
IS_PRINT_CXXFLAGS=0
IS_PRINT_LDFLAGS=0
IS_PRINT_LIBS=0
IS_PRINT_PREFIX=0
IS_PRINT_VERSION=0
IS_PRINT_HELP=0
if test $# -eq 0; then
printUsage
exit 1
fi
while test $# -gt 0; do
case "$1" in
--cflags)
IS_PRINT_CFLAGS=1
;;
--cxxflags)
IS_PRINT_CXXFLAGS=1
;;
--ldflags)
IS_PRINT_LDFLAGS=1
;;
--libs)
IS_PRINT_LIBS=1
;;
--prefix)
IS_PRINT_PREFIX=1
;;
--prefix=*)
PREFIX=`echo "$1" | LC_ALL="C" sed "s/[-_a-zA-Z0-9]*=//"`
;;
--target=*)
TARGET_OS=`echo "$1" | LC_ALL="C" sed "s/[-_a-zA-Z0-9]*=//"`
;;
-v)
IS_PRINT_VERSION=1
;;
--version)
IS_PRINT_VERSION=1
;;
-h)
IS_PRINT_HELP=1
;;
--help)
IS_PRINT_HELP=1
;;
*)
IS_PRINT_HELP=1
;;
esac
shift
done
# ------------------------------------------------------------------------------
# print Version
# ------------------------------------------------------------------------------
if [ ${IS_PRINT_VERSION} -eq 1 ]; then
printVersion
exit 0
fi
# ------------------------------------------------------------------------------
# print Help
# ------------------------------------------------------------------------------
if [ ${IS_PRINT_HELP} -eq 1 ]; then
printUsage
exit 0
fi
# ------------------------------------------------------------------------------
# print CFLAGS
# ------------------------------------------------------------------------------
if [ ${IS_PRINT_CFLAGS} -eq 1 ]; then
printCFLAGS
fi
# ------------------------------------------------------------------------------
# print CXXFLAGS
# ------------------------------------------------------------------------------
if [ ${IS_PRINT_CXXFLAGS} -eq 1 ]; then
printCXXFLAGS
fi
# ------------------------------------------------------------------------------
# print LDFLAGS
# ------------------------------------------------------------------------------
if [ ${IS_PRINT_LDFLAGS} -eq 1 ]; then
printLDFLAGS
fi
# ------------------------------------------------------------------------------
# print LIBS
# ------------------------------------------------------------------------------
if [ ${IS_PRINT_LIBS} -eq 1 ]; then
printLIBS
fi
# ------------------------------------------------------------------------------
# print PREFIX
# ------------------------------------------------------------------------------
if [ ${IS_PRINT_PREFIX} -eq 1 ]; then
printPREFIX
fi