configure.ac

Tue, 26 Feb 2019 16:18:16 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Tue, 26 Feb 2019 16:18:16 +0100
changeset 296
69fadd1aded2
parent 286
124af734af68
child 299
047ead629d4a
permissions
-rw-r--r--

Updated design document. Add content header application/json to all scripts that produce json output. Chart prints show the beer code and name in the header. Charts don't display the menu anymore.

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.1.0"
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