configure.ac
author J. Ali Harlow <ali@juiblex.co.uk>
Fri Mar 23 20:29:50 2012 +0000 (2012-03-23)
changeset 23 e29384105b8d
parent 19 5cafc65a6183
child 24 2b9f54d14cc2
permissions -rw-r--r--
Release 0.4.3
     1 #                                               -*- Autoconf -*-
     2 # Process this file with autoconf to produce a configure script.
     3 
     4 AC_INIT([plover],[0.4.3],[ali@juiblex.co.uk])
     5 AC_PREREQ(2.59)
     6 AC_CONFIG_AUX_DIR([config])
     7 AC_CONFIG_SRCDIR([plover/plover.h])
     8 AC_CONFIG_HEADER([config.h])
     9 AC_CONFIG_FILES([Makefile
    10 plover/Makefile
    11 plover/plover.pc
    12 plover-gtk/Makefile
    13 plover-gtk/plover-gtk.pc
    14 setup/Makefile
    15 setup/resources.rc
    16 update/Makefile
    17 update/resources.rc
    18 app-manager/Makefile
    19 app-manager/resources.rc
    20 ])
    21 PLOVER_MSWIN_MANIFEST([setup/setup.exe.manifest:setup/manifest.xml.in
    22 update/update.exe.manifest:update/manifest.xml.in
    23 app-manager/app-manager.exe.manifest:app-manager/manifest.xml.in
    24 ])
    25 AM_INIT_AUTOMAKE(no-define)
    26 case $VERSION in
    27   *.*.*)
    28     AC_SUBST(PLOVER_MAJOR_VERSION,[[`echo $VERSION | sed 's/\..*//'`]])
    29     AC_SUBST(PLOVER_MINOR_VERSION,
    30       [[`echo $VERSION | sed 's/[^.]*\.\([^.]*\)\..*/\1/'`]])
    31     AC_SUBST(PLOVER_MICRO_VERSION,[[`echo $VERSION | sed 's/.*\.\([^.]*\)/\1/'`]])      ;;
    32   *.*)
    33     AC_SUBST(PLOVER_MAJOR_VERSION,[[`echo $VERSION | sed 's/\..*//'`]])
    34     AC_SUBST(PLOVER_MINOR_VERSION,
    35       [[`echo $VERSION | sed 's/[^.]*\.\([^.]*\)/\1/'`]])
    36     AC_SUBST(PLOVER_MICRO_VERSION,0)
    37     ;;
    38   *)
    39     AC_SUBST(PLOVER_MAJOR_VERSION,0)
    40     AC_SUBST(PLOVER_MINOR_VERSION,0)
    41     AC_SUBST(PLOVER_MICRO_VERSION,0)
    42     ;;
    43 esac
    44 AC_CANONICAL_HOST
    45 AC_SUBST(HOST_OS,$host_os)
    46 AC_SUBST(HOST_CPU,$host_cpu)
    47 
    48 # libtool versioning for libplover. For a release one of the following
    49 # must apply:
    50 #
    51 # - If interfaces have been changed or added, but binary compatibility has
    52 #   been preserved, increment CURRENT and AGE and set REVISION to 0.
    53 # - If binary compatibility has been broken (eg removed or changed interfaces),
    54 #   increment CURRENT and set AGE and REVISION to 0.
    55 # - If the interface is the same as the previous version, increment REVISION.
    56 #
    57 lt_current=2
    58 lt_revision=0
    59 lt_age=0
    60 LIBPLOVER_LT_VERSION_INFO="$lt_current:$lt_revision:$lt_age"
    61 AC_SUBST(LIBPLOVER_LT_VERSION_INFO)
    62 
    63 # and likewise for plover-gtk.
    64 #
    65 lt_current=0
    66 lt_revision=1
    67 lt_age=0
    68 PLOVER_GTK_LT_VERSION_INFO="$lt_current:$lt_revision:$lt_age"
    69 AC_SUBST(PLOVER_GTK_LT_VERSION_INFO)
    70 
    71 ##################################################
    72 # Checks for programs.
    73 ##################################################
    74 AC_PROG_CC
    75 AC_LIBTOOL_WIN32_DLL
    76 AC_PROG_LIBTOOL
    77 PKG_PROG_PKG_CONFIG
    78 AC_CHECK_TOOL(WINDRES,windres,no)
    79 AM_CONDITIONAL([HAVE_WINDRES],[test x$WINDRES != xno])
    80 
    81 ##################################################
    82 # Checks for header files.
    83 ##################################################
    84 AC_HEADER_STDC
    85 AC_CHECK_HEADERS([winhttp.h],[],[],
    86 [#include <windows.h>
    87 ])
    88 
    89 ##################################################
    90 # Checks for typedefs, structures, and compiler characteristics.
    91 ##################################################
    92 
    93 ##################################################
    94 # Checks for libraries.
    95 ##################################################
    96 PKG_CHECK_MODULES(RAZOR,[razor >= 0.5.4],[:],[RAZOR_LIBS=-lrazor])
    97 PKG_CHECK_MODULES(EXPAT,[expat],[:],[EXPAT_LIBS=-lexpat])
    98 PKG_CHECK_MODULES(ZLIB,[zlib],[:],[ZLIB_LIBS=-lz])
    99 PKG_CHECK_MODULES(GIO,[gio-2.0])
   100 PKG_CHECK_MODULES(GTK,[gtk+-2.0])
   101 PKG_CHECK_MODULES(GMODULE_EXPORT,[gmodule-export-2.0])
   102 LIBPLOVER_CFLAGS="$RAZOR_CFLAGS $EXPAT_CFLAGS $ZLIB_CFLAGS"
   103 LIBPLOVER_LIBS="$RAZOR_LIBS $EXPAT_LIBS $ZLIB_LIBS"
   104 AC_SUBST(LIBPLOVER_CFLAGS)
   105 AC_SUBST(LIBPLOVER_LIBS)
   106 PLOVER_GTK_CFLAGS="$GTK_CFLAGS $RAZOR_CFLAGS"
   107 PLOVER_GTK_LIBS="$GTK_LIBS $RAZOR_LIBS"
   108 AC_SUBST(PLOVER_GTK_CFLAGS)
   109 AC_SUBST(PLOVER_GTK_LIBS)
   110 GUI_CFLAGS="$GMODULE_EXPORT_CFLAGS $GIO_CFLAGS $PLOVER_GTK_CFLAGS $LIBPLOVER_CFLAGS"
   111 GUI_LIBS="$GMODULE_EXPORT_LIBS $GIO_LIBS $PLOVER_GTK_LIBS $LIBPLOVER_LIBS"
   112 AC_SUBST(GUI_CFLAGS)
   113 AC_SUBST(GUI_LIBS)
   114 save_PKG_CONFIG="$PKG_CONFIG"
   115 PKG_CONFIG="$PKG_CONFIG --static"
   116 PKG_CHECK_MODULES(SETUP,[whelk])
   117 PKG_CONFIG="$save_PKG_CONFIG"
   118 save_LIBS="$LIBS"
   119 AC_SEARCH_LIBS([crypt],[crypt])
   120 SETUP_LIBS="-llua-posix $SETUP_LIBS $RAZOR_LIBS $LIBS"
   121 SETUP_CFLAGS="$SETUP_CFLAGS $RAZOR_CFLAGS"
   122 AC_SUBST(SETUP_LIBS)
   123 AC_SUBST(SETUP_CFLAGS)
   124 LIBS="$save_LIBS"
   125 LIBS="$LIBS -lcrypt32"
   126 AC_MSG_CHECKING([for library containing CertEnumCertificatesInStore])
   127 AC_LINK_IFELSE([AC_LANG_PROGRAM(
   128   [[#include <windows.h>]],
   129   [return !CertEnumCertificatesInStore((HCERTSTORE)0,NULL);])],
   130   [FETCH_LIBS="-lcrypt32"])
   131 if test -z "$FETCH_LIBS"; then
   132     AC_MSG_RESULT([no])
   133 else
   134     AC_MSG_RESULT([$FETCH_LIBS])
   135 fi
   136 AC_SUBST([FETCH_LIBS])
   137 LIBS="$save_LIBS"
   138 
   139 ##################################################
   140 # Checks for library functions.
   141 ##################################################
   142 AC_CHECK_FUNCS_ONCE([fchdir])
   143 
   144 ##################################################
   145 # Checks for processor independent files.
   146 ##################################################
   147 
   148 ##################################################
   149 # Generate the various configured files
   150 ##################################################
   151 AC_OUTPUT