| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399 |
- #!/bin/sh
- #
- # "$Id: fltk-config.in 6614 2009-01-01 16:11:32Z matt $"
- #
- # FLTK configuration utility.
- #
- # Copyright 2000-2010 by Bill Spitzak and others.
- # Original version Copyright 2000 by James Dean Palmer
- # Adapted by Vincent Penne and Michael Sweet
- #
- # 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:
- #
- # http://www.fltk.org/COPYING.php
- #
- # Please report all bugs and problems on the following page:
- #
- # http://www.fltk.org/str.php
- #
- MAJOR_VERSION=@FLTK_VERSION_MAJOR@
- MINOR_VERSION=@FLTK_VERSION_MINOR@
- PATCH_VERSION=@FLTK_VERSION_PATCH@
- VERSION=@FLTK_VERSION_FULL@
- APIVERSION=@FLTK_VERSION@
- ### BEGIN fltk-config
- selfdir=`dirname "$0"`
- prefix=@CMAKE_INSTALL_PREFIX@
- exec_prefix=${prefix}
- exec_prefix_set=no
- bindir=@PREFIX_BIN@
- includedir=@PREFIX_INCLUDE@
- libdir=@PREFIX_LIB@
- srcdir=.
- # compiler names
- CC="@CC@"
- CXX="@CXX@"
- # flags for C++ compiler:
- ARCHFLAGS="@OPTION_ARCHFLAGS@"
- CFLAGS="@C_FLAGS@"
- CXXFLAGS="@CAIROFLAGS@@C_FLAGS@"
- LDFLAGS="@LDFLAGS@"
- LDLIBS="@LD_LIBS@"
- OPTIM="@OPTION_OPTIM@"
- CAIROFLAGS="@CAIROFLAGS@"
- # Check for local invocation, and update paths accordingly...
- if test -f "$selfdir/bin/UseFLTK.cmake"; then
- bindir="$selfdir/bin/fluid"
- includedir="@FLTK_SOURCE_DIR@"
- libdir="$selfdir/lib"
- if test -f "$libdir/libfltk_jpeg.a"; then
- CFLAGS="-I$includedir/jpeg $CFLAGS"
- CXXFLAGS="-I$includedir/jpeg $CXXFLAGS"
- fi
- if test -f "$libdir/libfltk_z.a"; then
- CFLAGS="-I$includedir/zlib $CFLAGS"
- CXXFLAGS="-I$includedir/zlib $CXXFLAGS"
- fi
- if test -f "$libdir/libfltk_png.a"; then
- CFLAGS="-I$includedir/png $CFLAGS"
- CXXFLAGS="-I$includedir/png $CXXFLAGS"
- fi
- fi
- if test -d $includedir/FL/images; then
- CFLAGS="-I$includedir/FL/images $CFLAGS"
- CXXFLAGS="-I$includedir/FL/images $CXXFLAGS"
- fi
- if test -f "$libdir/libfltk_cairo.a"; then
- CFLAGS="$CAIROFLAGS $CFLAGS"
- CXXFLAGS="$CAIROFLAGS $CXXFLAGS"
- fi
- # libraries to link with:
- LIBNAME="@LIBNAME@"
- DSONAME="@DSONAME@"
- DSOLINK="@DSOLINK@"
- IMAGELIBS="@IMAGELIBS@"
- STATICIMAGELIBS="@STATICIMAGELIBS@"
- CAIROLIBS="@CAIROLIBS@"
- SHAREDSUFFIX="@SHAREDSUFFIX@"
- usage ()
- {
- echo "Usage: fltk-config [OPTIONS]
- Options:
- [--version]
- [--api-version]
- Options telling what we are doing:
- [--use-gl] use GL
- [--use-images] use extra image formats (PNG, JPEG)
- [--use-glut] use glut compatibility layer
- [--use-forms] use forms compatibility layer
- [--use-cairo] use cairo graphics lib
- Options telling what information we request:
- [--cc] return C compiler used to compile FLTK
- [--cxx] return C++ compiler used to compile FLTK
- [--optim] return compiler optimization used to compile FLTK
- [--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
- [--prefix] return FLTK install time --prefix directory
- [--includedir] return FLTK install time include directory
- Options to compile and link an application:
- [-g] compile the program with debugging information
- [-Dname[=value]] compile the program with the given define
- [--compile program.cxx]
- [--post program] prepare the program for desktop use
- "
- exit $1
- }
- if test $# -eq 0; then
- usage 1
- fi
- no_plugins=no
- compile=
- post=
- debug=
- # Parse command line options
- while test $# -gt 0
- do
- case "$1" in
- -*=*)
- optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'`
- ;;
- *)
- optarg=
- ;;
- esac
- case $1 in
- --version)
- echo $VERSION
- ;;
- --api-version)
- echo $APIVERSION
- ;;
- --cc)
- echo $CC
- ;;
- --cxx)
- echo $CXX
- ;;
- --optim)
- echo_optim=yes
- ;;
- --use-gl | --use-glut)
- use_gl=yes
- ;;
- --use-forms)
- use_forms=yes
- ;;
- --use-images)
- use_images=yes
- ;;
- --use-cairo)
- use_cairo=yes
- ;;
- --cflags)
- echo_cflags=yes
- ;;
- --cxxflags)
- echo_cxxflags=yes
- ;;
- --ldflags)
- echo_ldflags=yes
- ;;
- --ldstaticflags)
- echo_ldstaticflags=yes
- ;;
- --libs)
- echo_libs=yes
- ;;
- --prefix)
- echo_prefix=yes
- ;;
- --includedir)
- echo_includedir=yes
- ;;
- -g)
- debug=-g
- ;;
- -D*)
- CXXFLAGS="$CXXFLAGS $1"
- ;;
- --compile)
- compile="$2"
- shift
- ;;
- --post)
- post="$2"
- shift
- ;;
- *)
- echo_help=yes
- ;;
- esac
- shift
- done
- if test "$includedir" != /usr/include; then
- includes=-I$includedir
- else
- includes=
- fi
- if test "$libdir" != /usr/lib -a "$libdir" != /usr/lib32; then
- libs=-L$libdir
- else
- libs=
- fi
- # Calculate needed libraries
- LDSTATIC="$libdir/libfltk.a $LDLIBS"
- LDLIBS="-lfltk$SHAREDSUFFIX $LDLIBS"
- if test x$use_forms = xyes; then
- LDLIBS="-lfltk_forms$SHAREDSUFFIX $LDLIBS"
- LDSTATIC="$libdir/libfltk_forms.a $LDSTATIC"
- fi
- if test x$use_gl = xyes; then
- LDLIBS="-lfltk_gl$SHAREDSUFFIX @GLLIB@ $LDLIBS"
- LDSTATIC="$libdir/libfltk_gl.a @GLLIB@ $LDSTATIC"
- fi
- if test x$use_images = xyes; then
- LDLIBS="-lfltk_images$SHAREDSUFFIX $IMAGELIBS $LDLIBS"
- LDSTATIC="$libdir/libfltk_images.a $STATICIMAGELIBS $LDSTATIC"
- fi
- if test x$use_cairo = xyes; then
- LDLIBS="-lfltk_cairo$SHAREDSUFFIX $CAIROLIBS $LDLIBS"
- LDSTATIC="$libdir/libfltk_cairo.a $CAIROLIBS $LDSTATIC"
- fi
- LDLIBS="$DSOLINK $LDFLAGS $libs $LDLIBS"
- LDSTATIC="$LDFLAGS $LDSTATIC"
- # Answer to user requests
- if test -n "$echo_help"; then
- usage 1
- fi
- if test -n "$compile"; then
- case "$compile" in
- *.cxx)
- prog="`basename \"$compile\" .cxx`"
- ;;
- *.cpp)
- prog="`basename \"$compile\" .cpp`"
- ;;
- *.cc)
- prog="`basename \"$compile\" .cc`"
- ;;
- *.C)
- prog="`basename \"$compile\" .C`"
- ;;
- *)
- echo "ERROR: Unknown/bad C++ source file extension on \"$compile\"!"
- exit 1
- ;;
- esac
- post="$prog"
- echo $CXX $ARCHFLAGS $includes $CXXFLAGS $debug -o "'$prog'" "'$compile'" $LDSTATIC
- $CXX $ARCHFLAGS $includes $CXXFLAGS $debug -o "$prog" "$compile" $LDSTATIC || exit 1
- fi
- if test -n "$post"; then
- case "`uname`" in
- 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"
- echo 'dir="`dirname '"'"'$0'"'"'`"' >>"$post"
- echo 'exec "$dir/'"$post.app/Contents/MacOS/$post"'" "$@"' >>"$post"
- 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>
- <key>NSHighResolutionCapable</key>
- <true/>
- </dict>
- </plist>
- EOF
- ;;
- esac
- fi
- if test "$echo_cflags" = "yes"; then
- echo $includes $CFLAGS
- fi
- if test "$echo_cxxflags" = "yes"; then
- echo $includes $CXXFLAGS
- fi
- if test "$echo_optim" = "yes"; then
- echo $OPTIM
- fi
- if test "$echo_ldflags" = "yes"; then
- 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
- fi
- if test "$echo_ldstaticflags" = "yes"; then
- echo $LDSTATIC
- fi
- if test "$echo_libs" = "yes"; then
- USELIBS="$libdir/libfltk.a"
- if test x$use_forms = xyes; then
- USELIBS="$libdir/libfltk_forms.a $USELIBS"
- fi
- if test x$use_gl = xyes; then
- USELIBS="$libdir/libfltk_gl.a $USELIBS"
- fi
- if test x$use_cairo = xyes; then
- USELIBS="$libdir/libfltk_cairo.a $USELIBS"
- fi
- if test x$use_images = xyes; then
- USELIBS="$libdir/libfltk_images.a $USELIBS"
- for lib in fltk_jpeg fltk_png fltk_z; do
- if test -f $libdir/lib$lib.a; then
- USELIBS="$libdir/lib$lib.a $USELIBS"
- fi
- done
- fi
- echo $USELIBS
- fi
- if test "$echo_prefix" = "yes"; then
- echo $prefix
- fi
- if test "$echo_includedir" = "yes"; then
- echo $includedir
- fi
- #
- # End of "$Id: fltk-config.in 6614 2009-01-01 16:11:32Z matt $".
- #
|