Newer
Older
snipet / project / trunk / project-config
#!/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