blob: 6ab694d9a1e93472d0ce376000ed3cc911f3c77d [file] [log] [blame]
Alexander Chemeris040b3052013-06-16 14:29:54 +04001dnl
2dnl Copyright 2008, 2009, 2010 Free Software Foundation, Inc.
3dnl
4dnl This software is distributed under the terms of the GNU Public License.
5dnl See the COPYING file in the main directory for details.
6dnl
7dnl This program is free software: you can redistribute it and/or modify
8dnl it under the terms of the GNU General Public License as published by
9dnl the Free Software Foundation, either version 3 of the License, or
10dnl (at your option) any later version.
11dnl
12dnl This program is distributed in the hope that it will be useful,
13dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
14dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15dnl GNU General Public License for more details.
16dnl
17dnl You should have received a copy of the GNU General Public License
18dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
19dnl
20
21AC_INIT(openbts,P2.8TRUNK)
22AC_PREREQ(2.57)
23AC_CONFIG_SRCDIR([Transceiver52M/Makefile.am])
24AC_CONFIG_AUX_DIR([.])
Thomas Tsou3eaae802013-08-20 19:31:14 -040025AC_CONFIG_MACRO_DIR([config])
Alexander Chemeris040b3052013-06-16 14:29:54 +040026AM_CONFIG_HEADER(config.h)
27
28AC_CANONICAL_BUILD
29AC_CANONICAL_HOST
30AC_CANONICAL_TARGET
31
32AM_INIT_AUTOMAKE
33
34dnl Linux kernel KBuild style compile messages
35m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
36
37AM_PROG_AS
38AC_PROG_CXX
39AC_PROG_LN_S
40AC_PROG_MAKE_SET
41AC_PROG_INSTALL
42AC_PATH_PROG([RM_PROG], [rm])
43
44AC_LIBTOOL_WIN32_DLL
45AC_ENABLE_SHARED dnl do build shared libraries
46AC_DISABLE_STATIC dnl don't build static libraries
47AC_PROG_LIBTOOL
48
49dnl Checks for header files.
50AC_HEADER_STDC
51dnl This is required for GnuRadio includes to understand endianess correctly:
52AC_CHECK_HEADERS([byteswap.h])
53
54dnl Checks for typedefs, structures, and compiler characteristics.
55AC_C_CONST
56AC_C_INLINE
57AC_TYPE_SIZE_T
58AC_HEADER_TIME
59AC_C_BIGENDIAN
60
61AC_ARG_WITH(usrp1, [
62 AS_HELP_STRING([--with-usrp1],
63 [enable USRP1 gnuradio based transceiver])
64])
65
66AC_ARG_WITH(uhd, [
67 AS_HELP_STRING([--with-uhd],
68 [enable UHD based transceiver])
69])
70
71AC_ARG_WITH(singledb, [
72 AS_HELP_STRING([--with-singledb],
73 [enable single daughterboard use on USRP1])
74])
75
Alexander Chemeris040b3052013-06-16 14:29:54 +040076AC_ARG_WITH(extref, [
77 AS_HELP_STRING([--with-extref],
78 [enable external reference on UHD devices])
79])
80
81AS_IF([test "x$with_usrp1" = "xyes"], [
82 # Defines USRP_CFLAGS, USRP_INCLUDEDIR, and USRP_LIBS
83 PKG_CHECK_MODULES(USRP, usrp > 3.1)
84 # Check whether we have libusrp >= 3.2
85 PKG_CHECK_EXISTS(usrp >= 3.2, libusrp_3_2=yes, libusrp_3_2=no)
86 if test "x$libusrp_3_2" = "xyes";then
87 AC_DEFINE(HAVE_LIBUSRP_3_2, 1, Define to 1 if you have libusrp >= 3.2)
88 fi
89 # Check whether we have libusrp >= 3.3
90 PKG_CHECK_EXISTS(usrp >= 3.3, libusrp_3_3=yes, libusrp_3_3=no)
91 if test "x$libusrp_3_3" = "xyes";then
92 AC_DEFINE(HAVE_LIBUSRP_3_3, 1, Define to 1 if you have libusrp >= 3.3)
93 fi
Thomas Tsou3eaae802013-08-20 19:31:14 -040094 # Find and define supported SIMD extensions
95 AX_EXT
Alexander Chemeris040b3052013-06-16 14:29:54 +040096])
97
98AS_IF([test "x$with_uhd" = "xyes"],[
Thomas Tsoub4cb4e22013-04-05 15:11:35 -040099 PKG_CHECK_MODULES(UHD, uhd >= 003.004.000)
Alexander Chemeris040b3052013-06-16 14:29:54 +0400100 AC_DEFINE(USE_UHD, 1, Define to 1 if using UHD)
Thomas Tsou3eaae802013-08-20 19:31:14 -0400101 AX_EXT
Alexander Chemeris040b3052013-06-16 14:29:54 +0400102])
103
Alexander Chemeris040b3052013-06-16 14:29:54 +0400104AS_IF([test "x$with_extref" = "xyes"], [
105 AC_DEFINE(EXTREF, 1, Define to 1 for external reference)
106])
107
108AS_IF([test "x$with_singledb" = "xyes"], [
109 AC_DEFINE(SINGLEDB, 1, Define to 1 for single daughterboard)
110])
111
Alexander Chemeris040b3052013-06-16 14:29:54 +0400112AM_CONDITIONAL(UHD, [test "x$with_uhd" = "xyes"])
113AM_CONDITIONAL(USRP1, [test "x$with_usrp1" = "xyes"])
114
115# Defines LIBUSB_TRANSFER_CANCELLED, LIBUSB_TRANSFER_COMPLETED, LIBUSB_SUCCESS, LIBUSB_ERROR_*
116PKG_CHECK_MODULES(LIBUSB, libusb-1.0)
117
118dnl Output files
119AC_CONFIG_FILES([\
120 Makefile \
121 CommonLibs/Makefile \
122 GSM/Makefile \
123 Transceiver52M/Makefile \
124 sqlite3/Makefile \
125])
126
127AC_OUTPUT