2002-10-18 21:18:33 +04:00
|
|
|
#!/bin/sh
|
2001-09-29 19:57:32 +04:00
|
|
|
#
|
|
|
|
# FLTK configuration utility.
|
|
|
|
#
|
2016-01-31 07:33:54 +03:00
|
|
|
# Copyright 2000-2016 by Bill Spitzak and others.
|
2001-09-29 19:57:32 +04:00
|
|
|
# Original version Copyright 2000 by James Dean Palmer
|
|
|
|
# Adapted by Vincent Penne and Michael Sweet
|
|
|
|
#
|
2011-07-19 08:49:30 +04:00
|
|
|
# This library is free software. Distribution and use rights are outlined in
|
|
|
|
# the file "COPYING" which should have been included with this file. If this
|
|
|
|
# file is missing or damaged, see the license at:
|
|
|
|
#
|
2020-07-01 19:03:10 +03:00
|
|
|
# https://www.fltk.org/COPYING.php
|
2001-09-29 19:57:32 +04:00
|
|
|
#
|
2020-07-01 19:03:10 +03:00
|
|
|
# Please see the following page on how to report bugs and issues:
|
2005-04-16 04:13:17 +04:00
|
|
|
#
|
2020-07-01 19:03:10 +03:00
|
|
|
# https://www.fltk.org/bugs.php
|
2001-09-29 19:57:32 +04:00
|
|
|
#
|
|
|
|
|
2020-06-13 16:19:27 +03:00
|
|
|
MAJOR_VERSION=@FLTK_VERSION_MAJOR@
|
|
|
|
MINOR_VERSION=@FLTK_VERSION_MINOR@
|
|
|
|
PATCH_VERSION=@FLTK_VERSION_PATCH@
|
2001-09-29 19:57:32 +04:00
|
|
|
VERSION="$MAJOR_VERSION.$MINOR_VERSION.$PATCH_VERSION"
|
2001-09-29 19:57:32 +04:00
|
|
|
APIVERSION="$MAJOR_VERSION.$MINOR_VERSION"
|
2001-09-29 19:57:32 +04:00
|
|
|
|
|
|
|
### BEGIN fltk-config
|
2008-08-27 01:07:32 +04:00
|
|
|
selfdir=`dirname "$0"`
|
2001-09-29 19:57:32 +04:00
|
|
|
|
2001-09-29 19:57:32 +04:00
|
|
|
prefix=@prefix@
|
2001-09-29 19:57:32 +04:00
|
|
|
exec_prefix=@exec_prefix@
|
|
|
|
exec_prefix_set=no
|
|
|
|
includedir=@includedir@
|
|
|
|
libdir=@libdir@
|
|
|
|
srcdir=@srcdir@
|
|
|
|
|
2015-07-13 01:32:30 +03:00
|
|
|
# BINARY_DIR - used only for CMake builds in local (binary) directory
|
|
|
|
BINARY_DIR=@BINARY_DIR@
|
|
|
|
|
2001-09-29 19:57:32 +04:00
|
|
|
# compiler names
|
2005-08-10 16:35:20 +04:00
|
|
|
CC="@CC@"
|
2005-08-10 17:54:17 +04:00
|
|
|
CXX="@CXX@"
|
2001-09-29 19:57:32 +04:00
|
|
|
|
|
|
|
# flags for C++ compiler:
|
2006-06-19 22:29:31 +04:00
|
|
|
ARCHFLAGS="@ARCHFLAGS@"
|
2007-02-05 21:39:27 +03:00
|
|
|
CFLAGS="@CFLAGS@ @LARGEFILE@ @PTHREAD_FLAGS@"
|
|
|
|
CXXFLAGS="@CXXFLAGS@ @LARGEFILE@ @PTHREAD_FLAGS@"
|
2001-09-29 19:57:32 +04:00
|
|
|
LDFLAGS="@LDFLAGS@"
|
2003-03-26 03:47:14 +03:00
|
|
|
LDLIBS="@LIBS@"
|
2007-03-06 23:00:04 +03:00
|
|
|
OPTIM="@OPTIM@"
|
Cairo increment 2: Finer cairo granularity, less deps, new fltk_cairo lib
+ added new USE_CAIRO config preprocessor def.
to differentiate from HAVE_CAIRO so that we can use the cairo lib
without forcing the full fltk lib to be linked against it.
In that case, cairo autolink context functionality which needs fltk lib
instrumentation is disabled.
+ added new --enable-cairoext, which correspond to previous --enable-cairo.
now, --enable-cairo only adds HAVE_CAIRO def. and keeps fltk lib
from referencing cairo.
In both cases (--enable-cairo & --enable-cairoext), a new fltk_cairo lib is
created. This lib, similarly to local versions of png,jpeg and zlib,
is not generated if cairo is not enabled.
+ added cairo to fltk-config : now new --use-cairo flag is available
+ modified all unix like makefiles to now generate minimum cairo deps and also
new libfltk_cairo lib.
+ added new cairo subdir to permit conditional fltk_cairo lib generation.
+ vc2005 project minimum update to compile without be broken, but still needs
to create a similar fltk_cairo independent lib. For now, it works as before
with a dedicated cairo env. similar to --enable-cairoext context in unix.
+ regression tested ok with cairo disabled on win32, mac osx, mingw.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 05:42:35 +04:00
|
|
|
CAIROFLAGS="@CAIROFLAGS@"
|
2001-09-29 19:57:32 +04:00
|
|
|
|
2022-01-17 02:22:16 +03:00
|
|
|
# Config
|
2022-01-23 14:10:13 +03:00
|
|
|
if ( ( test -f "$includedir/FL/fl_config.h" && \
|
|
|
|
grep -q '^#define FLTK_HAVE_CAIRO 1' "$includedir/FL/fl_config.h" ) \
|
|
|
|
|| \
|
|
|
|
( test -f "$selfdir/FL/fl_config.h" && \
|
|
|
|
grep -q '^#define FLTK_HAVE_CAIRO 1' "$selfdir/FL/fl_config.h" ) ) ; then
|
2022-01-17 02:22:16 +03:00
|
|
|
FLTK_HAVE_CAIRO=1
|
|
|
|
else
|
|
|
|
FLTK_HAVE_CAIRO=0
|
|
|
|
fi
|
|
|
|
|
2005-05-12 21:27:59 +04:00
|
|
|
# Check for local invocation, and update paths accordingly...
|
2005-06-25 00:17:53 +04:00
|
|
|
if test -f "$selfdir/FL/Fl_Window.H"; then
|
2005-05-12 21:27:59 +04:00
|
|
|
includedir="$selfdir"
|
|
|
|
libdir="$selfdir/lib"
|
|
|
|
|
2005-06-25 00:17:53 +04:00
|
|
|
if test -f "$libdir/libfltk_jpeg.a"; then
|
2005-05-12 21:27:59 +04:00
|
|
|
CFLAGS="-I$includedir/jpeg $CFLAGS"
|
|
|
|
CXXFLAGS="-I$includedir/jpeg $CXXFLAGS"
|
|
|
|
fi
|
|
|
|
|
2005-06-25 00:17:53 +04:00
|
|
|
if test -f "$libdir/libfltk_z.a"; then
|
2005-05-12 21:27:59 +04:00
|
|
|
CFLAGS="-I$includedir/zlib $CFLAGS"
|
|
|
|
CXXFLAGS="-I$includedir/zlib $CXXFLAGS"
|
|
|
|
fi
|
|
|
|
|
2005-06-25 00:17:53 +04:00
|
|
|
if test -f "$libdir/libfltk_png.a"; then
|
2005-05-12 21:27:59 +04:00
|
|
|
CFLAGS="-I$includedir/png $CFLAGS"
|
|
|
|
CXXFLAGS="-I$includedir/png $CXXFLAGS"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2004-09-06 15:20:53 +04:00
|
|
|
if test -d $includedir/FL/images; then
|
|
|
|
CFLAGS="-I$includedir/FL/images $CFLAGS"
|
|
|
|
CXXFLAGS="-I$includedir/FL/images $CXXFLAGS"
|
|
|
|
fi
|
|
|
|
|
2022-01-17 02:22:16 +03:00
|
|
|
if [ $FLTK_HAVE_CAIRO = 1 ]; then
|
Cairo increment 2: Finer cairo granularity, less deps, new fltk_cairo lib
+ added new USE_CAIRO config preprocessor def.
to differentiate from HAVE_CAIRO so that we can use the cairo lib
without forcing the full fltk lib to be linked against it.
In that case, cairo autolink context functionality which needs fltk lib
instrumentation is disabled.
+ added new --enable-cairoext, which correspond to previous --enable-cairo.
now, --enable-cairo only adds HAVE_CAIRO def. and keeps fltk lib
from referencing cairo.
In both cases (--enable-cairo & --enable-cairoext), a new fltk_cairo lib is
created. This lib, similarly to local versions of png,jpeg and zlib,
is not generated if cairo is not enabled.
+ added cairo to fltk-config : now new --use-cairo flag is available
+ modified all unix like makefiles to now generate minimum cairo deps and also
new libfltk_cairo lib.
+ added new cairo subdir to permit conditional fltk_cairo lib generation.
+ vc2005 project minimum update to compile without be broken, but still needs
to create a similar fltk_cairo independent lib. For now, it works as before
with a dedicated cairo env. similar to --enable-cairoext context in unix.
+ regression tested ok with cairo disabled on win32, mac osx, mingw.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 05:42:35 +04:00
|
|
|
CFLAGS="$CAIROFLAGS $CFLAGS"
|
|
|
|
CXXFLAGS="$CAIROFLAGS $CXXFLAGS"
|
|
|
|
fi
|
|
|
|
|
2001-12-14 22:34:30 +03:00
|
|
|
# libraries to link with:
|
2001-09-29 19:57:32 +04:00
|
|
|
LIBNAME="@LIBNAME@"
|
2001-09-29 19:57:32 +04:00
|
|
|
DSONAME="@DSONAME@"
|
|
|
|
DSOLINK="@DSOLINK@"
|
2004-07-29 22:13:11 +04:00
|
|
|
IMAGELIBS="@IMAGELIBS@"
|
2008-12-29 20:10:12 +03:00
|
|
|
STATICIMAGELIBS="@STATICIMAGELIBS@"
|
Cairo increment 2: Finer cairo granularity, less deps, new fltk_cairo lib
+ added new USE_CAIRO config preprocessor def.
to differentiate from HAVE_CAIRO so that we can use the cairo lib
without forcing the full fltk lib to be linked against it.
In that case, cairo autolink context functionality which needs fltk lib
instrumentation is disabled.
+ added new --enable-cairoext, which correspond to previous --enable-cairo.
now, --enable-cairo only adds HAVE_CAIRO def. and keeps fltk lib
from referencing cairo.
In both cases (--enable-cairo & --enable-cairoext), a new fltk_cairo lib is
created. This lib, similarly to local versions of png,jpeg and zlib,
is not generated if cairo is not enabled.
+ added cairo to fltk-config : now new --use-cairo flag is available
+ modified all unix like makefiles to now generate minimum cairo deps and also
new libfltk_cairo lib.
+ added new cairo subdir to permit conditional fltk_cairo lib generation.
+ vc2005 project minimum update to compile without be broken, but still needs
to create a similar fltk_cairo independent lib. For now, it works as before
with a dedicated cairo env. similar to --enable-cairoext context in unix.
+ regression tested ok with cairo disabled on win32, mac osx, mingw.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 05:42:35 +04:00
|
|
|
CAIROLIBS="@CAIROLIBS@"
|
2002-07-14 21:03:31 +04:00
|
|
|
SHAREDSUFFIX="@SHAREDSUFFIX@"
|
2001-09-29 19:57:32 +04:00
|
|
|
|
|
|
|
usage ()
|
|
|
|
{
|
|
|
|
echo "Usage: fltk-config [OPTIONS]
|
|
|
|
Options:
|
|
|
|
[--version]
|
2001-09-29 19:57:32 +04:00
|
|
|
[--api-version]
|
2001-09-29 19:57:32 +04:00
|
|
|
|
2001-11-28 01:03:29 +03:00
|
|
|
Options telling what we are doing:
|
2001-09-29 19:57:32 +04:00
|
|
|
[--use-gl] use GL
|
2001-09-29 19:57:32 +04:00
|
|
|
[--use-images] use extra image formats (PNG, JPEG)
|
2001-09-29 19:57:32 +04:00
|
|
|
[--use-glut] use glut compatibility layer
|
2002-03-26 00:39:01 +03:00
|
|
|
[--use-forms] use forms compatibility layer
|
Cairo increment 2: Finer cairo granularity, less deps, new fltk_cairo lib
+ added new USE_CAIRO config preprocessor def.
to differentiate from HAVE_CAIRO so that we can use the cairo lib
without forcing the full fltk lib to be linked against it.
In that case, cairo autolink context functionality which needs fltk lib
instrumentation is disabled.
+ added new --enable-cairoext, which correspond to previous --enable-cairo.
now, --enable-cairo only adds HAVE_CAIRO def. and keeps fltk lib
from referencing cairo.
In both cases (--enable-cairo & --enable-cairoext), a new fltk_cairo lib is
created. This lib, similarly to local versions of png,jpeg and zlib,
is not generated if cairo is not enabled.
+ added cairo to fltk-config : now new --use-cairo flag is available
+ modified all unix like makefiles to now generate minimum cairo deps and also
new libfltk_cairo lib.
+ added new cairo subdir to permit conditional fltk_cairo lib generation.
+ vc2005 project minimum update to compile without be broken, but still needs
to create a similar fltk_cairo independent lib. For now, it works as before
with a dedicated cairo env. similar to --enable-cairoext context in unix.
+ regression tested ok with cairo disabled on win32, mac osx, mingw.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 05:42:35 +04:00
|
|
|
[--use-cairo] use cairo graphics lib
|
2001-09-29 19:57:32 +04:00
|
|
|
|
2001-11-28 01:03:29 +03:00
|
|
|
Options telling what information we request:
|
2005-08-10 17:54:17 +04:00
|
|
|
[--cc] return C compiler used to compile FLTK
|
|
|
|
[--cxx] return C++ compiler used to compile FLTK
|
2007-03-06 23:00:04 +03:00
|
|
|
[--optim] return compiler optimization used to compile FLTK
|
2001-09-29 19:57:32 +04:00
|
|
|
[--cflags] return flags to compile C using FLTK
|
|
|
|
[--cxxflags] return flags to compile C++ using FLTK
|
|
|
|
[--ldflags] return flags to link against FLTK
|
|
|
|
[--ldstaticflags] return flags to link against static FLTK library
|
|
|
|
even if there are DSOs installed
|
|
|
|
[--libs] return FLTK libraries full path for dependencies
|
2010-11-13 19:47:47 +03:00
|
|
|
[--prefix] return FLTK install time --prefix directory
|
|
|
|
[--includedir] return FLTK install time include directory
|
2001-11-28 01:03:29 +03:00
|
|
|
|
2008-07-14 01:39:07 +04:00
|
|
|
Options to compile and link an application:
|
2002-04-24 16:14:57 +04:00
|
|
|
[-g] compile the program with debugging information
|
2006-09-24 08:39:55 +04:00
|
|
|
[-Dname[=value]] compile the program with the given define
|
2001-11-28 01:03:29 +03:00
|
|
|
[--compile program.cxx]
|
2008-07-14 01:39:07 +04:00
|
|
|
[--post program] prepare the program for desktop use
|
2001-09-29 19:57:32 +04:00
|
|
|
"
|
|
|
|
exit $1
|
|
|
|
}
|
|
|
|
|
2002-04-26 16:45:16 +04:00
|
|
|
if test $# -eq 0; then
|
|
|
|
usage 1
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
|
|
|
|
|
|
|
no_plugins=no
|
2001-11-28 01:03:29 +03:00
|
|
|
compile=
|
2001-12-14 22:34:30 +03:00
|
|
|
post=
|
2002-04-24 16:14:57 +04:00
|
|
|
debug=
|
2001-09-29 19:57:32 +04:00
|
|
|
|
|
|
|
# Parse command line options
|
2010-11-11 00:18:17 +03:00
|
|
|
while test $# -gt 0
|
2001-09-29 19:57:32 +04:00
|
|
|
do
|
2002-04-26 16:45:16 +04:00
|
|
|
case "$1" in
|
2010-11-11 00:18:17 +03:00
|
|
|
-*=*)
|
2002-04-26 16:45:16 +04:00
|
|
|
optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'`
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
optarg=
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
case $1 in
|
|
|
|
--version)
|
|
|
|
echo $VERSION
|
|
|
|
;;
|
|
|
|
--api-version)
|
|
|
|
echo $APIVERSION
|
|
|
|
;;
|
2005-08-10 17:54:17 +04:00
|
|
|
--cc)
|
|
|
|
echo $CC
|
|
|
|
;;
|
|
|
|
--cxx)
|
|
|
|
echo $CXX
|
|
|
|
;;
|
2007-03-06 23:00:04 +03:00
|
|
|
--optim)
|
|
|
|
echo_optim=yes
|
|
|
|
;;
|
2002-04-26 16:45:16 +04:00
|
|
|
--use-gl | --use-glut)
|
|
|
|
use_gl=yes
|
|
|
|
;;
|
|
|
|
--use-forms)
|
|
|
|
use_forms=yes
|
|
|
|
;;
|
|
|
|
--use-images)
|
|
|
|
use_images=yes
|
|
|
|
;;
|
Cairo increment 2: Finer cairo granularity, less deps, new fltk_cairo lib
+ added new USE_CAIRO config preprocessor def.
to differentiate from HAVE_CAIRO so that we can use the cairo lib
without forcing the full fltk lib to be linked against it.
In that case, cairo autolink context functionality which needs fltk lib
instrumentation is disabled.
+ added new --enable-cairoext, which correspond to previous --enable-cairo.
now, --enable-cairo only adds HAVE_CAIRO def. and keeps fltk lib
from referencing cairo.
In both cases (--enable-cairo & --enable-cairoext), a new fltk_cairo lib is
created. This lib, similarly to local versions of png,jpeg and zlib,
is not generated if cairo is not enabled.
+ added cairo to fltk-config : now new --use-cairo flag is available
+ modified all unix like makefiles to now generate minimum cairo deps and also
new libfltk_cairo lib.
+ added new cairo subdir to permit conditional fltk_cairo lib generation.
+ vc2005 project minimum update to compile without be broken, but still needs
to create a similar fltk_cairo independent lib. For now, it works as before
with a dedicated cairo env. similar to --enable-cairoext context in unix.
+ regression tested ok with cairo disabled on win32, mac osx, mingw.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 05:42:35 +04:00
|
|
|
--use-cairo)
|
|
|
|
use_cairo=yes
|
|
|
|
;;
|
2002-04-26 16:45:16 +04:00
|
|
|
--cflags)
|
|
|
|
echo_cflags=yes
|
|
|
|
;;
|
|
|
|
--cxxflags)
|
|
|
|
echo_cxxflags=yes
|
|
|
|
;;
|
|
|
|
--ldflags)
|
|
|
|
echo_ldflags=yes
|
|
|
|
;;
|
|
|
|
--ldstaticflags)
|
|
|
|
echo_ldstaticflags=yes
|
|
|
|
;;
|
|
|
|
--libs)
|
|
|
|
echo_libs=yes
|
|
|
|
;;
|
2010-11-13 19:47:47 +03:00
|
|
|
--prefix)
|
|
|
|
echo_prefix=yes
|
|
|
|
;;
|
|
|
|
--includedir)
|
|
|
|
echo_includedir=yes
|
|
|
|
;;
|
2002-04-26 16:45:16 +04:00
|
|
|
-g)
|
|
|
|
debug=-g
|
|
|
|
;;
|
2006-09-24 08:39:55 +04:00
|
|
|
-D*)
|
|
|
|
CXXFLAGS="$CXXFLAGS $1"
|
|
|
|
;;
|
2002-04-26 16:45:16 +04:00
|
|
|
--compile)
|
2008-07-14 01:39:07 +04:00
|
|
|
compile="$2"
|
2002-04-26 16:45:16 +04:00
|
|
|
shift
|
|
|
|
;;
|
|
|
|
--post)
|
2008-07-14 01:39:07 +04:00
|
|
|
post="$2"
|
2002-04-26 16:45:16 +04:00
|
|
|
shift
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo_help=yes
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
shift
|
2001-09-29 19:57:32 +04:00
|
|
|
done
|
|
|
|
|
2001-09-29 19:57:32 +04:00
|
|
|
if test "$includedir" != /usr/include; then
|
2002-04-26 16:45:16 +04:00
|
|
|
includes=-I$includedir
|
2001-09-29 19:57:32 +04:00
|
|
|
else
|
2002-04-26 16:45:16 +04:00
|
|
|
includes=
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
2001-09-29 19:57:32 +04:00
|
|
|
|
2015-07-13 01:32:30 +03:00
|
|
|
if test "$BINARY_DIR" != ""; then
|
|
|
|
includes="-I$BINARY_DIR $includes"
|
|
|
|
fi
|
|
|
|
|
2001-09-29 19:57:32 +04:00
|
|
|
if test "$libdir" != /usr/lib -a "$libdir" != /usr/lib32; then
|
2002-04-26 16:45:16 +04:00
|
|
|
libs=-L$libdir
|
2001-09-29 19:57:32 +04:00
|
|
|
else
|
2002-04-26 16:45:16 +04:00
|
|
|
libs=
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
2001-09-29 19:57:32 +04:00
|
|
|
|
|
|
|
# Calculate needed libraries
|
2004-08-06 00:20:51 +04:00
|
|
|
LDSTATIC="$libdir/libfltk.a $LDLIBS"
|
|
|
|
LDLIBS="-lfltk$SHAREDSUFFIX $LDLIBS"
|
2001-09-29 19:57:32 +04:00
|
|
|
|
2002-03-26 00:39:01 +03:00
|
|
|
if test x$use_forms = xyes; then
|
2002-07-14 21:03:31 +04:00
|
|
|
LDLIBS="-lfltk_forms$SHAREDSUFFIX $LDLIBS"
|
2002-03-26 00:39:01 +03:00
|
|
|
LDSTATIC="$libdir/libfltk_forms.a $LDSTATIC"
|
|
|
|
fi
|
|
|
|
if test x$use_gl = xyes; then
|
2018-02-23 22:41:52 +03:00
|
|
|
LDLIBS="-lfltk_gl$SHAREDSUFFIX @GLLIBS@ $LDLIBS"
|
|
|
|
LDSTATIC="$libdir/libfltk_gl.a @GLLIBS@ $LDSTATIC"
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
2002-03-26 00:39:01 +03:00
|
|
|
if test x$use_images = xyes; then
|
2002-07-14 21:03:31 +04:00
|
|
|
LDLIBS="-lfltk_images$SHAREDSUFFIX $IMAGELIBS $LDLIBS"
|
2008-12-29 20:10:12 +03:00
|
|
|
LDSTATIC="$libdir/libfltk_images.a $STATICIMAGELIBS $LDSTATIC"
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
|
|
|
|
2022-01-17 02:22:16 +03:00
|
|
|
if test x$use_cairo = xyes -a $FLTK_HAVE_CAIRO = 1; then
|
2023-03-09 14:21:49 +03:00
|
|
|
LDLIBS="$CAIROLIBS $LDLIBS"
|
|
|
|
LDSTATIC="$CAIROLIBS $LDSTATIC"
|
Cairo increment 2: Finer cairo granularity, less deps, new fltk_cairo lib
+ added new USE_CAIRO config preprocessor def.
to differentiate from HAVE_CAIRO so that we can use the cairo lib
without forcing the full fltk lib to be linked against it.
In that case, cairo autolink context functionality which needs fltk lib
instrumentation is disabled.
+ added new --enable-cairoext, which correspond to previous --enable-cairo.
now, --enable-cairo only adds HAVE_CAIRO def. and keeps fltk lib
from referencing cairo.
In both cases (--enable-cairo & --enable-cairoext), a new fltk_cairo lib is
created. This lib, similarly to local versions of png,jpeg and zlib,
is not generated if cairo is not enabled.
+ added cairo to fltk-config : now new --use-cairo flag is available
+ modified all unix like makefiles to now generate minimum cairo deps and also
new libfltk_cairo lib.
+ added new cairo subdir to permit conditional fltk_cairo lib generation.
+ vc2005 project minimum update to compile without be broken, but still needs
to create a similar fltk_cairo independent lib. For now, it works as before
with a dedicated cairo env. similar to --enable-cairoext context in unix.
+ regression tested ok with cairo disabled on win32, mac osx, mingw.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-19 05:42:35 +04:00
|
|
|
fi
|
|
|
|
|
2004-08-06 00:20:51 +04:00
|
|
|
LDLIBS="$DSOLINK $LDFLAGS $libs $LDLIBS"
|
2007-11-21 00:15:08 +03:00
|
|
|
LDSTATIC="$LDFLAGS $LDSTATIC"
|
2001-09-29 19:57:32 +04:00
|
|
|
|
2001-09-29 19:57:32 +04:00
|
|
|
# Answer to user requests
|
2002-04-26 16:45:16 +04:00
|
|
|
if test -n "$echo_help"; then
|
|
|
|
usage 1
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
|
|
|
|
2001-11-28 01:03:29 +03:00
|
|
|
if test -n "$compile"; then
|
2008-07-14 01:39:07 +04:00
|
|
|
case "$compile" in
|
2002-02-20 16:02:27 +03:00
|
|
|
*.cxx)
|
2008-08-29 13:15:26 +04:00
|
|
|
prog="`basename \"$compile\" .cxx`"
|
2002-02-20 16:02:27 +03:00
|
|
|
;;
|
|
|
|
*.cpp)
|
2008-08-29 13:15:26 +04:00
|
|
|
prog="`basename \"$compile\" .cpp`"
|
2002-02-20 16:02:27 +03:00
|
|
|
;;
|
|
|
|
*.cc)
|
2008-08-29 13:15:26 +04:00
|
|
|
prog="`basename \"$compile\" .cc`"
|
2002-02-20 16:02:27 +03:00
|
|
|
;;
|
|
|
|
*.C)
|
2008-08-29 13:15:26 +04:00
|
|
|
prog="`basename \"$compile\" .C`"
|
2002-02-20 16:02:27 +03:00
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo "ERROR: Unknown/bad C++ source file extension on \"$compile\"!"
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
2001-11-28 01:03:29 +03:00
|
|
|
|
2008-07-14 01:39:07 +04:00
|
|
|
post="$prog"
|
2008-02-20 21:10:13 +03:00
|
|
|
|
2008-07-14 01:39:07 +04:00
|
|
|
echo $CXX $ARCHFLAGS $includes $CXXFLAGS $debug -o "'$prog'" "'$compile'" $LDSTATIC
|
|
|
|
$CXX $ARCHFLAGS $includes $CXXFLAGS $debug -o "$prog" "$compile" $LDSTATIC || exit 1
|
2001-11-28 01:03:29 +03:00
|
|
|
fi
|
|
|
|
|
2008-07-14 01:39:07 +04:00
|
|
|
if test -n "$post"; then
|
2016-12-19 17:35:08 +03:00
|
|
|
running=`uname`
|
|
|
|
if test "$running" = "Darwin"; then
|
|
|
|
# if FLTK targets MacOS+X11, apps need not be bundled
|
|
|
|
if test `echo $LDLIBS | fgrep -c -e " -lX11"` = 1; then
|
|
|
|
running=""
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
case $running in
|
2008-07-14 01:39:07 +04:00
|
|
|
Darwin)
|
|
|
|
echo Creating "'$post.app'" bundle for desktop...
|
|
|
|
id=`echo $post | tr ' ' '_'`
|
|
|
|
|
|
|
|
# Make the bundle directory and move the executable there
|
|
|
|
rm -rf "$post.app/Contents/MacOS"
|
|
|
|
mkdir -p "$post.app/Contents/MacOS"
|
|
|
|
mv "$post" "$post.app/Contents/MacOS"
|
|
|
|
|
|
|
|
# Make a shell script that runs the bundled executable
|
|
|
|
echo "#!/bin/sh" >"$post"
|
2011-01-01 03:10:38 +03:00
|
|
|
echo 'dir="`dirname \"$0\"`"' >>"$post"
|
2008-08-26 23:21:22 +04:00
|
|
|
echo 'exec "$dir/'"$post.app/Contents/MacOS/$post"'" "$@"' >>"$post"
|
2008-07-14 01:39:07 +04:00
|
|
|
chmod +x "$post"
|
|
|
|
|
|
|
|
# Make the simplest Info.plist needed for an application
|
|
|
|
cat >"$post.app/Contents/Info.plist" <<EOF
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<plist version="0.9">
|
|
|
|
<dict>
|
|
|
|
<key>CFBundleInfoDictionaryVersion</key>
|
|
|
|
<string>6.0</string>
|
|
|
|
<key>CFBundleExecutable</key>
|
|
|
|
<string>$post</string>
|
|
|
|
<key>CFBundleIdentifier</key>
|
|
|
|
<string>org.fltk.$id</string>
|
|
|
|
<key>CFBundleName</key>
|
|
|
|
<string>$post</string>
|
|
|
|
<key>CFBundlePackageType</key>
|
|
|
|
<string>APPL</string>
|
2013-04-05 19:28:43 +04:00
|
|
|
<key>NSHighResolutionCapable</key>
|
|
|
|
<true/>
|
2008-07-14 01:39:07 +04:00
|
|
|
</dict>
|
|
|
|
</plist>
|
|
|
|
EOF
|
|
|
|
;;
|
|
|
|
esac
|
2007-03-06 22:13:54 +03:00
|
|
|
fi
|
|
|
|
|
2001-09-29 19:57:32 +04:00
|
|
|
if test "$echo_cflags" = "yes"; then
|
2002-04-26 16:45:16 +04:00
|
|
|
echo $includes $CFLAGS
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
|
|
|
|
|
|
|
if test "$echo_cxxflags" = "yes"; then
|
2002-04-26 16:45:16 +04:00
|
|
|
echo $includes $CXXFLAGS
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
|
|
|
|
2007-03-06 23:00:04 +03:00
|
|
|
if test "$echo_optim" = "yes"; then
|
|
|
|
echo $OPTIM
|
|
|
|
fi
|
|
|
|
|
2001-09-29 19:57:32 +04:00
|
|
|
if test "$echo_ldflags" = "yes"; then
|
2002-04-26 16:45:16 +04:00
|
|
|
my_libs=
|
|
|
|
libdirs=$libs
|
|
|
|
|
|
|
|
for i in $LDLIBS ; do
|
|
|
|
if test $i != -L$libdir ; then
|
|
|
|
if test -z "$my_libs" ; then
|
|
|
|
my_libs="$i"
|
|
|
|
else
|
|
|
|
my_libs="$my_libs $i"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
echo $libdirs $my_libs
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
|
|
|
|
|
|
|
if test "$echo_ldstaticflags" = "yes"; then
|
2002-04-26 16:45:16 +04:00
|
|
|
echo $LDSTATIC
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
|
|
|
|
|
|
|
if test "$echo_libs" = "yes"; then
|
2010-11-11 00:18:17 +03:00
|
|
|
USELIBS="$libdir/libfltk.a"
|
2007-11-21 00:15:08 +03:00
|
|
|
|
|
|
|
if test x$use_forms = xyes; then
|
2010-11-11 00:18:17 +03:00
|
|
|
USELIBS="$libdir/libfltk_forms.a $USELIBS"
|
2007-11-21 00:15:08 +03:00
|
|
|
fi
|
|
|
|
|
|
|
|
if test x$use_gl = xyes; then
|
2010-11-11 00:18:17 +03:00
|
|
|
USELIBS="$libdir/libfltk_gl.a $USELIBS"
|
2007-11-21 00:15:08 +03:00
|
|
|
fi
|
|
|
|
|
|
|
|
if test x$use_images = xyes; then
|
2010-11-11 00:18:17 +03:00
|
|
|
USELIBS="$libdir/libfltk_images.a $USELIBS"
|
2007-11-21 00:15:08 +03:00
|
|
|
|
|
|
|
for lib in fltk_jpeg fltk_png fltk_z; do
|
|
|
|
if test -f $libdir/lib$lib.a; then
|
2010-11-11 00:18:17 +03:00
|
|
|
USELIBS="$libdir/lib$lib.a $USELIBS"
|
2007-11-21 00:15:08 +03:00
|
|
|
fi
|
|
|
|
done
|
|
|
|
fi
|
2010-11-11 00:18:17 +03:00
|
|
|
|
|
|
|
echo $USELIBS
|
2001-09-29 19:57:32 +04:00
|
|
|
fi
|
|
|
|
|
2010-11-13 19:47:47 +03:00
|
|
|
if test "$echo_prefix" = "yes"; then
|
|
|
|
echo $prefix
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test "$echo_includedir" = "yes"; then
|
|
|
|
echo $includedir
|
|
|
|
fi
|