1 #
2 # Copyright (c) 2013, Texas Instruments Incorporated
3 #
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions
6 # are met:
7 #
8 # * Redistributions of source code must retain the above copyright
9 # notice, this list of conditions and the following disclaimer.
10 #
11 # * Redistributions in binary form must reproduce the above copyright
12 # notice, this list of conditions and the following disclaimer in the
13 # documentation and/or other materials provided with the distribution.
14 #
15 # * Neither the name of Texas Instruments Incorporated nor the names of
16 # its contributors may be used to endorse or promote products derived
17 # from this software without specific prior written permission.
18 #
19 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
21 # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
23 # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24 # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25 # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
26 # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
27 # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
28 # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
29 # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 #
31 # ======== configure.ac ========
32 #
34 # Process this file with autoconf to produce a configure script.
35 AC_PREREQ(2.59)
37 # Initilize autoconf
38 AC_INIT(TI IPC, 3.0.0, )
40 # Check common src files to ensure integrity of the package
41 AC_CONFIG_SRCDIR([packages/ti/ipc/MessageQ.h])
43 # Set auxiliary build tools directory
44 AC_CONFIG_AUX_DIR([linux/build-aux])
46 # Initilize automake
47 AM_INIT_AUTOMAKE([foreign])
49 # Disabling maintainer mode to prevent rebuild of configure script
50 AM_MAINTAINER_MODE([disable])
52 # Initalize libtool but disable fortran check
53 define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
54 AC_PROG_LIBTOOL(gcc)
56 # Checks for programs.
57 AC_PROG_CC(gcc)
58 AC_PROG_INSTALL
60 # Checks for header files.
61 AC_HEADER_STDC
62 AC_CHECK_HEADERS([fcntl.h stdlib.h string.h sys/param.h sys/socket.h sys/time.h unistd.h])
64 # Export CFLAGS and LDFLAGS to Makefile(s)
65 AC_SUBST([AM_CFLAGS])
66 AC_SUBST([AM_LDFLAGS])
68 # Add config variables/options and check them
69 AC_ARG_VAR(PLATFORM, Platform to build. Options are: 'omapl138' 'omap54xx_smp' 'tci6614' and 'tci6638'. If not defined all platforms will be built.)
70 AC_ARG_VAR(CMEM_INSTALL_DIR, Installation path directory to the CMEM libraries)
71 AC_ARG_VAR(KERNEL_INSTALL_DIR, Installation path to the Linux kernel.)
73 # Test platform variable for setting
74 AS_IF([test "x$PLATFORM" = "xomapl138"],
75 [AC_MSG_NOTICE([PLATFORM is set to ${PLATFORM}])],
76 [AS_IF([test "x$PLATFORM" = "xtci6614"],
77 [AC_MSG_NOTICE([PLATFORM is set to ${PLATFORM}])],
78 [AS_IF([test "x$PLATFORM" = "xtci6638"],
79 [AC_MSG_NOTICE([PLATFORM is set to ${PLATFORM}])],
80 [AS_IF([test "x$PLATFORM" = "xomap54xx_smp"],
81 [AC_MSG_NOTICE([PLATFORM is set to ${PLATFORM}])],
82 [AS_IF([test "x$PLATFORM" = "x"],
83 [AC_MSG_NOTICE([PLATFORM is not set. All supported platforms will be built ....])],
84 [AC_MSG_ERROR([PLATFORM is set to "${PLATFORM}": run ./configure --help for available PLATFORM options])])])])])])
86 AS_IF([test "x$KERNEL_INSTALL_DIR" = "x"], [AC_MSG_ERROR([Kernel path is not set])])
88 # Export optional user variable to Makefile(s)
89 AC_SUBST([PLATFORM])
90 AC_SUBST([CMEM_INSTALL_DIR])
91 AC_SUBST([KERNEL_INSTALL_DIR])
93 # Define specific variables to be used in Makefile.am
94 AM_CONDITIONAL([OMAPL138], [test "x$PLATFORM" = "xomapl138"])
95 AM_CONDITIONAL([TCI6614], [test "x$PLATFORM" = "xtci6614"])
96 AM_CONDITIONAL([TCI6638], [test "x$PLATFORM" = "xtci6638"])
97 AM_CONDITIONAL([OMAP54XX_SMP], [test "x$PLATFORM" = "xomap54xx_smp"])
98 AM_CONDITIONAL([CMEM], [test "x$CMEM_INSTALL_DIR" != "x"])
100 # Generate Makefile(s)
101 AC_CONFIG_FILES([Makefile])
102 AC_CONFIG_FILES([linux/etc/Makefile])
103 AC_CONFIG_FILES([linux/src/utils/Makefile])
104 AC_CONFIG_FILES([linux/src/api/Makefile])
105 AC_CONFIG_FILES([linux/src/family/Makefile])
106 AC_CONFIG_FILES([linux/src/daemon/Makefile])
107 AC_CONFIG_FILES([linux/src/tests/Makefile])
108 AC_CONFIG_FILES([linux/src/mm/Makefile])
109 AC_OUTPUT
111 echo \
112 "-----------------------------------------------------------
114 Thank you for installing the Linux ${PACKAGE_NAME} package
116 Installation directory prefix: '${prefix}'.
117 Compilation command: '${CC} ${CFLAGS} ${CPPFLAGS}'
119 You have configured to build for the '${PLATFORM}' platform
121 Your CMEM installation is at:
122 '${CMEM_INSTALL_DIR}'
124 Now type 'make; sudo make install' to generate the program
125 and install it to your system.
127 ------------------------------------------------------------"