configure.ac

Tue, 07 Jan 2020 15:47:00 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Tue, 07 Jan 2020 15:47:00 +0100
changeset 587
31caffee8c9c
parent 572
7a03181d29a3
child 588
73e24a609e88
permissions
-rw-r--r--

Changed several float precision values. Changed some database fields to double. Everything has now the same precision as received values from the iSpindel.

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.27"
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)
  AC_CHECK_HEADERS(mariadb/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