1#                                               -*- Autoconf -*-
2# Process this file with autoconf to produce a configure script.
3
4# Generic support for FLTK applications
5
6
7AC_COPYRIGHT([Copyright (C) 2009 Dave Freese, W1HKJ (w1hkj AT w1hkj DOT com)])
8
9AC_PREREQ([2.63])
10
11dnl major and minor must be integers; patch may
12dnl contain other characters or be empty
13m4_define(FLWRAP_MAJOR,  [1])
14m4_define(FLWRAP_MINOR,  [3])
15m4_define(FLWRAP_PATCH,  [.5])
16
17AC_INIT([flwrap], FLWRAP_MAJOR.FLWRAP_MINOR[]FLWRAP_PATCH, [w1hkj AT w1hkj DOT com])
18
19AC_SUBST([FLWRAP_VERSION_MAJOR], [FLWRAP_MAJOR])
20AC_SUBST([FLWRAP_VERSION_MINOR], [FLWRAP_MINOR])
21AC_SUBST([FLWRAP_VERSION_PATCH], [FLWRAP_PATCH])
22AC_SUBST([FLWRAP_VERSION], [FLWRAP_MAJOR.FLWRAP_MINOR[]FLWRAP_PATCH])
23
24AC_DEFINE([FLWRAP_VERSION_MAJOR], [FLWRAP_MAJOR], [major version number])
25AC_DEFINE([FLWRAP_VERSION_MINOR], [FLWRAP_MINOR], [minor version number])
26AC_DEFINE([FLWRAP_VERSION_PATCH], ["FLWRAP_PATCH"], [patch/alpha version string])
27AC_DEFINE([FLWRAP_VERSION], ["FLWRAP_MAJOR.FLWRAP_MINOR[]FLWRAP_PATCH"], [version string])
28
29AC_SUBST([AC_CONFIG_ARGS], [$ac_configure_args])
30AC_CONFIG_AUX_DIR([build-aux])
31
32# define build, build_cpu, build_vendor, build_os
33AC_CANONICAL_BUILD
34# define host, host_cpu, host_vendor, host_os
35AC_CANONICAL_HOST
36# define target, target_cpu, target_vendor, target_os
37AC_CANONICAL_TARGET
38
39AM_INIT_AUTOMAKE([-Wall foreign std-options subdir-objects 1.9.6])
40
41#change the next config item for the specific application src's
42AC_CONFIG_SRCDIR([src/base64.cxx])
43AC_CONFIG_HEADERS([src/config.h])
44AC_CONFIG_MACRO_DIR([m4])
45
46# Checks for programs.
47AC_PROG_CXX
48AC_PROG_CC
49AC_USE_SYSTEM_EXTENSIONS
50
51# Checks for libraries.
52
53# Checks for header files.
54AC_CHECK_HEADERS([stdlib.h string.h])
55
56# Checks for typedefs, structures, and compiler characteristics.
57AC_HEADER_STDBOOL
58AC_TYPE_SIZE_T
59
60# Checks for library functions.
61AC_CHECK_FUNCS([strstr])
62
63### static flag
64# Set ac_cv_static to yes/no
65# Substitute RTLIB in Makefile
66AC_FL_STATIC
67
68### optimizations
69# Set ac_cv_opt to arg
70# Substitute OPT_FLAGS in Makefile
71AC_FL_OPT
72
73### debug flag
74# Set ac_cv_debug to yes/no
75# Override CXXFLAGS
76# Set ENABLE_DEBUG Makefile conditional
77# Substitute RDYNAMIC in Makefile
78AC_FL_DEBUG
79
80###### OS support
81### OSX
82# Set ac_cv_mac_universal to yes/no
83# Set DARWIN Makefile conditional
84# Substitute MAC_UNIVERSAL_CFLAGS and MAC_UNIVERSAL_LDFLAGS in Makefile
85AC_FL_MACOSX
86### win32
87# Set WIN32 Makefile conditional
88# Set HAVE_WINDRES Makefile conditional
89# Substitute WINDRES in Makefile
90AC_FL_WIN32
91
92### FLTK
93# Substitute FLTK_CFLAGS and FLTK_LIBS in Makefile
94# Set FLUID variable
95# Set HAVE_FLUID Makefile conditional
96AC_CHECK_FLTK
97
98### build info
99# Define various build variables in config.h
100AC_FLWRAP_BUILD_INFO
101
102AC_CONFIG_FILES([Makefile src/Makefile])
103
104AC_OUTPUT
105
106### summary
107AC_MSG_RESULT([
108Configuration summary:
109
110  Version ..................... $VERSION
111
112  Target OS ................... $target_os
113
114  Static linking .............. $ac_cv_static
115  CPU optimizations ........... $ac_cv_opt
116  Debugging ................... $ac_cv_debug
117
118])
119