Subversion Repositories SmartDukaan

Rev

Rev 301 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
301 ashish 1
AC_DEFUN([FB_INITIALIZE],
2
[
3
AM_INIT_AUTOMAKE([ foreign 1.9.5 no-define ])
4
if test "x$1" = "xlocalinstall"; then
5
wdir=`pwd`
6
# To use $wdir undef quote.
7
#
8
##########
9
AC_PREFIX_DEFAULT([`pwd`/install])
10
echo
11
fi
12
AC_PROG_CC
13
AC_PROG_CXX
14
AC_PROG_RANLIB(RANLIB, ranlib)
15
AC_PATH_PROGS(BASH, bash)
16
AC_PATH_PROGS(PERL, perl)
17
AC_PATH_PROGS(PYTHON, python)
18
AC_PATH_PROGS(AR, ar)
19
AC_PATH_PROGS(ANT, ant)
20
PRODUCT_MK=""
21
])
22
 
23
AC_DEFUN([FB_WITH_EXTERNAL_PATH],
24
[
25
cdir=`pwd`
26
AC_MSG_CHECKING([Checking EXTERNAL_PATH set to])
27
AC_ARG_WITH([externalpath],
28
  [ --with-externalpath=DIR User specified path to external facebook components.],
29
  [
30
    if test "x${EXTERNAL_PATH}" != "x"; then
31
       echo ""
32
       echo "ERROR: You have already set EXTERNAL_PATH in your environment"
33
       echo "Cannot override it using --with-externalpath. Unset EXTERNAL_PATH to use this option"
34
       exit 1
35
    fi
36
    EXTERNAL_PATH=$withval
37
  ],
38
  [
39
    if test "x${EXTERNAL_PATH}" = "x"; then
40
       EXTERNAL_PATH=$1
41
    fi
42
  ]
43
)
44
if test "x${EXTERNAL_PATH}" = "x"; then
45
   export EXTERNAL_PATH="$cdir/external"
46
   GLOBAL_HEADER_MK="include ${EXTERNAL_PATH}/global_header.mk"
47
   GLOBAL_FOOTER_MK="include ${EXTERNAL_PATH}/global_footer.mk"
48
else
49
   export EXTERNAL_PATH
50
   GLOBAL_HEADER_MK="include ${EXTERNAL_PATH}/global_header.mk"
51
   GLOBAL_FOOTER_MK="include ${EXTERNAL_PATH}/global_footer.mk"
52
fi
53
AC_MSG_RESULT($EXTERNAL_PATH)
54
if test ! -d ${EXTERNAL_PATH}; then
55
       echo ""
56
       echo "ERROR: EXTERNAL_PATH set to an nonexistent directory ${EXTERNAL_PATH}"
57
       exit 1
58
fi
59
AC_SUBST(EXTERNAL_PATH)
60
AC_SUBST(GLOBAL_HEADER_MK)
61
AC_SUBST(GLOBAL_FOOTER_MK)
62
])
63
 
64
# Set option to enable shared mode. Set DEBUG and OPT for use in Makefile.am.
65
AC_DEFUN([FB_ENABLE_DEFAULT_OPT_BUILD],
66
[
67
AC_MSG_CHECKING([whether to enable optimized build])
68
AC_ARG_ENABLE([opt],
69
  [  --disable-opt     Set up debug mode.],
70
  [
71
     ENABLED_OPT=$enableval
72
  ],
73
  [
74
     ENABLED_OPT="yes"
75
  ]
76
)
77
if test "$ENABLED_OPT" = "yes"
78
then
79
     CFLAGS="-Wall -O3"
80
     CXXFLAGS="-Wall -O3"
81
else
82
     CFLAGS="-Wall -g"
83
     CXXFLAGS="-Wall -g"
84
fi
85
AC_MSG_RESULT($ENABLED_OPT)
86
AM_CONDITIONAL([OPT], [test "$ENABLED_OPT" = yes])
87
AM_CONDITIONAL([DEBUG], [test "$ENABLED_OPT" = no])
88
])
89
 
90
# Set option to enable debug mode. Set DEBUG and OPT for use in Makefile.am.
91
AC_DEFUN([FB_ENABLE_DEFAULT_DEBUG_BUILD],
92
[
93
AC_MSG_CHECKING([whether to enable debug build])
94
AC_ARG_ENABLE([debug],
95
  [  --disable-debug     Set up opt mode.],
96
  [
97
     ENABLED_DEBUG=$enableval
98
  ],
99
  [
100
     ENABLED_DEBUG="yes"
101
  ]
102
)
103
if test "$ENABLED_DEBUG" = "yes"
104
then
105
     CFLAGS="-Wall -g"
106
     CXXFLAGS="-Wall -g"
107
else
108
     CFLAGS="-Wall -O3"
109
     CXXFLAGS="-Wall -O3"
110
fi
111
AC_MSG_RESULT($ENABLED_DEBUG)
112
AM_CONDITIONAL([DEBUG], [test "$ENABLED_DEBUG" = yes])
113
AM_CONDITIONAL([OPT], [test "$ENABLED_DEBUG" = no])
114
])
115
 
116
# Set option to enable static libs.
117
AC_DEFUN([FB_ENABLE_DEFAULT_STATIC],
118
[
119
SHARED=""
120
STATIC=""
121
AC_MSG_CHECKING([whether to enable static mode])
122
AC_ARG_ENABLE([static],
123
  [  --disable-static     Set up shared mode.],
124
  [
125
     ENABLED_STATIC=$enableval
126
  ],
127
  [
128
     ENABLED_STATIC="yes"
129
  ]
130
)
131
if test "$ENABLED_STATIC" = "yes"
132
then
133
     LTYPE=".a"
134
else
135
     LTYPE=".so"
136
     SHARED_CXXFLAGS="-fPIC"
137
     SHARED_CFLAGS="-fPIC"
138
     SHARED_LDFLAGS="-shared -fPIC"
139
     AC_SUBST(SHARED_CXXFLAGS)
140
     AC_SUBST(SHARED_CFLAGS)
141
     AC_SUBST(SHARED_LDFLAGS)
142
fi
143
AC_MSG_RESULT($ENABLED_STATIC)
144
AC_SUBST(LTYPE)
145
AM_CONDITIONAL([STATIC], [test "$ENABLED_STATIC" = yes])
146
AM_CONDITIONAL([SHARED], [test "$ENABLED_STATIC" = no])
147
])
148
 
149
# Set option to enable shared libs.
150
AC_DEFUN([FB_ENABLE_DEFAULT_SHARED],
151
[
152
SHARED=""
153
STATIC=""
154
AC_MSG_CHECKING([whether to enable shared mode])
155
AC_ARG_ENABLE([shared],
156
  [  --disable-shared     Set up static mode.],
157
  [
158
    ENABLED_SHARED=$enableval
159
  ],
160
  [
161
     ENABLED_SHARED="yes"
162
  ]
163
)
164
if test "$ENABLED_SHARED" = "yes"
165
then
166
     LTYPE=".so"
167
     SHARED_CXXFLAGS="-fPIC"
168
     SHARED_CFLAGS="-fPIC"
169
     SHARED_LDFLAGS="-shared -fPIC"
170
     AC_SUBST(SHARED_CXXFLAGS)
171
     AC_SUBST(SHARED_CFLAGS)
172
     AC_SUBST(SHARED_LDFLAGS)
173
else
174
     LTYPE=".a"
175
fi
176
AC_MSG_RESULT($ENABLED_SHARED)
177
AC_SUBST(LTYPE)
178
AM_CONDITIONAL([SHARED], [test "$ENABLED_SHARED" = yes])
179
AM_CONDITIONAL([STATIC], [test "$ENABLED_SHARED" = no])
180
])
181
 
182
# Generates define flags and conditionals as specified by user.
183
# This gets enabled *only* if user selects --enable-<FEATURE> otion.
184
AC_DEFUN([FB_ENABLE_FEATURE],
185
[
186
ENABLE=""
187
flag="$1"
188
value="$3"
189
AC_MSG_CHECKING([whether to enable $1])
190
AC_ARG_ENABLE([$2],
191
  [  --enable-$2     Enable $2.],
192
  [
193
     ENABLE=$enableval
194
  ],
195
  [
196
     ENABLE="no"
197
  ]
198
)
199
AM_CONDITIONAL([$1], [test "$ENABLE" = yes])
200
if test "$ENABLE" = "yes"
201
then
202
   if test "x${value}" = "x"
203
   then
204
       AC_DEFINE([$1])
205
   else
206
       AC_DEFINE_UNQUOTED([$1], [$value])
207
   fi
208
fi
209
AC_MSG_RESULT($ENABLE)
210
])
211
 
212
 
213
# can also use eval $2=$withval;AC_SUBST($2)
214
AC_DEFUN([FB_WITH_PATH],
215
[
216
USRFLAG=""
217
USRFLAG=$1
218
AC_MSG_CHECKING([Checking $1 set to])
219
AC_ARG_WITH([$2],
220
  [ --with-$2=DIR User specified path.],
221
  [
222
    LOC=$withval
223
    eval $USRFLAG=$withval
224
  ],
225
  [
226
    LOC=$3
227
    eval $USRFLAG=$3
228
  ]
229
)
230
AC_SUBST([$1])
231
AC_MSG_RESULT($LOC)
232
])
233
 
234
AC_DEFUN([FB_SET_FLAG_VALUE],
235
[
236
SETFLAG=""
237
AC_MSG_CHECKING([Checking $1 set to])
238
SETFLAG=$1
239
eval $SETFLAG=\"$2\"
240
AC_SUBST([$SETFLAG])
241
AC_MSG_RESULT($2)
242
])
243
 
244
# NOTES
245
# if using if else bourne stmt you must have more than a macro in it.
246
# EX1 is not correct. EX2 is correct
247
# EX1: if test "$XX" = "yes"; then
248
#        AC_SUBST(xx)
249
#      fi
250
# EX2: if test "$XX" = "yes"; then
251
#        xx="foo"
252
#        AC_SUBST(xx)
253
#      fi