OSDN Git Service

cmakew
[moflib/moflib.git] / trash / build / linux / configure
1 #! /bin/sh
2
3 # オプションの既定値
4 PREFIX=${PREFIX:-$HOME}
5 CXX=${CXX:-g++}
6 CC=${CC:-gcc}
7 LD=${LD:-g++}
8 CFLAGS=${CFLAGS:--pipe -ansi -pedantic -Wall -W}
9 CXXFLAGS=${CXXFLAGS:--pipe -std=c++98 -pedantic -Wall -W}
10 INSTALL=${INSTALL:-install}
11 enable_debug=yes
12 enable_exception=no
13
14 # 使用法の説明
15 usage()
16 {
17 cat <<EOF
18
19 Usage: $0 [options]
20
21 Options:
22   -h, -help               このヘルプを表示
23   --prefix=PREFIX         install architecture-independent files in PREFIX
24                           [$HOME]
25   --with-x[=path]         X11 ライブラリのインストール先を path に指定
26   --with-boost[=path]     boost ライブラリのインストール先を path に指定
27   --enable-debug          デバッグモードを有効にする (デフォルト)
28   --disable-debug         デバッグモードを無効にする
29
30 EOF
31         exit 0
32 }
33
34 # コマンドラインオプションの解析
35 for arg in "$@"; do
36         case $arg in
37         -prefix=* | --prefix=*)
38                 PREFIX=`expr "$arg" : '[^=]*=\(.*\)'`
39                 ;;
40
41     -with-boost | -with-boost=* | --with-boost | --with-boost=*)
42                 boost_PREFIX=`expr "$arg" : '[^=]*=\(.*\)'`
43                 ;;
44     
45         -enable-debug | --enable-debug)
46                 enable_debug=yes
47                 ;;
48
49         -disable-debug | --disable-debug)
50                 enable_debug=no
51                 ;;
52
53         -enable-debug=* | --enable-debug=*)
54                 enable_debug=`expr "$arg" : '[^=]*=\(.*\)'`
55                 ;;
56
57         -h | -help | --help)
58                 usage
59                 ;;
60
61         *)
62                 echo "Unknown option $arg"
63                 exit 1
64                 ;;
65         esac
66 done
67
68 # boost_PREFIX が空文字列のときは,/usr を代入する.
69 if [ -z "$boost_PREFIX" ]; then
70         boost_PREFIX="/usr"
71 fi
72 boost_LIBS="-L${boost_PREFIX}/stage/lib"
73 boost_CXXFLAGS="-I${boost_PREFIX}"
74
75 # デバッグ時は最適化を無効にして,デバッグ時のマクロを定義する
76 # 非デバッグ時は最適化を有効にして,非デバッグ時のマクロを定義する
77 if [ "$enable_debug" = "yes" ]; then
78         CXXFLAGS="-g -O0 -DDEBUG -UNDEBUG $CXXFLAGS"
79         CFLAGS="-g -O0 -DDEBUG -UNDEBUG $CFLAGS"
80 else
81         CXXFLAGS="-O3 -UDEBUG -DNDEBUG $CXXFLAGS"
82         CFLAGS="-O3 -UDEBUG -DNDEBUG $CFLAGS"
83 fi
84
85 # Makefile.vars.in から Makefile.vars を生成
86 INPUT="Makefile.vars.in"
87 OUTPUT="Makefile.vars"
88 echo "$INPUT から $OUTPUT を生成します."
89
90 sed \
91         -e 's:@PREFIX@:'"$PREFIX"':g' \
92         -e 's:@INSTALL@:'"$INSTALL"':g' \
93         -e 's:@CC@:'"$CC"':g' \
94         -e 's:@CFLAGS@:'"$CFLAGS"':g' \
95         -e 's:@CXX@:'"$CXX"':g' \
96         -e 's:@CXXFLAGS@:'"$CXXFLAGS"':g' \
97         -e 's:@LD@:'"$LD"':g' \
98         -e 's:@LDFLAGS@:'"$LDFLAGS"':g' \
99         -e 's:@boost_CXXFLAGS@:'"$boost_CXXFLAGS"':g' \
100         -e 's:@boost_LIBS@:'"$boost_LIBS"':g' $INPUT > $OUTPUT
101
102 echo
103 echo "コンパイル設定:"
104 echo "  boostライブラリの場所: $boost_PREFIX"
105 echo "  デバッグ: $enable_debug"
106 echo
107 echo "設定が完了しました.make を実行してください."
108 echo
109