summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorAlbrecht Schlosser <albrechts.fltk@online.de>2025-03-06 17:12:52 +0100
committerAlbrecht Schlosser <albrechts.fltk@online.de>2025-03-06 17:12:52 +0100
commite2ca1a39c8505d94e64aa7ef1d37610507389e4f (patch)
treeb17ab3717ae8c2390365015511550ad0e37467cb /configure.ac
parent880636eb120d18a2197b35839105a1aed5c71111 (diff)
Remove autotools (configure/make) support
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac1969
1 files changed, 0 insertions, 1969 deletions
diff --git a/configure.ac b/configure.ac
deleted file mode 100644
index 2127a35f3..000000000
--- a/configure.ac
+++ /dev/null
@@ -1,1969 +0,0 @@
-dnl -*- sh -*-
-dnl the "configure" script is made from this by running GNU "autoconf"
-dnl
-dnl Configuration script for the Fast Light Tool Kit (FLTK).
-dnl
-dnl Copyright 1998-2025 by Bill Spitzak and others.
-dnl
-dnl This library is free software. Distribution and use rights are outlined in
-dnl the file "COPYING" which should have been included with this file. If this
-dnl file is missing or damaged, see the license at:
-dnl
-dnl https://www.fltk.org/COPYING.php
-dnl
-dnl Please see the following page on how to report bugs and issues:
-dnl
-dnl https://www.fltk.org/bugs.php
-dnl
-
-dnl We need at least autoconf 2.50...
-AC_PREREQ([2.50])
-
-
-dnl Package name and version
-AC_INIT([fltk], [1.4.2], [https://github.com/fltk/fltk/issues], [fltk], [https://www.fltk.org/])
-
-FLTK_VERSION="AC_PACKAGE_VERSION"
-FLTK_VERSION_MAJOR=$(echo AC_PACKAGE_VERSION | awk -F. '{print $1}')
-FLTK_VERSION_MINOR=$(echo AC_PACKAGE_VERSION | awk -F. '{print $2}')
-FLTK_VERSION_PATCH=$(echo AC_PACKAGE_VERSION | awk -F. '{print $3}')
-
-FL_DSO_VERSION="${FLTK_VERSION_MAJOR}.${FLTK_VERSION_MINOR}"
-FL_ABI_VERSION="${FLTK_VERSION_MAJOR}.${FLTK_VERSION_MINOR}.0"
-
-AC_SUBST(FLTK_VERSION)
-AC_SUBST(FLTK_VERSION_MAJOR)
-AC_SUBST(FLTK_VERSION_MINOR)
-AC_SUBST(FLTK_VERSION_PATCH)
-AC_SUBST(FL_DSO_VERSION)
-AC_SUBST(FL_ABI_VERSION)
-
-
-dnl Required file in package...
-AC_CONFIG_SRCDIR([src/Fl.cxx])
-
-
-AC_CANONICAL_HOST
-
-
-dnl determine whether we're cross-compiling
-AS_IF([test "$host" != "$build"], [
- fltk_cross_compiling="yes"
-], [
- fltk_cross_compiling="no"
-])
-
-
-dnl Do not automatically add "-g" to compiler options...
-dnl This must be _before_ "Find compiler commands..."
-CFLAGS="${CFLAGS:=}"
-CPPFLAGS="${CPPFLAGS:=}"
-CXXFLAGS="${CXXFLAGS:=}"
-DSOFLAGS="${DSOFLAGS:=}"
-LDFLAGS="${LDFLAGS:=}"
-LIBS="${LDFLAGS:=}"
-
-
-dnl Find common commands...
-AC_PROG_CC
-AC_PROG_CXX
-AC_PATH_TOOL(PKGCONFIG, pkg-config)
-
-
-dnl Architecture and optimization options...
-ARCHFLAGS="${ARCHFLAGS:=}"
-AC_ARG_WITH([archflags], AS_HELP_STRING([--with-archflags="flags"], [use custom architecture flags (default=none, macOS values include "-arch arm64", "-arch i386", "-arch ppc", and "-arch x86_64")]), [
- ARCHFLAGS="$withval"
-])
-AC_SUBST(ARCHFLAGS)
-
-OPTIM="${OPTIM:=}"
-AC_ARG_WITH(optim, AS_HELP_STRING([--with-optim="flags"], [use custom optimization flags]), [
- OPTIM="$withval"
-])
-AC_SUBST(OPTIM)
-
-
-dnl Other options
-AC_ARG_ENABLE([cairo], AS_HELP_STRING([--enable-cairo], [add support for Fl_Cairo_Window]))
-AC_ARG_ENABLE([cairoext], AS_HELP_STRING([--enable-cairoext], [use FLTK code instrumentation for Cairo extended use]))
-
-AC_ARG_ENABLE([cp936], AS_HELP_STRING([--enable-cp936], [turn on CP936]))
-AS_IF([test x$enable_cp936 = xyes], [
- CFLAGS="$CFLAGS -DCP936"
-])
-
-AC_ARG_ENABLE([cygwin], AS_HELP_STRING([--enable-cygwin], [use the Cygwin DLL (default=no)]))
-
-AC_ARG_ENABLE([debug], AS_HELP_STRING([--enable-debug], [turn on debugging]))
-AS_IF([test x$enable_debug = xyes], [
- DEBUGFLAG="-g "
-], [
- DEBUGFLAG=""
-])
-
-AC_ARG_ENABLE([test], AS_HELP_STRING([--disable-test], [build test programs (default=yes)]))
-AS_IF([test x$enable_test = xno], [
- TESTDIR=""
-], [
- TESTDIR="test"
-])
-AC_SUBST(TESTDIR)
-
-AC_ARG_ENABLE([forms], AS_HELP_STRING([--disable-forms], [build Forms compatibility library (default=yes)]))
-
-AC_ARG_ENABLE([gl], AS_HELP_STRING([--disable-gl], [turn off OpenGL support]))
-
-AC_ARG_ENABLE([localjpeg], AS_HELP_STRING([--enable-localjpeg], [use local JPEG library (default=auto)]))
-AC_ARG_ENABLE([localpng], AS_HELP_STRING([--enable-localpng], [use local PNG library (default=auto)]))
-AC_ARG_ENABLE([localzlib], AS_HELP_STRING([--enable-localzlib], [use local ZLIB library (default=auto)]))
-
-AC_ARG_ENABLE([pango], AS_HELP_STRING([--enable-pango], [turn on Pango support]))
-
-AC_ARG_ENABLE([wayland], AS_HELP_STRING([--disable-wayland], [turn off hybrid Wayland/X11 support]))
-
-AC_ARG_ENABLE([usecairo], AS_HELP_STRING([--enable-usecairo], [all drawing to X11 windows uses Cairo]))
-
-AC_ARG_ENABLE([use_std], AS_HELP_STRING([--enable-use_std], [allow FLTK to use std::string etc.]))
-
-AC_ARG_ENABLE([print], AS_HELP_STRING([--disable-print], [turn off print support (X11)]))
-AS_IF([test x$enable_print = xno], [
- AC_DEFINE([FL_NO_PRINT_SUPPORT], [Disable X11 print support?])
-])
-
-AC_ARG_ENABLE([shared], AS_HELP_STRING([--enable-shared], [turn on shared libraries]))
-
-AC_ARG_ENABLE([svg], AS_HELP_STRING([--disable-svg], [disable SVG support]))
-AS_IF([test x$enable_svg != xno], [
- AC_DEFINE([FLTK_USE_SVG], 1, [SVG image support])
-])
-
-AC_ARG_ENABLE([threads], AS_HELP_STRING([--disable-threads], [turn off multi-threading support]))
-
-AC_ARG_ENABLE([x11], AS_HELP_STRING([--enable-x11], [use X11 with Cygwin or macOS (default=no)]))
-
-AC_ARG_ENABLE([xcursor], AS_HELP_STRING([--disable-xcursor], [turn off Xcursor support]))
-
-AC_ARG_ENABLE([xfixes], AS_HELP_STRING([--disable-xfixes], [turn off Xfixes support]))
-
-AC_ARG_ENABLE([xft], AS_HELP_STRING([--disable-xft], [turn off Xft support]))
-
-AC_ARG_ENABLE([xinerama], AS_HELP_STRING([--disable-xinerama], [turn off Xinerama support]))
-
-AC_ARG_ENABLE([xrender], AS_HELP_STRING([--disable-xrender], [turn off Xrender support]))
-
-AC_ARG_ENABLE([fluid], AS_HELP_STRING([--disable-fluid], [turn off fluid building]))
-
-AS_CASE([$host_os], [cygwin* | mingw*], [
- AC_ARG_ENABLE([gdiplus], AS_HELP_STRING([--disable-gdiplus], [don't use GDI+ for antialiased graphics]))
-
- gdiplus_found=no
- AS_IF([test x$enable_gdiplus != xno], [
- AC_CHECK_HEADERS([wtypes.h gdiplus.h], [
- AC_DEFINE([USE_GDIPLUS])
- LIBS="-lgdiplus $LIBS"
- gdiplus_found=yes
- ], [],
- [[#include <wtypes.h>]])
- ])
-
-])
-
-AS_IF([test x$enable_pango = xyes -a x$enable_xft = xno], [
- AC_MSG_ERROR([--disable-xft and --enable-pango are incompatible because Xft is necessary for Pango.])
-])
-
-
-dnl So --with-archflags option is used during "checking size of long"
-# TODO: Fix long long test
-AS_IF([test "x$with_archflags" != x], [
- CFLAGS="$CFLAGS $with_archflags"
-])
-
-dnl FLTK build options to be used in Makefiles (defined in makeinclude)
-BUILD=""
-
-
-dnl OS-specific pre-tests...
-dnl host_os_gui equals $host_os unless we target Cygwin or Darwin in combination with X11.
-host_os_gui=$host_os
-AS_CASE([$host_os], [cygwin*], [
- # Handle Cygwin option *first*, before all other tests.
- AS_IF([test x$enable_cygwin = xyes], [
- # we target Cygwin in combination with X11
- AS_IF([test x$enable_x11 = xyes], [
- host_os_gui="X11$host_os"
- ])
- ])
-], [darwin*], [
- AS_IF([test x$enable_x11 = xyes], [
- host_os_gui="X11"
- macosversion=$(sw_vers -productVersion | cut -d. -f2)
- macosversion_maj=$(sw_vers -productVersion | cut -d. -f1)
- AS_IF([test $macosversion_maj -ge 11 -o $macosversion -ge 13], [
- CXXFLAGS="$CXXFLAGS -mmacosx-version-min=10.9 -D_LIBCPP_HAS_THREAD_API_PTHREAD"
- ])
- ])
-])
-
-
-dnl Define the libraries and link options we will need.
-LINKFLTK="../lib/libfltk.a"
-LINKFLTKGL="../lib/libfltk_gl.a"
-LINKFLTKIMG="../lib/libfltk_images.a"
-GLDEMOS="gldemos"
-
-LIBEXT=".a"
-LIBNAME="../lib/libfltk.a"
-GLLIBNAME="../lib/libfltk_gl.a"
-IMGLIBNAME="../lib/libfltk_images.a"
-CAIROLIBNAME="../lib/libfltk_cairo.a"
-
-LIBBASENAME="libfltk.a"
-GLLIBBASENAME="libfltk_gl.a"
-IMGLIBBASENAME="libfltk_images.a"
-CAIROLIBBASENAME="libfltk_cairo.a"
-
-dnl set library names etc. for the optional forms library and set 'build_forms'
-dnl to make conditional code independent of the default value of 'enable_forms'
-dnl which is 'yes' (enabled) in 1.4.0 (default may be changed later)
-AS_IF([test x$enable_forms != xno], [
- build_forms="yes"
- LINKFLTKFORMS="../lib/libfltk_forms.a"
- FLLIBNAME="../lib/libfltk_forms.a"
- FLLIBBASENAME="libfltk_forms.a"
- AC_DEFINE([FLTK_HAVE_FORMS])
-], [
- build_forms="no"
- LINKFLTKFORMS=""
- FLLIBNAME=""
- FLLIBBASENAME=""
-])
-
-
-dnl Check for Cairo library unless disabled...
-CAIRODIR=""
-CAIROFLAGS=""
-LINKFLTKCAIRO=""
-FLTKCAIROOPTION=""
-CAIROLIBS=""
-
-AS_IF([test x$enable_cairoext = xyes], [
- AS_IF([$PKGCONFIG --exists cairo], [
- AC_DEFINE([FLTK_HAVE_CAIROEXT])
- AC_DEFINE([FLTK_HAVE_CAIRO])
- CAIRODIR="cairo"
- CAIROFLAGS="$($PKGCONFIG --cflags cairo)"
- CAIROLIBS="$($PKGCONFIG --libs cairo)"
- CXXFLAGS="$CAIROFLAGS $CXXFLAGS"
- LINKFLTKCAIRO="../lib/libfltk_cairo.a"
- FLTKCAIROOPTION="-L ../cairo -lfltk_cairo$SHAREDSUFFIX"
- LIBS="$CAIROLIBS $LIBS"
- LINKFLTK="$LINKFLTK $LINKFLTKCAIRO"
- ], [
- AC_MSG_ERROR([Cairo requested but not found.])
- ])
-], [test x$enable_cairo = xyes], [
- AS_IF([$PKGCONFIG --exists cairo], [
- AC_DEFINE(FLTK_HAVE_CAIRO)
- CAIRODIR="cairo"
- CAIROFLAGS="$($PKGCONFIG --cflags cairo)"
- CAIROLIBS="$($PKGCONFIG --libs cairo)"
- CXXFLAGS="$CAIROFLAGS $CXXFLAGS"
- LINKFLTKCAIRO="../lib/libfltk_cairo.a"
- FLTKCAIROOPTION="-L ../cairo -lfltk_cairo$SHAREDSUFFIX"
- ], [
- AC_MSG_ERROR([Cairo requested but not found.])
- ])
-])
-
-AC_SUBST(CAIRODIR)
-AC_SUBST(CAIROFLAGS)
-AC_SUBST(CAIROLIBS)
-AC_SUBST(LINKFLTKCAIRO)
-AC_SUBST(FLTKCAIROOPTION)
-
-AC_SUBST(GLDEMOS)
-AC_SUBST(GLLIBNAME)
-AC_SUBST(IMGLIBNAME)
-AC_SUBST(CAIROLIBNAME)
-AC_SUBST(LIBEXT)
-AC_SUBST(LIBNAME)
-AC_SUBST(LINKFLTK)
-AC_SUBST(LINKFLTKGL)
-AC_SUBST(LINKFLTKIMG)
-
-AC_SUBST(LIBBASENAME)
-AC_SUBST(GLLIBBASENAME)
-AC_SUBST(IMGLIBBASENAME)
-AC_SUBST(CAIROLIBBASENAME)
-
-AC_ARG_WITH([abiversion], AS_HELP_STRING([--with-abiversion], [Build with FL_ABI_VERSION, e.g. 10304 for FLTK 1.3.4]))
-has_abiversion="$with_abiversion"
-AS_IF([test "x$has_abiversion" = xyes -o "x$has_abiversion" = xno], [
- has_abiversion=""
-])
-AS_IF([test "x$has_abiversion" != x], [
- AC_DEFINE_UNQUOTED([FL_ABI_VERSION], [$has_abiversion], [ABI version number])
-])
-
-
-dnl Handle compile-time options...
-AS_IF([test "x$enable_shared" = xyes], [
- PICFLAG=1
- SHAREDSUFFIX=""
- FLUID="fluid-shared"
- FLTK_OPTIONS="fltk-options-shared"
-
- AS_CASE([$host_os], [darwin*], [
- DSONAME="libfltk.$FL_DSO_VERSION.dylib"
- FLDSONAME="libfltk_forms.$FL_DSO_VERSION.dylib"
- GLDSONAME="libfltk_gl.$FL_DSO_VERSION.dylib"
- IMGDSONAME="libfltk_images.$FL_DSO_VERSION.dylib"
- CAIRODSONAME="libfltk_cairo.$FL_DSO_VERSION.dylib"
- DSOCOMMAND="\$(CXX) \$(ARCHFLAGS) \$(DSOFLAGS) -dynamiclib -lc -o"
- ], [solaris*], [
- DSONAME="libfltk.so.$FL_DSO_VERSION"
- FLDSONAME="libfltk_forms.so.$FL_DSO_VERSION"
- GLDSONAME="libfltk_gl.so.$FL_DSO_VERSION"
- IMGDSONAME="libfltk_images.so.$FL_DSO_VERSION"
- CAIRODSONAME="libfltk_cairo.so.$FL_DSO_VERSION"
- DSOCOMMAND="\$(CXX) \$(DSOFLAGS) -Wl,-soname,\$@ \$(LDLIBS) -shared -fPIC $DEBUGFLAG -o"
- AS_IF([test "x$libdir" != "x/usr/lib"], [
- DSOLINK="-R$libdir"
- ])
- ], [hpux*], [
- DSONAME="libfltk.sl.$FL_DSO_VERSION"
- FLDSONAME="libfltk_forms.sl.$FL_DSO_VERSION"
- GLDSONAME="libfltk_gl.sl.$FL_DSO_VERSION"
- IMGDSONAME="libfltk_images.sl.$FL_DSO_VERSION"
- CAIRODSONAME="libfltk_cairo.sl.$FL_DSO_VERSION"
- DSOCOMMAND="ld \$(DSOFLAGS) -b -z +h \$@ $DEBUGFLAG -o"
- AS_IF([test "x$libdir" != "x/usr/lib"], [
- DSOLINK="-Wl,-rpath,$libdir"
- ])
- ], [irix*], [
- DSONAME="libfltk.so.$FL_DSO_VERSION"
- FLDSONAME="libfltk_forms.so.$FL_DSO_VERSION"
- GLDSONAME="libfltk_gl.so.$FL_DSO_VERSION"
- IMGDSONAME="libfltk_images.so.$FL_DSO_VERSION"
- CAIRODSONAME="libfltk_cairo.so.$FL_DSO_VERSION"
- DSOCOMMAND="\$(CXX) \$(DSOFLAGS) -Wl,-soname,\$@,-set_version,sgi1.1 \$(LDLIBS) -shared $DEBUGFLAG -o"
- AS_IF([test "x$libdir" != "x/usr/lib" -a "x$libdir" != "x/usr/lib32" -a "x$libdir" != "x/usr/lib64"], [
- DSOLINK="-Wl,-rpath,$libdir"
- ])
- ], [osf*], [
- DSONAME="libfltk.so.$FL_DSO_VERSION"
- FLDSONAME="libfltk_forms.so.$FL_DSO_VERSION"
- GLDSONAME="libfltk_gl.so.$FL_DSO_VERSION"
- IMGDSONAME="libfltk_images.so.$FL_DSO_VERSION"
- CAIRODSONAME="libfltk_cairo.so.$FL_DSO_VERSION"
- DSOCOMMAND="\$(CXX) \$(DSOFLAGS) -Wl,-soname,\$@ \$(LDLIBS) -shared $DEBUGFLAG -o"
- AS_IF([test "x$libdir" != "x/usr/lib" -a "x$libdir" != "x/usr/lib32"], [
- DSOLINK="-Wl,-rpath,$libdir"
- ])
- ], [linux*|*bsd*], [
- DSONAME="libfltk.so.$FL_DSO_VERSION"
- FLDSONAME="libfltk_forms.so.$FL_DSO_VERSION"
- GLDSONAME="libfltk_gl.so.$FL_DSO_VERSION"
- IMGDSONAME="libfltk_images.so.$FL_DSO_VERSION"
- CAIRODSONAME="libfltk_cairo.so.$FL_DSO_VERSION"
- DSOCOMMAND="\$(CXX) \$(DSOFLAGS) -Wl,-soname,\$@ \$(LDLIBS) -shared -fPIC $DEBUGFLAG -o"
-
- # See if the compiler supports -fvisibility...
- AC_CACHE_CHECK([if the compiler supports -fvisibility], ac_cv_cxx_fvisibility, [
- OLDCXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
- AC_LANG_PUSH([C++])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [ac_cv_cxx_fvisibility=yes],
- [ac_cv_cxx_fvisibility=no])
- CXXFLAGS="$OLDCXXFLAGS"
- AC_LANG_POP([])
- ])
- AS_IF([test x"$ac_cv_cxx_fvisibility" = xyes], [
- OPTIM="$OPTIM -fvisibility=hidden"
- ])
-
- # See if the compiler supports -fvisibility-inlines-hidden...
- AC_CACHE_CHECK([if the compiler supports -fvisibility-inlines-hidden], [ac_cv_cxx_fvisibility_inlines], [
- OLDCXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -fvisibility-inlines-hidden"
- AC_LANG_PUSH([C++])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [ac_cv_cxx_fvisibility_inlines=yes],
- [ac_cv_cxx_fvisibility_inlines=no])
- CXXFLAGS="$OLDCXXFLAGS"
- AC_LANG_POP([])
- ])
- AS_IF([test x"$ac_cv_cxx_fvisibility_inlines" = xyes], [
- CXXFLAGS="$CXXFLAGS -fvisibility-inlines-hidden"
- ])
-
- AS_IF([test "x$libdir" != "x/usr/lib" -a "x$libdir" != "x/usr/lib64"], [
- DSOLINK="-Wl,-rpath,$libdir"
- ])
- ], [aix*], [
- DSONAME="libfltk_s.a"
- FLDSONAME="libfltk_forms_s.a"
- GLDSONAME="libfltk_gl_s.a"
- IMGDSONAME="libfltk_images_s.a"
- CAIRODSONAME="libfltk_cairo_s.a"
- DSOCOMMAND="\$(CXX) \$(DSOFLAGS) -Wl,-bexpall,-bM:SRE,-bnoentry -o"
- SHAREDSUFFIX="_s"
- ], [cygwin* | mingw*], [
- PICFLAG=0
- AS_IF([test x$enable_cygwin != xyes], [
- DSONAME="mgwfltknox-$FL_DSO_VERSION.dll"
- FLDSONAME="mgwfltknox_forms-$FL_DSO_VERSION.dll"
- GLDSONAME="mgwfltknox_gl-$FL_DSO_VERSION.dll"
- IMGDSONAME="mgwfltknox_images-$FL_DSO_VERSION.dll"
- CAIRODSONAME="mgwfltknox_cairo-$FL_DSO_VERSION.dll"
- ], [test x$enable_x11 = xyes], [
- DSONAME="cygfltk-$FL_DSO_VERSION.dll"
- FLDSONAME="cygfltk_forms-$FL_DSO_VERSION.dll"
- GLDSONAME="cygfltk_gl-$FL_DSO_VERSION.dll"
- IMGDSONAME="cygfltk_images-$FL_DSO_VERSION.dll"
- CAIRODSONAME="cygfltk_cairo-$FL_DSO_VERSION.dll"
- ], [
- DSONAME="cygfltknox-$FL_DSO_VERSION.dll"
- FLDSONAME="cygfltknox_forms-$FL_DSO_VERSION.dll"
- GLDSONAME="cygfltknox_gl-$FL_DSO_VERSION.dll"
- IMGDSONAME="cygfltknox_images-$FL_DSO_VERSION.dll"
- CAIRODSONAME="cygfltknox_cairo-$FL_DSO_VERSION.dll"
- ])
-
- #-----------------------------------------------------------
- # -Wl,--enable-runtime-pseudo-reloc: See str 1585
- # appears to be necessary for older binutils versions < 2.16
- #-----------------------------------------------------------
- LDFLAGS="$LDFLAGS -Wl,--enable-auto-import -Wl,--enable-runtime-pseudo-reloc"
- DSOCOMMAND="\$(CXX) \$(DSOFLAGS) -shared -Wl,--whole-archive -Wl,--export-all-symbols -Wl,--enable-runtime-pseudo-reloc -Wl,--enable-auto-import -Wl,--enable-auto-image-base -o \$@"
- ], [*], [
- AC_MSG_WARN([Shared libraries may not be supported. Trying -shared option with compiler.])
- DSONAME="libfltk.so.$FL_DSO_VERSION"
- FLDSONAME="libfltk_forms.so.$FL_DSO_VERSION"
- GLDSONAME="libfltk_gl.so.$FL_DSO_VERSION"
- IMGDSONAME="libfltk_images.so.$FL_DSO_VERSION"
- CAIRODSONAME="libfltk_cairo.so.$FL_DSO_VERSION"
- DSOCOMMAND="\$(CXX) \$(DSOFLAGS) -Wl,-soname,\$@ \$(LDLIBS) -shared $DEBUGFLAG -o"
- ])
-
- LINKSHARED="-L../src $FLTKCAIROOPTION -lfltk_images$SHAREDSUFFIX -lfltk$SHAREDSUFFIX"
-], [
- DSOCOMMAND="echo"
- DSOLINK=""
- DSONAME=""
- FLDSONAME=""
- GLDSONAME=""
- IMGDSONAME=""
- CAIRODSONAME=""
- PICFLAG=0
- SHAREDSUFFIX=""
- FLUID="fluid"
- FLTK_OPTIONS="fltk-options"
- LINKSHARED="$LINKFLTKCAIRO ../lib/libfltk_images.a ../lib/libfltk.a"
-])
-
-dnl reset FLDSONAME if the Forms compatibility library is disabled (not built):
-dnl overwrite the variable because this is easier than adding conditional code above
-AS_IF([test x$build_forms = xno], [
- FLDSONAME=""
-])
-
-AC_SUBST([FLLIBNAME])
-AC_SUBST([FLLIBBASENAME])
-AC_SUBST([FLDSONAME])
-AC_SUBST([LINKFLTKFORMS])
-AC_SUBST([LINKSHARED])
-
-
-dnl Define the fluid executable used when building the test programs.
-dnl In a native build we use the fluid executable created during the build,
-dnl in a cross-compilation we use "fluid" which must exist on the build system
-dnl and must be in the PATH, i.e. executable as 'fluid' (w/o $EXEEXT).
-AS_IF([test "x$fltk_cross_compiling" = xyes], [
- FLUID_BUILD="fluid"
-], [
- FLUID_BUILD="../fluid/fluid$EXEEXT"
-])
-
-AC_SUBST([DSOCOMMAND])
-AC_SUBST([DSOFLAGS])
-AC_SUBST([DSOLINK])
-AC_SUBST([DSONAME])
-AC_SUBST([GLDSONAME])
-AC_SUBST([IMGDSONAME])
-AC_SUBST([CAIRODSONAME])
-AC_SUBST([SHAREDSUFFIX])
-AC_SUBST([FLUID])
-AC_SUBST([FLUID_BUILD])
-AC_SUBST([FLTK_OPTIONS])
-
-
-dnl Find commands...
-AC_PROG_INSTALL
-AS_CASE([$host_os],
-[osf*], [
- INSTALL="$(pwd)/install-sh -c"
-])
-
-AS_IF([test "x$INSTALL" = "x$ac_install_sh"], [
- # Use full path to install-sh script...
- INSTALL="$(pwd)/install-sh -c"
-])
-
-AC_PATH_PROGS([NROFF], [nroff groff], [echo])
-AC_PATH_PROG([DOXYDOC], [doxygen])
-
-dnl How do we make libraries?
-AC_PROG_RANLIB
-AC_PATH_TOOL([AR], [ar])
-
-AS_IF([test "x$AR" = "x:"], [
- AC_MSG_ERROR([Configure could not find the library archiver, aborting.])
-])
-
-AS_IF([test "x$RANLIB" != "x:"], [
- LIBCOMMAND="$AR cr"
-], [
- LIBCOMMAND="$AR crs"
-])
-
-AC_SUBST(LIBCOMMAND)
-
-dnl how to compile (Windows) resource files
-dnl this will only be used to compile resources for Windows .exe files
-AC_PATH_TOOL(RC,windres)
-
-dnl Architecture checks...
-AC_CHECK_SIZEOF(short, 2)
-AC_CHECK_SIZEOF(int, 4)
-AC_CHECK_SIZEOF(long, 4)
-AS_IF([test $ac_cv_sizeof_short -eq 2], [
- AC_DEFINE([U16], [unsigned short])
-])
-AS_IF([test $ac_cv_sizeof_int -eq 4], [
- AC_DEFINE([U32], [unsigned])
-], [test $ac_cv_sizeof_long -eq 4], [
- AC_DEFINE([U32],[unsigned long])
-])
-
-AS_CASE([$host_os], [darwin*], [
-], [*], [
- AC_C_BIGENDIAN
-
- AS_IF([test $ac_cv_sizeof_int -eq 8], [
- AC_DEFINE([U64], [unsigned])
- ], [test $ac_cv_sizeof_long -eq 8], [
- AC_DEFINE([U64], [unsigned long])
- ])
-])
-
-
-dnl Standard headers and functions...
-AC_HEADER_DIRENT
-AC_CHECK_HEADERS([sys/select.h sys/stdtypes.h])
-
-dnl Do we have the POSIX compatible scandir() prototype?
-AC_CACHE_CHECK([whether we have the POSIX compatible scandir() prototype], ac_cv_cxx_scandir_posix,[
- AC_LANG_PUSH([C++])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <dirent.h>
- int func (const char *d, dirent ***list, void *sort) {
- int n = scandir(d, list, 0, (int(*)(const dirent **, const dirent **))sort);
- return n;
- }
- ]], [[
- ]])],
- [ac_cv_cxx_scandir_posix=yes],
- [ac_cv_cxx_scandir_posix=no])
- AC_LANG_POP([])
-])
-
-dnl Define both HAVE_SCANDIR... macros, if the POSIX compatible function is
-dnl available. Otherwise: check, whether any scandir prototype is available,
-dnl but dont use it on SunOS and QNX because of an incompatibility in pre-Y2K
-dnl SunOS scandir versions. We assume, though, that the POSIX compatible
-dnl version on newer SunOS/Solaris versions works as expected.
-AS_IF([test "x$ac_cv_cxx_scandir_posix" = xyes], [
- AC_DEFINE([HAVE_SCANDIR])
- AC_DEFINE([HAVE_SCANDIR_POSIX])
-], [
- AC_CHECK_FUNC([scandir], [
- AS_CASE([$host_os], [solaris* | *qnx*], [
- AC_MSG_WARN([Not using $host_os scandir emulation function.])
- ], [*], [
- AC_DEFINE([HAVE_SCANDIR])
- ])
- ])
-])
-
-AC_CHECK_FUNC([vsnprintf], [
- AS_CASE([$host_os], [hpux1020], [
- AC_MSG_WARN([Not using built-in vsnprintf function because you are running HP-UX 10.20.])
- ], [osf4], [
- AC_MSG_WARN([Not using built-in vsnprintf function because you are running Tru64 4.0.])
- ], [*], [
- AC_DEFINE([HAVE_VSNPRINTF])
- ])
-])
-
-AC_CHECK_FUNC([snprintf], [
- AS_CASE([$host_os], [hpux1020], [
- AC_MSG_WARN([Not using built-in snprintf function because you are running HP-UX 10.20.])
- ], [osf4], [
- AC_MSG_WARN([Not using built-in snprintf function because you are running Tru64 4.0.])
- ], [*], [
- AC_DEFINE([HAVE_SNPRINTF])
- ])
-])
-
-AC_CHECK_HEADERS([strings.h])
-AC_CHECK_FUNCS([strcasecmp strlcat strlcpy])
-
-AC_CHECK_HEADERS([locale.h])
-AC_CHECK_FUNCS([localeconv])
-
-dnl HP-UX 11.11 does not provide setenv()
-AC_CHECK_FUNCS([setenv])
-
-
-dnl FLTK library uses math library functions...
-AC_SEARCH_LIBS([pow], [m])
-
-AC_CHECK_HEADERS([math.h])
-AC_CHECK_FUNCS([trunc])
-
-
-dnl Check for largefile support...
-AC_SYS_LARGEFILE
-
-LARGEFILE=""
-AS_IF([test x$enable_largefile != xno], [
- LARGEFILE="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
-
- AS_IF([test x$ac_cv_sys_large_files = x1], [
- LARGEFILE="$LARGEFILE -D_LARGE_FILES"
- ])
-
- AS_IF([test x$ac_cv_sys_file_offset_bits = x64], [
- LARGEFILE="$LARGEFILE -D_FILE_OFFSET_BITS=64"
- ])
-])
-AC_SUBST(LARGEFILE)
-
-
-dnl Check for "long long" support...
-AC_CACHE_CHECK([for long long int], [ac_cv_c_long_long], [
- AS_IF([test "$GCC" = yes], [
- ac_cv_c_long_long=yes
- ], [
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]],
- [[long long int i;]])],
- [ac_cv_c_long_long=yes],
- [ac_cv_c_long_long=no])
- ])
-])
-
-AS_IF([test $ac_cv_c_long_long = yes], [
- AC_DEFINE([HAVE_LONG_LONG])
-])
-
-
-dnl Check for dlopen/dlsym...
-AC_SEARCH_LIBS([dlsym], [dl], AC_DEFINE([HAVE_DLSYM]))
-AC_CHECK_HEADER([dlfcn.h], AC_DEFINE([HAVE_DLFCN_H]))
-
-
-dnl Check for audio libraries...
-AUDIOLIBS=""
-
-AS_CASE([$host_os], [cygwin* | mingw*], [
- dnl Cygwin environment...
- AUDIOLIBS="-lwinmm"
-], [darwin*], [
- AUDIOLIBS="-framework CoreAudio"
-], [*], [
- AC_CHECK_HEADER([alsa/asoundlib.h], [
- AC_DEFINE([HAVE_ALSA_ASOUNDLIB_H])
- AUDIOLIBS="-lasound"
- ])
-])
-
-AC_SUBST(AUDIOLIBS)
-
-
-dnl Check for image libraries...
-SAVELIBS="$LIBS"
-IMAGELIBS=""
-STATICIMAGELIBS=""
-
-AC_SUBST([IMAGELIBS])
-AC_SUBST([STATICIMAGELIBS])
-
-
-# Handle the JPEG lib linking mode (use fltk local or system lib)
-# If --enable-(resp. --disable-)localjpeg parameter is not set by user
-# Then we check the JPEG lib usability, with result in sysjpeglib_ok variable
-# Check for System lib use if automatic mode or --disable-localjpeg is requested
-sysjpeglib_ok=no
-sysjpeginc_ok=no
-AS_IF([test x$enable_localjpeg != xyes], [
- AC_CHECK_LIB([jpeg], [jpeg_CreateCompress], [
- AC_CHECK_HEADER([jpeglib.h], [sysjpeginc_ok=yes])
- AS_IF([test x$sysjpeginc_ok = xyes], [
- sysjpeglib_ok=yes
- ])
- ])
-])
-
-# Now set the jpeg lib and include flags according to the requested mode and availability
-AS_IF([test x$enable_localjpeg = xyes -o x$sysjpeglib_ok = xno], [
- JPEGINC="-I../jpeg"
- JPEG="jpeg"
- IMAGELIBS="-lfltk_jpeg $IMAGELIBS"
- STATICIMAGELIBS="\$libdir/libfltk_jpeg.a $STATICIMAGELIBS"
- AC_DEFINE([HAVE_LIBJPEG])
- # Finally, warn user if system lib was requested but not found
- AS_IF([test x$enable_localjpeg = xno], [
- AC_MSG_WARN([Cannot find system jpeg lib or header: choosing the local lib mode.])
- ])
-], [
- JPEGINC=""
- JPEG=""
- IMAGELIBS="-ljpeg $IMAGELIBS"
- STATICIMAGELIBS="-ljpeg $STATICIMAGELIBS"
- AC_DEFINE([HAVE_LIBJPEG])
-])
-
-
-# Handle the ZLIB lib linking mode (use fltk local or system lib)
-# If --enable-(resp. --disable-)localzlib parameter is not set by user
-# Then we check the ZLIB lib usability, with result in syszlib_ok variable
-# Check for System lib use if automatic mode or --disable-localzlib is requested
-syszlib_ok=no
-syszinc_ok=no
-AS_IF([test x$enable_localzlib != xyes], [
- AC_CHECK_LIB([z], [gzgets], [
- AC_CHECK_HEADER([zlib.h], [syszinc_ok=yes])
- AS_IF([test x$syszinc_ok = xyes], [
- syszlib_ok=yes
- ])
- ])
-])
-
-
-# Handle the PNG lib linking mode (use fltk local or system lib)
-# If --enable-(resp. --disable-)localpng parameter is not set by user
-# Then we check the png lib usability with result in syspng_lib variable
-
-# Now check if system lib is usable, we check Lib AND include availability with inc variant,
-# but only, if the builtin lib is not requested
-syspnglib_ok=no
-syspnginc_ok=no
-AS_IF([test x$enable_localpng != xyes -a x$PKGCONFIG != x], [
- AC_MSG_CHECKING([for libpng-1.6.x])
- AS_IF([$PKGCONFIG --exists libpng16], [
- AC_MSG_RESULT([yes])
- AC_DEFINE([HAVE_PNG_H], 1, [Have PNG library?])
- syspnginc_ok=yes
- syspnglib_ok=yes
- PNGINC="$($PKGCONFIG --cflags libpng16)"
- IMAGELIBS="$($PKGCONFIG --libs libpng16) $IMAGELIBS"
- STATICIMAGELIBS="$($PKGCONFIG --libs libpng16) $STATICIMAGELIBS"
- ], [
- AC_MSG_RESULT([no])
- ])
-])
-
-AS_IF([test x$enable_localpng != xyes -a $syspnglib_ok = no], [
- AC_CHECK_LIB([png], [png_read_info], [
- AC_CHECK_HEADER([png.h], [
- AC_DEFINE([HAVE_PNG_H])
- syspnginc_ok=yes
- ])
- AC_CHECK_HEADER([libpng/png.h], [
- syspnginc_ok=yes
- ])
- AS_IF([test x$syspnginc_ok = xyes], [
- syspnglib_ok=yes
- ])
- ])
-])
-
-
-# If we use the system zlib, we must also use the system png lib and vice versa.
-# If either of them is not available, we fall back to using both local libraries
-AS_IF([test x$syspnglib_ok = xyes -a x$syszlib_ok != xyes], [
- syspnglib_ok=no
- enable_localpng=yes
- AC_MSG_WARN([Local z lib selected: overriding png lib to local for compatibility.])
-])
-AS_IF([test x$syszlib_ok = xyes -a x$syspnglib_ok != xyes], [
- syszlib_ok=no
- enable_localzlib=yes
- AC_MSG_WARN([Local png lib selected: overriding z lib to local for compatibility.])
-])
-
-
-# Now set the Z lib and include flags according to the requested mode and availability
-AS_IF([test x$enable_localzlib = xyes -o x$syszlib_ok = xno], [
- ZLIBINC="-I../zlib"
- ZLIB="zlib"
- LIBS="-lfltk_z $LIBS"
- IMAGELIBS="-lfltk_z $IMAGELIBS"
- STATICIMAGELIBS="\$libdir/libfltk_z.a $STATICIMAGELIBS"
- AC_DEFINE([HAVE_LIBZ])
- ac_cv_lib_z_gzgets=no # fc: is still necessary ?
- # Finally, warn user if system lib was requested but not found
- AS_IF([test x$enable_localzlib = xno], [
- AC_MSG_WARN([Cannot find system z lib or header: choosing the local lib mode.])
- ])
-], [
- ZLIBINC=""
- ZLIB=""
- LIBS="-lz $LIBS"
- IMAGELIBS="-lz $IMAGELIBS"
- STATICIMAGELIBS="-lz $STATICIMAGELIBS"
- AC_DEFINE([HAVE_LIBZ])
-])
-
-
-# The following is executed if the png lib was not found usable or if local lib is required explicitly
-AS_IF([test x$enable_localpng = xyes -o x$syspnglib_ok = xno], [
- PNGINC="-I../png"
- PNG="png"
- IMAGELIBS="-lfltk_png $IMAGELIBS"
- STATICIMAGELIBS="\$libdir/libfltk_png.a $STATICIMAGELIBS"
- AC_DEFINE([HAVE_LIBPNG])
- AC_DEFINE([HAVE_PNG_H])
- AC_DEFINE([HAVE_PNG_GET_VALID])
- AC_DEFINE([HAVE_PNG_SET_TRNS_TO_ALPHA])
- # Finally, warn user if system lib was requested but not found
- AS_IF([test x$enable_localpng = xno], [
- AC_MSG_WARN([Cannot find system png lib or header: choosing the local lib mode.])
- ])
-], [
- PNGINC=""
- PNG=""
- IMAGELIBS="-lpng $IMAGELIBS"
- STATICIMAGELIBS="-lpng $STATICIMAGELIBS"
- AC_DEFINE([HAVE_LIBPNG])
- AC_CHECK_LIB([png], [png_get_valid], [
- AC_DEFINE([HAVE_PNG_GET_VALID])
- ])
- AC_CHECK_LIB([png], [png_set_tRNS_to_alpha], [
- AC_DEFINE([HAVE_PNG_SET_TRNS_TO_ALPHA])
- ])
-])
-
-
-AC_SUBST([JPEG])
-AC_SUBST([JPEGINC])
-AC_SUBST([PNG])
-AC_SUBST([PNGINC])
-AC_SUBST([HAVE_PNG_H])
-AC_SUBST([ZLIB])
-AC_SUBST([ZLIBINC])
-
-
-# Control the usage of the nanosvg lib and SVG output
-
-dnl Restore original LIBS settings...
-LIBS="$SAVELIBS"
-
-dnl See if we need a .exe extension on executables...
-AC_EXEEXT
-
-dnl Check for pthreads for multi-threaded apps...
-have_pthread=no
-PTHREAD_FLAGS=""
-
-dnl Test whether we want to check for pthreads. We must not do it on Windows
-dnl unless we run under Cygwin with --enable-cygwin, since we always use
-dnl native threads on Windows (even if libpthread is available)
-check_pthread=yes
-AS_CASE([$host_os], [mingw*], [
- check_pthread=no
-], [cygwin*], [
- AS_IF([test "x$enable_cygwin" != xyes], [
- check_pthread=no
- ])
-])
-
-AS_IF([test "x$enable_threads" != xno -a x$check_pthread = xyes], [
- AC_CHECK_HEADERS([pthread.h])
-
- AS_IF([test x$ac_cv_header_pthread_h = xyes], [
- dnl Check various threading options for the platforms we support
- for flag in -lpthreads -lpthread -pthread; do
- AC_MSG_CHECKING([for pthread_create using $flag])
- SAVELIBS="$LIBS"
- LIBS="$flag $LIBS"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <pthread.h>]],
- [[pthread_create(0, 0, 0, 0);]])],
- [have_pthread=yes],
- [LIBS="$SAVELIBS"])
- AC_MSG_RESULT([$have_pthread])
-
- AS_IF([test $have_pthread = yes], [
- AC_DEFINE([HAVE_PTHREAD])
- PTHREAD_FLAGS="-D_THREAD_SAFE -D_REENTRANT"
-
- # Solaris requires -D_POSIX_PTHREAD_SEMANTICS to
- # be POSIX-compliant... :(
- AS_CASE([$host_os], [solaris*], [
- PTHREAD_FLAGS="$PTHREAD_FLAGS -D_POSIX_PTHREAD_SEMANTICS"
- ])
- ])
- done
-
- dnl Check if we have PTHREAD_MUTEX_RECURSIVE
- AC_CACHE_CHECK([whether we have PTHREAD_MUTEX_RECURSIVE], ac_cv_pthread_mutex_recursive,[
- AC_LANG_PUSH([C])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <pthread.h>
- ]], [[
- return PTHREAD_MUTEX_RECURSIVE;
- ]])],
- [ac_cv_pthread_mutex_recursive=yes],
- [ac_cv_pthread_mutex_recursive=no])
- AC_LANG_POP([])
- ])
- AS_IF([test x$ac_cv_pthread_mutex_recursive = xyes], [
- AC_DEFINE([HAVE_PTHREAD_MUTEX_RECURSIVE])
- ])
- ])
-])
-
-AC_SUBST([PTHREAD_FLAGS])
-AC_SUBST([HAVE_PTHREAD_MUTEX_RECURSIVE])
-
-
-dnl Define OS-specific stuff...
-HLINKS=
-OSX_ONLY=:
-THREADS=
-LIBDECORDIR=""
-LIBDECORDBUS=""
-FLUIDDIR=""
-
-AC_ARG_WITH([links], AS_HELP_STRING([--with-links], [make header links for common misspellings (default=no)]))
-
-INSTALL_DESKTOP=""
-UNINSTALL_DESKTOP=""
-
-AS_IF([test x$enable_fluid != xno], [FLUIDDIR="fluid"])
-
-dnl Option use_std - allow std::string and maybe more
-AS_IF([test x$enable_use_std = xyes], [
- AC_DEFINE([FLTK_USE_STD])
- ]
-)
-
-dnl Platform specific Processing
-
-AS_CASE([$host_os_gui], [cygwin* | mingw*], [
- dnl Cygwin environment, using windows GDI ...
- # Recent versions of Cygwin are seriously broken and the size
- # checks don't work because the shell puts out \r\n instead of
- # \n. Here we just force U32 to be defined to "unsigned"...
- AC_DEFINE([U32], [unsigned])
- # We do no longer define WIN32 or _WIN32 (since FLTK 1.4.0)
- # and we don't need to define USE_OPENGL32 (added in svn r6657
- # but never used, see STR #2147)
- # CFLAGS="-mwindows -D_WIN32 -DUSE_OPENGL32 $CFLAGS"
- # CXXFLAGS="-mwindows -D_WIN32 -DUSE_OPENGL32 $CXXFLAGS"
- LDFLAGS="-mwindows $LDFLAGS"
- DSOFLAGS="-mwindows $DSOFLAGS"
- LIBS="$LIBS -lole32 -luuid -lcomctl32 -lws2_32 -lwinspool"
-
- BUILD="WIN"
- AS_IF([test "x$with_optim" = x], [
- dnl Avoid -Os optimization on Cygwin/MinGW
- with_optim="-O3"
- ])
-
- AS_IF([test x$enable_gl != xno], [
- AC_CHECK_HEADER([GL/gl.h], [
- AC_DEFINE([HAVE_GL])
- GLLIBS="-lopengl32"
- ])
- AC_CHECK_HEADER([GL/glu.h], [
- AC_DEFINE([HAVE_GL_GLU_H])
- GLLIBS="-lglu32 $GLLIBS"
- ])
- ], [
- LINKFLTKGL=""
- GLLIBNAME=""
- GLDSONAME=""
- GLDEMOS=""
- ])
-
- AS_IF([test "x$enable_threads" != xno -a x$have_pthread = xyes], [
- AC_DEFINE([HAVE_PTHREAD])
- ])
-
- THREADS="threads$EXEEXT"
-
- # Don't make symlinks since Windows is not case sensitive.
- AS_IF([test "x$with_links" != xyes], [
- HLINKS="#"
- ])
-], [darwin*], [
- BUILD="OSX"
-
- # MacOS X uses Cocoa for graphics.
- LIBS="$LIBS -framework Cocoa"
- # Add weak-linked additional frameworks for increasingly high macOS versions
- AC_LANG_PUSH([C])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <AvailabilityMacros.h>
- #if __MAC_OS_X_VERSION_MAX_ALLOWED < 110000
- #error __MAC_OS_X_VERSION_MAX_ALLOWED < 110000
- #endif
- ]], [[
- ]])],
- [LIBS="$LIBS -weak_framework UniformTypeIdentifiers"],
- [])
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <AvailabilityMacros.h>
- #if __MAC_OS_X_VERSION_MAX_ALLOWED < 150000
- #error __MAC_OS_X_VERSION_MAX_ALLOWED < 150000
- #endif
- ]], [[
- ]])],
- [LIBS="$LIBS -weak_framework ScreenCaptureKit"],
- [])
- AC_LANG_POP([])
-
- AS_IF([test x$have_pthread = xyes], [
- AC_DEFINE([HAVE_PTHREAD])
- THREADS="threads$EXEEXT"
- ])
-
- AS_IF([test x$enable_gl != xno], [
- AC_DEFINE([HAVE_GL])
- AC_DEFINE([HAVE_GL_GLU_H])
- GLLIBS="-framework OpenGL"
- ], [
- LINKFLTKGL=""
- GLLIBNAME=""
- GLDSONAME=""
- GLDEMOS=""
- ])
-
- # Don't make symlinks because HFS+ is not case sensitive...
- AS_IF([test "x$with_links" != xyes], [
- HLINKS="#"
- ])
-
- # Some steps are only done for OS X package management
- OSX_ONLY=
-
- # Install/Uninstall FLUID application
- INSTALL_DESKTOP="install-osx"
- UNINSTALL_DESKTOP="uninstall-osx"
-], [*], [
- # All others are UNIX/X11...
- # This includes Cygwin target combined with X11
- AS_IF([test x$have_pthread = xyes], [
- AC_DEFINE([HAVE_PTHREAD])
- THREADS="threads$EXEEXT"
- ])
-
- AS_IF([test x$enable_wayland != xno], [
- AS_IF([test x$PKGCONFIG = x], [
- dnl pkg-config is not available, issue warning and possibly abort...
- AS_IF([test x$enable_wayland = xyes], [
- AC_MSG_WARN([--enable-wayland: please install pkg-config.])
- AC_MSG_ERROR([Aborting.])
- ],[
- AC_MSG_WARN([pkg-config is not found. Continuing with --disable-wayland])
- enable_wayland="no"
- ])
- ],[
- missing="no"
- AS_IF([$PKGCONFIG --exists 'wayland-client >= 1.18'],[],[missing="yes"])
- AS_IF([$PKGCONFIG --exists 'wayland-protocols >= 1.15'],[],[missing="yes"])
- AS_IF([$PKGCONFIG --exists wayland-cursor],[],[missing="yes"])
- AS_IF([$PKGCONFIG --exists xkbcommon],[],[missing="yes"])
- AS_IF([$PKGCONFIG --exists pangocairo],[],[missing="yes"])
- AS_IF([test x$missing = xyes], [
- AC_MSG_WARN([These packages 'wayland-client>=1.18 wayland-protocols>=1.15 wayland-cursor xkbcommon pangocairo' are required to build FLTK for wayland.])
- AC_MSG_WARN([At least one of them is missing.])
- AS_IF([test x$enable_wayland = xyes], [
- AC_MSG_ERROR([Building for Wayland is not possible. Aborting.])
- ],[
- AC_MSG_WARN([Continuing with --disable-wayland])
- enable_wayland="no"
- ])
- ])
- ])
- ])
-
- AS_IF([test x$enable_wayland != xno], [
- dnl Prepare for Wayland...
- dnl Turn option usecairo ON
- AC_DEFINE([FLTK_USE_CAIRO])
- AC_MSG_NOTICE([Turning on the usecairo option])
-
- BUILD="WAYLAND"
- AC_DEFINE([FLTK_USE_WAYLAND])
- graphics="Wayland"
- AS_IF([test x$enable_x11 != xno], [
- AC_DEFINE([FLTK_USE_X11]) # to build a hybrid Wayland/X11 library
- BUILD="WAYLANDX11"
- graphics="Wayland or X11 with cairo"
- ])
- AS_IF([$PKGCONFIG --exists 'libdecor-0 >= 0.2.0'],
- [
- libdecor="system"
- plugin_dir="$($PKGCONFIG --variable=libdir libdecor-0)/libdecor/plugins-1"
- CFLAGS="$CFLAGS -DUSE_SYSTEM_LIBDECOR"
- CXXFLAGS="$CXXFLAGS -DUSE_SYSTEM_LIBDECOR"
- CFLAGS="$CFLAGS -DLIBDECOR_PLUGIN_DIR=\\\"$plugin_dir\\\" "
- LIBS="$LIBS $($PKGCONFIG --libs libdecor-0)"
- ],
- [
- libdecor="bundled"
- CFLAGS="$CFLAGS -DUSE_SYSTEM_LIBDECOR=0 -DLIBDECOR_PLUGIN_DIR=\\\"\\\" "
- CXXFLAGS="$CXXFLAGS -DUSE_SYSTEM_LIBDECOR=0"
- ]
- )
- LIBS="$LIBS $($PKGCONFIG --libs wayland-cursor) $($PKGCONFIG --libs wayland-client) $($PKGCONFIG --libs xkbcommon) $($PKGCONFIG --libs pangocairo) "
- AS_IF([test x$enable_x11 != xno], [LIBS="$LIBS $($PKGCONFIG --libs x11)"] )
- LIBS="$LIBS -ldl"
- DSOFLAGS="$LIBS $DSOFLAGS"
- enable_pango=yes
- LIBDECORDIR="libdecor/build"
- AS_IF([$PKGCONFIG --exists dbus-1],
- [LIBDECORDBUS="-DHAS_DBUS $($PKGCONFIG --cflags dbus-1)" LIBS="$LIBS $($PKGCONFIG --libs dbus-1)"]
- )
- LDFLAGS="$LDFLAGS -rdynamic"
-
- AC_SEARCH_LIBS([dlopen], [dl])
-
- AS_IF([test x$enable_gl != xno], [
- AS_IF([$PKGCONFIG --exists gl], [
- AS_IF([$PKGCONFIG --exists egl], [
- AS_IF([$PKGCONFIG --exists wayland-egl], [
- AC_DEFINE([HAVE_GL])
- GLLIBS="$($PKGCONFIG --libs wayland-egl) $($PKGCONFIG --libs egl) $($PKGCONFIG --libs gl) $GLLIBS"
- ])])])
- AS_IF([$PKGCONFIG --exists glu], [
- AC_DEFINE([HAVE_GL_GLU_H])
- GLLIBS="$($PKGCONFIG --libs glu) $GLLIBS"
- ])
- AC_CHECK_LIB([GL], [glXGetProcAddressARB], [AC_DEFINE([HAVE_GLXGETPROCADDRESSARB])
- ],, [-lm])
- ], [
- LINKFLTKGL=""
- GLLIBNAME=""
- GLDSONAME=""
- GLDEMOS=""
- ])
-
- AS_IF([test x$libdecor = xbundled], [
- dnl Check for GTK-3 ...
- gtk_found=no
- CFLAGS="$($PKGCONFIG --cflags gtk+-3.0) $CFLAGS"
- AC_CHECK_HEADERS([gtk/gtk.h], [
- CFLAGS="$CFLAGS -DHAVE_GTK"
- LIBS="$LIBS $($PKGCONFIG --libs gtk+-3.0)"
- gtk_found=yes
- ])
- ])
-
- dnl Check for the Pango library ...
- pango_found=no
- CFLAGS="$($PKGCONFIG --cflags pangocairo) $CFLAGS"
- CXXFLAGS="$($PKGCONFIG --cflags pangocairo) $CXXFLAGS"
- LIBS="$LIBS $($PKGCONFIG --libs pangocairo)"
-
- AC_CHECK_HEADERS([pango/pangocairo.h], [
- AC_DEFINE([USE_PANGO])
- AC_DEFINE([USE_XFT])
- pango_found=yes
- ])
-
- dnl Early abort if Pango could not be found
- AS_IF([test x$pango_found != xyes], [
- AC_MSG_NOTICE([--enable-wayland: Pango libs and/or headers could not be found.])
- AC_MSG_ERROR([Aborting.])
- ])
-
- dnl check for Xinerama, Xcursor, Xfixes, Xrender, Xregion.h
- AS_IF([test x$enable_x11 != xno], [
- xinerama_found=no
- AS_IF([$PKGCONFIG --exists xinerama], [
- AC_DEFINE(HAVE_XINERAMA)
- LIBS="$LIBS $($PKGCONFIG --libs xinerama)"
- xinerama_found=yes
- ])
-
- xcursor_found=no
- AS_IF([$PKGCONFIG --exists xcursor], [
- AC_DEFINE(HAVE_XCURSOR)
- LIBS="$LIBS $($PKGCONFIG --libs xcursor)"
- xcursor_found=yes
- ])
-
- xfixes_found=no
- AS_IF([$PKGCONFIG --exists xfixes], [
- AC_DEFINE(HAVE_XFIXES)
- LIBS="$LIBS $($PKGCONFIG --libs xfixes)"
- xfixes_found=yes
- ])
-
- xrender_found=no
- AS_IF([$PKGCONFIG --exists xrender], [
- AC_DEFINE(HAVE_XRENDER)
- LIBS="$LIBS $($PKGCONFIG --libs xrender)"
- xrender_found=yes
- ])
-
- AC_CHECK_HEADER([X11/Xregion.h], [
- AC_DEFINE([HAVE_X11_XREGION_H])
- ], [], [#include <X11/Xlib.h>])
- ])
-
- ], [
-
- dnl Check for X11...
- AC_PATH_XTRA
-
- AS_IF([test x$no_x = xyes], [
- AC_MSG_ERROR([Configure could not find required X11 libraries, aborting.])
- ])
-
- AS_IF([test "x$X_PRE_LIBS" != x], [
- AC_MSG_WARN([Ignoring libraries "$X_PRE_LIBS" requested by configure.])
- ])
-
- LIBS="$LIBS -lX11 $X_EXTRA_LIBS"
- CFLAGS="$CFLAGS $X_CFLAGS"
- CXXFLAGS="$CXXFLAGS $X_CFLAGS"
- AS_CASE([$host_os], [darwin*], [
- DARWIN_LDFLAGS="$LDFLAGS"
- ])
- LDFLAGS="$X_LIBS $LDFLAGS"
- DSOFLAGS="$X_LIBS $DSOFLAGS"
- AC_DEFINE([FLTK_USE_X11])
- BUILD="X11"
- AS_IF([test "x$x_includes" != x], [
- ac_cpp="$ac_cpp -I$x_includes"
- ])
-
- dnl Check for OpenGL unless disabled...
- GLLIBS=
-
- AS_IF([test x$enable_gl != xno], [
- AC_SEARCH_LIBS([dlopen], [dl])
- AC_CHECK_HEADER([GL/gl.h], [
- AC_CHECK_LIB([GL], [glXMakeCurrent], [
- AC_DEFINE([HAVE_GL])
- GLLIBS="-lGL"
- ], [
- AC_CHECK_LIB([MesaGL], [glXMakeCurrent], [
- AC_DEFINE([HAVE_GL])
- GLLIBS="-lMesaGL"
- ],, [-lm]),
- ], [-lm])
- AC_CHECK_LIB([GL], [glXGetProcAddressARB], [
- AC_DEFINE([HAVE_GLXGETPROCADDRESSARB])
- ],, [-lm])
- ])
- AC_CHECK_HEADER([GL/glu.h], [
- AC_DEFINE([HAVE_GL_GLU_H])
- AS_IF([test x$ac_cv_lib_GL_glXMakeCurrent = xyes], [
- GLLIBS="-lGLU $GLLIBS"
- ])
- AS_IF([test x$ac_cv_lib_MesaGL_glXMakeCurrent = xyes], [
- GLLIBS="-lMesaGLU $GLLIBS"
- ])
- ])
-
- AS_IF([test x$ac_cv_lib_GL_glXMakeCurrent != xyes -a x$ac_cv_lib_MesaGL_glXMakeCurrent != xyes], [
- LINKFLTKGL=""
- GLLIBNAME=""
- GLDSONAME=""
- GLDEMOS=""
- ])
- ], [
- LINKFLTKGL=""
- GLLIBNAME=""
- GLDSONAME=""
- GLDEMOS=""
- ])
-
- xinerama_found=no
- AS_IF([test x$enable_xinerama != xno], [
- AC_CHECK_LIB([Xinerama], [XineramaIsActive], [
- AC_DEFINE([HAVE_XINERAMA])
- LIBS="-lXinerama $LIBS"
- xinerama_found=yes
- ])
- ])
-
- dnl Check for the Xft library unless disabled...
- xft_found=no
- AS_IF([test x$enable_xft != xno -a x$enable_wayland = xno], [
- # Try pkg-config first (freetype2 deprecated freetype-config from some version on)
- FT_FLAGS=""
- AS_IF([test "x$PKGCONFIG" != x], [
- FT_FLAGS="$($PKGCONFIG --cflags xft)"
- AS_IF([test "x$FT_FLAGS" = x], [
- FT_FLAGS="$($PKGCONFIG --cflags freetype2)"
- ])
- ])
-
- # if that failed, try freetype-config
- AS_IF([test "x$FT_FLAGS" = x], [
- AC_PATH_PROG([FTCONFIG], [freetype-config])
- AS_IF([test "x$FTCONFIG" != x], [
- FT_FLAGS="$($FTCONFIG --cflags)"
- ], [
- # abort if both methods failed
- AC_MSG_NOTICE([please install pkg-config or use 'configure --disable-xft'.])
- AC_MSG_ERROR([Aborting.])
- ])
- ])
- CPPFLAGS="$FT_FLAGS $CPPFLAGS"
- CXXFLAGS="$FT_FLAGS $CXXFLAGS"
- CFLAGS="$FT_FLAGS $CFLAGS"
-
- AC_CHECK_LIB([fontconfig], [FcPatternCreate])
- AC_CHECK_HEADER([X11/Xft/Xft.h], [
- AC_CHECK_LIB([Xft], [XftDrawCreate], [
- AC_DEFINE([USE_XFT])
- LIBS="-lXft $LIBS"
- BUILD="XFT"
- xft_found=yes
- ])
- ])
- ])
-
- dnl Issue a warning message if Xft was not found, abort configure
- dnl if Xft was requested explicitly (but not found)
- AS_IF([test x$enable_xft != xno -a x$xft_found != xyes], [
- AC_MSG_WARN([could not find the required Xft headers and/or libraries.])
- AC_MSG_NOTICE([please install Xft headers and libraries or use 'configure --disable-xft'.])
- AS_IF([test x$enable_xft = xyes], [
- AC_MSG_ERROR([Aborting.])
- ])
- ])
-
- dnl Option usecairo
- AS_IF([test x$enable_usecairo = xyes], [
- enable_pango=yes
- BUILD="CAIRO"
- AC_DEFINE([FLTK_USE_CAIRO])
- AC_MSG_NOTICE([Processing usecairo option])
- ]
- )
-
- dnl test if Pango is asked but xft was not found
- AS_IF([test x$enable_pango = xyes -a x$xft_found = xno], [
- AC_MSG_WARN([could not find the Xft headers and/or libraries required for Pango.])
- AC_MSG_NOTICE([please install Xft headers and libraries or don't use configure with '--enable-pango'.])
- AC_MSG_ERROR([Aborting.])
- ])
-
- dnl Check for the Pango library unless disabled...
- pango_found=no
- AS_IF([test x$enable_pango = xyes], [
- AS_IF([test x$PKGCONFIG != x], [
- dnl pkg-config is available, use it...
- dnl AC_MSG_NOTICE([--enable-pango: using pkg-config ...])
- CXXFLAGS="$($PKGCONFIG --cflags pangocairo) $CXXFLAGS"
- AS_CASE([$host_os], [darwin*], [], [*], [
- CXXFLAGS="$($PKGCONFIG --cflags pangoxft) $CXXFLAGS"
- ])
- AS_CASE([$host_os], [darwin*], [
- DARWIN_SAVE_LIBS=$LIBS
- DARWIN_PANGO_LIBS="$($PKGCONFIG --libs pangocairo)"
- LIBS="$($PKGCONFIG --libs pangocairo) $LIBS"
- ], [*], [
- LIBS="$($PKGCONFIG --libs pangocairo --libs pangoxft) $LIBS"
- ])
- ], [
- dnl pkg-config is not available, issue warning and continue...
- AC_MSG_WARN([--enable-pango: please install pkg-config. Continuing anyway.])
- ])
-
- CPPFLAGS="$CXXFLAGS"
- AS_CASE([$host_os], [darwin*],
- [AC_CHECK_HEADERS([pango/pango.h], [
- AC_CHECK_LIB([pango-1.0], [pango_layout_new], [
- AC_DEFINE([USE_PANGO])
- pango_found=yes
- LIBS=$DARWIN_SAVE_LIBS
- ])
- ])
- ],[*], [
- AC_CHECK_HEADERS([pango/pango.h pango/pangoxft.h], [
- AC_CHECK_LIB([pango-1.0], [pango_layout_new], [
- AC_CHECK_LIB([pangoxft-1.0], [pango_xft_render_layout], [
- AC_DEFINE([USE_PANGO])
- pango_found=yes
- ])
- ])
- ])
- ])
-
- dnl Early abort if --enable-pango was requested but Pango could not be found
- AS_IF([test x$pango_found != xyes], [
- AC_MSG_NOTICE([--enable-pango: Pango libs and/or headers could not be found.])
- AC_MSG_ERROR([Aborting.])
- ])
- ])
-
- dnl Check for the Xfixes extension unless disabled...
- xfixes_found=no
- AS_IF([test x$enable_xfixes != xno], [
- AC_CHECK_HEADER([X11/extensions/Xfixes.h], [
- AC_CHECK_LIB([Xfixes], [XFixesQueryExtension], [
- AC_DEFINE([HAVE_XFIXES])
- LIBS="-lXfixes $LIBS"
- xfixes_found=yes
- ])
- ], [], [#include <X11/Xlib.h>])
- ])
-
- dnl Check for the Xcursor library unless disabled...
- xcursor_found=no
- AS_IF([test x$enable_xcursor != xno], [
- AC_CHECK_HEADER([X11/Xcursor/Xcursor.h], [
- AC_CHECK_LIB([Xcursor], [XcursorImageCreate], [
- AC_DEFINE([HAVE_XCURSOR])
- LIBS="-lXcursor $LIBS"
- xcursor_found=yes
- ])
- ], [], [#include <X11/Xlib.h>])
- ])
-
- dnl Check for the Xrender library unless disabled...
- xrender_found=no
- AS_IF([test x$enable_xrender != xno], [
- AC_CHECK_HEADER([X11/extensions/Xrender.h], [
- AC_CHECK_LIB([Xrender], [XRenderQueryVersion], [
- AC_DEFINE([HAVE_XRENDER])
- LIBS="-lXrender $LIBS"
- xrender_found=yes
- ])
- ], [], [#include <X11/Xlib.h>])
- ])
-
- AS_CASE([$host_os], [darwin*], [
- AS_IF([test x$pango_found = xyes], [
- #place X_LIBS after homebrew's pango libs
- LIBS="$DARWIN_PANGO_LIBS $X_LIBS $LIBS"
- #remove X_LIBS from LDFLAGS while keeping its initial content
- LDFLAGS="$DARWIN_LDFLAGS"
- ])
- ])
-
- dnl Check for the X11/Xregion.h header file...
- AC_CHECK_HEADER([X11/Xregion.h], [
- AC_DEFINE([HAVE_X11_XREGION_H])
- ], [], [#include <X11/Xlib.h>])
-
- ])
-
- # Make symlinks since UNIX/Linux is case sensitive,
- # but Cygwin in general not.
- AS_CASE([$host_os], [cygwin*], [
- HLINKS="#"
- ])
-
- # Make symlinks since UNIX/Linux is case sensitive,
- # but only if explicitly configured (default=no)
- AS_IF([test "x$with_links" != xyes], [
- HLINKS="#"
- ])
-
- # Install/Uninstall FLUID application support files
- INSTALL_DESKTOP="install-linux"
- UNINSTALL_DESKTOP="uninstall-linux"
-])
-
-dnl End of platform specific Processing
-
-AC_SUBST([GLDEMOS])
-AC_SUBST([GLLIBS])
-AC_SUBST([HLINKS])
-AC_SUBST([OSX_ONLY])
-AC_SUBST([THREADS])
-
-AC_SUBST([FLUIDDIR])
-
-AC_SUBST([LIBDECORDIR])
-AC_SUBST([LIBDECORDBUS])
-
-AC_SUBST([INSTALL_DESKTOP])
-AC_SUBST([UNINSTALL_DESKTOP])
-
-AC_SUBST([BUILD])
-
-dnl Figure out the appropriate formatted man page extension...
-AS_CASE(["$host_os"], [*bsd* | darwin*], [
- # *BSD
- CAT1EXT=0
- CAT3EXT=0
- CAT6EXT=0
-], [irix*], [
- # SGI IRIX
- CAT1EXT=z
- CAT3EXT=z
- CAT6EXT=z
-], [*], [
- # All others
- CAT1EXT=1
- CAT3EXT=3
- CAT6EXT=6
-])
-
-AC_SUBST([CAT1EXT])
-AC_SUBST([CAT3EXT])
-AC_SUBST([CAT6EXT])
-
-dnl Fix "mandir" variable...
-AS_IF([test "$mandir" = "\${prefix}/man" -a "$prefix" = "/usr"], [
- AS_CASE(["$host_os"], [*bsd* | darwin* | linux*], [
- # *BSD, Darwin, and Linux
- mandir="\${prefix}/share/man"
- ], [irix*], [
- # SGI IRIX
- mandir="\${prefix}/share/catman"
- ])
-])
-
-dnl Fix "libdir" variable...
-AS_IF([test "$prefix" = NONE], [
- prefix=/usr/local
-])
-
-AS_IF([test "$exec_prefix" = NONE], [
- exec_prefix="\${prefix}"
-])
-
-AS_CASE([$host_os], [irix[1-5]*], [
-], [irix*], [
- AS_IF([test "$libdir" = "\${exec_prefix}/lib" -a "$exec_prefix" = "\${prefix}" -a "$prefix" = "/usr"], [
- libdir="/usr/lib32"
- ])
-])
-
-dnl Define the command used to update the dependencies (this option
-dnl mainly for FLTK core developers - not necessary for users)
-MAKEDEPEND="\$(CXX) -M"
-AC_SUBST([MAKEDEPEND])
-
-dnl Add warnings to compiler switches:
-dnl do this last so messing with switches does not break tests
-
-AS_IF([test -n "$GCC"], [
- # Show all standard warnings + unused variables, conversion errors,
- # and inlining problems when compiling...
- OPTIM="-Wall -Wunused -Wno-format-y2k $OPTIM"
-
- # The following additional warnings are useful for tracking down problems...
- #OPTIM="-Wshadow -Wconversion $OPTIM"
-
- # We know that Carbon is deprecated on OS X 10.4. To avoid hundreds of warnings
- # we will temporarily disable 'deprecated' warnings on OS X.
- AS_CASE([$host_os], [darwin[1-7]], [
- ], [darwin*], [
- OPTIM="-Wno-deprecated-declarations $OPTIM"
- ])
-
- # Set the default compiler optimizations...
- AS_IF([test -z "$DEBUGFLAG"], [
- #
- # Note: Can't use -fomit-frame-pointer - prevents tools like
- # libsafe from working!
- #
- # Don't use -fforce-mem, -fforce-addr, or -fcaller-saves.
- # They all seem to make either no difference or enlarge
- # the code by a few hundred bytes.
- #
- # "-Os" seems to be the best compromise between speed and
- # code size. "-O3" and higher seem to make no effective
- # difference in the speed of the code, but does bloat the
- # library 10+%.
- #
-
- AS_IF([test "x$with_optim" != x], [
- OPTIM="$with_optim $OPTIM"
- ], [
- OPTIM="-Os $OPTIM"
- ])
- ])
-
- # Generate position-independent code when needed...
- AS_IF([test $PICFLAG = 1], [
- OPTIM="$OPTIM -fPIC"
- ])
-
- # See if GCC supports -fno-exceptions...
- AC_MSG_CHECKING([if GCC supports -fno-exceptions])
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -fno-exceptions"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [OPTIM="$OPTIM -fno-exceptions"
- AC_MSG_RESULT(yes)],
- [AC_MSG_RESULT(no)])
- CFLAGS="$OLDCFLAGS"
-
- # See if GCC supports -fno-strict-aliasing...
- AC_MSG_CHECKING([if GCC supports -fno-strict-aliasing])
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -fno-strict-aliasing"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [OPTIM="$OPTIM -fno-strict-aliasing"
- AC_MSG_RESULT(yes)],
- [AC_MSG_RESULT(no)])
- CFLAGS="$OLDCFLAGS"
-
- dnl Make sure that shared libraries don't have undefined references
- # See if ld supports -no-undefined...
- AC_MSG_CHECKING([if ld supports -no-undefined])
- OLDLDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS -Wl,-no-undefined"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [DSOFLAGS="$DSOFLAGS -Wl,-no-undefined"
- AC_MSG_RESULT(yes)],
- [AC_MSG_RESULT(no)])
- LDFLAGS="$OLDLDFLAGS"
-
- # See if ld supports -Bsymbolic-functions...
- AC_MSG_CHECKING([if ld supports -Bsymbolic-functions])
- OLDLDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS -Wl,-Bsymbolic-functions"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [DSOFLAGS="$DSOFLAGS -Wl,-Bsymbolic-functions"
- AC_MSG_RESULT(yes)],
- [AC_MSG_RESULT(no)])
- LDFLAGS="$OLDLDFLAGS"
-
- # See if toolchain supports a sectioned build...
- AC_MSG_CHECKING([if toolchain supports sections])
- OLDLDFLAGS="$LDFLAGS"
- OLDCFLAGS="$CFLAGS"
- LDFLAGS="$LDFLAGS -Wl,-gc-sections"
- CFLAGS="$CFLAGS -ffunction-sections -fdata-sections"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [DSOFLAGS="$DSOFLAGS -Wl,-gc-sections"
- OPTIM="$OPTIM -ffunction-sections -fdata-sections"
- AC_MSG_RESULT(yes)],
- [AC_MSG_RESULT(no)])
- LDFLAGS="$OLDLDFLAGS"
- CFLAGS="$OLDCFLAGS"
-
- # See if we are running Solaris; if so, try the -fpermissive option...
- # This option is required on some versions of Solaris to work around
- # bugs in the X headers up through Solaris 7.
- #
- # Unlike the other compiler/optimization settings, this one is placed
- # in CFLAGS and CXXFLAGS so that fltk-config will provide the option
- # to clients - otherwise client apps will not compile properly...
- AS_CASE([$host_os], [solaris*], [
- AC_MSG_CHECKING([if GCC supports -fpermissive])
-
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -fpermissive"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[]], [[]])],
- [CXXFLAGS="$CXXFLAGS -fpermissive"
- AC_MSG_RESULT(yes)],
- [CFLAGS="$OLDCFLAGS"
- AC_MSG_RESULT(no)])
- ])
-], [
- AS_CASE(["$host_os"], [irix*], [
- # Running some flavor of IRIX; see which version and
- # set things up according...
- AS_IF([test "$uversion" -ge 62], [
- # We are running IRIX 6.2 or higher; uncomment the following
- # lines if you don't have IDO 7.2 or higher:
- #
- # CXX="CC -n32 -mips3"
- # CC="cc -n32 -mips3"
- # LD="ld -n32 -mips3"
- # MAKEDEPEND="CC -M"
-
- AS_IF([test "x`grep abi=n32 /etc/compiler.defaults`" = x], [
- AC_MSG_WARN([FOR BEST RESULTS BEFORE COMPILING: setenv SGI_ABI "-n32 -mips3"])
- ])
-
- OPTIM="-fullwarn $OPTIM"
- ])
-
- AS_IF([test -z "$DEBUGFLAG"], [
- AS_IF([test "x$with_optim" != x], [
- OPTIM="$with_optim $OPTIM"
- ], [
- OPTIM="-O2 $OPTIM"
- AS_IF([test $uversion -gt 62], [
- OPTIM="-OPT:Olimit=4000 $OPTIM"
- ])
- ])
- ])
- ], [hpux*], [
- # Running HP-UX; these options should work for the HP compilers.
- AS_IF([test -z "$DEBUGFLAG"], [
- AS_IF([test "x$with_optim" != x], [
- OPTIM="$with_optim $OPTIM"
- ], [
- OPTIM="+O2 $OPTIM"
- ])
- ])
-
- AS_IF([test $PICFLAG = 1], [
- OPTIM="+z $OPTIM"
- ])
-
- CXXFLAGS="$CXXFLAGS +W336,501,736,740,749,829"
- ], [OSF1*], [
- # Running Digital/Tru64 UNIX; these options should work for the
- # Digital/Compaq/NewHP compilers.
- AS_IF([test -z "$DEBUGFLAG"], [
- AS_IF([test "x$with_optim" != x], [
- OPTIM="$with_optim $OPTIM"
- ], [
- OPTIM="-O2 $OPTIM"
- ])
- ])
- ], [solaris*], [
- # Solaris
- AS_IF([test -z "$DEBUGFLAG"], [
- AS_IF([test "x$with_optim" != x], [
- OPTIM="$with_optim $OPTIM"
- ], [
- OPTIM="-xO3 $OPTIM"
- ])
- ])
-
- AS_IF([test $PICFLAG = 1], [
- OPTIM="-KPIC $OPTIM"
- ])
- ], [aix*], [
- AS_IF([test -z "$DEBUGFLAG"], [
- AS_IF([test "x$with_optim" != x], [
- OPTIM="$with_optim $OPTIM"
- ], [
- OPTIM="-O2 $OPTIM"
- ])
- ])
-
- AC_MSG_WARN([The AIX C and C++ compilers are known not to correctly compile the FLTK library.])
- ], [*], [
- # Running some other operating system; inform the user they
- # should contribute the necessary options via the STR form..
- AC_MSG_WARN([Building FLTK with default compiler optimizations])
- AC_MSG_WARN([Send the FLTK developers your uname and compiler options via https://www.fltk.org/bugs.php])
- ])
-])
-
-OPTIM="$DEBUGFLAG $OPTIM"
-
-dnl Take archflags away from CFLAGS (makefiles use ARCHFLAGS explicitly)
-AS_CASE([$host_os], [darwin*], [
- AS_IF([test "x$with_archflags" != x], [
- CFLAGS="$(echo $CFLAGS | sed -e 's/$with_archflags//g')"
- ])
-])
-
-dnl Define the FLTK documentation directory...
-AS_CASE([$host_os], [mingw*], [
- # Determine the path where MSys has /usr installed
- msyspath="$(mount | grep '/usr ' | cut -d ' ' -f -1 | sed -e's,\\,/, g')"
-
- # Then substitute that in the Windows path instead of /usr
- AC_DEFINE_UNQUOTED([FLTK_DOCDIR], "$msyspath/local/share/doc/fltk")
-], [*], [
- AS_IF([test x$prefix = xNONE], [
- AC_DEFINE_UNQUOTED([FLTK_DOCDIR], "/usr/local/share/doc/fltk")
- ], [
- AC_DEFINE_UNQUOTED([FLTK_DOCDIR], "$prefix/share/doc/fltk")
- ])
-])
-
-dnl Define the FLTK data directory...
-AS_IF([test x$prefix = xNONE], [
- AC_DEFINE_UNQUOTED([FLTK_DATADIR], "/usr/local/share/fltk")
-], [
- AC_DEFINE_UNQUOTED([FLTK_DATADIR], "$prefix/share/fltk")
-])
-
-
-dnl Summarize results of configure tests...
-echo ""
-echo "Configuration Summary"
-echo "-------------------------------------------------------------------------"
-
-AS_CASE([$host_os_gui], [cygwin* | mingw*], [
- AS_IF([test x$gdiplus_found = xyes], [graphics="GDI+"], [graphics="GDI"])
-], [darwin*], [
- graphics="Quartz"
-], [*], [
- AS_IF([test x$enable_wayland = xno], [
- graphics="X11"
- ])
- AS_IF([test x$xft_found = xyes], [
- graphics="$graphics + Xft"
- ])
- AS_IF([test x$xfixes_found = xyes], [
- graphics="$graphics + Xfixes"
- ])
- AS_IF([test x$xinerama_found = xyes], [
- graphics="$graphics + Xinerama"
- ])
- AS_IF([test x$xcursor_found = xyes], [
- graphics="$graphics + Xcursor"
- ])
- AS_IF([test x$xrender_found = xyes], [
- graphics="$graphics + Xrender"
- ])
- AS_IF([test x$enable_usecairo = xyes], [
- graphics="$graphics + Cairo"
- ])
- AS_IF([test x$pango_found = xyes], [
- graphics="$graphics + Pango"
- ])
-])
-
-echo " Directories: prefix=$prefix"
-echo " bindir=$bindir"
-echo " datadir=$datadir"
-echo " datarootdir=$datarootdir"
-echo " exec_prefix=$exec_prefix"
-echo " includedir=$includedir"
-echo " libdir=$libdir"
-echo " mandir=$mandir"
-AS_CASE([$host_os], [mingw*], [
- echo " MSys docpath=$msyspath/local/share/doc/fltk"
-])
-
-AS_IF([test x$enable_fluid != xno], [
- echo " Build fluid: YES"
- ],[
- echo " Build fluid: NO"
- ])
-
-AS_IF([test x$enable_test != xno], [
- echo " Build tests: YES"
- ],[
- echo " Build tests: NO"
- ])
-
-AS_IF([test "$fltk_cross_compiling" = "yes"], [
- echo "Cross-compiling: YES"
- echo " Build: $build -> Host: $host"
-], [
- echo "Cross-compiling: NO"
-])
-
-echo " Graphics: $graphics"
-dnl
-AS_IF([test x$JPEG = x], [
- echo "Image Libraries: JPEG=System"
-], [
- echo "Image Libraries: JPEG=Builtin"
-])
-AS_IF([test x$PNG = x], [
- echo " PNG=System"
-], [
- echo " PNG=Builtin"
-])
-AS_IF([test x$ZLIB = x], [
- echo " ZLIB=System"
-], [
- echo " ZLIB=Builtin"
-])
-
-AS_IF([test x$build_forms = xyes], [
- echo "Forms library: YES"
-], [
- echo "Forms library: NO"
-])
-
-AS_IF([test x$enable_cairo = xyes], [
- echo " CAIRO=lib"
-])
-AS_IF([test x$enable_cairoext = xyes], [
- echo " CAIRO=internal_use"
-])
-
-AS_IF([test x$enable_largefile != xno], [
- echo " Large Files: YES"
-], [
- echo " Large Files: NO"
-])
-
-AS_IF([test x$GLDEMOS = x], [
- echo " OpenGL: NO"
-], [
- echo " OpenGL: YES"
-])
-
-AS_IF([test x$THREADS = x], [
- echo " Threads: NO"
-], [
- echo " Threads: YES"
-])
-
-AS_IF([test x$enable_use_std != xyes], [
- echo " Allow std:: : NO"
-], [
- echo " Allow std:: : YES"
-])
-
-dnl Set empty BINARY_DIR variable for fltk-config.in (CMake compatibility)
-BINARY_DIR=
-AC_SUBST([BINARY_DIR])
-
-dnl Write all of the files...
-AC_CONFIG_HEADERS([config.h:configh.in])
-AC_CONFIG_HEADERS([FL/fl_config.h:fl_config.in])
-AC_CONFIG_FILES([makeinclude fltk.list fltk-config fltk.spec FL/Makefile])
-AC_OUTPUT
-
-dnl Make sure the fltk-config script is executable...
-chmod +x fltk-config
-
-echo ""
-echo "-------------------------------------------------------------------------"
-echo " IMPORTANT NOTE:"
-echo "-------------------------------------------------------------------------"
-echo ""
-echo " FLTK 1.4.x will be the last version(s) of FLTK supporting"
-echo " autotools (configure + provided Makefiles) to build FLTK."
-echo " FLTK 1.5.0 and higher will only support FLTK builds using CMake."
-echo ""
-echo " We suggest to explore and use the CMake build system generators"
-echo " for your own FLTK builds as soon as possible. Some new FLTK build"
-echo " options will only be supported by CMake based builds."
-echo " Please see README.CMake.txt for details and instructions."
-echo ""
-echo " User projects that use CMake for their own build can benefit"
-echo " substantially if the FLTK library has been built using CMake."
-echo ""
-echo "-------------------------------------------------------------------------"
-echo ""