rofi/configure.ac

182 lines
7.6 KiB
Text
Raw Normal View History

2017-09-26 19:14:18 +00:00
AC_INIT([rofi], [1.4.0], [https://github.com/DaveDavenport/rofi/],[],[https://reddit.com/r/qtools/])
2014-03-17 17:00:09 +00:00
2014-03-18 07:59:42 +00:00
AC_CONFIG_SRCDIR([source/rofi.c])
2014-03-17 17:00:09 +00:00
AC_CONFIG_HEADER([config.h])
AH_BOTTOM([#include "gitconfig.h"])
2014-03-17 17:00:09 +00:00
2017-03-11 13:55:58 +00:00
dnl ---------------------------------------------------------------------
dnl Lex & Bison language parser.
dnl ---------------------------------------------------------------------
2017-04-04 16:59:35 +00:00
AC_PROG_LEX([flex])
2016-12-09 18:49:49 +00:00
AC_PROG_YACC
AS_IF([test "x${YACC}" != "xbison -y" ], [AC_MSG_ERROR( "Failed to find bison")])
2017-04-04 16:59:35 +00:00
m4_include([m4/ax_prog_flex_version.m4])
m4_include([m4/ax_compare_version.m4])
AC_SUBST([FLEX], [${LEX}])
AX_PROG_FLEX_VERSION([2.5.39],,AC_MSG_ERROR("Require flex version 2.5.39 or higher"))
#
dnl ---------------------------------------------------------------------
dnl Setup automake to be silent and in foreign mode.
2015-12-06 16:12:41 +00:00
dnl We want xz distribution
dnl ---------------------------------------------------------------------
2015-03-02 21:23:55 +00:00
AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects dist-xz])
2014-03-17 23:11:46 +00:00
AM_SILENT_RULES([yes])
2014-03-17 17:00:09 +00:00
dnl ---------------------------------------------------------------------
dnl Check for compiler
dnl ---------------------------------------------------------------------
2015-02-18 13:00:19 +00:00
AC_PROG_CC([clang gcc cc])
2015-12-06 16:12:41 +00:00
dnl ---------------------------------------------------------------------
dnl C99 standard
dnl ---------------------------------------------------------------------
2015-02-18 13:00:19 +00:00
AC_PROG_CC_C99
2015-12-06 16:12:41 +00:00
dnl ---------------------------------------------------------------------
dnl C to Object rules.
dnl ---------------------------------------------------------------------
AM_PROG_CC_C_O
2014-03-17 17:00:09 +00:00
2015-12-06 16:12:41 +00:00
dnl ---------------------------------------------------------------------
dnl System extensions
dnl ---------------------------------------------------------------------
AC_USE_SYSTEM_EXTENSIONS
dnl ---------------------------------------------------------------------
dnl Static libraries programs
dnl ---------------------------------------------------------------------
AC_PROG_RANLIB
AM_PROG_AR
dnl ---------------------------------------------------------------------
dnl Base CFLAGS
dnl ---------------------------------------------------------------------
2016-02-28 17:33:01 +00:00
AM_CFLAGS="-Wall -Wextra -Wparentheses -Winline -pedantic -Wunreachable-code"
2015-12-31 18:09:25 +00:00
dnl ---------------------------------------------------------------------
dnl Enable source code coverage reporting for GCC
dnl ---------------------------------------------------------------------
2017-03-19 17:03:48 +00:00
AC_ARG_ENABLE([gcov],
[AS_HELP_STRING ([--enable-gcov],[Enable source code coverage testing using gcov])],
[AM_CFLAGS="${AM_CFLAGS} -coverage"])
2016-11-25 20:47:28 +00:00
AS_IF([test "x${enable_gcov}" = "xyes" ], [AC_DEFINE([ENABLE_GCOV], [1], [Enable gcov profiling])])
AC_ARG_ENABLE([asan], [AS_HELP_STRING ([--enable-asan],[Enable asan support])])
AS_IF([test "x${enable_asan}" = "xyes" ], [
AC_DEFINE([ENABLE_ASAN], [1], [Enable libasan])
AM_CFLAGS="${AM_CFLAGS} -fsanitize=address -fno-omit-frame-pointer -g3"]
])
2016-08-29 19:38:29 +00:00
dnl --------------------------------------------------------------------
dnl DRun dialog
dnl --------------------------------------------------------------------
2017-03-19 17:03:48 +00:00
AC_ARG_ENABLE([drun], AS_HELP_STRING([--disable-drun],[Disable desktop file run dialog]))
2016-09-26 09:56:20 +00:00
AS_IF([test "x${enable_drun}" != "xno"], [AC_DEFINE([ENABLE_DRUN], [1], [Enable desktop file run dialog])])
2017-03-11 13:55:58 +00:00
2015-09-14 07:01:05 +00:00
dnl ---------------------------------------------------------------------
dnl Disable window mode
dnl ---------------------------------------------------------------------
2017-03-19 17:03:48 +00:00
AC_ARG_ENABLE([windowmode], AS_HELP_STRING([--disable-windowmode],[Disable window mode]))
2015-09-20 09:45:28 +00:00
AS_IF([ test "x$enable_windowmode" != "xno"], [AC_DEFINE([WINDOW_MODE],[1],[Enable the window mode])])
2015-09-14 06:57:10 +00:00
dnl ---------------------------------------------------------------------
dnl Output timing information
dnl ---------------------------------------------------------------------
2017-03-19 17:03:48 +00:00
AC_ARG_ENABLE([timings], AS_HELP_STRING([--enable-timings],[Enable timing output]))
AS_IF( [ test "x$enable_timings" = "xyes"], [AC_DEFINE([TIMINGS],[1], [Enable timings output])])
dnl ---------------------------------------------------------------------
dnl Check for C functions.
dnl ---------------------------------------------------------------------
2016-04-14 17:20:37 +00:00
AC_CHECK_FUNC([getline],, AC_MSG_ERROR("Could not find getline in c library"))
AC_CHECK_FUNC([open],, AC_MSG_ERROR("Could not find open in c library"))
AC_CHECK_FUNC([sysconf],, AC_MSG_ERROR("Could not find sysconf"))
2016-04-14 17:20:37 +00:00
AC_CHECK_FUNC([strtok_r],, AC_MSG_ERROR("Could not find strtok_r"))
AC_CHECK_FUNC([flock],, AC_MSG_ERROR("Could not find flock"))
AC_CHECK_FUNC([ftruncate],,AC_MSG_ERROR("Could not find ftruncate"))
AC_CHECK_FUNC([fcntl],, AC_MSG_ERROR("Could not find fcntl"))
2016-08-23 22:39:56 +00:00
AC_CHECK_FUNC([setlocale],,AC_MSG_ERROR("Could not find setlocale"))
AC_CHECK_FUNC([atexit],, AC_MSG_ERROR("Could not find atexit in c library"))
AC_CHECK_FUNC([glob],, AC_MSG_ERROR("Could not find glob in c library"))
2017-02-06 21:08:10 +00:00
AC_CHECK_HEADER([math.h],, AC_MSG_ERROR("Could not find math.h header file"))
2017-02-09 07:45:15 +00:00
AC_SEARCH_LIBS([floor],[m],, AC_MSG_ERROR("Could not find floor in math library"))
AC_SEARCH_LIBS([ceil], [m],, AC_MSG_ERROR("Could not find ceil in math library"))
2017-02-06 21:08:10 +00:00
dnl ---------------------------------------------------------------------
dnl Check dependencies
dnl ---------------------------------------------------------------------
2014-03-17 17:00:09 +00:00
PKG_PROG_PKG_CONFIG
2015-12-06 16:12:41 +00:00
dnl ---------------------------------------------------------------------
2017-03-06 09:36:12 +00:00
dnl PKG_CONFIG based dependencies
2015-12-06 16:12:41 +00:00
dnl ---------------------------------------------------------------------
NK_INIT([bindings xdg-theme])
PKG_CHECK_MODULES([glib], [glib-2.0 >= 2.40 gio-unix-2.0 gmodule-2.0])
GW_CHECK_XCB([xcb-aux xcb-xkb xkbcommon xkbcommon-x11 xcb-ewmh xcb-icccm xcb-xrm xcb-randr xcb-xinerama])
2015-09-26 18:34:34 +00:00
PKG_CHECK_MODULES([pango], [pango pangocairo])
PKG_CHECK_MODULES([cairo], [cairo cairo-xcb])
2017-03-06 09:36:12 +00:00
PKG_CHECK_MODULES([libsn], [libstartup-notification-1.0 ])
2017-04-12 15:58:32 +00:00
PKG_CHECK_MODULES([librsvg], [librsvg-2.0 ])
2017-05-18 05:59:37 +00:00
dnl ---------------------------------------------------------------------
dnl check - Unit testing.
dnl ---------------------------------------------------------------------
AC_ARG_ENABLE([check], AS_HELP_STRING([--disable-check], [Build with checks using check library (default: enabled)]))
AS_IF([test "x${enable_check}" != "xno"], [ PKG_CHECK_MODULES([check],[check >= 0.11.0], [HAVE_CHECK=1]) ])
AM_CONDITIONAL([USE_CHECK], [test "x${enable_check}" != "xno" && test "$HAVE_CHECK" -eq 1])
2014-03-17 17:00:09 +00:00
2015-12-06 16:12:41 +00:00
dnl ---------------------------------------------------------------------
dnl Add extra compiler flags
dnl ---------------------------------------------------------------------
AC_SUBST([AM_CFLAGS])
2014-03-17 17:00:09 +00:00
AC_CONFIG_FILES([Makefile doc/rofi.doxy pkgconfig/rofi.pc])
2014-03-17 17:00:09 +00:00
AC_OUTPUT
echo ""
echo "-------------------------------------"
if test x$enable_timings = xyes; then
echo "Timing output: Enabled"
else
echo "Timing output: Disabled"
fi
2016-09-26 09:56:20 +00:00
if test x$enable_drun != xno; then
echo "Desktop File drun dialog Enabled"
2016-08-29 19:38:29 +00:00
else
2016-09-26 09:56:20 +00:00
echo "Desktop File drun dialog Disabled"
2016-08-29 19:38:29 +00:00
fi
if test x$enable_windowmode != xno; then
echo "Window Switcher dialog Enabled"
else
echo "Window Switcher dialog Disabled"
fi
2017-03-28 18:12:22 +00:00
if test x$enable_asan = xyes; then
echo "Asan address sanitize Enabled"
else
echo "Asan address sanitize Disabled"
fi
if test x$enable_gcov = xyes; then
echo "Code Coverage Enabled"
else
echo "Code Coverage Disabled"
fi
if test "x${enable_check}" != "xno" && test "$HAVE_CHECK" -eq 1; then
echo "Check based tests Enabled"
else
echo "Check based tests Disabled"
fi
echo "-------------------------------------"
echo "Now type 'make' to build"
echo ""