view configure.ac @ 240:6ffe42286978

m4: use different method for CXXFLAGS
author Paper <paper@paper.us.eu.org>
date Fri, 19 Jan 2024 13:47:56 -0500
parents cae61340cc86
children 06d6c351925c
line wrap: on
line source

AC_INIT([minori], [0.1.0-alpha.1])

AC_CANONICAL_HOST

AC_CONFIG_SUBDIRS([dep/pugixml dep/animia dep/anitomy])
AC_CONFIG_SRCDIR([src/main.cc])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIRS([m4])

AM_INIT_AUTOMAKE([-Wall -Wportability foreign subdir-objects])

# Do we have a C++17 compiler
: ${CXXFLAGS=""}
AC_PROG_CXX
AX_CXX_COMPILE_STDCXX([17], [noext], [mandatory])

# Init libtool
AM_PROG_AR
LT_INIT

have_qt=no
# Qt?
AX_HAVE_QT

if test "x$have_qt" = "xno"; then
	PKG_CHECK_MODULES([QT], [Qt6Widgets >= 6.0.0], [have_qt=yes], [true])
	# prioritize qt 5
	PKG_CHECK_MODULES([QT], [Qt5Widgets >= 5.15.0], [have_qt=yes], [true])

	if test "x$have_qt" = "xno"; then
		AC_MSG_ERROR([*** Qt not found.])
	fi

	QT_CXXFLAGS=$QT_CFLAGS
	AC_SUBST([QT_CXXFLAGS])
fi

# need this for moc
AC_PROG_MKDIR_P

# libcurl?
LIBCURL_CHECK_CONFIG([yes], [7.7.2], [have_libcurl=yes], [have_libcurl=no])

if test "x$have_libcurl" = "xno"; then
	AC_MSG_ERROR([*** libcurl not found.])
fi

build_windows=no
build_osx=no
build_glib=no

case "${host_os}" in
	cygwin*|mingw*)
		# Windows
		build_windows=yes
		AC_CHECK_TOOL([WINDRES], [windres])
		AC_SUBST(WINDRES)
		AC_DEFINE(WIN32)
		;;
	darwin*)
		# Mac OS X
		build_osx=yes
		AC_DEFINE(MACOSX)
		;;
	*)
		if test "x$host_os" = "xlinux"; then
			AC_DEFINE(LINUX)
		fi
		# Everything else
		AC_SUBST([GIO_CFLAGS])
		AC_SUBST([GIO_LIBS])
		PKG_CHECK_MODULES([GIO], [gio-2.0], [build_glib=yes], [])
		;;
esac

AM_CONDITIONAL([BUILD_WIN], [test "x$build_windows" = "xyes"])
AM_CONDITIONAL([BUILD_OSX], [test "x$build_osx" = "xyes"])
AM_CONDITIONAL([BUILD_GLIB], [test "x$build_glib" = "xyes"])
AM_CONDITIONAL([BUILD_WINDRES], [test "x$WINDRES" != "x"])

AC_CONFIG_FILES([Makefile])
AC_OUTPUT