root/configure.ac

Revision 982a11d5627683eee66a8e0208842e085874fad5, 5.8 KB (checked in by Manu Sporny <msporny@…>, 2 years ago)

Incremented the Fuzz version from 0.9 to 0.10.

  • Property mode set to 100644
Line 
1# Configure script for Digital Bazaar Fuzz Firefox extension
2# Usage: Run ./configure once
3#
4# Author: Manu Sporny
5
6AC_INIT(fuzz, 0.10, support@digitalbazaar.com)
7AC_CONFIG_AUX_DIR(setup)
8
9# Setup standard build environment variables
10FUZZDIR=`pwd`
11RELEASE=`date +%Y%m%d`
12
13# Check for particular build options
14AC_ARG_ENABLE([linux],
15   AS_HELP_STRING([--enable-linux], [compile for linux [[yes]]]),
16   [
17      case "${enableval}" in
18         yes) BUILD_FOR_LINUX=yes ;;
19         no) BUILD_FOR_LINUX=no ;;
20         *) AC_MSG_ERROR(bad value ${enableval} for --enable-linux) ;;
21      esac
22   ], [BUILD_FOR_LINUX=yes])  dnl Default value
23
24AC_ARG_ENABLE([windows],
25   AS_HELP_STRING([--enable-windows], [compile for windows [[no]]]),
26   [
27      case "${enableval}" in
28         yes) BUILD_FOR_WINDOWS=yes ;;
29         no) BUILD_FOR_WINDOWS=no ;;
30         *) AC_MSG_ERROR(bad value ${enableval} for --enable-windows) ;;
31      esac
32   ], [BUILD_FOR_WINDOWS=no])  dnl Default value
33
34AC_ARG_ENABLE([macos],
35   AS_HELP_STRING([--enable-macos], [compile for MacOS [[no]]]),
36   [
37      case "${enableval}" in
38         yes) BUILD_FOR_MACOS=yes ;;
39         no) BUILD_FOR_MACOS=no ;;
40         *) AC_MSG_ERROR(bad value ${enableval} for --enable-macos) ;;
41      esac
42   ], [BUILD_FOR_MACOS=no])  dnl Default value
43
44echo -e "\n--------- Configuring Fuzz build environment -----------"
45
46# Check the system type
47AC_CANONICAL_BUILD()
48AC_CANONICAL_HOST()
49AC_CANONICAL_SYSTEM()
50AC_LANG(C++)
51
52# Checking for standard build tools
53AC_PROG_INSTALL()
54
55# Check to see where the expat library resides
56if test -e "/opt/local/lib/libexpat.dylib"; then
57   EXPAT_INCLUDE_DIRECTORY="/opt/local/include"
58   EXPAT_LIB_DIRECTORY="/opt/local/lib"
59fi
60if test -e "/usr/lib/libexpat.a"; then
61   EXPAT_INCLUDE_DIRECTORY="/usr/include"
62   EXPAT_LIB_DIRECTORY="/usr/lib"
63fi
64
65# Check to see where the tidy library resides
66if test -e "/opt/local/lib/libtidy.a"; then
67   TIDY_INCLUDE_DIRECTORY="/opt/local/include"
68   TIDY_LIB_DIRECTORY="/opt/local/lib"
69fi
70if test -e "/usr/lib/libtidy.a"; then
71   TIDY_INCLUDE_DIRECTORY="/usr/include"
72   TIDY_LIB_DIRECTORY="/usr/lib"
73fi
74
75# Check to see where the rdfa parser resides
76if test -e "../librdfa/libs/librdfa.so"; then
77   RDFA_INCLUDE_DIRECTORY="$FUZZDIR/../librdfa/c"
78   RDFA_LIB_DIRECTORY="$FUZZDIR/../librdfa/libs"
79fi
80if test -e "../librdfa/libs/librdfa.dylib"; then
81   RDFA_INCLUDE_DIRECTORY="$FUZZDIR/../librdfa/c"
82   RDFA_LIB_DIRECTORY="$FUZZDIR/../librdfa/libs"
83fi
84if test -e "../librdfa/libs/rdfa.dll"; then
85   RDFA_INCLUDE_DIRECTORY="$FUZZDIR/../librdfa/c"
86   RDFA_LIB_DIRECTORY="$FUZZDIR/../librdfa/libs"
87fi
88
89# Conditional setup for Windows build
90if test "$BUILD_FOR_WINDOWS" = "yes" ; then
91   BUILD_FOR_LINUX="no"
92   BUILD_FOR_MACOS="no"
93   AC_CHECK_PROGS(CXX, i586-mingw32msvc-g++ g++, not found)
94   AC_CHECK_PROGS(AR, i586-mingw32msvc-ar ar, not found)
95   AC_CHECK_PROGS(AS, i586-mingw32msvc-as as, not found)
96   AC_CHECK_PROGS(XPIDL, xpidl, not found)
97   FIREFOX_PLATFORM="WINNT_x86-msvc"
98   TIDY_LIB_DIRECTORY="$FUZZDIR/3rdparty/tidy"
99   TIDY_INCLUDE_DIRECTORY="$FUZZDIR/3rdparty/tidy/include"
100   EXPAT_LIB_DIRECTORY="$FUZZDIR/3rdparty/expat"
101   EXPAT_INCLUDE_DIRECTORY="$FUZZDIR/3rdparty/expat/include"
102   XULRUNNER_LIB_DIRECTORY="$FUZZDIR/../gecko-sdk/lib"
103   XULRUNNER_INCLUDE_DIRECTORY="$FUZZDIR/../gecko-sdk/include"
104   XULRUNNER_IDL_DIRECTORY="$FUZZDIR/../gecko-sdk/idl"
105   OS="mingw32"
106fi
107
108# Conditional setup for MacOS build
109if test "$BUILD_FOR_MACOS" = "yes" ; then
110   BUILD_FOR_LINUX="no"
111   BUILD_FOR_WINDOWS="no"
112   AC_PROG_CXX()
113   AC_CHECK_PROG(AR, ar, ar, not found)
114   AC_CHECK_PROG(AS, as, as, not found)
115   AC_CHECK_PROGS(XPIDL, /usr/local/gecko-sdk/bin/xpidl xpidl, not found)
116   FIREFOX_PLATFORM="Darwin_x86-gcc3"
117   XULRUNNER_LIB_DIRECTORY=/usr/local/gecko-sdk/lib
118   XULRUNNER_INCLUDE_DIRECTORY=/usr/local/gecko-sdk/include
119   XULRUNNER_IDL_DIRECTORY=/usr/local/gecko-sdk/idl
120   OS="macos"
121fi
122
123# Conditional setup for Linux build
124if test "$BUILD_FOR_LINUX" = "yes" ; then
125   AC_PROG_CXX()
126   AC_CHECK_PROG(AR, ar, ar, not found)
127   AC_CHECK_PROG(AS, as, as, not found)
128   AC_CHECK_PROGS(XPIDL, xpidl, not found)
129   FIREFOX_PLATFORM="Linux_x86-gcc3"
130   XULRUNNER_LIB_DIRECTORY=/usr/lib/xulrunner-devel-1.9/sdk/lib
131   XULRUNNER_INCLUDE_DIRECTORY=/usr/include/xulrunner-1.9/stable
132   XULRUNNER_IDL_DIRECTORY=/usr/share/idl/xulrunner-1.9/stable
133   OS="linux"
134fi
135
136# Perform compilation environment tests
137#AC_CHECK_HEADERS(iostream)
138
139# Make sure the proper libraries exist
140if test "$BUILD_FOR_WINDOWS" = "no" ; then
141AC_CHECK_LIB(expat, main, [], AC_MSG_ERROR(could not find expat library), -L$EXPAT_LIB_DIRECTORY)
142AC_CHECK_LIB(tidy, main, [], AC_MSG_ERROR(could not find tidy library), -L$TIDY_LIB_DIRECTORY -L$EXPAT_LIB_DIRECTORY)
143AC_CHECK_LIB(rdfa, main, [], AC_MSG_ERROR(could not find rdfa library), -L$RDFA_LIB_DIRECTORY -L$TIDY_LIB_DIRECTORY -L$EXPAT_LIB_DIRECTORY)
144fi
145
146# Make all the proper substitutions
147VERSION="$PACKAGE_VERSION"
148AC_SUBST(FUZZDIR)
149AC_SUBST(VERSION)
150AC_SUBST(RELEASE)
151
152AC_SUBST(CXX)
153AC_SUBST(AR)
154AC_SUBST(AS)
155
156AC_SUBST(OS)
157AC_SUBST(FIREFOX_PLATFORM)
158
159# Export the proper include/library build paths
160AC_SUBST(RDFA_LIB_DIRECTORY)
161AC_SUBST(RDFA_INCLUDE_DIRECTORY)
162AC_SUBST(TIDY_LIB_DIRECTORY)
163AC_SUBST(TIDY_INCLUDE_DIRECTORY)
164AC_SUBST(EXPAT_LIB_DIRECTORY)
165AC_SUBST(EXPAT_INCLUDE_DIRECTORY)
166AC_SUBST(XULRUNNER_LIB_DIRECTORY)
167AC_SUBST(XULRUNNER_INCLUDE_DIRECTORY)
168AC_SUBST(XULRUNNER_IDL_DIRECTORY)
169
170# Generating files
171AC_OUTPUT(Makefile \
172          setup/Makefile.base \
173          fuzz-addon/Makefile \
174          fuzz-addon/extension/install.rdf \
175     fuzz-addon/components/Makefile)
176
177# Dump the build configuration for the developer
178echo -e "\n--------- Fuzz build environment -----------"
179echo "Product        : $PACKAGE_STRING-$RELEASE"
180echo "Build system   : $build_cpu-$build_vendor-$build_os"
181echo "C++ compiler   : $CXX"
182echo "Archiver       : $AR"
183echo "xpidl          : $XPIDL"
184
Note: See TracBrowser for help on using the browser.