configure.ac

Wed, 05 Jun 2019 16:52:14 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Wed, 05 Jun 2019 16:52:14 +0200
changeset 401
4aad74bde00b
parent 397
d3d2b277075b
child 402
c61f6559cc45
child 404
39a688b8d069
permissions
-rw-r--r--

In product beerxml export added BMS specific items: cooling_to and whirlpool stages. These should be picked up by the brew computer and should do no harm to the rest of the world.

dnl Process this file with autoconf to produce a configure script.

AC_INIT(bmsd/bms.c)
AM_CONFIG_HEADER(config.h)
SUBDIRS="bmsd doc script tools www"
AC_SUBST(SUBDIRS)

dnl General settings
dnl After changeing the version number, run autoconf!
PACKAGE="bms"
VERSION="0.3.5"
COPYRIGHT="Copyright (C) 2016-2019 Michiel Broek, All Rights Reserved"
CYEARS="2016-2019"
AC_SUBST(PACKAGE)
AC_SUBST(VERSION)
AC_SUBST(COPYRIGHT)
AC_SUBST(CYEARS)
AC_PREFIX_DEFAULT(/var/lib/bms)
AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
AC_DEFINE_UNQUOTED(COPYRIGHT, "$COPYRIGHT")
TARGET="$target"


dnl Checks for programs.
AC_PROG_CC
AC_PROG_RANLIB
dnl Try to find GNU install
AC_CHECK_PROG(INSTALL, ginstall, ginstall)
AC_CHECK_PROG(INSTALL, install, install)
AC_CHECK_PROG(TAR, tar, tar)


#
# Additional commandline switches
#

AC_ARG_ENABLE(debugging,   [  --enable-debugging      Compile for debugging], [ debugging=$enableval ], [ debugging=no ])
if test "$debugging" = "yes"; then
  CFLAGS="-O -g -Wall -Wshadow -Wwrite-strings -Wstrict-prototypes -Winline"    
else
  CFLAGS="-g -O2 -fomit-frame-pointer -fno-strict-aliasing -Wall -Wshadow -Wwrite-strings -Wstrict-prototypes -Winline"
fi
LIBS="$LIBS -lm"


#
# Libraries for bms
#
AC_CHECK_LIB(mosquitto,mosquitto_lib_init,result=yes,result=no)
if test "$result" = "yes"; then
  LIBS="$LIBS -lmosquitto"
  AC_CHECK_HEADERS(mosquitto.h)
else
  AC_MSG_ERROR(mosquitto not found)
fi

AC_CHECK_LIB(json-c,json_object_iter_init_default,result=yes,result=no)
if test "$result" = "yes"; then
  LIBS="$LIBS -ljson-c"
  AC_CHECK_HEADERS(json-c/json.h)
else
  AC_MSG_ERROR(json-c not found)
fi

AC_CHECK_LIB(mysqlclient,mysql_server_init,result=yes,result=no)
if test "$result" = "yes"; then
  LIBS="$LIBS -lmysqlclient"
  AC_CHECK_HEADERS(mysql/mysql.h)
else
  AC_MSG_ERROR(mysqlclient not found)
fi

AC_CHECK_LIB(xml2,xmlParseFile,result=yes,result=no)
if test "$result" = "yes"; then
  LIBS="$LIBS -lxml2"
  CFLAGS="$CFLAGS $(xml2-config --cflags)"
  AC_CHECK_HEADERS(libxml/xmlmemory.h)
else
  AC_MSG_ERROR(libxml2 not found)
fi

AC_CHECK_LIB(uuid,uuid_generate,result=yes,result=no)
if test "$result" = "yes"; then
  LIBS="$LIBS $(pkg-config --libs uuid)"
  CFLAGS="$CFLAGS $(pkg-config --cflags uuid)"
  AC_CHECK_HEADERS(uuid/uuid.h)
else
  AC_MSG_ERROR(libuuid not found)
fi


dnl Checks for header files.
AC_HEADER_STDC

AC_SUBST(SDL_CFLAGS)
AC_SUBST(SDL_LIBS)


AC_OUTPUT(
    Makefile.global
    www/version.php
)

AC_MSG_RESULT([
-=-=-=-=-=-=-=-=-=-= Configuration Complete =-=-=-=-=-=-=-=-=-=-

  Configuration summary :

    Version : ............ ${VERSION}
    Main directory : ..... ${prefix}


  Now type 'make' and 'sudo make install'
])

mercurial