File:  [Coherent Logic Development] / freem / configure.ac
Revision 1.34: download - view: text, annotated - select for diffs
Wed May 7 19:03:05 2025 UTC (10 months, 3 weeks ago) by snw
Branches: MAIN
CVS tags: HEAD
Release 0.64.0, prepare to begin shared memory rewrite

    1: #
    2: #   $Id: configure.ac,v 1.34 2025/05/07 19:03:05 snw Exp $
    3: #    autoconf rules for FreeM
    4: #
    5: #  
    6: #   Author: Serena Willis <jpw@coherent-logic.com>
    7: #    Copyright (C) 1998 MUG Deutschland
    8: #    Copyright (C) 2020, 2025 Coherent Logic Development LLC
    9: #
   10: #
   11: #   This file is part of FreeM.
   12: #
   13: #   FreeM is free software: you can redistribute it and/or modify
   14: #   it under the terms of the GNU Affero Public License as published by
   15: #   the Free Software Foundation, either version 3 of the License, or
   16: #   (at your option) any later version.
   17: #
   18: #   FreeM is distributed in the hope that it will be useful,
   19: #   but WITHOUT ANY WARRANTY; without even the implied warranty of
   20: #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   21: #   GNU Affero Public License for more details.
   22: #
   23: #   You should have received a copy of the GNU Affero Public License
   24: #   along with FreeM.  If not, see <https://www.gnu.org/licenses/>.
   25: #
   26: #   $Log: configure.ac,v $
   27: #   Revision 1.34  2025/05/07 19:03:05  snw
   28: #   Release 0.64.0, prepare to begin shared memory rewrite
   29: #
   30: #   Revision 1.33  2025/04/19 01:10:04  snw
   31: #   Update documentation
   32: #
   33: #   Revision 1.32  2025/04/15 03:42:30  snw
   34: #   Remove -fno-stack-protector to fix dynamic executable builds on SunCC on Solaris
   35: #
   36: #   Revision 1.31  2025/04/15 03:37:30  snw
   37: #   Remove -fno-mudflap to fix Solaris builds
   38: #
   39: #   Revision 1.30  2025/04/12 00:54:16  snw
   40: #   Set -fno-stack-protector and -fno-mudflap where available, and set _FORTIFY_SOURCE to 0 everywhere
   41: #
   42: #   Revision 1.29  2025/04/12 00:42:05  snw
   43: #   Remove -Wall and all supporting directives
   44: #
   45: #   Revision 1.28  2025/04/11 20:55:47  snw
   46: #   Disable -Wunused-result where possible
   47: #
   48: #   Revision 1.27  2025/04/10 18:01:34  snw
   49: #   Further tweaks to the autoconf configuration
   50: #
   51: #   Revision 1.26  2025/04/10 01:24:38  snw
   52: #   Remove C++ style comments
   53: #
   54: #   Revision 1.25  2025/04/09 21:10:14  snw
   55: #   Only use -Wno-format-truncation et al when the compiler supports them
   56: #
   57: #   Revision 1.24  2025/04/09 20:06:02  snw
   58: #   Add macros to check for compiler flags to suppress unavoidable warnings
   59: #
   60: #   Revision 1.23  2025/04/07 23:40:30  snw
   61: #   Move to 0.64.0 and prepare to optimize global file lookup
   62: #
   63: #   Revision 1.22  2025/04/07 21:19:38  snw
   64: #   Release FreeM 0.64.0
   65: #
   66: #   Revision 1.21  2025/04/04 18:00:00  snw
   67: #   *** empty log message ***
   68: #
   69: #   Revision 1.20  2025/04/04 12:46:13  snw
   70: #   Patch Solaris 8 crash and bump version to 0.64.0
   71: #
   72: #   Revision 1.19  2025/04/04 02:40:32  snw
   73: #   Release 0.64.0
   74: #
   75: #   Revision 1.18  2025/04/04 02:12:24  snw
   76: #   Bump to 0.64.0 and make sure m_log function is never empty
   77: #
   78: #   Revision 1.17  2025/04/04 01:18:20  snw
   79: #   Remove vestigial logging code and bump to 0.64.0
   80: #
   81: #   Revision 1.16  2025/04/03 20:48:14  snw
   82: #   Improve daemon error diagnostics and bump to 0.64.0
   83: #
   84: #   Revision 1.15  2025/04/03 15:51:17  snw
   85: #   Add fmadm man page and apply minor updates to freem man page
   86: #
   87: #   Revision 1.14  2025/04/03 01:41:01  snw
   88: #   New features frozen; prepare 0.64.0
   89: #
   90: #   Revision 1.13  2025/03/30 01:36:58  snw
   91: #   Make it easier to bring back fma_gedit, fix double-free in global handler, limit $CHAR to 7-bit ASCII
   92: #
   93: #   Revision 1.12  2025/03/29 16:50:42  snw
   94: #   Back to 0.64.0 as version for development; temp fix for double-free issue in global_dispatch
   95: #
   96: #   Revision 1.11  2025/03/27 03:31:16  snw
   97: #   Prepare for release of FreeM 0.64.0
   98: #
   99: #   Revision 1.10  2025/03/23 19:42:18  snw
  100: #   Back to 0.64.0 versioning for continued development work
  101: #
  102: #   Revision 1.9  2025/03/23 04:42:33  snw
  103: #   Prepare for release of FreeM 0.64.0
  104: #
  105: #   Revision 1.8  2025/03/16 16:08:26  snw
  106: #   Back on 0.64.0 versioning for continued development
  107: #
  108: #   Revision 1.7  2025/03/15 03:19:33  snw
  109: #   Fix broken build and update to 0.64.0
  110: #
  111: #   Revision 1.6  2025/03/15 02:26:35  snw
  112: #   Prepare for 0.64.0 release
  113: #
  114: #   Revision 1.5  2025/03/09 19:14:24  snw
  115: #   First phase of REUSE compliance and header reformat
  116: #
  117: #
  118: # SPDX-FileCopyrightText:  (C) 2025 Coherent Logic Development LLC
  119: # SPDX-License-Identifier: AGPL-3.0-or-later
  120: 
  121: 
  122: AC_INIT([freem],[0.64.0],[snw@coherent-logic.com])
  123: AC_CONFIG_HEADERS([src/config.h])
  124: AC_CONFIG_MACRO_DIR([m4])
  125: 
  126: AX_LIB_READLINE
  127: ##
  128: # The following may be needed once we get back to enabling -Wall -Wextra -pedantic
  129: #
  130: # AX_CHECK_COMPILE_FLAG([-Wno-format-truncation], [AX_APPEND_FLAG([-Wno-format-truncation])])
  131: # AX_CHECK_COMPILE_FLAG([-Wno-format-contains-nul], [AX_APPEND_FLAG([-Wno-format-contains-nul])])
  132: # AX_CHECK_COMPILE_FLAG([-Wno-stringop-truncation], [AX_APPEND_FLAG([-Wno-stringop-truncation])])
  133: # AX_CHECK_COMPILE_FLAG([-Wno-parentheses], [AX_APPEND_FLAG([-Wno-parentheses])])
  134: # AX_CHECK_COMPILE_FLAG([-Wno-pointer-sign], [AX_APPEND_FLAG([-Wno-pointer-sign])])
  135: 
  136: # check for libm
  137: AC_CHECK_LIB([m], [powf])
  138: AC_CHECK_LIB([m], [pow])
  139: 
  140: AC_CANONICAL_HOST
  141: #AX_WITH_CURSES
  142: 
  143: # find out if we need to link with -lsocket and/or -lnsl to get
  144: # BSD sockets support
  145: 
  146: AU_ALIAS([LIB_SOCKET_NSL], [AX_LIB_SOCKET_NSL])
  147: 
  148: AC_DEFUN([AX_LIB_SOCKET_NSL],
  149: [
  150:         AC_SEARCH_LIBS([gethostbyname], [nsl])
  151:         AC_SEARCH_LIBS([socket], [socket], [], [
  152:                 AC_CHECK_LIB([socket], [socket], [LIBS="-lsocket -lnsl $LIBS"],
  153:                 [], [-lnsl])])
  154: ])
  155: 
  156: AX_LIB_SOCKET_NSL
  157: 
  158: #
  159: # check for getopt.h and getopt_long
  160: #
  161: AC_CHECK_HEADERS(getopt.h)
  162: AC_CHECK_FUNCS([getopt_long])
  163: 
  164: #
  165: # bring in X11, X Toolkit, and Motif if --enable-mwapi is passed to configure
  166: #
  167: AC_ARG_ENABLE([mwapi],  AS_HELP_STRING([--enable-mwapi], [Enable MWAPI (OSF/Motif) support (EXPERIMENTAL)]))
  168: 
  169: AS_IF([test "x$enable_mwapi" = "xyes"], [
  170:   AX_LIB_MOTIF
  171: ]) 
  172: 
  173: # check for wiringPi headers and library linkage for
  174: # ^$ZRPI ssv on Raspberry Pi SBCs
  175: AC_CHECK_HEADERS(wiringPi.h)
  176: 
  177: AC_DEFUN([AX_LIB_WIRINGPI],
  178: [
  179:         AC_SEARCH_LIBS([wiringPiSetup], [wiringPi], [], [
  180:                 AC_CHECK_LIB([wiringPi], [wiringPiSetup], [LIBS="-lwiringPi $LIBS"],
  181:                 [], [-lwiringPi])])
  182: ])
  183: 
  184: AX_LIB_WIRINGPI
  185: 
  186: AC_ENABLE_SHARED
  187: AC_DISABLE_STATIC
  188: LT_INIT
  189: AM_INIT_AUTOMAKE
  190: AC_CONFIG_FILES(Makefile src/Makefile doc/Makefile)
  191: AC_PROG_CC
  192: # AC_PATH_XTRA
  193: AC_OUTPUT

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>