[SCM] Packaging for mathgl branch, upstream, updated. upstream/2_rc1-1-gc55d2f6
Dimitrios Eftaxiopoulos
eftaxi12 at otenet.gr
Wed Mar 7 08:23:40 UTC 2012
The following commit has been merged in the upstream branch:
commit c55d2f6b788c02c4a8022f948bbd6348269852ad
Author: Dimitrios Eftaxiopoulos <eftaxi12 at otenet.gr>
Date: Tue Mar 6 18:54:56 2012 +0200
Imported Upstream version 2~rc2
diff --git a/CMakeLists.txt b/CMakeLists.txt
index cbb496e..eb74cbd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -5,6 +5,8 @@ set(CMAKE_VERBOSE_MAKEFILE ON)
option(enable-double "Enable double precision in MathGL library")
option(enable-all "Enable all features")
option(enable-langall "Enable all language interfaces")
+option(enable-lgpl "Enable only LGPL part of MathGL" OFF)
+option(enable-ltdl "Enable loading modules support")
option(enable-pthread "Enable POSIX threads support")
option(enable-gsl "Enable gsl support")
option(enable-jpeg "Enable jpeg support")
@@ -12,8 +14,9 @@ option(enable-u3d "Enable u3d support")
option(enable-pdf "Enable pdf support")
option(enable-gif "Enable gif support")
option(enable-hdf4 "Enable hdf4 support")
-option(enable-hdf5 "Enable hdf5 support")
+option(enable-hdf5 "Enable hdf5 1.6 support")
option(enable-hdf5_18 "Enable hdf5 1.8 support")
+option(enable-opengl "Enable OpenGL support" ON)
option(enable-glut "Enable glut support")
option(enable-fltk "Enable fltk widget")
option(enable-wx "Enable wxWidget widget")
@@ -22,62 +25,74 @@ option(enable-python "Enable python interface")
option(enable-octave "Enable octave interface")
option(enable-doc "Enable documentation building")
if(enable-double)
- set(use_double 1)
+ set(use_double 1)
endif(enable-double)
-if(enable-all OR enable-gsl)
- set(use_gsl 1)
-endif(enable-all OR enable-gsl)
+if((enable-all OR enable-gsl) AND (NOT enable-lgpl) )
+ set(use_gsl 1)
+endif((enable-all OR enable-gsl) AND (NOT enable-lgpl) )
+if(enable-all OR enable-ltdl)
+ set(use_ltdl 1)
+endif(enable-all OR enable-ltdl)
if(enable-all OR enable-pthread)
- set(use_pthread 1)
+ set(use_pthread 1)
endif(enable-all OR enable-pthread)
if(enable-all OR enable-jpeg)
- set(use_jpeg 1)
+ set(use_jpeg 1)
endif(enable-all OR enable-jpeg)
-if(enable-all OR enable-u3d OR enable-pdf)
- set(use_u3d 1)
-endif(enable-all OR enable-u3d OR enable-pdf)
-if(enable-all OR enable-pdf)
- set(use_pdf 1)
-endif(enable-all OR enable-pdf)
+if((enable-all OR enable-u3d OR enable-pdf) AND (NOT enable-lgpl) )
+ set(use_u3d 1)
+endif((enable-all OR enable-u3d OR enable-pdf) AND (NOT enable-lgpl) )
+if((enable-all OR enable-pdf) AND (NOT enable-lgpl) )
+ set(use_pdf 1)
+endif((enable-all OR enable-pdf) AND (NOT enable-lgpl) )
if(enable-all OR enable-gif)
- set(use_gif 1)
+ set(use_gif 1)
endif(enable-all OR enable-gif)
-if(enable-all OR enable-hdf4)
- set(use_hdf4 1)
-endif(enable-all OR enable-hdf4)
-if(enable-all OR enable-hdf5)
- set(use_hdf5 1)
-endif(enable-all OR enable-hdf5)
+if(enable-all OR enable-opengl)
+ set(use_opengl 1)
+endif(enable-all OR enable-opengl)
+if((enable-all OR enable-hdf4) AND (NOT enable-lgpl) )
+ set(use_hdf4 1)
+endif((enable-all OR enable-hdf4) AND (NOT enable-lgpl) )
+if((enable-all OR enable-hdf5) AND (NOT enable-lgpl) )
+ set(use_hdf5 1)
+endif((enable-all OR enable-hdf5) AND (NOT enable-lgpl) )
if(enable-hdf5_18)
- set(use_hdf5_18 1)
+ set(use_hdf5_18 1)
endif(enable-hdf5_18)
-if(enable-all OR enable-glut)
- set(use_glut 1)
-endif(enable-all OR enable-glut)
-if(enable-all OR enable-fltk)
- set(use_fltk 1)
-endif(enable-all OR enable-fltk)
-if(enable-all OR enable-wx)
- set(use_wx 0)
-endif(enable-all OR enable-wx)
-if(enable-all OR enable-qt)
- set(use_qt 1)
-endif(enable-all OR enable-qt)
+if((enable-all OR enable-glut) AND (NOT enable-lgpl) )
+ set(use_glut 1)
+endif((enable-all OR enable-glut) AND (NOT enable-lgpl) )
+if((enable-all OR enable-fltk) AND (NOT enable-lgpl) )
+ set(use_fltk 1)
+endif((enable-all OR enable-fltk) AND (NOT enable-lgpl) )
+if((enable-all OR enable-wx) AND (NOT enable-lgpl) )
+ set(use_wx 0)
+endif((enable-all OR enable-wx) AND (NOT enable-lgpl) )
+if((enable-all OR enable-qt) AND (NOT enable-lgpl) )
+ set(use_qt 1)
+endif((enable-all OR enable-qt) AND (NOT enable-lgpl) )
if(enable-all OR enable-doc)
- set(use_doc 1)
+ set(use_doc 1)
endif(enable-all OR enable-doc)
-if(enable-langall OR enable-python)
- set(use_python 1)
-endif(enable-langall OR enable-python)
-if(enable-langall OR enable-octave)
- set(use_octave 1)
-endif(enable-langall OR enable-octave)
+if((enable-langall OR enable-python) AND (NOT enable-lgpl) )
+ set(use_python 1)
+endif((enable-langall OR enable-python) AND (NOT enable-lgpl) )
+if((enable-langall OR enable-octave) AND (NOT enable-lgpl) )
+ set(use_octave 1)
+endif((enable-langall OR enable-octave) AND (NOT enable-lgpl) )
+if(use_glut AND NOT use_opengl)
+ message(SEND_ERROR "You have to enable OpenGL if you plan to use GLUT.")
+endif(use_glut AND NOT use_opengl)
+
include_directories( ${MathGL_SOURCE_DIR}/include )
include(FindOpenGL)
if(NOT OPENGL_FOUND)
- message(SEND_ERROR "Couldn't find OpenGL libraries.")
+ if(use_opengl)
+ message(SEND_ERROR "Couldn't find OpenGL libraries.")
+ endif(use_opengl)
endif(NOT OPENGL_FOUND)
include(FindPNG)
@@ -97,10 +112,20 @@ if(NOT GSL_LIB OR NOT GSL_CBLAS_LIB OR NOT GSL_INCLUDE_DIR)
endif(use_gsl)
endif(NOT GSL_LIB OR NOT GSL_CBLAS_LIB OR NOT GSL_INCLUDE_DIR)
+find_library(LTDL_LIB ltdl)
+find_path(LTDL_INCLUDE_DIR ltdl.h)
+if(NOT LTDL_LIB OR NOT LTDL_INCLUDE_DIR)
+ if(use_ltdl)
+ message(SEND_ERROR "${LTDL_LIB}")
+ message(SEND_ERROR "${LTDL_INCLUDE_DIR}")
+ message(SEND_ERROR "Couldn't find LTDL library.")
+ endif(use_ltdl)
+endif(NOT LTDL_LIB OR NOT LTDL_INCLUDE_DIR)
+
include(FindThreads)
if(NOT CMAKE_USE_PTHREADS_INIT)
if(use_pthread)
- message(SEND_ERROR "Couldn't find POSIX threads libraries.")
+ message(SEND_ERROR "Couldn't find POSIX threads library.")
endif(use_pthread)
endif(NOT CMAKE_USE_PTHREADS_INIT)
@@ -130,17 +155,22 @@ if(use_pdf)
message(STATUS "Found libHaru headers: ${HPDF_INCLUDE_DIR}")
endif(use_pdf)
+include(FindZLIB)
+if(NOT ZLIB_FOUND)
+ message(SEND_ERROR "Couldn't find ZLIB library.")
+endif(NOT ZLIB_FOUND)
+
include(FindJPEG)
if(NOT JPEG_FOUND)
if(use_jpeg)
- message(SEND_ERROR "Couldn't find JPEG libraries.")
+ message(SEND_ERROR "Couldn't find JPEG library.")
endif(use_jpeg)
endif(NOT JPEG_FOUND)
include(FindGIF)
if(NOT GIF_FOUND)
if(use_gif)
- message(SEND_ERROR "Couldn't find GIF libraries.")
+ message(SEND_ERROR "Couldn't find GIF library.")
endif(use_gif)
endif(NOT GIF_FOUND)
@@ -156,41 +186,38 @@ if(NOT HDF4_LIB OR NOT HDF4MF_LIB OR NOT HDF4_INCLUDE_DIR)
endif(use_hdf4)
endif(NOT HDF4_LIB OR NOT HDF4MF_LIB OR NOT HDF4_INCLUDE_DIR)
-find_library(HDF5_LIB hdf5)
-find_path(HDF5_INCLUDE_DIR hdf5.h)
-if(NOT HDF5_LIB OR NOT HDF5_INCLUDE_DIR)
+include(FindHDF5)
+if(NOT HDF5_FOUND)
if(use_hdf5 OR use_hdf5_18)
- message(SEND_ERROR "${HDF5_LIB}")
- message(SEND_ERROR "${HDF5_INCLUDE_DIR}")
- message(SEND_ERROR "Couldn't find HDF5 libraries.")
+ message(SEND_ERROR "Couldn't find HDF5 library.")
endif(use_hdf5 OR use_hdf5_18)
-endif(NOT HDF5_LIB OR NOT HDF5_INCLUDE_DIR)
+endif(NOT HDF5_FOUND)
include(FindGLUT)
if(NOT GLUT_FOUND)
if(use_glut)
- message(SEND_ERROR "Couldn't find GLUT libraries.")
+ message(SEND_ERROR "Couldn't find GLUT library.")
endif(use_glut)
endif(NOT GLUT_FOUND)
include(FindFLTK)
if(NOT FLTK_FOUND)
if(use_fltk)
- message(SEND_ERROR "Couldn't find FLTK libraries.")
+ message(SEND_ERROR "Couldn't find FLTK library.")
endif(use_fltk)
endif(NOT FLTK_FOUND)
FIND_PACKAGE(wxWidgets COMPONENTS base core gl)
if(NOT wxWidgets_FOUND)
if(use_wx)
- message(SEND_ERROR "Couldn't find wxWidgets libraries.")
+ message(SEND_ERROR "Couldn't find wxWidgets library.")
endif(use_wx)
endif(NOT wxWidgets_FOUND)
FIND_PACKAGE(Qt4)
if(NOT QT4_FOUND)
if(use_qt)
- message(SEND_ERROR "Couldn't find Qt4 libraries.")
+ message(SEND_ERROR "Couldn't find Qt4 library.")
endif(use_qt)
endif(NOT QT4_FOUND)
@@ -199,7 +226,7 @@ FIND_PACKAGE(SWIG)
if(NOT SWIG_FOUND)
if(use_python OR use_octave)
message(SEND_ERROR "Couldn't find swig needed for interfaces compiling.")
- endif(use_python)
+ endif(use_python OR use_octave)
endif(NOT SWIG_FOUND)
# include(FindPythonInterp)
@@ -260,12 +287,12 @@ if(NOT findtp)
endif(NOT findtp)
if(UNIX)
- add_definitions(-DNO_COLOR_ARRAY)
+ add_definitions(-DNO_COLOR_ARRAY)
endif(UNIX)
if(WIN32)
-# add_definitions(-DWIN32 -D_MSC_VER)
- add_definitions(-DWIN32)
+# add_definitions(-DWIN32 -D_MSC_VER)
+ add_definitions(-DWIN32)
endif(WIN32)
if(NOT WIN32)
@@ -273,8 +300,8 @@ set(MGL_DATA_PATH "${CMAKE_INSTALL_PREFIX}/share/mathgl")
set(MGL_DOC_PATH "${CMAKE_INSTALL_PREFIX}/share/doc/mathgl")
set(MGL_FONT_PATH "${MGL_DATA_PATH}/fonts")
install(DIRECTORY fonts/ DESTINATION ${MGL_FONT_PATH}
- PATTERN ".svn" EXCLUDE
- PATTERN "*.vfm")
+ PATTERN ".svn" EXCLUDE
+ PATTERN "*.vfm")
endif(NOT WIN32)
add_subdirectory( src )
@@ -283,5 +310,6 @@ add_subdirectory( utils )
add_subdirectory( examples )
add_subdirectory( include )
add_subdirectory( udav )
+add_subdirectory( mgllab )
add_subdirectory( texinfo )
add_subdirectory( lang )
diff --git a/ChangeLog b/ChangeLog
deleted file mode 120000
index 74b6820..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1 +0,0 @@
-ChangeLog.txt
\ No newline at end of file
diff --git a/ChangeLog b/ChangeLog
new file mode 100644
index 0000000..933ee82
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1 @@
+link ChangeLog.txt
\ No newline at end of file
diff --git a/Makefile.in b/Makefile.in
deleted file mode 100644
index 713df49..0000000
--- a/Makefile.in
+++ /dev/null
@@ -1,776 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(top_srcdir)/configure \
- $(top_srcdir)/include/mgl/config.h.in AUTHORS COPYING \
- ChangeLog INSTALL NEWS TODO config/config.guess \
- config/config.sub config/depcomp config/install-sh \
- config/ltmain.sh config/missing config/py-compile
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/config/autotroll.m4 \
- $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno config.status.lineno
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/mgl/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
- install-dvi-recursive install-exec-recursive \
- install-html-recursive install-info-recursive \
- install-pdf-recursive install-ps-recursive install-recursive \
- installcheck-recursive installdirs-recursive pdf-recursive \
- ps-recursive uninstall-recursive
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
- distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
- distdir dist dist-all distcheck
-ETAGS = etags
-CTAGS = ctags
-DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d "$(distdir)" \
- || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr "$(distdir)"; }; }
-am__relativize = \
- dir0=`pwd`; \
- sed_first='s,^\([^/]*\)/.*$$,\1,'; \
- sed_rest='s,^[^/]*/*,,'; \
- sed_last='s,^.*/\([^/]*\)$$,\1,'; \
- sed_butlast='s,/*[^/]*$$,,'; \
- while test -n "$$dir1"; do \
- first=`echo "$$dir1" | sed -e "$$sed_first"`; \
- if test "$$first" != "."; then \
- if test "$$first" = ".."; then \
- dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
- dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
- else \
- first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
- if test "$$first2" = "$$first"; then \
- dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
- else \
- dir2="../$$dir2"; \
- fi; \
- dir0="$$dir0"/"$$first"; \
- fi; \
- fi; \
- dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
- done; \
- reldir="$$dir2"
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_CXXFLAGS = @AM_CXXFLAGS@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FLTK_FLAGS = @FLTK_FLAGS@
-FLTK_LIBS = @FLTK_LIBS@
-GL_LIBS = @GL_LIBS@
-GREP = @GREP@
-GSL_FLAGS = @GSL_FLAGS@
-GSL_LIBS = @GSL_LIBS@
-HAVE_SWIG = @HAVE_SWIG@
-HDF4_FLAGS = @HDF4_FLAGS@
-HDF4_LIBS = @HDF4_LIBS@
-HDF5_FLAGS = @HDF5_FLAGS@
-HDF5_LIBS = @HDF5_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-JPEG_FLAGS = @JPEG_FLAGS@
-JPEG_LIBS = @JPEG_LIBS@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
-MGL_AGE = @MGL_AGE@
-MGL_CURRENT = @MGL_CURRENT@
-MGL_RELEASE = @MGL_RELEASE@
-MGL_REVISION = @MGL_REVISION@
-MKDIR_P = @MKDIR_P@
-MOC = @MOC@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OCTAVE = @OCTAVE@
-OCTAVE_ARCH = @OCTAVE_ARCH@
-OCTAVE_INCFLAGS = @OCTAVE_INCFLAGS@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PNG_LIBS = @PNG_LIBS@
-PTHREAD_FLAGS = @PTHREAD_FLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-PYTHON = @PYTHON@
-PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
-PYTHON_HEADERS = @PYTHON_HEADERS@
-PYTHON_PLATFORM = @PYTHON_PLATFORM@
-PYTHON_PREFIX = @PYTHON_PREFIX@
-PYTHON_VERSION = @PYTHON_VERSION@
-QMAKE = @QMAKE@
-QT_CFLAGS = @QT_CFLAGS@
-QT_CPPFLAGS = @QT_CPPFLAGS@
-QT_CXXFLAGS = @QT_CXXFLAGS@
-QT_DEFINES = @QT_DEFINES@
-QT_INCPATH = @QT_INCPATH@
-QT_LDFLAGS = @QT_LDFLAGS@
-QT_LFLAGS = @QT_LFLAGS@
-QT_LIBS = @QT_LIBS@
-QT_PATH = @QT_PATH@
-QT_VERSION = @QT_VERSION@
-QT_VERSION_MAJOR = @QT_VERSION_MAJOR@
-RANLIB = @RANLIB@
-RCC = @RCC@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-TMPDIR = @TMPDIR@
-U3D_LIBS = @U3D_LIBS@
-UIC = @UIC@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-lt_ECHO = @lt_ECHO@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-pkgpyexecdir = @pkgpyexecdir@
-pkgpythondir = @pkgpythondir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-pyexecdir = @pyexecdir@
-pythondir = @pythondir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-ACLOCAL_AMFLAGS = -I config
-SUBDIRS = src widgets include lang examples utils
-all: all-recursive
-
-.SUFFIXES:
-am--refresh:
- @:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
- $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
- && exit 0; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- echo ' $(SHELL) ./config.status'; \
- $(SHELL) ./config.status;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-
-$(top_srcdir)/configure: $(am__configure_deps)
- $(am__cd) $(srcdir) && $(AUTOCONF)
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-$(am__aclocal_m4_deps):
-
-include/mgl/config.h: include/mgl/stamp-h1
- @if test ! -f $@; then \
- rm -f include/mgl/stamp-h1; \
- $(MAKE) $(AM_MAKEFLAGS) include/mgl/stamp-h1; \
- else :; fi
-
-include/mgl/stamp-h1: $(top_srcdir)/include/mgl/config.h.in $(top_builddir)/config.status
- @rm -f include/mgl/stamp-h1
- cd $(top_builddir) && $(SHELL) ./config.status include/mgl/config.h
-$(top_srcdir)/include/mgl/config.h.in: $(am__configure_deps)
- ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
- rm -f include/mgl/stamp-h1
- touch $@
-
-distclean-hdr:
- -rm -f include/mgl/config.h include/mgl/stamp-h1
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-distclean-libtool:
- -rm -f libtool config.lt
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-# (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- dot_seen=yes; \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done; \
- if test "$$dot_seen" = "no"; then \
- $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
- fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- rev=''; for subdir in $$list; do \
- if test "$$subdir" = "."; then :; else \
- rev="$$subdir $$rev"; \
- fi; \
- done; \
- rev="$$rev ."; \
- target=`echo $@ | sed s/-recursive//`; \
- for subdir in $$rev; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done && test -z "$$fail"
-tags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- done
-ctags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
- include_option=--etags-include; \
- empty_fix=.; \
- else \
- include_option=--include; \
- empty_fix=; \
- fi; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test ! -f $$subdir/TAGS || \
- set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
- fi; \
- done; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- test -d "$(distdir)" || mkdir "$(distdir)"
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
- $(am__relativize); \
- new_distdir=$$reldir; \
- dir1=$$subdir; dir2="$(top_distdir)"; \
- $(am__relativize); \
- new_top_distdir=$$reldir; \
- echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
- echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
- ($(am__cd) $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$new_top_distdir" \
- distdir="$$new_distdir" \
- am__remove_distdir=: \
- am__skip_length_check=: \
- am__skip_mode_fix=: \
- distdir) \
- || exit 1; \
- fi; \
- done
- -test -n "$(am__skip_mode_fix)" \
- || find "$(distdir)" -type d ! -perm -755 \
- -exec chmod u+rwx,go+rx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r "$(distdir)"
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-lzma: distdir
- tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
- $(am__remove_distdir)
-
-dist-xz: distdir
- tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.lzma*) \
- lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
- *.tar.xz*) \
- xz -dc $(distdir).tar.xz | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- test -d $(distdir)/_build || exit 0; \
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && am__cwd=`pwd` \
- && $(am__cd) $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
- && cd "$$am__cwd" \
- || exit 1
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
-distuninstallcheck:
- @$(am__cd) '$(distuninstallcheck_dir)' \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
-check-am: all-am
-check: check-recursive
-all-am: Makefile
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-recursive
-
-clean-am: clean-generic clean-libtool clean-local mostlyclean-am
-
-distclean: distclean-recursive
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-hdr \
- distclean-libtool distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html: html-recursive
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -rf $(top_srcdir)/autom4te.cache
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-recursive
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am am--refresh check check-am clean clean-generic \
- clean-libtool clean-local ctags ctags-recursive dist dist-all \
- dist-bzip2 dist-gzip dist-lzma dist-shar dist-tarZ dist-xz \
- dist-zip distcheck distclean distclean-generic distclean-hdr \
- distclean-libtool distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
- ps ps-am tags tags-recursive uninstall uninstall-am
-
-
-clean-local:
- find . -name '*~' -print0 | xargs -0 rm -f
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/aclocal.m4 b/aclocal.m4
deleted file mode 100644
index 89f4e43..0000000
--- a/aclocal.m4
+++ /dev/null
@@ -1,9123 +0,0 @@
-# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.67],,
-[m4_warning([this file was generated for autoconf 2.67.
-You have another version of autoconf. It may work, but is not guaranteed to.
-If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically `autoreconf'.])])
-
-# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
-#
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gordon Matzigkeit, 1996
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-m4_define([_LT_COPYING], [dnl
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gordon Matzigkeit, 1996
-#
-# This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
-#
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING. If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-])
-
-# serial 56 LT_INIT
-
-
-# LT_PREREQ(VERSION)
-# ------------------
-# Complain and exit if this libtool version is less that VERSION.
-m4_defun([LT_PREREQ],
-[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
- [m4_default([$3],
- [m4_fatal([Libtool version $1 or higher is required],
- 63)])],
- [$2])])
-
-
-# _LT_CHECK_BUILDDIR
-# ------------------
-# Complain if the absolute build directory name contains unusual characters
-m4_defun([_LT_CHECK_BUILDDIR],
-[case `pwd` in
- *\ * | *\ *)
- AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
-esac
-])
-
-
-# LT_INIT([OPTIONS])
-# ------------------
-AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
-AC_BEFORE([$0], [LT_LANG])dnl
-AC_BEFORE([$0], [LT_OUTPUT])dnl
-AC_BEFORE([$0], [LTDL_INIT])dnl
-m4_require([_LT_CHECK_BUILDDIR])dnl
-
-dnl Autoconf doesn't catch unexpanded LT_ macros by default:
-m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
-m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
-dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
-dnl unless we require an AC_DEFUNed macro:
-AC_REQUIRE([LTOPTIONS_VERSION])dnl
-AC_REQUIRE([LTSUGAR_VERSION])dnl
-AC_REQUIRE([LTVERSION_VERSION])dnl
-AC_REQUIRE([LTOBSOLETE_VERSION])dnl
-m4_require([_LT_PROG_LTMAIN])dnl
-
-dnl Parse OPTIONS
-_LT_SET_OPTIONS([$0], [$1])
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-AC_SUBST(LIBTOOL)dnl
-
-_LT_SETUP
-
-# Only expand once:
-m4_define([LT_INIT])
-])# LT_INIT
-
-# Old names:
-AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
-AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
-dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
-
-
-# _LT_CC_BASENAME(CC)
-# -------------------
-# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
-m4_defun([_LT_CC_BASENAME],
-[for cc_temp in $1""; do
- case $cc_temp in
- compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
- distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
- \-*) ;;
- *) break;;
- esac
-done
-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
-])
-
-
-# _LT_FILEUTILS_DEFAULTS
-# ----------------------
-# It is okay to use these file commands and assume they have been set
-# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
-m4_defun([_LT_FILEUTILS_DEFAULTS],
-[: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-])# _LT_FILEUTILS_DEFAULTS
-
-
-# _LT_SETUP
-# ---------
-m4_defun([_LT_SETUP],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-_LT_DECL([], [host_alias], [0], [The host system])dnl
-_LT_DECL([], [host], [0])dnl
-_LT_DECL([], [host_os], [0])dnl
-dnl
-_LT_DECL([], [build_alias], [0], [The build system])dnl
-_LT_DECL([], [build], [0])dnl
-_LT_DECL([], [build_os], [0])dnl
-dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-dnl
-AC_REQUIRE([AC_PROG_LN_S])dnl
-test -z "$LN_S" && LN_S="ln -s"
-_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
-dnl
-AC_REQUIRE([LT_CMD_MAX_LEN])dnl
-_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
-_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
-dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
-m4_require([_LT_CMD_RELOAD])dnl
-m4_require([_LT_CHECK_MAGIC_METHOD])dnl
-m4_require([_LT_CMD_OLD_ARCHIVE])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-
-_LT_CONFIG_LIBTOOL_INIT([
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-])
-if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-
-_LT_CHECK_OBJDIR
-
-m4_require([_LT_TAG_COMPILER])dnl
-_LT_PROG_ECHO_BACKSLASH
-
-case $host_os in
-aix3*)
- # AIX sometimes has problems with the GCC collect2 program. For some
- # reason, if we set the COLLECT_NAMES environment variable, the problems
- # vanish in a puff of smoke.
- if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
- fi
- ;;
-esac
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\([["`\\]]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-_LT_CC_BASENAME([$compiler])
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
- if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- _LT_PATH_MAGIC
- fi
- ;;
-esac
-
-# Use C for the default configuration in the libtool script
-LT_SUPPORTED_TAG([CC])
-_LT_LANG_C_CONFIG
-_LT_LANG_DEFAULT_CONFIG
-_LT_CONFIG_COMMANDS
-])# _LT_SETUP
-
-
-# _LT_PROG_LTMAIN
-# ---------------
-# Note that this code is called both from `configure', and `config.status'
-# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
-# `config.status' has no value for ac_aux_dir unless we are using Automake,
-# so we pass a copy along to make sure it has a sensible value anyway.
-m4_defun([_LT_PROG_LTMAIN],
-[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
-_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
-ltmain="$ac_aux_dir/ltmain.sh"
-])# _LT_PROG_LTMAIN
-
-
-
-# So that we can recreate a full libtool script including additional
-# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
-# in macros and then make a single call at the end using the `libtool'
-# label.
-
-
-# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
-# ----------------------------------------
-# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL_INIT],
-[m4_ifval([$1],
- [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
- [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_INIT])
-
-
-# _LT_CONFIG_LIBTOOL([COMMANDS])
-# ------------------------------
-# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL],
-[m4_ifval([$1],
- [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
- [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
-
-
-# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
-# -----------------------------------------------------
-m4_defun([_LT_CONFIG_SAVE_COMMANDS],
-[_LT_CONFIG_LIBTOOL([$1])
-_LT_CONFIG_LIBTOOL_INIT([$2])
-])
-
-
-# _LT_FORMAT_COMMENT([COMMENT])
-# -----------------------------
-# Add leading comment marks to the start of each line, and a trailing
-# full-stop to the whole comment if one is not present already.
-m4_define([_LT_FORMAT_COMMENT],
-[m4_ifval([$1], [
-m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
- [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
-)])
-
-
-
-
-
-# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
-# -------------------------------------------------------------------
-# CONFIGNAME is the name given to the value in the libtool script.
-# VARNAME is the (base) name used in the configure script.
-# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
-# VARNAME. Any other value will be used directly.
-m4_define([_LT_DECL],
-[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
- [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
- [m4_ifval([$1], [$1], [$2])])
- lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
- m4_ifval([$4],
- [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
- lt_dict_add_subkey([lt_decl_dict], [$2],
- [tagged?], [m4_ifval([$5], [yes], [no])])])
-])
-
-
-# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
-# --------------------------------------------------------
-m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
-
-
-# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_tag_varnames],
-[_lt_decl_filter([tagged?], [yes], $@)])
-
-
-# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
-# ---------------------------------------------------------
-m4_define([_lt_decl_filter],
-[m4_case([$#],
- [0], [m4_fatal([$0: too few arguments: $#])],
- [1], [m4_fatal([$0: too few arguments: $#: $1])],
- [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
- [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
- [lt_dict_filter([lt_decl_dict], $@)])[]dnl
-])
-
-
-# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
-# --------------------------------------------------
-m4_define([lt_decl_quote_varnames],
-[_lt_decl_filter([value], [1], $@)])
-
-
-# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_dquote_varnames],
-[_lt_decl_filter([value], [2], $@)])
-
-
-# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_varnames_tagged],
-[m4_assert([$# <= 2])dnl
-_$0(m4_quote(m4_default([$1], [[, ]])),
- m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
- m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
-m4_define([_lt_decl_varnames_tagged],
-[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
-
-
-# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_all_varnames],
-[_$0(m4_quote(m4_default([$1], [[, ]])),
- m4_if([$2], [],
- m4_quote(lt_decl_varnames),
- m4_quote(m4_shift($@))))[]dnl
-])
-m4_define([_lt_decl_all_varnames],
-[lt_join($@, lt_decl_varnames_tagged([$1],
- lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
-])
-
-
-# _LT_CONFIG_STATUS_DECLARE([VARNAME])
-# ------------------------------------
-# Quote a variable value, and forward it to `config.status' so that its
-# declaration there will have the same value as in `configure'. VARNAME
-# must have a single quote delimited value for this to work.
-m4_define([_LT_CONFIG_STATUS_DECLARE],
-[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
-
-
-# _LT_CONFIG_STATUS_DECLARATIONS
-# ------------------------------
-# We delimit libtool config variables with single quotes, so when
-# we write them to config.status, we have to be sure to quote all
-# embedded single quotes properly. In configure, this macro expands
-# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
-#
-# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
-m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
- [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAGS
-# ----------------
-# Output comment and list of tags supported by the script
-m4_defun([_LT_LIBTOOL_TAGS],
-[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
-available_tags="_LT_TAGS"dnl
-])
-
-
-# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
-# -----------------------------------
-# Extract the dictionary values for VARNAME (optionally with TAG) and
-# expand to a commented shell variable setting:
-#
-# # Some comment about what VAR is for.
-# visible_name=$lt_internal_name
-m4_define([_LT_LIBTOOL_DECLARE],
-[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
- [description])))[]dnl
-m4_pushdef([_libtool_name],
- m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
-m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
- [0], [_libtool_name=[$]$1],
- [1], [_libtool_name=$lt_[]$1],
- [2], [_libtool_name=$lt_[]$1],
- [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
-m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
-])
-
-
-# _LT_LIBTOOL_CONFIG_VARS
-# -----------------------
-# Produce commented declarations of non-tagged libtool config variables
-# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
-# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
-# section) are produced by _LT_LIBTOOL_TAG_VARS.
-m4_defun([_LT_LIBTOOL_CONFIG_VARS],
-[m4_foreach([_lt_var],
- m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
- [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAG_VARS(TAG)
-# -------------------------
-m4_define([_LT_LIBTOOL_TAG_VARS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
- [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
-
-
-# _LT_TAGVAR(VARNAME, [TAGNAME])
-# ------------------------------
-m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
-
-
-# _LT_CONFIG_COMMANDS
-# -------------------
-# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
-# variables for single and double quote escaping we saved from calls
-# to _LT_DECL, we can put quote escaped variables declarations
-# into `config.status', and then the shell code to quote escape them in
-# for loops in `config.status'. Finally, any additional code accumulated
-# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
-m4_defun([_LT_CONFIG_COMMANDS],
-[AC_PROVIDE_IFELSE([LT_OUTPUT],
- dnl If the libtool generation code has been placed in $CONFIG_LT,
- dnl instead of duplicating it all over again into config.status,
- dnl then we will have config.status run $CONFIG_LT later, so it
- dnl needs to know what name is stored there:
- [AC_CONFIG_COMMANDS([libtool],
- [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
- dnl If the libtool generation code is destined for config.status,
- dnl expand the accumulated commands and init code now:
- [AC_CONFIG_COMMANDS([libtool],
- [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
-])#_LT_CONFIG_COMMANDS
-
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
-[
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-sed_quote_subst='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-_LT_CONFIG_STATUS_DECLARATIONS
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# Quote evaled strings.
-for var in lt_decl_all_varnames([[ \
-]], lt_decl_quote_varnames); do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[[\\\\\\\`\\"\\\$]]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Double-quote double-evaled strings.
-for var in lt_decl_all_varnames([[ \
-]], lt_decl_dquote_varnames); do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[[\\\\\\\`\\"\\\$]]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Fix-up fallback echo if it was mangled by the above quoting rules.
-case \$lt_ECHO in
-*'\\\[$]0 --fallback-echo"')dnl "
- lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
- ;;
-esac
-
-_LT_OUTPUT_LIBTOOL_INIT
-])
-
-
-# LT_OUTPUT
-# ---------
-# This macro allows early generation of the libtool script (before
-# AC_OUTPUT is called), incase it is used in configure for compilation
-# tests.
-AC_DEFUN([LT_OUTPUT],
-[: ${CONFIG_LT=./config.lt}
-AC_MSG_NOTICE([creating $CONFIG_LT])
-cat >"$CONFIG_LT" <<_LTEOF
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate a libtool stub with the current configuration.
-
-lt_cl_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AS_SHELL_SANITIZE
-_AS_PREPARE
-
-exec AS_MESSAGE_FD>&1
-exec AS_MESSAGE_LOG_FD>>config.log
-{
- echo
- AS_BOX([Running $as_me.])
-} >&AS_MESSAGE_LOG_FD
-
-lt_cl_help="\
-\`$as_me' creates a local libtool stub from the current configuration,
-for use in further configure time tests before the real libtool is
-generated.
-
-Usage: $[0] [[OPTIONS]]
-
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -q, --quiet do not print progress messages
- -d, --debug don't remove temporary files
-
-Report bugs to <bug-libtool at gnu.org>."
-
-lt_cl_version="\
-m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
-m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
-configured by $[0], generated by m4_PACKAGE_STRING.
-
-Copyright (C) 2008 Free Software Foundation, Inc.
-This config.lt script is free software; the Free Software Foundation
-gives unlimited permision to copy, distribute and modify it."
-
-while test $[#] != 0
-do
- case $[1] in
- --version | --v* | -V )
- echo "$lt_cl_version"; exit 0 ;;
- --help | --h* | -h )
- echo "$lt_cl_help"; exit 0 ;;
- --debug | --d* | -d )
- debug=: ;;
- --quiet | --q* | --silent | --s* | -q )
- lt_cl_silent=: ;;
-
- -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try \`$[0] --help' for more information.]) ;;
-
- *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try \`$[0] --help' for more information.]) ;;
- esac
- shift
-done
-
-if $lt_cl_silent; then
- exec AS_MESSAGE_FD>/dev/null
-fi
-_LTEOF
-
-cat >>"$CONFIG_LT" <<_LTEOF
-_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AC_MSG_NOTICE([creating $ofile])
-_LT_OUTPUT_LIBTOOL_COMMANDS
-AS_EXIT(0)
-_LTEOF
-chmod +x "$CONFIG_LT"
-
-# configure is writing to config.log, but config.lt does its own redirection,
-# appending to config.log, which fails on DOS, as config.log is still kept
-# open by configure. Here we exec the FD to /dev/null, effectively closing
-# config.log, so it can be properly (re)opened and appended to by config.lt.
-if test "$no_create" != yes; then
- lt_cl_success=:
- test "$silent" = yes &&
- lt_config_lt_args="$lt_config_lt_args --quiet"
- exec AS_MESSAGE_LOG_FD>/dev/null
- $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
- exec AS_MESSAGE_LOG_FD>>config.log
- $lt_cl_success || AS_EXIT(1)
-fi
-])# LT_OUTPUT
-
-
-# _LT_CONFIG(TAG)
-# ---------------
-# If TAG is the built-in tag, create an initial libtool script with a
-# default configuration from the untagged config vars. Otherwise add code
-# to config.status for appending the configuration named by TAG from the
-# matching tagged config vars.
-m4_defun([_LT_CONFIG],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_CONFIG_SAVE_COMMANDS([
- m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
- m4_if(_LT_TAG, [C], [
- # See if we are running on zsh, and set the options which allow our
- # commands through without removal of \ escapes.
- if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
- fi
-
- cfgfile="${ofile}T"
- trap "$RM \"$cfgfile\"; exit 1" 1 2 15
- $RM "$cfgfile"
-
- cat <<_LT_EOF >> "$cfgfile"
-#! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-#
-_LT_COPYING
-_LT_LIBTOOL_TAGS
-
-# ### BEGIN LIBTOOL CONFIG
-_LT_LIBTOOL_CONFIG_VARS
-_LT_LIBTOOL_TAG_VARS
-# ### END LIBTOOL CONFIG
-
-_LT_EOF
-
- case $host_os in
- aix3*)
- cat <<\_LT_EOF >> "$cfgfile"
-# AIX sometimes has problems with the GCC collect2 program. For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
-fi
-_LT_EOF
- ;;
- esac
-
- _LT_PROG_LTMAIN
-
- # We use sed instead of cat because bash on DJGPP gets confused if
- # if finds mixed CR/LF and LF-only lines. Since sed operates in
- # text mode, it properly converts lines to CR/LF. This bash problem
- # is reportedly fixed, but why not run on old versions too?
- sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- _LT_PROG_XSI_SHELLFNS
-
- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- mv -f "$cfgfile" "$ofile" ||
- (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
- chmod +x "$ofile"
-],
-[cat <<_LT_EOF >> "$ofile"
-
-dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
-dnl in a comment (ie after a #).
-# ### BEGIN LIBTOOL TAG CONFIG: $1
-_LT_LIBTOOL_TAG_VARS(_LT_TAG)
-# ### END LIBTOOL TAG CONFIG: $1
-_LT_EOF
-])dnl /m4_if
-],
-[m4_if([$1], [], [
- PACKAGE='$PACKAGE'
- VERSION='$VERSION'
- TIMESTAMP='$TIMESTAMP'
- RM='$RM'
- ofile='$ofile'], [])
-])dnl /_LT_CONFIG_SAVE_COMMANDS
-])# _LT_CONFIG
-
-
-# LT_SUPPORTED_TAG(TAG)
-# ---------------------
-# Trace this macro to discover what tags are supported by the libtool
-# --tag option, using:
-# autoconf --trace 'LT_SUPPORTED_TAG:$1'
-AC_DEFUN([LT_SUPPORTED_TAG], [])
-
-
-# C support is built-in for now
-m4_define([_LT_LANG_C_enabled], [])
-m4_define([_LT_TAGS], [])
-
-
-# LT_LANG(LANG)
-# -------------
-# Enable libtool support for the given language if not already enabled.
-AC_DEFUN([LT_LANG],
-[AC_BEFORE([$0], [LT_OUTPUT])dnl
-m4_case([$1],
- [C], [_LT_LANG(C)],
- [C++], [_LT_LANG(CXX)],
- [Java], [_LT_LANG(GCJ)],
- [Fortran 77], [_LT_LANG(F77)],
- [Fortran], [_LT_LANG(FC)],
- [Windows Resource], [_LT_LANG(RC)],
- [m4_ifdef([_LT_LANG_]$1[_CONFIG],
- [_LT_LANG($1)],
- [m4_fatal([$0: unsupported language: "$1"])])])dnl
-])# LT_LANG
-
-
-# _LT_LANG(LANGNAME)
-# ------------------
-m4_defun([_LT_LANG],
-[m4_ifdef([_LT_LANG_]$1[_enabled], [],
- [LT_SUPPORTED_TAG([$1])dnl
- m4_append([_LT_TAGS], [$1 ])dnl
- m4_define([_LT_LANG_]$1[_enabled], [])dnl
- _LT_LANG_$1_CONFIG($1)])dnl
-])# _LT_LANG
-
-
-# _LT_LANG_DEFAULT_CONFIG
-# -----------------------
-m4_defun([_LT_LANG_DEFAULT_CONFIG],
-[AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [LT_LANG(CXX)],
- [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_F77],
- [LT_LANG(F77)],
- [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_FC],
- [LT_LANG(FC)],
- [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
-
-dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
-dnl pulling things in needlessly.
-AC_PROVIDE_IFELSE([AC_PROG_GCJ],
- [LT_LANG(GCJ)],
- [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
- [LT_LANG(GCJ)],
- [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
- [LT_LANG(GCJ)],
- [m4_ifdef([AC_PROG_GCJ],
- [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
- m4_ifdef([A][M_PROG_GCJ],
- [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
- m4_ifdef([LT_PROG_GCJ],
- [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
-
-AC_PROVIDE_IFELSE([LT_PROG_RC],
- [LT_LANG(RC)],
- [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
-])# _LT_LANG_DEFAULT_CONFIG
-
-# Obsolete macros:
-AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
-AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
-AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
-AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
-dnl AC_DEFUN([AC_LIBTOOL_F77], [])
-dnl AC_DEFUN([AC_LIBTOOL_FC], [])
-dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
-
-
-# _LT_TAG_COMPILER
-# ----------------
-m4_defun([_LT_TAG_COMPILER],
-[AC_REQUIRE([AC_PROG_CC])dnl
-
-_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
-_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
-_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
-_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-])# _LT_TAG_COMPILER
-
-
-# _LT_COMPILER_BOILERPLATE
-# ------------------------
-# Check for compiler boilerplate output or warnings with
-# the simple compiler test code.
-m4_defun([_LT_COMPILER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-])# _LT_COMPILER_BOILERPLATE
-
-
-# _LT_LINKER_BOILERPLATE
-# ----------------------
-# Check for linker boilerplate output or warnings with
-# the simple link test code.
-m4_defun([_LT_LINKER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-])# _LT_LINKER_BOILERPLATE
-
-# _LT_REQUIRED_DARWIN_CHECKS
-# -------------------------
-m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
- case $host_os in
- rhapsody* | darwin*)
- AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
- AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
- AC_CHECK_TOOL([LIPO], [lipo], [:])
- AC_CHECK_TOOL([OTOOL], [otool], [:])
- AC_CHECK_TOOL([OTOOL64], [otool64], [:])
- _LT_DECL([], [DSYMUTIL], [1],
- [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
- _LT_DECL([], [NMEDIT], [1],
- [Tool to change global to local symbols on Mac OS X])
- _LT_DECL([], [LIPO], [1],
- [Tool to manipulate fat objects and archives on Mac OS X])
- _LT_DECL([], [OTOOL], [1],
- [ldd/readelf like tool for Mach-O binaries on Mac OS X])
- _LT_DECL([], [OTOOL64], [1],
- [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
-
- AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
- [lt_cv_apple_cc_single_mod=no
- if test -z "${LT_MULTI_MODULE}"; then
- # By default we will add the -single_module flag. You can override
- # by either setting the environment variable LT_MULTI_MODULE
- # non-empty at configure time, or by adding -multi_module to the
- # link flags.
- rm -rf libconftest.dylib*
- echo "int foo(void){return 1;}" > conftest.c
- echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
- $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
- -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
- _lt_result=$?
- if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
- lt_cv_apple_cc_single_mod=yes
- else
- cat conftest.err >&AS_MESSAGE_LOG_FD
- fi
- rm -rf libconftest.dylib*
- rm -f conftest.*
- fi])
- AC_CACHE_CHECK([for -exported_symbols_list linker flag],
- [lt_cv_ld_exported_symbols_list],
- [lt_cv_ld_exported_symbols_list=no
- save_LDFLAGS=$LDFLAGS
- echo "_main" > conftest.sym
- LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
- AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
- [lt_cv_ld_exported_symbols_list=yes],
- [lt_cv_ld_exported_symbols_list=no])
- LDFLAGS="$save_LDFLAGS"
- ])
- case $host_os in
- rhapsody* | darwin1.[[012]])
- _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
- darwin1.*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- darwin*) # darwin 5.x on
- # if running on 10.5 or later, the deployment target defaults
- # to the OS version, if on x86, and 10.4, the deployment
- # target defaults to 10.4. Don't you love it?
- case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
- 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- 10.[[012]]*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- 10.*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- esac
- ;;
- esac
- if test "$lt_cv_apple_cc_single_mod" = "yes"; then
- _lt_dar_single_mod='$single_module'
- fi
- if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
- _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
- else
- _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
- fi
- if test "$DSYMUTIL" != ":"; then
- _lt_dsymutil='~$DSYMUTIL $lib || :'
- else
- _lt_dsymutil=
- fi
- ;;
- esac
-])
-
-
-# _LT_DARWIN_LINKER_FEATURES
-# --------------------------
-# Checks for linker and compiler features on darwin
-m4_defun([_LT_DARWIN_LINKER_FEATURES],
-[
- m4_require([_LT_REQUIRED_DARWIN_CHECKS])
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_automatic, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- _LT_TAGVAR(whole_archive_flag_spec, $1)=''
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
- case $cc_basename in
- ifort*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test "$_lt_dar_can_shared" = "yes"; then
- output_verbose_link_cmd=echo
- _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
- _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
- _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
- _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
- m4_if([$1], [CXX],
-[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
- _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
- _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
- fi
-],[])
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
-])
-
-# _LT_SYS_MODULE_PATH_AIX
-# -----------------------
-# Links a minimal program and checks the executable
-# for the system default hardcoded library path. In most cases,
-# this is /usr/lib:/lib, but when the MPI compilers are used
-# the location of the communication and MPI libs are included too.
-# If we don't find anything, use the default library path according
-# to the aix ld manual.
-m4_defun([_LT_SYS_MODULE_PATH_AIX],
-[m4_require([_LT_DECL_SED])dnl
-AC_LINK_IFELSE(AC_LANG_PROGRAM,[
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi],[])
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-])# _LT_SYS_MODULE_PATH_AIX
-
-
-# _LT_SHELL_INIT(ARG)
-# -------------------
-m4_define([_LT_SHELL_INIT],
-[ifdef([AC_DIVERSION_NOTICE],
- [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
- [AC_DIVERT_PUSH(NOTICE)])
-$1
-AC_DIVERT_POP
-])# _LT_SHELL_INIT
-
-
-# _LT_PROG_ECHO_BACKSLASH
-# -----------------------
-# Add some code to the start of the generated configure script which
-# will find an echo command which doesn't interpret backslashes.
-m4_defun([_LT_PROG_ECHO_BACKSLASH],
-[_LT_SHELL_INIT([
-# Check that we are running under the correct shell.
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-case X$lt_ECHO in
-X*--fallback-echo)
- # Remove one level of quotation (which was required for Make).
- ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
- ;;
-esac
-
-ECHO=${lt_ECHO-echo}
-if test "X[$]1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X[$]1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
- # Yippee, $ECHO works!
- :
-else
- # Restart under the correct shell.
- exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
-fi
-
-if test "X[$]1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<_LT_EOF
-[$]*
-_LT_EOF
- exit 0
-fi
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test -z "$lt_ECHO"; then
- if test "X${echo_test_string+set}" != Xset; then
- # find a string as large as possible, as long as the shell can cope with it
- for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
- # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
- { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
- then
- break
- fi
- done
- fi
-
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- :
- else
- # The Solaris, AIX, and Digital Unix default echo programs unquote
- # backslashes. This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- #
- # So, first we look for a working echo in the user's PATH.
-
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for dir in $PATH /usr/ucb; do
- IFS="$lt_save_ifs"
- if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
- test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$dir/echo"
- break
- fi
- done
- IFS="$lt_save_ifs"
-
- if test "X$ECHO" = Xecho; then
- # We didn't find a better echo, so look for alternatives.
- if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # This shell has a builtin print -r that does the trick.
- ECHO='print -r'
- elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
- test "X$CONFIG_SHELL" != X/bin/ksh; then
- # If we have ksh, try running configure again with it.
- ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
- export ORIGINAL_CONFIG_SHELL
- CONFIG_SHELL=/bin/ksh
- export CONFIG_SHELL
- exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
- else
- # Try using printf.
- ECHO='printf %s\n'
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # Cool, printf works
- :
- elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
- export CONFIG_SHELL
- SHELL="$CONFIG_SHELL"
- export SHELL
- ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
- elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
- else
- # maybe with a smaller string...
- prev=:
-
- for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
- if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
- then
- break
- fi
- prev="$cmd"
- done
-
- if test "$prev" != 'sed 50q "[$]0"'; then
- echo_test_string=`eval $prev`
- export echo_test_string
- exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
- else
- # Oops. We lost completely, so just stick with echo.
- ECHO=echo
- fi
- fi
- fi
- fi
- fi
-fi
-
-# Copy echo and quote the copy suitably for passing to libtool from
-# the Makefile, instead of quoting the original, which is used later.
-lt_ECHO=$ECHO
-if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
- lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
-fi
-
-AC_SUBST(lt_ECHO)
-])
-_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
-_LT_DECL([], [ECHO], [1],
- [An echo program that does not interpret backslashes])
-])# _LT_PROG_ECHO_BACKSLASH
-
-
-# _LT_ENABLE_LOCK
-# ---------------
-m4_defun([_LT_ENABLE_LOCK],
-[AC_ARG_ENABLE([libtool-lock],
- [AS_HELP_STRING([--disable-libtool-lock],
- [avoid locking (might break parallel builds)])])
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.$ac_objext` in
- *ELF-32*)
- HPUX_IA64_MODE="32"
- ;;
- *ELF-64*)
- HPUX_IA64_MODE="64"
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-*-*-irix6*)
- # Find out which ABI we are using.
- echo '[#]line __oline__ "configure"' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- if test "$lt_cv_prog_gnu_ld" = yes; then
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -melf32bsmip"
- ;;
- *N32*)
- LD="${LD-ld} -melf32bmipn32"
- ;;
- *64-bit*)
- LD="${LD-ld} -melf64bmip"
- ;;
- esac
- else
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -32"
- ;;
- *N32*)
- LD="${LD-ld} -n32"
- ;;
- *64-bit*)
- LD="${LD-ld} -64"
- ;;
- esac
- fi
- fi
- rm -rf conftest*
- ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.o` in
- *32-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_i386_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_i386"
- ;;
- ppc64-*linux*|powerpc64-*linux*)
- LD="${LD-ld} -m elf32ppclinux"
- ;;
- s390x-*linux*)
- LD="${LD-ld} -m elf_s390"
- ;;
- sparc64-*linux*)
- LD="${LD-ld} -m elf32_sparc"
- ;;
- esac
- ;;
- *64-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_x86_64_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_x86_64"
- ;;
- ppc*-*linux*|powerpc*-*linux*)
- LD="${LD-ld} -m elf64ppc"
- ;;
- s390*-*linux*|s390*-*tpf*)
- LD="${LD-ld} -m elf64_s390"
- ;;
- sparc*-*linux*)
- LD="${LD-ld} -m elf64_sparc"
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
-*-*-sco3.2v5*)
- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -belf"
- AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
- [AC_LANG_PUSH(C)
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
- AC_LANG_POP])
- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
- CFLAGS="$SAVE_CFLAGS"
- fi
- ;;
-sparc*-*solaris*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.o` in
- *64-bit*)
- case $lt_cv_prog_gnu_ld in
- yes*) LD="${LD-ld} -m elf64_sparc" ;;
- *)
- if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
- LD="${LD-ld} -64"
- fi
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-esac
-
-need_locks="$enable_libtool_lock"
-])# _LT_ENABLE_LOCK
-
-
-# _LT_CMD_OLD_ARCHIVE
-# -------------------
-m4_defun([_LT_CMD_OLD_ARCHIVE],
-[AC_CHECK_TOOL(AR, ar, false)
-test -z "$AR" && AR=ar
-test -z "$AR_FLAGS" && AR_FLAGS=cru
-_LT_DECL([], [AR], [1], [The archiver])
-_LT_DECL([], [AR_FLAGS], [1])
-
-AC_CHECK_TOOL(STRIP, strip, :)
-test -z "$STRIP" && STRIP=:
-_LT_DECL([], [STRIP], [1], [A symbol stripping program])
-
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-test -z "$RANLIB" && RANLIB=:
-_LT_DECL([], [RANLIB], [1],
- [Commands used to install an old-style archive])
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
- case $host_os in
- openbsd*)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
- ;;
- *)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
- ;;
- esac
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-_LT_DECL([], [old_postinstall_cmds], [2])
-_LT_DECL([], [old_postuninstall_cmds], [2])
-_LT_TAGDECL([], [old_archive_cmds], [2],
- [Commands used to build an old-style archive])
-])# _LT_CMD_OLD_ARCHIVE
-
-
-# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------------------
-# Check whether the given compiler option works
-AC_DEFUN([_LT_COMPILER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
- [$2=no
- m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$3"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&AS_MESSAGE_LOG_FD
- echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- $2=yes
- fi
- fi
- $RM conftest*
-])
-
-if test x"[$]$2" = xyes; then
- m4_if([$5], , :, [$5])
-else
- m4_if([$6], , :, [$6])
-fi
-])# _LT_COMPILER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
-
-
-# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-# [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------
-# Check whether the given linker option works
-AC_DEFUN([_LT_LINKER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
- [$2=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $3"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&AS_MESSAGE_LOG_FD
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- $2=yes
- fi
- else
- $2=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-])
-
-if test x"[$]$2" = xyes; then
- m4_if([$4], , :, [$4])
-else
- m4_if([$5], , :, [$5])
-fi
-])# _LT_LINKER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
-
-
-# LT_CMD_MAX_LEN
-#---------------
-AC_DEFUN([LT_CMD_MAX_LEN],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-# find the maximum length of command line arguments
-AC_MSG_CHECKING([the maximum length of command line arguments])
-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
- i=0
- teststring="ABCD"
-
- case $build_os in
- msdosdjgpp*)
- # On DJGPP, this test can blow up pretty badly due to problems in libc
- # (any single argument exceeding 2000 bytes causes a buffer overrun
- # during glob expansion). Even if it were fixed, the result of this
- # check would be larger than it should be.
- lt_cv_sys_max_cmd_len=12288; # 12K is about right
- ;;
-
- gnu*)
- # Under GNU Hurd, this test is not required because there is
- # no limit to the length of command line arguments.
- # Libtool will interpret -1 as no limit whatsoever
- lt_cv_sys_max_cmd_len=-1;
- ;;
-
- cygwin* | mingw* | cegcc*)
- # On Win9x/ME, this test blows up -- it succeeds, but takes
- # about 5 minutes as the teststring grows exponentially.
- # Worse, since 9x/ME are not pre-emptively multitasking,
- # you end up with a "frozen" computer, even though with patience
- # the test eventually succeeds (with a max line length of 256k).
- # Instead, let's just punt: use the minimum linelength reported by
- # all of the supported platforms: 8192 (on NT/2K/XP).
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- amigaos*)
- # On AmigaOS with pdksh, this test takes hours, literally.
- # So we just punt and use a minimum line length of 8192.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
- # This has been around since 386BSD, at least. Likely further.
- if test -x /sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
- elif test -x /usr/sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
- else
- lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
- fi
- # And add a safety zone
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- ;;
-
- interix*)
- # We know the value 262144 and hardcode it with a safety zone (like BSD)
- lt_cv_sys_max_cmd_len=196608
- ;;
-
- osf*)
- # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
- # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
- # nice to cause kernel panics so lets avoid the loop below.
- # First set a reasonable default.
- lt_cv_sys_max_cmd_len=16384
- #
- if test -x /sbin/sysconfig; then
- case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
- *1*) lt_cv_sys_max_cmd_len=-1 ;;
- esac
- fi
- ;;
- sco3.2v5*)
- lt_cv_sys_max_cmd_len=102400
- ;;
- sysv5* | sco5v6* | sysv4.2uw2*)
- kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
- if test -n "$kargmax"; then
- lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
- else
- lt_cv_sys_max_cmd_len=32768
- fi
- ;;
- *)
- lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
- if test -n "$lt_cv_sys_max_cmd_len"; then
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- else
- # Make teststring a little bigger before we do anything with it.
- # a 1K string should be a reasonable start.
- for i in 1 2 3 4 5 6 7 8 ; do
- teststring=$teststring$teststring
- done
- SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
- # If test is not a shell built-in, we'll probably end up computing a
- # maximum length that is only half of the actual maximum length, but
- # we can't tell.
- while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
- = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
- test $i != 17 # 1/2 MB should be enough
- do
- i=`expr $i + 1`
- teststring=$teststring$teststring
- done
- # Only check the string length outside the loop.
- lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
- teststring=
- # Add a significant safety factor because C++ compilers can tack on
- # massive amounts of additional arguments before passing them to the
- # linker. It appears as though 1/2 is a usable value.
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
- fi
- ;;
- esac
-])
-if test -n $lt_cv_sys_max_cmd_len ; then
- AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
-else
- AC_MSG_RESULT(none)
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-_LT_DECL([], [max_cmd_len], [0],
- [What is the maximum length of a command?])
-])# LT_CMD_MAX_LEN
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
-
-
-# _LT_HEADER_DLFCN
-# ----------------
-m4_defun([_LT_HEADER_DLFCN],
-[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
-])# _LT_HEADER_DLFCN
-
-
-# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
-# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-# ----------------------------------------------------------------
-m4_defun([_LT_TRY_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test "$cross_compiling" = yes; then :
- [$4]
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-[#line __oline__ "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}]
-_LT_EOF
- if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) $1 ;;
- x$lt_dlneed_uscore) $2 ;;
- x$lt_dlunknown|x*) $3 ;;
- esac
- else :
- # compilation failed
- $3
- fi
-fi
-rm -fr conftest*
-])# _LT_TRY_DLOPEN_SELF
-
-
-# LT_SYS_DLOPEN_SELF
-# ------------------
-AC_DEFUN([LT_SYS_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test "x$enable_dlopen" != xyes; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
- lt_cv_dlopen=no
- lt_cv_dlopen_libs=
-
- case $host_os in
- beos*)
- lt_cv_dlopen="load_add_on"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
- mingw* | pw32* | cegcc*)
- lt_cv_dlopen="LoadLibrary"
- lt_cv_dlopen_libs=
- ;;
-
- cygwin*)
- lt_cv_dlopen="dlopen"
- lt_cv_dlopen_libs=
- ;;
-
- darwin*)
- # if libdl is installed we need to link against it
- AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
- lt_cv_dlopen="dyld"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ])
- ;;
-
- *)
- AC_CHECK_FUNC([shl_load],
- [lt_cv_dlopen="shl_load"],
- [AC_CHECK_LIB([dld], [shl_load],
- [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
- [AC_CHECK_FUNC([dlopen],
- [lt_cv_dlopen="dlopen"],
- [AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
- [AC_CHECK_LIB([svld], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
- [AC_CHECK_LIB([dld], [dld_link],
- [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
- ])
- ])
- ])
- ])
- ])
- ;;
- esac
-
- if test "x$lt_cv_dlopen" != xno; then
- enable_dlopen=yes
- else
- enable_dlopen=no
- fi
-
- case $lt_cv_dlopen in
- dlopen)
- save_CPPFLAGS="$CPPFLAGS"
- test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
- save_LDFLAGS="$LDFLAGS"
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
- save_LIBS="$LIBS"
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- AC_CACHE_CHECK([whether a program can dlopen itself],
- lt_cv_dlopen_self, [dnl
- _LT_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
- lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
- ])
-
- if test "x$lt_cv_dlopen_self" = xyes; then
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
- AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
- lt_cv_dlopen_self_static, [dnl
- _LT_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
- lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
- ])
- fi
-
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
- ;;
- esac
-
- case $lt_cv_dlopen_self in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case $lt_cv_dlopen_self_static in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-_LT_DECL([dlopen_support], [enable_dlopen], [0],
- [Whether dlopen is supported])
-_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
- [Whether dlopen of programs is supported])
-_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
- [Whether dlopen of statically linked programs is supported])
-])# LT_SYS_DLOPEN_SELF
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
-
-
-# _LT_COMPILER_C_O([TAGNAME])
-# ---------------------------
-# Check to see if options -c and -o are simultaneously supported by compiler.
-# This macro does not hard code the compiler like AC_PROG_CC_C_O.
-m4_defun([_LT_COMPILER_C_O],
-[m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
- [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
- [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&AS_MESSAGE_LOG_FD
- echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
- fi
- fi
- chmod u+w . 2>&AS_MESSAGE_LOG_FD
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-])
-_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
- [Does compiler simultaneously support -c and -o options?])
-])# _LT_COMPILER_C_O
-
-
-# _LT_COMPILER_FILE_LOCKS([TAGNAME])
-# ----------------------------------
-# Check to see if we can do hard links to lock some files if needed
-m4_defun([_LT_COMPILER_FILE_LOCKS],
-[m4_require([_LT_ENABLE_LOCK])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_COMPILER_C_O([$1])
-
-hard_links="nottested"
-if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- AC_MSG_CHECKING([if we can lock with hard links])
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- AC_MSG_RESULT([$hard_links])
- if test "$hard_links" = no; then
- AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
-])# _LT_COMPILER_FILE_LOCKS
-
-
-# _LT_CHECK_OBJDIR
-# ----------------
-m4_defun([_LT_CHECK_OBJDIR],
-[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
-[rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
- lt_cv_objdir=.libs
-else
- # MS-DOS does not allow filenames that begin with a dot.
- lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null])
-objdir=$lt_cv_objdir
-_LT_DECL([], [objdir], [0],
- [The name of the directory that contains temporary libtool files])dnl
-m4_pattern_allow([LT_OBJDIR])dnl
-AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
- [Define to the sub-directory in which libtool stores uninstalled libraries.])
-])# _LT_CHECK_OBJDIR
-
-
-# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
-# --------------------------------------
-# Check hardcoding attributes.
-m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
-[AC_MSG_CHECKING([how to hardcode library paths into programs])
-_LT_TAGVAR(hardcode_action, $1)=
-if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
- test -n "$_LT_TAGVAR(runpath_var, $1)" ||
- test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
-
- # We can hardcode non-existent directories.
- if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
- test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
- # Linking always hardcodes the temporary library directory.
- _LT_TAGVAR(hardcode_action, $1)=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- _LT_TAGVAR(hardcode_action, $1)=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- _LT_TAGVAR(hardcode_action, $1)=unsupported
-fi
-AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
-
-if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
- test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-_LT_TAGDECL([], [hardcode_action], [0],
- [How to hardcode a shared library path into an executable])
-])# _LT_LINKER_HARDCODE_LIBPATH
-
-
-# _LT_CMD_STRIPLIB
-# ----------------
-m4_defun([_LT_CMD_STRIPLIB],
-[m4_require([_LT_DECL_EGREP])
-striplib=
-old_striplib=
-AC_MSG_CHECKING([whether stripping libraries is possible])
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
- test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
- test -z "$striplib" && striplib="$STRIP --strip-unneeded"
- AC_MSG_RESULT([yes])
-else
-# FIXME - insert some real tests, host_os isn't really good enough
- case $host_os in
- darwin*)
- if test -n "$STRIP" ; then
- striplib="$STRIP -x"
- old_striplib="$STRIP -S"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- ;;
- *)
- AC_MSG_RESULT([no])
- ;;
- esac
-fi
-_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
-_LT_DECL([], [striplib], [1])
-])# _LT_CMD_STRIPLIB
-
-
-# _LT_SYS_DYNAMIC_LINKER([TAG])
-# -----------------------------
-# PORTME Fill in your ld.so characteristics
-m4_defun([_LT_SYS_DYNAMIC_LINKER],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_OBJDUMP])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_MSG_CHECKING([dynamic linker characteristics])
-m4_if([$1],
- [], [
-if test "$GCC" = yes; then
- case $host_os in
- darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
- *) lt_awk_arg="/^libraries:/" ;;
- esac
- lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
- # if the path contains ";" then we assume it to be the separator
- # otherwise default to the standard path separator (i.e. ":") - it is
- # assumed that no part of a normal pathname contains ";" but that should
- # okay in the real world where ";" in dirpaths is itself problematic.
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
- else
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- # Ok, now we have the path, separated by spaces, we can step through it
- # and add multilib dir if necessary.
- lt_tmp_lt_search_path_spec=
- lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
- for lt_sys_path in $lt_search_path_spec; do
- if test -d "$lt_sys_path/$lt_multi_os_dir"; then
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
- else
- test -d "$lt_sys_path" && \
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
- fi
- done
- lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
-BEGIN {RS=" "; FS="/|\n";} {
- lt_foo="";
- lt_count=0;
- for (lt_i = NF; lt_i > 0; lt_i--) {
- if ($lt_i != "" && $lt_i != ".") {
- if ($lt_i == "..") {
- lt_count++;
- } else {
- if (lt_count == 0) {
- lt_foo="/" $lt_i lt_foo;
- } else {
- lt_count--;
- }
- }
- }
- }
- if (lt_foo != "") { lt_freq[[lt_foo]]++; }
- if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
-}'`
- sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
-else
- sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi])
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
-
-aix[[4-9]]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[[01]] | aix4.[[01]].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}${shared_ext}$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='${libname}${shared_ext}'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[[45]]*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=".dll"
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
- # It is most probably a Windows format PATH printed by
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
- # path with ; separators, and with drive letters. We can handle the
- # drive letters (cygwin fileutils understands them), so leave them,
- # especially as we might pass files found there to a mingw objdump,
- # which wouldn't understand a cygwinified path. Ahh.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
- ;;
- esac
- ;;
-
- *)
- library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
- soname_spec='${libname}${release}${major}$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-m4_if([$1], [],[
- sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd* | dragonfly*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[[123]]*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[[01]]* | freebsdelf3.[[01]]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
- freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- fi
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-interix[[3-9]]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" = yes; then
- version_type=linux
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # Some binutils ld are patched to set DT_RUNPATH
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
- LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
- AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
- [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
- [shlibpath_overrides_runpath=yes])])
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsdelf*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='NetBSD ld.elf_so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd*)
- version_type=sunos
- sys_lib_dlsearch_path_spec="/usr/lib"
- need_lib_prefix=no
- # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
- case $host_os in
- openbsd3.3 | openbsd3.3.*) need_version=yes ;;
- *) need_version=no ;;
- esac
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case $host_os in
- openbsd2.[[89]] | openbsd2.[[89]].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- ;;
-
-os2*)
- libname_spec='$name'
- shrext_cmds=".dll"
- need_lib_prefix=no
- library_names_spec='$libname${shared_ext} $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
- soname_spec='$libname${shared_ext}.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=freebsd-elf
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test "$with_gnu_ld" = yes; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-AC_MSG_RESULT([$dynamic_linker])
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
- sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
- sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-_LT_DECL([], [variables_saved_for_relink], [1],
- [Variables whose values should be saved in libtool wrapper scripts and
- restored at link time])
-_LT_DECL([], [need_lib_prefix], [0],
- [Do we need the "lib" prefix for modules?])
-_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
-_LT_DECL([], [version_type], [0], [Library versioning type])
-_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
-_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
-_LT_DECL([], [shlibpath_overrides_runpath], [0],
- [Is shlibpath searched before the hard-coded library search path?])
-_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
-_LT_DECL([], [library_names_spec], [1],
- [[List of archive names. First name is the real one, the rest are links.
- The last name is the one that the linker finds with -lNAME]])
-_LT_DECL([], [soname_spec], [1],
- [[The coded name of the library, if different from the real name]])
-_LT_DECL([], [postinstall_cmds], [2],
- [Command to use after installation of a shared archive])
-_LT_DECL([], [postuninstall_cmds], [2],
- [Command to use after uninstallation of a shared archive])
-_LT_DECL([], [finish_cmds], [2],
- [Commands used to finish a libtool library installation in a directory])
-_LT_DECL([], [finish_eval], [1],
- [[As "finish_cmds", except a single script fragment to be evaled but
- not shown]])
-_LT_DECL([], [hardcode_into_libs], [0],
- [Whether we should hardcode library paths into libraries])
-_LT_DECL([], [sys_lib_search_path_spec], [2],
- [Compile-time system search path for libraries])
-_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
- [Run-time system search path for libraries])
-])# _LT_SYS_DYNAMIC_LINKER
-
-
-# _LT_PATH_TOOL_PREFIX(TOOL)
-# --------------------------
-# find a file program which can recognize shared library
-AC_DEFUN([_LT_PATH_TOOL_PREFIX],
-[m4_require([_LT_DECL_EGREP])dnl
-AC_MSG_CHECKING([for $1])
-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-[case $MAGIC_CMD in
-[[\\/*] | ?:[\\/]*])
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-dnl $ac_dummy forces splitting on constant user-supplied paths.
-dnl POSIX.2 word splitting is done only on the output of word expansions,
-dnl not every word. This closes a longstanding sh security hole.
- ac_dummy="m4_if([$2], , $PATH, [$2])"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$1; then
- lt_cv_path_MAGIC_CMD="$ac_dir/$1"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- AC_MSG_RESULT($MAGIC_CMD)
-else
- AC_MSG_RESULT(no)
-fi
-_LT_DECL([], [MAGIC_CMD], [0],
- [Used to examine libraries when file_magic_cmd begins with "file"])dnl
-])# _LT_PATH_TOOL_PREFIX
-
-# Old name:
-AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
-
-
-# _LT_PATH_MAGIC
-# --------------
-# find a file program which can recognize a shared library
-m4_defun([_LT_PATH_MAGIC],
-[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
-if test -z "$lt_cv_path_MAGIC_CMD"; then
- if test -n "$ac_tool_prefix"; then
- _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
- else
- MAGIC_CMD=:
- fi
-fi
-])# _LT_PATH_MAGIC
-
-
-# LT_PATH_LD
-# ----------
-# find the pathname to the GNU or non-GNU linker
-AC_DEFUN([LT_PATH_LD],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-
-AC_ARG_WITH([gnu-ld],
- [AS_HELP_STRING([--with-gnu-ld],
- [assume the C compiler uses GNU ld @<:@default=no@:>@])],
- [test "$withval" = no || with_gnu_ld=yes],
- [with_gnu_ld=no])dnl
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- AC_MSG_CHECKING([for ld used by $CC])
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [[\\/]]* | ?:[[\\/]]*)
- re_direlt='/[[^/]][[^/]]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- AC_MSG_CHECKING([for GNU ld])
-else
- AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL(lt_cv_path_LD,
-[if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- AC_MSG_RESULT($LD)
-else
- AC_MSG_RESULT(no)
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-_LT_PATH_LD_GNU
-AC_SUBST([LD])
-
-_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
-])# LT_PATH_LD
-
-# Old names:
-AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
-AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_LD], [])
-dnl AC_DEFUN([AC_PROG_LD], [])
-
-
-# _LT_PATH_LD_GNU
-#- --------------
-m4_defun([_LT_PATH_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac])
-with_gnu_ld=$lt_cv_prog_gnu_ld
-])# _LT_PATH_LD_GNU
-
-
-# _LT_CMD_RELOAD
-# --------------
-# find reload flag for linker
-# -- PORTME Some linkers may need a different reload flag.
-m4_defun([_LT_CMD_RELOAD],
-[AC_CACHE_CHECK([for $LD option to reload object files],
- lt_cv_ld_reload_flag,
- [lt_cv_ld_reload_flag='-r'])
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
- darwin*)
- if test "$GCC" = yes; then
- reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
- else
- reload_cmds='$LD$reload_flag -o $output$reload_objs'
- fi
- ;;
-esac
-_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
-_LT_DECL([], [reload_cmds], [2])dnl
-])# _LT_CMD_RELOAD
-
-
-# _LT_CHECK_MAGIC_METHOD
-# ----------------------
-# how to check for library dependencies
-# -- PORTME fill in with the dynamic library characteristics
-m4_defun([_LT_CHECK_MAGIC_METHOD],
-[m4_require([_LT_DECL_EGREP])
-m4_require([_LT_DECL_OBJDUMP])
-AC_CACHE_CHECK([how to recognize dependent libraries],
-lt_cv_deplibs_check_method,
-[lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[[4-9]]*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-beos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-bsdi[[45]]*)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- lt_cv_file_magic_test_file=/shlib/libc.so
- ;;
-
-cygwin*)
- # func_win32_libid is a shell function defined in ltmain.sh
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- ;;
-
-mingw* | pw32*)
- # Base MSYS/MinGW do not provide the 'file' command needed by
- # func_win32_libid shell function, so use a weaker test based on 'objdump',
- # unless we find 'file', for example because we are cross-compiling.
- if ( file / ) >/dev/null 2>&1; then
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- else
- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- fi
- ;;
-
-cegcc)
- # use the weaker test based on 'objdump'. See mingw*.
- lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- ;;
-
-darwin* | rhapsody*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-freebsd* | dragonfly*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- case $host_cpu in
- i*86 )
- # Not sure whether the presence of OpenBSD here was a mistake.
- # Let's accept both of them until this is cleared up.
- lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
- else
- lt_cv_deplibs_check_method=pass_all
- fi
- ;;
-
-gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-hpux10.20* | hpux11*)
- lt_cv_file_magic_cmd=/usr/bin/file
- case $host_cpu in
- ia64*)
- lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
- lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
- ;;
- hppa*64*)
- [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
- lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
- ;;
- *)
- lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
- lt_cv_file_magic_test_file=/usr/lib/libc.sl
- ;;
- esac
- ;;
-
-interix[[3-9]]*)
- # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
- fi
- ;;
-
-newos6*)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libnls.so
- ;;
-
-*nto* | *qnx*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-openbsd*)
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
- fi
- ;;
-
-osf3* | osf4* | osf5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-rdos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-solaris*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv4 | sysv4.3*)
- case $host_vendor in
- motorola)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- ncr)
- lt_cv_deplibs_check_method=pass_all
- ;;
- sequent)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
- ;;
- sni)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
- siemens)
- lt_cv_deplibs_check_method=pass_all
- ;;
- pc)
- lt_cv_deplibs_check_method=pass_all
- ;;
- esac
- ;;
-
-tpf*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-esac
-])
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-_LT_DECL([], [deplibs_check_method], [1],
- [Method to check whether dependent libraries are shared objects])
-_LT_DECL([], [file_magic_cmd], [1],
- [Command to use when deplibs_check_method == "file_magic"])
-])# _LT_CHECK_MAGIC_METHOD
-
-
-# LT_PATH_NM
-# ----------
-# find the pathname to a BSD- or MS-compatible name lister
-AC_DEFUN([LT_PATH_NM],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
-[if test -n "$NM"; then
- # Let the user override the test.
- lt_cv_path_NM="$NM"
-else
- lt_nm_to_check="${ac_tool_prefix}nm"
- if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
- lt_nm_to_check="$lt_nm_to_check nm"
- fi
- for lt_tmp_nm in $lt_nm_to_check; do
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/$lt_tmp_nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
- break
- ;;
- *)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- ;;
- esac
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
- done
- : ${lt_cv_path_NM=no}
-fi])
-if test "$lt_cv_path_NM" != "no"; then
- NM="$lt_cv_path_NM"
-else
- # Didn't find any BSD compatible name lister, look for dumpbin.
- AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
- AC_SUBST([DUMPBIN])
- if test "$DUMPBIN" != ":"; then
- NM="$DUMPBIN"
- fi
-fi
-test -z "$NM" && NM=nm
-AC_SUBST([NM])
-_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
-
-AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
- [lt_cv_nm_interface="BSD nm"
- echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$ac_compile" 2>conftest.err)
- cat conftest.err >&AS_MESSAGE_LOG_FD
- (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
- (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
- cat conftest.err >&AS_MESSAGE_LOG_FD
- (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
- cat conftest.out >&AS_MESSAGE_LOG_FD
- if $GREP 'External.*some_variable' conftest.out > /dev/null; then
- lt_cv_nm_interface="MS dumpbin"
- fi
- rm -f conftest*])
-])# LT_PATH_NM
-
-# Old names:
-AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
-AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_NM], [])
-dnl AC_DEFUN([AC_PROG_NM], [])
-
-
-# LT_LIB_M
-# --------
-# check for math library
-AC_DEFUN([LT_LIB_M],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-LIBM=
-case $host in
-*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
- # These system don't have libm, or don't need it
- ;;
-*-ncr-sysv4.3*)
- AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
- AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
- ;;
-*)
- AC_CHECK_LIB(m, cos, LIBM="-lm")
- ;;
-esac
-AC_SUBST([LIBM])
-])# LT_LIB_M
-
-# Old name:
-AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_CHECK_LIBM], [])
-
-
-# _LT_COMPILER_NO_RTTI([TAGNAME])
-# -------------------------------
-m4_defun([_LT_COMPILER_NO_RTTI],
-[m4_require([_LT_TAG_COMPILER])dnl
-
-_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
-
-if test "$GCC" = yes; then
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
-
- _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
- lt_cv_prog_compiler_rtti_exceptions,
- [-fno-rtti -fno-exceptions], [],
- [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
-fi
-_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
- [Compiler flag to turn off builtin functions])
-])# _LT_COMPILER_NO_RTTI
-
-
-# _LT_CMD_GLOBAL_SYMBOLS
-# ----------------------
-m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-AC_MSG_CHECKING([command to parse $NM output from $compiler object])
-AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
-[
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[[BCDEGRST]]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
- symcode='[[BCDT]]'
- ;;
-cygwin* | mingw* | pw32* | cegcc*)
- symcode='[[ABCDGISTW]]'
- ;;
-hpux*)
- if test "$host_cpu" = ia64; then
- symcode='[[ABCDEGRST]]'
- fi
- ;;
-irix* | nonstopux*)
- symcode='[[BCDEGRST]]'
- ;;
-osf*)
- symcode='[[BCDEGQRST]]'
- ;;
-solaris*)
- symcode='[[BDRT]]'
- ;;
-sco3.2v5*)
- symcode='[[DT]]'
- ;;
-sysv4.2uw2*)
- symcode='[[DT]]'
- ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
- symcode='[[ABDT]]'
- ;;
-sysv4)
- symcode='[[DFNSTU]]'
- ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
- symcode='[[ABCDGIRSTW]]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
- opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
- ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
- # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
- symxfrm="\\1 $ac_symprfx\\2 \\2"
-
- # Write the raw and C identifiers.
- if test "$lt_cv_nm_interface" = "MS dumpbin"; then
- # Fake it for dumpbin and say T for any non-static function
- # and D for any global variable.
- # Also find C++ and __fastcall symbols from MSVC++,
- # which start with @ or ?.
- lt_cv_sys_global_symbol_pipe="$AWK ['"\
-" {last_section=section; section=\$ 3};"\
-" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-" \$ 0!~/External *\|/{next};"\
-" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-" {if(hide[section]) next};"\
-" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-" s[1]~/^[@?]/{print s[1], s[1]; next};"\
-" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-" ' prfx=^$ac_symprfx]"
- else
- lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
- fi
-
- # Check to see that the pipe works correctly.
- pipe_works=no
-
- rm -f conftest*
- cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
- if AC_TRY_EVAL(ac_compile); then
- # Now try to grab the symbols.
- nlist=conftest.nm
- if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
- # Try sorting and uniquifying the output.
- if sort "$nlist" | uniq > "$nlist"T; then
- mv -f "$nlist"T "$nlist"
- else
- rm -f "$nlist"T
- fi
-
- # Make sure that we snagged all the symbols we need.
- if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
- if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
- cat <<_LT_EOF > conftest.$ac_ext
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
- # Now generate the symbol file.
- eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
- cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols. */
-const struct {
- const char *name;
- void *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[[]] =
-{
- { "@PROGRAM@", (void *) 0 },
-_LT_EOF
- $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
- cat <<\_LT_EOF >> conftest.$ac_ext
- {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
- # Now try linking the two files.
- mv conftest.$ac_objext conftstm.$ac_objext
- lt_save_LIBS="$LIBS"
- lt_save_CFLAGS="$CFLAGS"
- LIBS="conftstm.$ac_objext"
- CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
- if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
- pipe_works=yes
- fi
- LIBS="$lt_save_LIBS"
- CFLAGS="$lt_save_CFLAGS"
- else
- echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
- cat conftest.$ac_ext >&5
- fi
- rm -rf conftest* conftst*
-
- # Do not use the global_symbol_pipe unless it works.
- if test "$pipe_works" = yes; then
- break
- else
- lt_cv_sys_global_symbol_pipe=
- fi
-done
-])
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
- lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
- AC_MSG_RESULT(failed)
-else
- AC_MSG_RESULT(ok)
-fi
-
-_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
- [Take the output of nm and produce a listing of raw symbols and C names])
-_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
- [Transform the output of nm in a proper C declaration])
-_LT_DECL([global_symbol_to_c_name_address],
- [lt_cv_sys_global_symbol_to_c_name_address], [1],
- [Transform the output of nm in a C name address pair])
-_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
- [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
- [Transform the output of nm in a C name address pair when lib prefix is needed])
-]) # _LT_CMD_GLOBAL_SYMBOLS
-
-
-# _LT_COMPILER_PIC([TAGNAME])
-# ---------------------------
-m4_defun([_LT_COMPILER_PIC],
-[m4_require([_LT_TAG_COMPILER])dnl
-_LT_TAGVAR(lt_prog_compiler_wl, $1)=
-_LT_TAGVAR(lt_prog_compiler_pic, $1)=
-_LT_TAGVAR(lt_prog_compiler_static, $1)=
-
-AC_MSG_CHECKING([for $compiler option to produce PIC])
-m4_if([$1], [CXX], [
- # C++ specific cases for pic, static, wl, etc.
- if test "$GXX" = yes; then
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
- mingw* | cygwin* | os2* | pw32* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- ;;
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
- ;;
- *djgpp*)
- # DJGPP does not support shared libraries at all
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- ;;
- interix[[3-9]]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
- fi
- ;;
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- else
- case $host_os in
- aix[[4-9]]*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- else
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
- chorus*)
- case $cc_basename in
- cxch68*)
- # Green Hills C++ Compiler
- # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
- ;;
- esac
- ;;
- dgux*)
- case $cc_basename in
- ec++*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- freebsd* | dragonfly*)
- # FreeBSD uses GNU C++
- ;;
- hpux9* | hpux10* | hpux11*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
- if test "$host_cpu" != ia64; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- fi
- ;;
- aCC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- ;;
- esac
- ;;
- *)
- ;;
- esac
- ;;
- interix*)
- # This is c89, which is MS Visual C++ (no shared libs)
- # Anyone wants to do a port?
- ;;
- irix5* | irix6* | nonstopux*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- # CC pic flag -KPIC is the default.
- ;;
- *)
- ;;
- esac
- ;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # KAI C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- ecpc* )
- # old Intel C++ for x86_64 which still supported -KPIC.
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- icpc* )
- # Intel C++, used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- cxx*)
- # Compaq C++
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- xlc* | xlC*)
- # IBM XL 8.0 on PPC
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- ;;
- esac
- ;;
- esac
- ;;
- lynxos*)
- ;;
- m88k*)
- ;;
- mvs*)
- case $cc_basename in
- cxx*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
- ;;
- *)
- ;;
- esac
- ;;
- netbsd* | netbsdelf*-gnu)
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
- ;;
- RCC*)
- # Rational C++ 2.4.1
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- cxx*)
- # Digital/Compaq C++
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- *)
- ;;
- esac
- ;;
- psos*)
- ;;
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- ;;
- gcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
- ;;
- *)
- ;;
- esac
- ;;
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- lcc*)
- # Lucid
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- esac
- ;;
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- ;;
- *)
- ;;
- esac
- ;;
- vxworks*)
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
- esac
- fi
-],
-[
- if test "$GCC" = yes; then
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- ;;
-
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
- ;;
-
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- ;;
-
- interix[[3-9]]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
-
- msdosdjgpp*)
- # Just because we use GCC doesn't mean we suddenly get shared libraries
- # on systems that don't support them.
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- enable_shared=no
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
- fi
- ;;
-
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- else
- # PORTME Check for flag to pass linker flags through the system compiler.
- case $host_os in
- aix*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- else
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- ;;
-
- hpux9* | hpux10* | hpux11*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
- # not for PA HP-UX.
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- ;;
- esac
- # Is there a better lt_prog_compiler_static that works with the bundled CC?
- _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
- ;;
-
- irix5* | irix6* | nonstopux*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # PIC (with -KPIC) is the default.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- # old Intel for x86_64 which still supported -KPIC.
- ecc*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- # icc used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- icc* | ifort*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- # Lahey Fortran 8.1.
- lf95*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
- ;;
- pgcc* | pgf77* | pgf90* | pgf95*)
- # Portland Group compilers (*not* the Pentium gcc compiler,
- # which looks to be a dead project)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- ccc*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # All Alpha code is PIC.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- xl*)
- # IBM XL C 8.0/Fortran 10.1 on PPC
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C 5.9
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- ;;
- *Sun\ F*)
- # Sun Fortran 8.3 passes all unrecognized flags to the linker
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
- ;;
- esac
- ;;
- esac
- ;;
-
- newsos6)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
-
- osf3* | osf4* | osf5*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # All OSF/1 code is PIC.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- rdos*)
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- solaris*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- case $cc_basename in
- f77* | f90* | f95*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
- *)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
- esac
- ;;
-
- sunos4*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- sysv4 | sysv4.2uw2* | sysv4.3*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec ;then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- ;;
-
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- unicos*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
-
- uts4*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- *)
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
- esac
- fi
-])
-case $host_os in
- # For platforms which do not support PIC, -DPIC is meaningless:
- *djgpp*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
- ;;
-esac
-AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
-_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
- [How to pass a linker flag through the compiler])
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
- _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
- [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
- [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
- [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
- "" | " "*) ;;
- *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
- esac],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
-fi
-_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
- [Additional compiler flags for building library objects])
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
-_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
- _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
- $lt_tmp_static_flag,
- [],
- [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
-_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
- [Compiler flag to prevent dynamic linking])
-])# _LT_COMPILER_PIC
-
-
-# _LT_LINKER_SHLIBS([TAGNAME])
-# ----------------------------
-# See if the linker supports building shared libraries.
-m4_defun([_LT_LINKER_SHLIBS],
-[AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
-m4_if([$1], [CXX], [
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- case $host_os in
- aix[[4-9]]*)
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- ;;
- pw32*)
- _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
- ;;
- cygwin* | mingw* | cegcc*)
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- linux* | k*bsd*-gnu)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
- *)
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- esac
- _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
-], [
- runpath_var=
- _LT_TAGVAR(allow_undefined_flag, $1)=
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(archive_cmds, $1)=
- _LT_TAGVAR(archive_expsym_cmds, $1)=
- _LT_TAGVAR(compiler_needs_object, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- _LT_TAGVAR(hardcode_automatic, $1)=no
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
- _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- _LT_TAGVAR(hardcode_minus_L, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- _LT_TAGVAR(inherit_rpath, $1)=no
- _LT_TAGVAR(link_all_deplibs, $1)=unknown
- _LT_TAGVAR(module_cmds, $1)=
- _LT_TAGVAR(module_expsym_cmds, $1)=
- _LT_TAGVAR(old_archive_from_new_cmds, $1)=
- _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
- _LT_TAGVAR(thread_safe_flag_spec, $1)=
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- # include_expsyms should be a list of space-separated symbols to be *always*
- # included in the symbol list
- _LT_TAGVAR(include_expsyms, $1)=
- # exclude_expsyms can be an extended regexp of symbols to exclude
- # it will be wrapped by ` (' and `)$', so one must not match beginning or
- # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
- # as well as any symbol that contains `d'.
- _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
- # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
- # platforms (ab)use it in PIC code, but their linkers get confused if
- # the symbol is explicitly referenced. Since portable code cannot
- # rely on this symbol name, it's probably fine to never include it in
- # preloaded symbol tables.
- # Exclude shared library initialization/finalization symbols.
-dnl Note also adjust exclude_expsyms for C++ above.
- extract_expsyms_cmds=
-
- case $host_os in
- cygwin* | mingw* | pw32* | cegcc*)
- # FIXME: the MSVC++ port hasn't been tested in a loooong time
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- if test "$GCC" != yes; then
- with_gnu_ld=no
- fi
- ;;
- interix*)
- # we just hope/assume this is gcc and not c89 (= MSVC++)
- with_gnu_ld=yes
- ;;
- openbsd*)
- with_gnu_ld=no
- ;;
- linux* | k*bsd*-gnu)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
- esac
-
- _LT_TAGVAR(ld_shlibs, $1)=yes
- if test "$with_gnu_ld" = yes; then
- # If archive_cmds runs LD, not CC, wlarc should be empty
- wlarc='${wl}'
-
- # Set some defaults for GNU ld with shared library support. These
- # are reset later if shared libraries are not supported. Putting them
- # here allows them to be overridden if necessary.
- runpath_var=LD_RUN_PATH
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- # ancient GNU ld didn't support --whole-archive et. al.
- if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- supports_anon_versioning=no
- case `$LD -v 2>&1` in
- *GNU\ gold*) supports_anon_versioning=yes ;;
- *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
- *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
- *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
- *\ 2.11.*) ;; # other 2.11 versions
- *) supports_anon_versioning=yes ;;
- esac
-
- # See if GNU ld supports shared libraries.
- case $host_os in
- aix[[3-9]]*)
- # On AIX/PPC, the GNU linker is very broken
- if test "$host_cpu" != ia64; then
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support. If you
-*** really care for shared libraries, you may want to modify your PATH
-*** so that a non-GNU linker is found, and then restart.
-
-_LT_EOF
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)=''
- ;;
- m68k)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
- # as there is no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- interix[[3-9]]*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
-
- gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
- tmp_diet=no
- if test "$host_os" = linux-dietlibc; then
- case $cc_basename in
- diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
- esac
- fi
- if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
- && test "$tmp_diet" = no
- then
- tmp_addflag=
- tmp_sharedflag='-shared'
- case $cc_basename,$host_cpu in
- pgcc*) # Portland Group C compiler
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag'
- ;;
- pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag -Mnomain' ;;
- ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
- tmp_addflag=' -i_dynamic' ;;
- efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
- tmp_addflag=' -i_dynamic -nofor_main' ;;
- ifc* | ifort*) # Intel Fortran compiler
- tmp_addflag=' -nofor_main' ;;
- lf95*) # Lahey Fortran 8.1
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- tmp_sharedflag='--shared' ;;
- xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
- tmp_sharedflag='-qmkshrobj'
- tmp_addflag= ;;
- esac
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*) # Sun C 5.9
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- _LT_TAGVAR(compiler_needs_object, $1)=yes
- tmp_sharedflag='-G' ;;
- *Sun\ F*) # Sun Fortran 8.3
- tmp_sharedflag='-G' ;;
- esac
- _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
- if test "x$supports_anon_versioning" = xyes; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
-
- case $cc_basename in
- xlf*)
- # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
- _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
- _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
- _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
- fi
- ;;
- esac
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
- wlarc=
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- fi
- ;;
-
- solaris*)
- if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
- case `$LD -v 2>&1` in
- *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- ;;
- *)
- # For security reasons, it is highly recommended that you always
- # use absolute paths for naming shared libraries, and exclude the
- # DT_RUNPATH tag from executables and libraries. But doing so
- # requires that you compile everything twice, which is a pain.
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- sunos4*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- wlarc=
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
-
- if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
- runpath_var=
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- else
- # PORTME fill in a description of your system's linker (not GNU ld)
- case $host_os in
- aix3*)
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=yes
- _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
- # Note: this linker hardcodes the directories in LIBPATH if there
- # are no directories specified by -L.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
- # Neither direct hardcoding nor static linking is supported with a
- # broken collect2.
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- fi
- ;;
-
- aix[[4-9]]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
- for ld_flag in $LDFLAGS; do
- if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
- aix_use_runtimelinking=yes
- break
- fi
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- _LT_TAGVAR(archive_cmds, $1)=''
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
-
- if test "$GCC" = yes; then
- case $host_os in aix4.[[012]]|aix4.[[012]].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- fi
- ;;
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- _LT_TAGVAR(link_all_deplibs, $1)=no
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to export.
- _LT_TAGVAR(always_export_symbols, $1)=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
- _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- # This is similar to how AIX traditionally builds its shared libraries.
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)=''
- ;;
- m68k)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- ;;
-
- bsdi[[45]]*)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # Tell ltmain to make .dll files, not .so files.
- shrext_cmds=".dll"
- # FIXME: Setting linknames here is a bad hack.
- _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
- # The linker will automatically build a .lib file if we build a DLL.
- _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
- # FIXME: Should let the user specify the lib program.
- _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
- _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- ;;
-
- darwin* | rhapsody*)
- _LT_DARWIN_LINKER_FEATURES($1)
- ;;
-
- dgux*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- freebsd1*)
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
- # support. Future versions do this automatically, but an explicit c++rt0.o
- # does not break anything, and helps significantly (at the cost of a little
- # extra space).
- freebsd2.2*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- # Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
- freebsd* | dragonfly*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- hpux9*)
- if test "$GCC" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_direct, $1)=yes
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- ;;
-
- hpux10*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
- fi
- if test "$with_gnu_ld" = no; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- fi
- ;;
-
- hpux11*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- else
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- fi
- if test "$with_gnu_ld" = no; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
- *)
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- fi
- ;;
-
- irix5* | irix6* | nonstopux*)
- if test "$GCC" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- # Try to use the -exported_symbol ld option, if it does not
- # work, assume that -exports_file does not work either and
- # implicitly export all symbols.
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
- AC_LINK_IFELSE(int foo(void) {},
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
- )
- LDFLAGS="$save_LDFLAGS"
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(inherit_rpath, $1)=yes
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- newsos6)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *nto* | *qnx*)
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- else
- case $host_os in
- openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- ;;
- esac
- fi
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- os2*)
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
- _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
- ;;
-
- osf3*)
- if test "$GCC" = yes; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- ;;
-
- osf4* | osf5*) # as osf3* with the addition of -msym flag
- if test "$GCC" = yes; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- else
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
- $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
- # Both c and cxx compiler support -rpath directly
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- ;;
-
- solaris*)
- _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
- if test "$GCC" = yes; then
- wlarc='${wl}'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- else
- case `$CC -V 2>&1` in
- *"Compilers 5.0"*)
- wlarc=''
- _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
- ;;
- *)
- wlarc='${wl}'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- ;;
- esac
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'. GCC discards it without `$wl',
- # but is careful enough not to reorder.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- if test "$GCC" = yes; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
- fi
- ;;
- esac
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
-
- sunos4*)
- if test "x$host_vendor" = xsequent; then
- # Use $CC to link under sequent, because it throws in some extra .o
- # files that make .init and .fini sections work.
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- sysv4)
- case $host_vendor in
- sni)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
- ;;
- siemens)
- ## LD is ld it makes a PLAMLIB
- ## CC just makes a GrossModule.
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
- _LT_TAGVAR(hardcode_direct, $1)=no
- ;;
- motorola)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
- ;;
- esac
- runpath_var='LD_RUN_PATH'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- sysv4.3*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- _LT_TAGVAR(ld_shlibs, $1)=yes
- fi
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
- _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
- _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- uts4*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *)
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
-
- if test x$host_vendor = xsni; then
- case $host in
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
- ;;
- esac
- fi
- fi
-])
-AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
-_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
-
-_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
-_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
-_LT_DECL([], [extract_expsyms_cmds], [2],
- [The commands to extract the exported symbol list from a shared archive])
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
-x|xyes)
- # Assume -lc should be added
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-
- if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $_LT_TAGVAR(archive_cmds, $1) in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- AC_MSG_CHECKING([whether -lc should be explicitly linked in])
- $RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
- pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
- _LT_TAGVAR(allow_undefined_flag, $1)=
- if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
- then
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- else
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- fi
- _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
- ;;
- esac
- fi
- ;;
-esac
-
-_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
- [Whether or not to add -lc for building shared libraries])
-_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
- [enable_shared_with_static_runtimes], [0],
- [Whether or not to disallow shared libs when runtime libs are static])
-_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
- [Compiler flag to allow reflexive dlopens])
-_LT_TAGDECL([], [whole_archive_flag_spec], [1],
- [Compiler flag to generate shared objects directly from archives])
-_LT_TAGDECL([], [compiler_needs_object], [1],
- [Whether the compiler copes with passing no objects directly])
-_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
- [Create an old-style archive from a shared archive])
-_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
- [Create a temporary old-style archive to link instead of a shared archive])
-_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
-_LT_TAGDECL([], [archive_expsym_cmds], [2])
-_LT_TAGDECL([], [module_cmds], [2],
- [Commands used to build a loadable module if different from building
- a shared archive.])
-_LT_TAGDECL([], [module_expsym_cmds], [2])
-_LT_TAGDECL([], [with_gnu_ld], [1],
- [Whether we are building with GNU ld or not])
-_LT_TAGDECL([], [allow_undefined_flag], [1],
- [Flag that allows shared libraries with undefined symbols to be built])
-_LT_TAGDECL([], [no_undefined_flag], [1],
- [Flag that enforces no undefined symbols])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
- [Flag to hardcode $libdir into a binary during linking.
- This must work even if $libdir does not exist])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
- [[If ld is used when linking, flag to hardcode $libdir into a binary
- during linking. This must work even if $libdir does not exist]])
-_LT_TAGDECL([], [hardcode_libdir_separator], [1],
- [Whether we need a single "-rpath" flag with a separated argument])
-_LT_TAGDECL([], [hardcode_direct], [0],
- [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
- DIR into the resulting binary])
-_LT_TAGDECL([], [hardcode_direct_absolute], [0],
- [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
- DIR into the resulting binary and the resulting library dependency is
- "absolute", i.e impossible to change by setting ${shlibpath_var} if the
- library is relocated])
-_LT_TAGDECL([], [hardcode_minus_L], [0],
- [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
- into the resulting binary])
-_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
- [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
- into the resulting binary])
-_LT_TAGDECL([], [hardcode_automatic], [0],
- [Set to "yes" if building a shared library automatically hardcodes DIR
- into the library and all subsequent libraries and executables linked
- against it])
-_LT_TAGDECL([], [inherit_rpath], [0],
- [Set to yes if linker adds runtime paths of dependent libraries
- to runtime path list])
-_LT_TAGDECL([], [link_all_deplibs], [0],
- [Whether libtool must link a program against all its dependency libraries])
-_LT_TAGDECL([], [fix_srcfile_path], [1],
- [Fix the shell variable $srcfile for the compiler])
-_LT_TAGDECL([], [always_export_symbols], [0],
- [Set to "yes" if exported symbols are required])
-_LT_TAGDECL([], [export_symbols_cmds], [2],
- [The commands to list exported symbols])
-_LT_TAGDECL([], [exclude_expsyms], [1],
- [Symbols that should not be listed in the preloaded symbols])
-_LT_TAGDECL([], [include_expsyms], [1],
- [Symbols that must always be exported])
-_LT_TAGDECL([], [prelink_cmds], [2],
- [Commands necessary for linking programs (against libraries) with templates])
-_LT_TAGDECL([], [file_list_spec], [1],
- [Specify filename containing input files])
-dnl FIXME: Not yet implemented
-dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
-dnl [Compiler flag to generate thread safe objects])
-])# _LT_LINKER_SHLIBS
-
-
-# _LT_LANG_C_CONFIG([TAG])
-# ------------------------
-# Ensure that the configuration variables for a C compiler are suitably
-# defined. These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_C_CONFIG],
-[m4_require([_LT_DECL_EGREP])dnl
-lt_save_CC="$CC"
-AC_LANG_PUSH(C)
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-_LT_TAG_COMPILER
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-if test -n "$compiler"; then
- _LT_COMPILER_NO_RTTI($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
- LT_SYS_DLOPEN_SELF
- _LT_CMD_STRIPLIB
-
- # Report which library types will actually be built
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
-
- aix[[4-9]]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_CONFIG($1)
-fi
-AC_LANG_POP
-CC="$lt_save_CC"
-])# _LT_LANG_C_CONFIG
-
-
-# _LT_PROG_CXX
-# ------------
-# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
-# compiler, we have our own version here.
-m4_defun([_LT_PROG_CXX],
-[
-pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
-AC_PROG_CXX
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
- ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
- (test "X$CXX" != "Xg++"))) ; then
- AC_PROG_CXXCPP
-else
- _lt_caught_CXX_error=yes
-fi
-popdef([AC_MSG_ERROR])
-])# _LT_PROG_CXX
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([_LT_PROG_CXX], [])
-
-
-# _LT_LANG_CXX_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a C++ compiler are suitably
-# defined. These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_CXX_CONFIG],
-[AC_REQUIRE([_LT_PROG_CXX])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-
-AC_LANG_PUSH(C++)
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(compiler_needs_object, $1)=no
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for C++ test sources.
-ac_ext=cpp
-
-# Object file extension for compiled C++ test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the CXX compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="int some_variable = 0;"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC=$CC
- lt_save_LD=$LD
- lt_save_GCC=$GCC
- GCC=$GXX
- lt_save_with_gnu_ld=$with_gnu_ld
- lt_save_path_LD=$lt_cv_path_LD
- if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
- lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
- else
- $as_unset lt_cv_prog_gnu_ld
- fi
- if test -n "${lt_cv_path_LDCXX+set}"; then
- lt_cv_path_LD=$lt_cv_path_LDCXX
- else
- $as_unset lt_cv_path_LD
- fi
- test -z "${LDCXX+set}" || LD=$LDCXX
- CC=${CXX-"c++"}
- compiler=$CC
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
-
- if test -n "$compiler"; then
- # We don't want -fno-exception when compiling C++ code, so set the
- # no_builtin_flag separately
- if test "$GXX" = yes; then
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
- else
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
- fi
-
- if test "$GXX" = yes; then
- # Set up default GNU C++ configuration
-
- LT_PATH_LD
-
- # Check if GNU C++ uses GNU ld as the underlying linker, since the
- # archiving commands below assume that GNU ld is being used.
- if test "$with_gnu_ld" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-
- # If archive_cmds runs LD, not CC, wlarc should be empty
- # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
- # investigate it a little bit more. (MM)
- wlarc='${wl}'
-
- # ancient GNU ld didn't support --whole-archive et. al.
- if eval "`$CC -print-prog-name=ld` --help 2>&1" |
- $GREP 'no-whole-archive' > /dev/null; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- else
- with_gnu_ld=no
- wlarc=
-
- # A generic and very simple default shared library creation
- # command for GNU C++ for the case where it uses the native
- # linker, instead of GNU ld. If possible, this setting should
- # overridden to take advantage of the native linker features on
- # the platform it is being used on.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- fi
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- GXX=no
- with_gnu_ld=no
- wlarc=
- fi
-
- # PORTME: fill in a description of your system's C++ link characteristics
- AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
- _LT_TAGVAR(ld_shlibs, $1)=yes
- case $host_os in
- aix3*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aix[[4-9]]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
- for ld_flag in $LDFLAGS; do
- case $ld_flag in
- *-brtl*)
- aix_use_runtimelinking=yes
- break
- ;;
- esac
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- _LT_TAGVAR(archive_cmds, $1)=''
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
-
- if test "$GXX" = yes; then
- case $host_os in aix4.[[012]]|aix4.[[012]].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- fi
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to
- # export.
- _LT_TAGVAR(always_export_symbols, $1)=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
- # Determine the default libpath from the value encoded in an empty
- # executable.
- _LT_SYS_MODULE_PATH_AIX
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
- _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- # This is similar to how AIX traditionally builds its shared
- # libraries.
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- chorus*)
- case $cc_basename in
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
- # as there is no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- darwin* | rhapsody*)
- _LT_DARWIN_LINKER_FEATURES($1)
- ;;
-
- dgux*)
- case $cc_basename in
- ec++*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- freebsd[[12]]*)
- # C++ shared libraries reported to be fairly broken before
- # switch to ELF
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- freebsd-elf*)
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- ;;
-
- freebsd* | dragonfly*)
- # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
- # conventions
- _LT_TAGVAR(ld_shlibs, $1)=yes
- ;;
-
- gnu*)
- ;;
-
- hpux9*)
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
- # but as the default
- # location of the library.
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aCC*)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- hpux10*|hpux11*)
- if test $with_gnu_ld = no; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- ;;
- *)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- ;;
- esac
- fi
- case $host_cpu in
- hppa*64*|ia64*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
- *)
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
- # but as the default
- # location of the library.
- ;;
- esac
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aCC*)
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- if test $with_gnu_ld = no; then
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- fi
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- interix[[3-9]]*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
- irix5* | irix6*)
- case $cc_basename in
- CC*)
- # SGI C++
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
-
- # Archives containing C++ object files must be created using
- # "CC -ar", where "CC" is the IRIX C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
- ;;
- *)
- if test "$GXX" = yes; then
- if test "$with_gnu_ld" = no; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
- fi
- fi
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
- esac
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(inherit_rpath, $1)=yes
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-
- # Archives containing C++ object files must be created using
- # "CC -Bstatic", where "CC" is the KAI C++ compiler.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
- ;;
- icpc* | ecpc* )
- # Intel C++
- with_gnu_ld=yes
- # version 8.0 and above of icpc choke on multiply defined symbols
- # if we add $predep_objects and $postdep_objects, however 7.1 and
- # earlier do not add the objects themselves.
- case `$CC -V 2>&1` in
- *"Version 7."*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- *) # Version 8.0 or newer
- tmp_idyn=
- case $host_cpu in
- ia64*) tmp_idyn=' -i_dynamic';;
- esac
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- esac
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- case `$CC -V` in
- *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
- _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
- compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
- _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
- $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
- $RANLIB $oldlib'
- _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- *) # Version 6 will use weak symbols
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- ;;
- cxx*)
- # Compaq C++
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
-
- runpath_var=LD_RUN_PATH
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- xl*)
- # IBM XL 8.0 on PPC, with GNU ld
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- _LT_TAGVAR(compiler_needs_object, $1)=yes
-
- # Not sure whether something based on
- # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
- # would be better.
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
- ;;
- esac
- ;;
- esac
- ;;
-
- lynxos*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- m88k*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- mvs*)
- case $cc_basename in
- cxx*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
- wlarc=
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- fi
- # Workaround some broken pre-1.5 toolchains
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
- ;;
-
- *nto* | *qnx*)
- _LT_TAGVAR(ld_shlibs, $1)=yes
- ;;
-
- openbsd2*)
- # C++ shared libraries are fairly broken
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- fi
- output_verbose_link_cmd=echo
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Archives containing C++ object files must be created using
- # the KAI C++ compiler.
- case $host in
- osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
- *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
- esac
- ;;
- RCC*)
- # Rational C++ 2.4.1
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- cxx*)
- case $host in
- osf3*)
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- ;;
- *)
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
- echo "-hidden">> $lib.exp~
- $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
- $RM $lib.exp'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
- case $host in
- osf3*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- psos*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- lcc*)
- # Lucid
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
- _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
- ;;
- esac
- _LT_TAGVAR(link_all_deplibs, $1)=yes
-
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
- ;;
- gcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-
- # The C++ compiler must be used to create the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
- ;;
- *)
- # GNU C++ compiler with Solaris linker
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
- if $CC --version | $GREP -v '^2\.7' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- else
- # g++ 2.7 appears to require `-G' NOT `-shared' on this
- # platform.
- _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- fi
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- ;;
- esac
- fi
- ;;
- esac
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
- _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
- _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- vxworks*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
-
- AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
- test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
- _LT_TAGVAR(GCC, $1)="$GXX"
- _LT_TAGVAR(LD, $1)="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_SYS_HIDDEN_LIBDEPS($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- CC=$lt_save_CC
- LDCXX=$LD
- LD=$lt_save_LD
- GCC=$lt_save_GCC
- with_gnu_ld=$lt_save_with_gnu_ld
- lt_cv_path_LDCXX=$lt_cv_path_LD
- lt_cv_path_LD=$lt_save_path_LD
- lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
- lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
-
-AC_LANG_POP
-])# _LT_LANG_CXX_CONFIG
-
-
-# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
-# ---------------------------------
-# Figure out "hidden" library dependencies from verbose
-# compiler output when linking a shared library.
-# Parse the compiler output and extract the necessary
-# objects, libraries and library flags.
-m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-# Dependencies to place before and after the object being linked:
-_LT_TAGVAR(predep_objects, $1)=
-_LT_TAGVAR(postdep_objects, $1)=
-_LT_TAGVAR(predeps, $1)=
-_LT_TAGVAR(postdeps, $1)=
-_LT_TAGVAR(compiler_lib_search_path, $1)=
-
-dnl we can't use the lt_simple_compile_test_code here,
-dnl because it contains code intended for an executable,
-dnl not a library. It's possible we should let each
-dnl tag define a new lt_????_link_test_code variable,
-dnl but it's only used here...
-m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
-int a;
-void foo (void) { a = 0; }
-_LT_EOF
-], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
-class Foo
-{
-public:
- Foo (void) { a = 0; }
-private:
- int a;
-};
-_LT_EOF
-], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
- subroutine foo
- implicit none
- integer*4 a
- a=0
- return
- end
-_LT_EOF
-], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
- subroutine foo
- implicit none
- integer a
- a=0
- return
- end
-_LT_EOF
-], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
-public class foo {
- private int a;
- public void bar (void) {
- a = 0;
- }
-};
-_LT_EOF
-])
-dnl Parse the compiler output and extract the necessary
-dnl objects, libraries and library flags.
-if AC_TRY_EVAL(ac_compile); then
- # Parse the compiler output and extract the necessary
- # objects, libraries and library flags.
-
- # Sentinel used to keep track of whether or not we are before
- # the conftest object file.
- pre_test_object_deps_done=no
-
- for p in `eval "$output_verbose_link_cmd"`; do
- case $p in
-
- -L* | -R* | -l*)
- # Some compilers place space between "-{L,R}" and the path.
- # Remove the space.
- if test $p = "-L" ||
- test $p = "-R"; then
- prev=$p
- continue
- else
- prev=
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- case $p in
- -L* | -R*)
- # Internal compiler library paths should come after those
- # provided the user. The postdeps already come after the
- # user supplied libs so there is no need to process them.
- if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
- _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
- else
- _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
- fi
- ;;
- # The "-l" case would never come before the object being
- # linked, so don't bother handling this case.
- esac
- else
- if test -z "$_LT_TAGVAR(postdeps, $1)"; then
- _LT_TAGVAR(postdeps, $1)="${prev}${p}"
- else
- _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
- fi
- fi
- ;;
-
- *.$objext)
- # This assumes that the test object file only shows up
- # once in the compiler output.
- if test "$p" = "conftest.$objext"; then
- pre_test_object_deps_done=yes
- continue
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
- _LT_TAGVAR(predep_objects, $1)="$p"
- else
- _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
- fi
- else
- if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
- _LT_TAGVAR(postdep_objects, $1)="$p"
- else
- _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
- fi
- fi
- ;;
-
- *) ;; # Ignore the rest.
-
- esac
- done
-
- # Clean up.
- rm -f a.out a.exe
-else
- echo "libtool.m4: error: problem compiling $1 test program"
-fi
-
-$RM -f confest.$objext
-
-# PORTME: override above test on systems where it is broken
-m4_if([$1], [CXX],
-[case $host_os in
-interix[[3-9]]*)
- # Interix 3.5 installs completely hosed .la files for C++, so rather than
- # hack all around it, let's just trust "g++" to DTRT.
- _LT_TAGVAR(predep_objects,$1)=
- _LT_TAGVAR(postdep_objects,$1)=
- _LT_TAGVAR(postdeps,$1)=
- ;;
-
-linux*)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
-
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- if test "$solaris_use_stlport4" != yes; then
- _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-
-solaris*)
- case $cc_basename in
- CC*)
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- # Adding this requires a known-good setup of shared libraries for
- # Sun compiler versions before 5.6, else PIC objects from an old
- # archive will be linked into the output, leading to subtle bugs.
- if test "$solaris_use_stlport4" != yes; then
- _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-esac
-])
-
-case " $_LT_TAGVAR(postdeps, $1) " in
-*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
-esac
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=
-if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
-fi
-_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
- [The directories searched by this compiler when creating a shared library])
-_LT_TAGDECL([], [predep_objects], [1],
- [Dependencies to place before and after the objects being linked to
- create a shared library])
-_LT_TAGDECL([], [postdep_objects], [1])
-_LT_TAGDECL([], [predeps], [1])
-_LT_TAGDECL([], [postdeps], [1])
-_LT_TAGDECL([], [compiler_lib_search_path], [1],
- [The library search path used internally by the compiler when linking
- a shared library])
-])# _LT_SYS_HIDDEN_LIBDEPS
-
-
-# _LT_PROG_F77
-# ------------
-# Since AC_PROG_F77 is broken, in that it returns the empty string
-# if there is no fortran compiler, we have our own version here.
-m4_defun([_LT_PROG_F77],
-[
-pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
-AC_PROG_F77
-if test -z "$F77" || test "X$F77" = "Xno"; then
- _lt_disable_F77=yes
-fi
-popdef([AC_MSG_ERROR])
-])# _LT_PROG_F77
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([_LT_PROG_F77], [])
-
-
-# _LT_LANG_F77_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a Fortran 77 compiler are
-# suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_F77_CONFIG],
-[AC_REQUIRE([_LT_PROG_F77])dnl
-AC_LANG_PUSH(Fortran 77)
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for f77 test sources.
-ac_ext=f
-
-# Object file extension for compiled f77 test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the F77 compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_F77" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="\
- subroutine t
- return
- end
-"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code="\
- program t
- end
-"
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC="$CC"
- lt_save_GCC=$GCC
- CC=${F77-"f77"}
- compiler=$CC
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
- GCC=$G77
- if test -n "$compiler"; then
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
- aix[[4-9]]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_TAGVAR(GCC, $1)="$G77"
- _LT_TAGVAR(LD, $1)="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- GCC=$lt_save_GCC
- CC="$lt_save_CC"
-fi # test "$_lt_disable_F77" != yes
-
-AC_LANG_POP
-])# _LT_LANG_F77_CONFIG
-
-
-# _LT_PROG_FC
-# -----------
-# Since AC_PROG_FC is broken, in that it returns the empty string
-# if there is no fortran compiler, we have our own version here.
-m4_defun([_LT_PROG_FC],
-[
-pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
-AC_PROG_FC
-if test -z "$FC" || test "X$FC" = "Xno"; then
- _lt_disable_FC=yes
-fi
-popdef([AC_MSG_ERROR])
-])# _LT_PROG_FC
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([_LT_PROG_FC], [])
-
-
-# _LT_LANG_FC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for a Fortran compiler are
-# suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_FC_CONFIG],
-[AC_REQUIRE([_LT_PROG_FC])dnl
-AC_LANG_PUSH(Fortran)
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for fc test sources.
-ac_ext=${ac_fc_srcext-f}
-
-# Object file extension for compiled fc test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the FC compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_FC" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="\
- subroutine t
- return
- end
-"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code="\
- program t
- end
-"
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC="$CC"
- lt_save_GCC=$GCC
- CC=${FC-"f95"}
- compiler=$CC
- GCC=$ac_cv_fc_compiler_gnu
-
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
-
- if test -n "$compiler"; then
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
- aix[[4-9]]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
- _LT_TAGVAR(LD, $1)="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_SYS_HIDDEN_LIBDEPS($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- GCC=$lt_save_GCC
- CC="$lt_save_CC"
-fi # test "$_lt_disable_FC" != yes
-
-AC_LANG_POP
-])# _LT_LANG_FC_CONFIG
-
-
-# _LT_LANG_GCJ_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for the GNU Java Compiler compiler
-# are suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_GCJ_CONFIG],
-[AC_REQUIRE([LT_PROG_GCJ])dnl
-AC_LANG_SAVE
-
-# Source file extension for Java test sources.
-ac_ext=java
-
-# Object file extension for compiled Java test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="class foo {}"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC="$CC"
-lt_save_GCC=$GCC
-GCC=yes
-CC=${GCJ-"gcj"}
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)="$LD"
-_LT_CC_BASENAME([$compiler])
-
-# GCJ did not exist at the time GCC didn't implicitly link libc in.
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-
-if test -n "$compiler"; then
- _LT_COMPILER_NO_RTTI($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
-fi
-
-AC_LANG_RESTORE
-
-GCC=$lt_save_GCC
-CC="$lt_save_CC"
-])# _LT_LANG_GCJ_CONFIG
-
-
-# _LT_LANG_RC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for the Windows resource compiler
-# are suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_RC_CONFIG],
-[AC_REQUIRE([LT_PROG_RC])dnl
-AC_LANG_SAVE
-
-# Source file extension for RC test sources.
-ac_ext=rc
-
-# Object file extension for compiled RC test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
-
-# Code to be used in simple link tests
-lt_simple_link_test_code="$lt_simple_compile_test_code"
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC="$CC"
-lt_save_GCC=$GCC
-GCC=
-CC=${RC-"windres"}
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_CC_BASENAME([$compiler])
-_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
-
-if test -n "$compiler"; then
- :
- _LT_CONFIG($1)
-fi
-
-GCC=$lt_save_GCC
-AC_LANG_RESTORE
-CC="$lt_save_CC"
-])# _LT_LANG_RC_CONFIG
-
-
-# LT_PROG_GCJ
-# -----------
-AC_DEFUN([LT_PROG_GCJ],
-[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
- [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
- [AC_CHECK_TOOL(GCJ, gcj,)
- test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
- AC_SUBST(GCJFLAGS)])])[]dnl
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
-
-
-# LT_PROG_RC
-# ----------
-AC_DEFUN([LT_PROG_RC],
-[AC_CHECK_TOOL(RC, windres,)
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_RC], [])
-
-
-# _LT_DECL_EGREP
-# --------------
-# If we don't have a new enough Autoconf to choose the best grep
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_EGREP],
-[AC_REQUIRE([AC_PROG_EGREP])dnl
-AC_REQUIRE([AC_PROG_FGREP])dnl
-test -z "$GREP" && GREP=grep
-_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
-_LT_DECL([], [EGREP], [1], [An ERE matcher])
-_LT_DECL([], [FGREP], [1], [A literal string matcher])
-dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
-AC_SUBST([GREP])
-])
-
-
-# _LT_DECL_OBJDUMP
-# --------------
-# If we don't have a new enough Autoconf to choose the best objdump
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_OBJDUMP],
-[AC_CHECK_TOOL(OBJDUMP, objdump, false)
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
-AC_SUBST([OBJDUMP])
-])
-
-
-# _LT_DECL_SED
-# ------------
-# Check for a fully-functional sed program, that truncates
-# as few characters as possible. Prefer GNU sed if found.
-m4_defun([_LT_DECL_SED],
-[AC_PROG_SED
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
-_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
- [Sed that helps us avoid accidentally triggering echo(1) options like -n])
-])# _LT_DECL_SED
-
-m4_ifndef([AC_PROG_SED], [
-# NOTE: This macro has been submitted for inclusion into #
-# GNU Autoconf as AC_PROG_SED. When it is available in #
-# a released version of Autoconf we should remove this #
-# macro and use it instead. #
-
-m4_defun([AC_PROG_SED],
-[AC_MSG_CHECKING([for a sed that does not truncate output])
-AC_CACHE_VAL(lt_cv_path_SED,
-[# Loop through the user's path and test for sed and gsed.
-# Then use that list of sed's as ones to test for truncation.
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for lt_ac_prog in sed gsed; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
- lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
- fi
- done
- done
-done
-IFS=$as_save_IFS
-lt_ac_max=0
-lt_ac_count=0
-# Add /usr/xpg4/bin/sed as it is typically found on Solaris
-# along with /bin/sed that truncates output.
-for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
- test ! -f $lt_ac_sed && continue
- cat /dev/null > conftest.in
- lt_ac_count=0
- echo $ECHO_N "0123456789$ECHO_C" >conftest.in
- # Check for GNU sed and select it if it is found.
- if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
- lt_cv_path_SED=$lt_ac_sed
- break
- fi
- while true; do
- cat conftest.in conftest.in >conftest.tmp
- mv conftest.tmp conftest.in
- cp conftest.in conftest.nl
- echo >>conftest.nl
- $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
- cmp -s conftest.out conftest.nl || break
- # 10000 chars as input seems more than enough
- test $lt_ac_count -gt 10 && break
- lt_ac_count=`expr $lt_ac_count + 1`
- if test $lt_ac_count -gt $lt_ac_max; then
- lt_ac_max=$lt_ac_count
- lt_cv_path_SED=$lt_ac_sed
- fi
- done
-done
-])
-SED=$lt_cv_path_SED
-AC_SUBST([SED])
-AC_MSG_RESULT([$SED])
-])#AC_PROG_SED
-])#m4_ifndef
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_SED], [])
-
-
-# _LT_CHECK_SHELL_FEATURES
-# ------------------------
-# Find out whether the shell is Bourne or XSI compatible,
-# or has some other useful features.
-m4_defun([_LT_CHECK_SHELL_FEATURES],
-[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
- test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
- = c,a/b,, \
- && eval 'test $(( 1 + 1 )) -eq 2 \
- && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
- && xsi_shell=yes
-AC_MSG_RESULT([$xsi_shell])
-_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
-
-AC_MSG_CHECKING([whether the shell understands "+="])
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
- >/dev/null 2>&1 \
- && lt_shell_append=yes
-AC_MSG_RESULT([$lt_shell_append])
-_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- lt_unset=unset
-else
- lt_unset=false
-fi
-_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
- # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
- lt_SP2NL='tr \040 \012'
- lt_NL2SP='tr \015\012 \040\040'
- ;;
- *) # EBCDIC based system
- lt_SP2NL='tr \100 \n'
- lt_NL2SP='tr \r\n \100\100'
- ;;
-esac
-_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
-_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
-])# _LT_CHECK_SHELL_FEATURES
-
-
-# _LT_PROG_XSI_SHELLFNS
-# ---------------------
-# Bourne and XSI compatible variants of some useful shell functions.
-m4_defun([_LT_PROG_XSI_SHELLFNS],
-[case $xsi_shell in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result="${1##*/}"
-}
-
-# func_dirname_and_basename file append nondir_replacement
-# perform func_basename and func_dirname in a single function
-# call:
-# dirname: Compute the dirname of FILE. If nonempty,
-# add APPEND to the result, otherwise set result
-# to NONDIR_REPLACEMENT.
-# value returned in "$func_dirname_result"
-# basename: Compute filename of FILE.
-# value retuned in "$func_basename_result"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
- func_basename_result="${1##*/}"
-}
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-func_stripname ()
-{
- # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
- # positional parameters, so assign one to ordinary parameter first.
- func_stripname_result=${3}
- func_stripname_result=${func_stripname_result#"${1}"}
- func_stripname_result=${func_stripname_result%"${2}"}
-}
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=${1%%=*}
- func_opt_split_arg=${1#*=}
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- case ${1} in
- *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
- *) func_lo2o_result=${1} ;;
- esac
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=${1%.*}.lo
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=$(( $[*] ))
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=${#1}
-}
-
-_LT_EOF
- ;;
- *) # Bourne compatible functions.
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- # Extract subdirectory from the argument.
- func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
- if test "X$func_dirname_result" = "X${1}"; then
- func_dirname_result="${3}"
- else
- func_dirname_result="$func_dirname_result${2}"
- fi
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
-}
-
-dnl func_dirname_and_basename
-dnl A portable version of this function is already defined in general.m4sh
-dnl so there is no need for it here.
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-# func_strip_suffix prefix name
-func_stripname ()
-{
- case ${2} in
- .*) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
- *) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
- esac
-}
-
-# sed scripts:
-my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
-my_sed_long_arg='1s/^-[[^=]]*=//'
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
- func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=`expr "$[@]"`
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
-}
-
-_LT_EOF
-esac
-
-case $lt_shell_append in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$[1]+=\$[2]"
-}
-_LT_EOF
- ;;
- *)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$[1]=\$$[1]\$[2]"
-}
-
-_LT_EOF
- ;;
- esac
-])
-
-# Helper functions for option handling. -*- Autoconf -*-
-#
-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gary V. Vaughan, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 6 ltoptions.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
-
-
-# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
-# ------------------------------------------
-m4_define([_LT_MANGLE_OPTION],
-[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
-
-
-# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
-# ---------------------------------------
-# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
-# matching handler defined, dispatch to it. Other OPTION-NAMEs are
-# saved as a flag.
-m4_define([_LT_SET_OPTION],
-[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
-m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
- _LT_MANGLE_DEFUN([$1], [$2]),
- [m4_warning([Unknown $1 option `$2'])])[]dnl
-])
-
-
-# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
-# ------------------------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-m4_define([_LT_IF_OPTION],
-[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
-
-
-# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
-# -------------------------------------------------------
-# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
-# are set.
-m4_define([_LT_UNLESS_OPTIONS],
-[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
- [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
- [m4_define([$0_found])])])[]dnl
-m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
-])[]dnl
-])
-
-
-# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
-# ----------------------------------------
-# OPTION-LIST is a space-separated list of Libtool options associated
-# with MACRO-NAME. If any OPTION has a matching handler declared with
-# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
-# the unknown option and exit.
-m4_defun([_LT_SET_OPTIONS],
-[# Set options
-m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
- [_LT_SET_OPTION([$1], _LT_Option)])
-
-m4_if([$1],[LT_INIT],[
- dnl
- dnl Simply set some default values (i.e off) if boolean options were not
- dnl specified:
- _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
- ])
- _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
- ])
- dnl
- dnl If no reference was made to various pairs of opposing options, then
- dnl we run the default mode handler for the pair. For example, if neither
- dnl `shared' nor `disable-shared' was passed, we enable building of shared
- dnl archives by default:
- _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
- _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
- _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
- _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
- [_LT_ENABLE_FAST_INSTALL])
- ])
-])# _LT_SET_OPTIONS
-
-
-
-# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
-# -----------------------------------------
-m4_define([_LT_MANGLE_DEFUN],
-[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
-
-
-# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
-# -----------------------------------------------
-m4_define([LT_OPTION_DEFINE],
-[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
-])# LT_OPTION_DEFINE
-
-
-# dlopen
-# ------
-LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
-])
-
-AU_DEFUN([AC_LIBTOOL_DLOPEN],
-[_LT_SET_OPTION([LT_INIT], [dlopen])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
-
-
-# win32-dll
-# ---------
-# Declare package support for building win32 dll's.
-LT_OPTION_DEFINE([LT_INIT], [win32-dll],
-[enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
- AC_CHECK_TOOL(AS, as, false)
- AC_CHECK_TOOL(DLLTOOL, dlltool, false)
- AC_CHECK_TOOL(OBJDUMP, objdump, false)
- ;;
-esac
-
-test -z "$AS" && AS=as
-_LT_DECL([], [AS], [0], [Assembler program])dnl
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl
-])# win32-dll
-
-AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-_LT_SET_OPTION([LT_INIT], [win32-dll])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
-
-
-# _LT_ENABLE_SHARED([DEFAULT])
-# ----------------------------
-# implement the --enable-shared flag, and supports the `shared' and
-# `disable-shared' LT_INIT options.
-# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_SHARED],
-[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([shared],
- [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
- [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
- enable_shared=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_shared=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac],
- [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
-
- _LT_DECL([build_libtool_libs], [enable_shared], [0],
- [Whether or not to build shared libraries])
-])# _LT_ENABLE_SHARED
-
-LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
-])
-
-AC_DEFUN([AC_DISABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], [disable-shared])
-])
-
-AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_SHARED], [])
-dnl AC_DEFUN([AM_DISABLE_SHARED], [])
-
-
-
-# _LT_ENABLE_STATIC([DEFAULT])
-# ----------------------------
-# implement the --enable-static flag, and support the `static' and
-# `disable-static' LT_INIT options.
-# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_STATIC],
-[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([static],
- [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
- [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
- enable_static=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_static=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac],
- [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
-
- _LT_DECL([build_old_libs], [enable_static], [0],
- [Whether or not to build static libraries])
-])# _LT_ENABLE_STATIC
-
-LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
-])
-
-AC_DEFUN([AC_DISABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], [disable-static])
-])
-
-AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_STATIC], [])
-dnl AC_DEFUN([AM_DISABLE_STATIC], [])
-
-
-
-# _LT_ENABLE_FAST_INSTALL([DEFAULT])
-# ----------------------------------
-# implement the --enable-fast-install flag, and support the `fast-install'
-# and `disable-fast-install' LT_INIT options.
-# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_FAST_INSTALL],
-[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([fast-install],
- [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
- [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
- enable_fast_install=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_fast_install=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac],
- [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
-
-_LT_DECL([fast_install], [enable_fast_install], [0],
- [Whether or not to optimize for fast installation])dnl
-])# _LT_ENABLE_FAST_INSTALL
-
-LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
-
-# Old names:
-AU_DEFUN([AC_ENABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `fast-install' option into LT_INIT's first parameter.])
-])
-
-AU_DEFUN([AC_DISABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `disable-fast-install' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
-dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
-
-
-# _LT_WITH_PIC([MODE])
-# --------------------
-# implement the --with-pic flag, and support the `pic-only' and `no-pic'
-# LT_INIT options.
-# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
-m4_define([_LT_WITH_PIC],
-[AC_ARG_WITH([pic],
- [AS_HELP_STRING([--with-pic],
- [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
- [pic_mode="$withval"],
- [pic_mode=default])
-
-test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
-
-_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
-])# _LT_WITH_PIC
-
-LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
-
-# Old name:
-AU_DEFUN([AC_LIBTOOL_PICMODE],
-[_LT_SET_OPTION([LT_INIT], [pic-only])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `pic-only' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
-
-
-m4_define([_LTDL_MODE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
- [m4_define([_LTDL_MODE], [nonrecursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [recursive],
- [m4_define([_LTDL_MODE], [recursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [subproject],
- [m4_define([_LTDL_MODE], [subproject])])
-
-m4_define([_LTDL_TYPE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [installable],
- [m4_define([_LTDL_TYPE], [installable])])
-LT_OPTION_DEFINE([LTDL_INIT], [convenience],
- [m4_define([_LTDL_TYPE], [convenience])])
-
-# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
-#
-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gary V. Vaughan, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 6 ltsugar.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
-
-
-# lt_join(SEP, ARG1, [ARG2...])
-# -----------------------------
-# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
-# associated separator.
-# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
-# versions in m4sugar had bugs.
-m4_define([lt_join],
-[m4_if([$#], [1], [],
- [$#], [2], [[$2]],
- [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
-m4_define([_lt_join],
-[m4_if([$#$2], [2], [],
- [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
-
-
-# lt_car(LIST)
-# lt_cdr(LIST)
-# ------------
-# Manipulate m4 lists.
-# These macros are necessary as long as will still need to support
-# Autoconf-2.59 which quotes differently.
-m4_define([lt_car], [[$1]])
-m4_define([lt_cdr],
-[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
- [$#], 1, [],
- [m4_dquote(m4_shift($@))])])
-m4_define([lt_unquote], $1)
-
-
-# lt_append(MACRO-NAME, STRING, [SEPARATOR])
-# ------------------------------------------
-# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
-# Note that neither SEPARATOR nor STRING are expanded; they are appended
-# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
-# No SEPARATOR is output if MACRO-NAME was previously undefined (different
-# than defined and empty).
-#
-# This macro is needed until we can rely on Autoconf 2.62, since earlier
-# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
-m4_define([lt_append],
-[m4_define([$1],
- m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
-
-
-
-# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
-# ----------------------------------------------------------
-# Produce a SEP delimited list of all paired combinations of elements of
-# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
-# has the form PREFIXmINFIXSUFFIXn.
-# Needed until we can rely on m4_combine added in Autoconf 2.62.
-m4_define([lt_combine],
-[m4_if(m4_eval([$# > 3]), [1],
- [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
-[[m4_foreach([_Lt_prefix], [$2],
- [m4_foreach([_Lt_suffix],
- ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
- [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
-
-
-# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
-# -----------------------------------------------------------------------
-# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
-# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
-m4_define([lt_if_append_uniq],
-[m4_ifdef([$1],
- [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
- [lt_append([$1], [$2], [$3])$4],
- [$5])],
- [lt_append([$1], [$2], [$3])$4])])
-
-
-# lt_dict_add(DICT, KEY, VALUE)
-# -----------------------------
-m4_define([lt_dict_add],
-[m4_define([$1($2)], [$3])])
-
-
-# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
-# --------------------------------------------
-m4_define([lt_dict_add_subkey],
-[m4_define([$1($2:$3)], [$4])])
-
-
-# lt_dict_fetch(DICT, KEY, [SUBKEY])
-# ----------------------------------
-m4_define([lt_dict_fetch],
-[m4_ifval([$3],
- m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
- m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
-
-
-# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
-# -----------------------------------------------------------------
-m4_define([lt_if_dict_fetch],
-[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
- [$5],
- [$6])])
-
-
-# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
-# --------------------------------------------------------------
-m4_define([lt_dict_filter],
-[m4_if([$5], [], [],
- [lt_join(m4_quote(m4_default([$4], [[, ]])),
- lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
- [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
-])
-
-# ltversion.m4 -- version numbers -*- Autoconf -*-
-#
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# Written by Scott James Remnant, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# Generated from ltversion.in.
-
-# serial 3017 ltversion.m4
-# This file is part of GNU Libtool
-
-m4_define([LT_PACKAGE_VERSION], [2.2.6b])
-m4_define([LT_PACKAGE_REVISION], [1.3017])
-
-AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.2.6b'
-macro_revision='1.3017'
-_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
-_LT_DECL(, macro_revision, 0)
-])
-
-# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
-#
-# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
-# Written by Scott James Remnant, 2004.
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 4 lt~obsolete.m4
-
-# These exist entirely to fool aclocal when bootstrapping libtool.
-#
-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
-# which have later been changed to m4_define as they aren't part of the
-# exported API, or moved to Autoconf or Automake where they belong.
-#
-# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
-# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
-# using a macro with the same name in our local m4/libtool.m4 it'll
-# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
-# and doesn't know about Autoconf macros at all.)
-#
-# So we provide this file, which has a silly filename so it's always
-# included after everything else. This provides aclocal with the
-# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
-# because those macros already exist, or will be overwritten later.
-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
-#
-# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
-# Yes, that means every name once taken will need to remain here until
-# we give up compatibility with versions before 1.7, at which point
-# we need to keep only those names which we still refer to.
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
-
-m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
-m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
-m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
-m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
-m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
-m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
-m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
-m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
-m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
-m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
-m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
-m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
-m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
-m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
-m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
-m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
-m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
-m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
-m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
-m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
-m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
-m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
-m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
-m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
-m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
-m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
-m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
-m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
-m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
-m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
-m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
-m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
-m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
-m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
-m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
-m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
-m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
-m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
-m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])])
-m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
-m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
-m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
-m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
-m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
-m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
-m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
-m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
-
-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-# (This private macro should not be called outside this file.)
-AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.11'
-dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
-dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.11.1], [],
- [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
-])
-
-# _AM_AUTOCONF_VERSION(VERSION)
-# -----------------------------
-# aclocal traces this macro to find the Autoconf version.
-# This is a private macro too. Using m4_define simplifies
-# the logic in aclocal, which can simply ignore this definition.
-m4_define([_AM_AUTOCONF_VERSION], [])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.11.1])dnl
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-
-# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
-# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
-#
-# Of course, Automake must honor this variable whenever it calls a
-# tool from the auxiliary directory. The problem is that $srcdir (and
-# therefore $ac_aux_dir as well) can be either absolute or relative,
-# depending on how configure is run. This is pretty annoying, since
-# it makes $ac_aux_dir quite unusable in subdirectories: in the top
-# source directory, any form will work fine, but in subdirectories a
-# relative path needs to be adjusted first.
-#
-# $ac_aux_dir/missing
-# fails when called from a subdirectory if $ac_aux_dir is relative
-# $top_srcdir/$ac_aux_dir/missing
-# fails if $ac_aux_dir is absolute,
-# fails when called from a subdirectory in a VPATH build with
-# a relative $ac_aux_dir
-#
-# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
-# are both prefixed by $srcdir. In an in-source build this is usually
-# harmless because $srcdir is `.', but things will broke when you
-# start a VPATH build or use an absolute $srcdir.
-#
-# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
-# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
-# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
-# and then we would define $MISSING as
-# MISSING="\${SHELL} $am_aux_dir/missing"
-# This will work as long as MISSING is not called from configure, because
-# unfortunately $(top_srcdir) has no meaning in configure.
-# However there are other variables, like CC, which are often used in
-# configure, and could therefore not use this "fixed" $ac_aux_dir.
-#
-# Another solution, used here, is to always expand $ac_aux_dir to an
-# absolute PATH. The drawback is that using absolute paths prevent a
-# configured tree to be moved without reconfiguration.
-
-AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-])
-
-# AM_CONDITIONAL -*- Autoconf -*-
-
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 9
-
-# AM_CONDITIONAL(NAME, SHELL-CONDITION)
-# -------------------------------------
-# Define a conditional.
-AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ(2.52)dnl
- ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
- [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])dnl
-AC_SUBST([$1_FALSE])dnl
-_AM_SUBST_NOTMAKE([$1_TRUE])dnl
-_AM_SUBST_NOTMAKE([$1_FALSE])dnl
-m4_define([_AM_COND_VALUE_$1], [$2])dnl
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi
-AC_CONFIG_COMMANDS_PRE(
-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
- AC_MSG_ERROR([[conditional "$1" was never defined.
-Usually this means the macro was only invoked conditionally.]])
-fi])])
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 10
-
-# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
-# written in clear, in which case automake, when reading aclocal.m4,
-# will think it sees a *use*, and therefore will trigger all it's
-# C support machinery. Also note that it means that autoscan, seeing
-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
-
-# _AM_DEPENDENCIES(NAME)
-# ----------------------
-# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "GCJ", or "OBJC".
-# We try a few techniques and use that to set a single cache variable.
-#
-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
-# dependency, and given that the user is not expected to run this macro,
-# just rely on AC_PROG_CC.
-AC_DEFUN([_AM_DEPENDENCIES],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
-
-ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
- [$1], CXX, [depcc="$CXX" am_compiler_list=],
- [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
- [$1], UPC, [depcc="$UPC" am_compiler_list=],
- [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
- [depcc="$$1" am_compiler_list=])
-
-AC_CACHE_CHECK([dependency style of $depcc],
- [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_$1_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
- fi
- am__universal=false
- m4_case([$1], [CC],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac],
- [CXX],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac])
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_$1_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_$1_dependencies_compiler_type=none
-fi
-])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
-
-
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-
-
-# AM_DEP_TRACK
-# ------------
-AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE(dependency-tracking,
-[ --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors])
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
-])
-
-# Generate code to set up dependency tracking. -*- Autoconf -*-
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-#serial 5
-
-# _AM_OUTPUT_DEPENDENCY_COMMANDS
-# ------------------------------
-AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[{
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`AS_DIRNAME("$mf")`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`AS_DIRNAME(["$file"])`
- AS_MKDIR_P([$dirpart/$fdir])
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
-])# _AM_OUTPUT_DEPENDENCY_COMMANDS
-
-
-# AM_OUTPUT_DEPENDENCY_COMMANDS
-# -----------------------------
-# This macro should only be invoked once -- use via AC_REQUIRE.
-#
-# This code is only required when automatic dependency tracking
-# is enabled. FIXME. This creates each `.P' file that we will
-# need in order to bootstrap the dependency handling code.
-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
-[AC_CONFIG_COMMANDS([depfiles],
- [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
- [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
-
-# Do all the work for Automake. -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 16
-
-# This macro actually does too much. Some checks are only needed if
-# your package does certain things. But this isn't really a big deal.
-
-# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
-# AM_INIT_AUTOMAKE([OPTIONS])
-# -----------------------------------------------
-# The call with PACKAGE and VERSION arguments is the old style
-# call (pre autoconf-2.50), which is being phased out. PACKAGE
-# and VERSION should now be passed to AC_INIT and removed from
-# the call to AM_INIT_AUTOMAKE.
-# We support both call styles for the transition. After
-# the next Automake release, Autoconf can make the AC_INIT
-# arguments mandatory, and then we can depend on a new Autoconf
-# release and drop the old call support.
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
-dnl Autoconf wants to disallow AM_ names. We explicitly allow
-dnl the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])dnl
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-AC_SUBST([CYGPATH_W])
-
-# Define the identity of the package.
-dnl Distinguish between old-style and new-style calls.
-m4_ifval([$2],
-[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
- AC_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])dnl
-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
- [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
-
-_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
-
-# Some tools Automake needs.
-AC_REQUIRE([AM_SANITY_CHECK])dnl
-AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
-AM_MISSING_PROG(AUTOCONF, autoconf)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
-AM_MISSING_PROG(AUTOHEADER, autoheader)
-AM_MISSING_PROG(MAKEINFO, makeinfo)
-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AM_PROG_MKDIR_P])dnl
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
- [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
- [_AM_PROG_TAR([v7])])])
-_AM_IF_OPTION([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
- [_AM_DEPENDENCIES(CC)],
- [define([AC_PROG_CC],
- defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [_AM_DEPENDENCIES(CXX)],
- [define([AC_PROG_CXX],
- defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- [_AM_DEPENDENCIES(OBJC)],
- [define([AC_PROG_OBJC],
- defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
-])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
-dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
-AC_CONFIG_COMMANDS_PRE(dnl
-[m4_provide_if([_AM_COMPILER_EXEEXT],
- [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
-
-dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
-dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
-dnl mangled by Autoconf and run in a shell conditional statement.
-m4_define([_AC_COMPILER_EXEEXT],
-m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
-
-# When config.status generates a header, we must update the stamp-h file.
-# This file resides in the same directory as the config header
-# that is generated. The stamp files are numbered to have different names.
-
-# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
-# loop where config.status creates the headers, so we can generate
-# our stamp files there.
-AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
-[# Compute $1's index in $config_headers.
-_am_arg=$1
-_am_stamp_count=1
-for _am_header in $config_headers :; do
- case $_am_header in
- $_am_arg | $_am_arg:* )
- break ;;
- * )
- _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
-done
-echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-
-# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_INSTALL_SH
-# ------------------
-# Define $install_sh.
-AC_DEFUN([AM_PROG_INSTALL_SH],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-AC_SUBST(install_sh)])
-
-# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot. For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-
-# Check to see how 'make' treats includes. -*- Autoconf -*-
-
-# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 4
-
-# AM_MAKE_INCLUDE()
-# -----------------
-# Check to see how make treats includes.
-AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
-
-# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 6
-
-# AM_MISSING_PROG(NAME, PROGRAM)
-# ------------------------------
-AC_DEFUN([AM_MISSING_PROG],
-[AC_REQUIRE([AM_MISSING_HAS_RUN])
-$1=${$1-"${am_missing_run}$2"}
-AC_SUBST($1)])
-
-
-# AM_MISSING_HAS_RUN
-# ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
-AC_DEFUN([AM_MISSING_HAS_RUN],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([missing])dnl
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- AC_MSG_WARN([`missing' script is too old or missing])
-fi
-])
-
-# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_MKDIR_P
-# ---------------
-# Check for `mkdir -p'.
-AC_DEFUN([AM_PROG_MKDIR_P],
-[AC_PREREQ([2.60])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
-dnl while keeping a definition of mkdir_p for backward compatibility.
-dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
-dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
-dnl Makefile.ins that do not define MKDIR_P, so we do our own
-dnl adjustment using top_builddir (which is defined more often than
-dnl MKDIR_P).
-AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
-case $mkdir_p in
- [[\\/$]]* | ?:[[\\/]]*) ;;
- */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-])
-
-# Helper functions for option handling. -*- Autoconf -*-
-
-# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 4
-
-# _AM_MANGLE_OPTION(NAME)
-# -----------------------
-AC_DEFUN([_AM_MANGLE_OPTION],
-[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
-
-# _AM_SET_OPTION(NAME)
-# ------------------------------
-# Set option NAME. Presently that only means defining a flag for this option.
-AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
-
-# _AM_SET_OPTIONS(OPTIONS)
-# ----------------------------------
-# OPTIONS is a space-separated list of Automake options.
-AC_DEFUN([_AM_SET_OPTIONS],
-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
-
-# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
-# -------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-AC_DEFUN([_AM_IF_OPTION],
-[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-# ---------------------------------------------------------------------------
-# Adds support for distributing Python modules and packages. To
-# install modules, copy them to $(pythondir), using the python_PYTHON
-# automake variable. To install a package with the same name as the
-# automake package, install to $(pkgpythondir), or use the
-# pkgpython_PYTHON automake variable.
-#
-# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as
-# locations to install python extension modules (shared libraries).
-# Another macro is required to find the appropriate flags to compile
-# extension modules.
-#
-# If your package is configured with a different prefix to python,
-# users will have to add the install directory to the PYTHONPATH
-# environment variable, or create a .pth file (see the python
-# documentation for details).
-#
-# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will
-# cause an error if the version of python installed on the system
-# doesn't meet the requirement. MINIMUM-VERSION should consist of
-# numbers and dots only.
-AC_DEFUN([AM_PATH_PYTHON],
- [
- dnl Find a Python interpreter. Python versions prior to 2.0 are not
- dnl supported. (2.0 was released on October 16, 2000).
- m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
- [python python2 python3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 dnl
-python2.1 python2.0])
-
- m4_if([$1],[],[
- dnl No version check is needed.
- # Find any Python interpreter.
- if test -z "$PYTHON"; then
- AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :)
- fi
- am_display_PYTHON=python
- ], [
- dnl A version check is needed.
- if test -n "$PYTHON"; then
- # If the user set $PYTHON, use it and don't search something else.
- AC_MSG_CHECKING([whether $PYTHON version >= $1])
- AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
- [AC_MSG_RESULT(yes)],
- [AC_MSG_ERROR(too old)])
- am_display_PYTHON=$PYTHON
- else
- # Otherwise, try each interpreter until we find one that satisfies
- # VERSION.
- AC_CACHE_CHECK([for a Python interpreter with version >= $1],
- [am_cv_pathless_PYTHON],[
- for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do
- test "$am_cv_pathless_PYTHON" = none && break
- AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break])
- done])
- # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
- if test "$am_cv_pathless_PYTHON" = none; then
- PYTHON=:
- else
- AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON])
- fi
- am_display_PYTHON=$am_cv_pathless_PYTHON
- fi
- ])
-
- if test "$PYTHON" = :; then
- dnl Run any user-specified action, or abort.
- m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
- else
-
- dnl Query Python for its version number. Getting [:3] seems to be
- dnl the best way to do this; it's what "site.py" does in the standard
- dnl library.
-
- AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
- [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
- AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
-
- dnl Use the values of $prefix and $exec_prefix for the corresponding
- dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made
- dnl distinct variables so they can be overridden if need be. However,
- dnl general consensus is that you shouldn't need this ability.
-
- AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
- AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
-
- dnl At times (like when building shared libraries) you may want
- dnl to know which OS platform Python thinks this is.
-
- AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
- [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
- AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
-
-
- dnl Set up 4 directories:
-
- dnl pythondir -- where to install python scripts. This is the
- dnl site-packages directory, not the python standard library
- dnl directory like in previous automake betas. This behavior
- dnl is more consistent with lispdir.m4 for example.
- dnl Query distutils for this directory. distutils does not exist in
- dnl Python 1.5, so we fall back to the hardcoded directory if it
- dnl doesn't work.
- AC_CACHE_CHECK([for $am_display_PYTHON script directory],
- [am_cv_python_pythondir],
- [if test "x$prefix" = xNONE
- then
- am_py_prefix=$ac_default_prefix
- else
- am_py_prefix=$prefix
- fi
- am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null ||
- echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pythondir in
- $am_py_prefix*)
- am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
- am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
- ;;
- *)
- case $am_py_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
- ])
- AC_SUBST([pythondir], [$am_cv_python_pythondir])
-
- dnl pkgpythondir -- $PACKAGE directory under pythondir. Was
- dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is
- dnl more consistent with the rest of automake.
-
- AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
-
- dnl pyexecdir -- directory for installing python extension modules
- dnl (shared libraries)
- dnl Query distutils for this directory. distutils does not exist in
- dnl Python 1.5, so we fall back to the hardcoded directory if it
- dnl doesn't work.
- AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
- [am_cv_python_pyexecdir],
- [if test "x$exec_prefix" = xNONE
- then
- am_py_exec_prefix=$am_py_prefix
- else
- am_py_exec_prefix=$exec_prefix
- fi
- am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null ||
- echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pyexecdir in
- $am_py_exec_prefix*)
- am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
- am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
- ;;
- *)
- case $am_py_exec_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
- ])
- AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
-
- dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
-
- AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
-
- dnl Run any user-specified action.
- $2
- fi
-
-])
-
-
-# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
-# ---------------------------------------------------------------------------
-# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION.
-# Run ACTION-IF-FALSE otherwise.
-# This test uses sys.hexversion instead of the string equivalent (first
-# word of sys.version), in order to cope with versions such as 2.2c1.
-# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000).
-AC_DEFUN([AM_PYTHON_CHECK_VERSION],
- [prog="import sys
-# split strings by '.' and convert to numeric. Append some zeros
-# because we need at least 4 digits for the hex conversion.
-# map returns an iterator in Python 3.0 and a list in 2.x
-minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]]
-minverhex = 0
-# xrange is not present in Python 3.0 and range returns an iterator
-for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
-sys.exit(sys.hexversion < minverhex)"
- AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
-
-# Check to make sure that the build environment is sane. -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 5
-
-# AM_SANITY_CHECK
-# ---------------
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[[\\\"\#\$\&\'\`$am_lf]]*)
- AC_MSG_ERROR([unsafe absolute working directory name]);;
-esac
-case $srcdir in
- *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
- AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$[*]" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$[*]" != "X $srcdir/configure conftest.file" \
- && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
- test "$[2]" = conftest.file
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-AC_MSG_RESULT(yes)])
-
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_INSTALL_STRIP
-# ---------------------
-# One issue with vendor `install' (even GNU) is that you can't
-# specify the program used to strip binaries. This is especially
-# annoying in cross-compiling environments, where the build's strip
-# is unlikely to handle the host's binaries.
-# Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in `make install-strip', and initialize
-# STRIPPROG with the value of the STRIP variable (set by the user).
-AC_DEFUN([AM_PROG_INSTALL_STRIP],
-[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
-if test "$cross_compiling" != no; then
- AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-
-# Copyright (C) 2006, 2008 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# _AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
-# This macro is traced by Automake.
-AC_DEFUN([_AM_SUBST_NOTMAKE])
-
-# AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Public sister of _AM_SUBST_NOTMAKE.
-AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
-
-# Check how to create a tarball. -*- Autoconf -*-
-
-# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# _AM_PROG_TAR(FORMAT)
-# --------------------
-# Check how to create a tarball in format FORMAT.
-# FORMAT should be one of `v7', `ustar', or `pax'.
-#
-# Substitute a variable $(am__tar) that is a command
-# writing to stdout a FORMAT-tarball containing the directory
-# $tardir.
-# tardir=directory && $(am__tar) > result.tar
-#
-# Substitute a variable $(am__untar) that extract such
-# a tarball read from stdin.
-# $(am__untar) < result.tar
-AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
-m4_if([$1], [v7],
- [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
- [m4_case([$1], [ustar],, [pax],,
- [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of `-'.
-for _am_tool in $_am_tools
-do
- case $_am_tool in
- gnutar)
- for _am_tar in tar gnutar gtar;
- do
- AM_RUN_LOG([$_am_tar --version]) && break
- done
- am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
- am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
- am__untar="$_am_tar -xf -"
- ;;
- plaintar)
- # Must skip GNU tar: if it does not support --format= it doesn't create
- # ustar tarball either.
- (tar --version) >/dev/null 2>&1 && continue
- am__tar='tar chf - "$$tardir"'
- am__tar_='tar chf - "$tardir"'
- am__untar='tar xf -'
- ;;
- pax)
- am__tar='pax -L -x $1 -w "$$tardir"'
- am__tar_='pax -L -x $1 -w "$tardir"'
- am__untar='pax -r'
- ;;
- cpio)
- am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
- am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
- am__untar='cpio -i -H $1 -d'
- ;;
- none)
- am__tar=false
- am__tar_=false
- am__untar=false
- ;;
- esac
-
- # If the value was cached, stop now. We just wanted to have am__tar
- # and am__untar set.
- test -n "${am_cv_prog_tar_$1}" && break
-
- # tar/untar a dummy directory, and stop if the command works
- rm -rf conftest.dir
- mkdir conftest.dir
- echo GrepMe > conftest.dir/file
- AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
- rm -rf conftest.dir
- if test -s conftest.tar; then
- AM_RUN_LOG([$am__untar <conftest.tar])
- grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
- fi
-done
-rm -rf conftest.dir
-
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
-AC_SUBST([am__tar])
-AC_SUBST([am__untar])
-]) # _AM_PROG_TAR
-
-m4_include([config/autotroll.m4])
diff --git a/autom4te.cache/output.0 b/autom4te.cache/output.0
deleted file mode 100644
index 2de1609..0000000
--- a/autom4te.cache/output.0
+++ /dev/null
@@ -1,19495 +0,0 @@
-@%:@! /bin/sh
-@%:@ Guess values for system-dependent variables and create Makefiles.
-@%:@ Generated by GNU Autoconf 2.67 for mathgl 2.0.
-@%:@
-@%:@ Report bugs to <mathgl.abalakin at gmail.com>.
-@%:@
-@%:@
-@%:@ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-@%:@ 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-@%:@ Foundation, Inc.
-@%:@
-@%:@
-@%:@ This configure script is free software; the Free Software Foundation
-@%:@ gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in @%:@(
- *posix*) :
- set -o posix ;; @%:@(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in @%:@(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-case $0 in @%:@((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '\${1+\"\$@\"}'='\"\$@\"'
- setopt NO_GLOB_SUBST
-else
- case \`(set -o) 2>/dev/null\` in @%:@(
- *posix*) :
- set -o posix ;; @%:@(
- *) :
- ;;
-esac
-fi
-"
- as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-
-else
- exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1"
- as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
- as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
- eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
- test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
- if (eval "$as_required") 2>/dev/null; then :
- as_have_required=yes
-else
- as_have_required=no
-fi
- if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- as_found=:
- case $as_dir in @%:@(
- /*)
- for as_base in sh bash ksh sh5; do
- # Try only shells that exist, to save several forks.
- as_shell=$as_dir/$as_base
- if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
- CONFIG_SHELL=$as_shell as_have_required=yes
- if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
- break 2
-fi
-fi
- done;;
- esac
- as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
- CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
- if test "x$CONFIG_SHELL" != x; then :
- # We cannot yet assume a decent shell, so we have to provide a
- # neutralization value for shells without unset; and this also
- # works around shells that cannot unset nonexistent variables.
- BASH_ENV=/dev/null
- ENV=/dev/null
- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
-fi
-
- if test x$as_have_required = xno; then :
- $as_echo "$0: This script requires a shell more modern than all"
- $as_echo "$0: the shells that I found on your system."
- if test x${ZSH_VERSION+set} = xset ; then
- $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
- $as_echo "$0: be upgraded to zsh 4.3.4 or later."
- else
- $as_echo "$0: Please tell bug-autoconf at gnu.org and
-$0: mathgl.abalakin at gmail.com about your system, including
-$0: any error possibly output before this message. Then
-$0: install a modern shell, or manually run the script
-$0: under such a shell if you do have one."
- fi
- exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} @%:@ as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -p'
- fi
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in @%:@(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-
-# Check that we are running under the correct shell.
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-case X$lt_ECHO in
-X*--fallback-echo)
- # Remove one level of quotation (which was required for Make).
- ECHO=`echo "$lt_ECHO" | sed 's,\\\\\$\\$0,'$0','`
- ;;
-esac
-
-ECHO=${lt_ECHO-echo}
-if test "X$1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X$1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
- # Yippee, $ECHO works!
- :
-else
- # Restart under the correct shell.
- exec $SHELL "$0" --no-reexec ${1+"$@"}
-fi
-
-if test "X$1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<_LT_EOF
-$*
-_LT_EOF
- exit 0
-fi
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test -z "$lt_ECHO"; then
- if test "X${echo_test_string+set}" != Xset; then
- # find a string as large as possible, as long as the shell can cope with it
- for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
- # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
- { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
- then
- break
- fi
- done
- fi
-
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- :
- else
- # The Solaris, AIX, and Digital Unix default echo programs unquote
- # backslashes. This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- #
- # So, first we look for a working echo in the user's PATH.
-
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for dir in $PATH /usr/ucb; do
- IFS="$lt_save_ifs"
- if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
- test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$dir/echo"
- break
- fi
- done
- IFS="$lt_save_ifs"
-
- if test "X$ECHO" = Xecho; then
- # We didn't find a better echo, so look for alternatives.
- if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # This shell has a builtin print -r that does the trick.
- ECHO='print -r'
- elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
- test "X$CONFIG_SHELL" != X/bin/ksh; then
- # If we have ksh, try running configure again with it.
- ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
- export ORIGINAL_CONFIG_SHELL
- CONFIG_SHELL=/bin/ksh
- export CONFIG_SHELL
- exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"}
- else
- # Try using printf.
- ECHO='printf %s\n'
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # Cool, printf works
- :
- elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
- export CONFIG_SHELL
- SHELL="$CONFIG_SHELL"
- export SHELL
- ECHO="$CONFIG_SHELL $0 --fallback-echo"
- elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$CONFIG_SHELL $0 --fallback-echo"
- else
- # maybe with a smaller string...
- prev=:
-
- for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
- if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
- then
- break
- fi
- prev="$cmd"
- done
-
- if test "$prev" != 'sed 50q "$0"'; then
- echo_test_string=`eval $prev`
- export echo_test_string
- exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"}
- else
- # Oops. We lost completely, so just stick with echo.
- ECHO=echo
- fi
- fi
- fi
- fi
- fi
-fi
-
-# Copy echo and quote the copy suitably for passing to libtool from
-# the Makefile, instead of quoting the original, which is used later.
-lt_ECHO=$ECHO
-if test "X$lt_ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then
- lt_ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo"
-fi
-
-
-
-as_awk_strverscmp='
- # Use only awk features that work with 7th edition Unix awk (1978).
- # My, what an old awk you have, Mr. Solaris!
- END {
- while (length(v1) && length(v2)) {
- # Set d1 to be the next thing to compare from v1, and likewise for d2.
- # Normally this is a single character, but if v1 and v2 contain digits,
- # compare them as integers and fractions as strverscmp does.
- if (v1 ~ /^[0-9]/ && v2 ~ /^[0-9]/) {
- # Split v1 and v2 into their leading digit string components d1 and d2,
- # and advance v1 and v2 past the leading digit strings.
- for (len1 = 1; substr(v1, len1 + 1) ~ /^[0-9]/; len1++) continue
- for (len2 = 1; substr(v2, len2 + 1) ~ /^[0-9]/; len2++) continue
- d1 = substr(v1, 1, len1); v1 = substr(v1, len1 + 1)
- d2 = substr(v2, 1, len2); v2 = substr(v2, len2 + 1)
- if (d1 ~ /^0/) {
- if (d2 ~ /^0/) {
- # Compare two fractions.
- while (d1 ~ /^0/ && d2 ~ /^0/) {
- d1 = substr(d1, 2); len1--
- d2 = substr(d2, 2); len2--
- }
- if (len1 != len2 && ! (len1 && len2 && substr(d1, 1, 1) == substr(d2, 1, 1))) {
- # The two components differ in length, and the common prefix
- # contains only leading zeros. Consider the longer to be less.
- d1 = -len1
- d2 = -len2
- } else {
- # Otherwise, compare as strings.
- d1 = "x" d1
- d2 = "x" d2
- }
- } else {
- # A fraction is less than an integer.
- exit 1
- }
- } else {
- if (d2 ~ /^0/) {
- # An integer is greater than a fraction.
- exit 2
- } else {
- # Compare two integers.
- d1 += 0
- d2 += 0
- }
- }
- } else {
- # The normal case, without worrying about digits.
- d1 = substr(v1, 1, 1); v1 = substr(v1, 2)
- d2 = substr(v2, 1, 1); v2 = substr(v2, 2)
- }
- if (d1 < d2) exit 1
- if (d1 > d2) exit 2
- }
- # Beware Solaris /usr/xgp4/bin/awk (at least through Solaris 10),
- # which mishandles some comparisons of empty strings to integers.
- if (length(v2)) exit 1
- if (length(v1)) exit 2
- }
-'
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIB@&t at OBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='mathgl'
-PACKAGE_TARNAME='mathgl'
-PACKAGE_VERSION='2.0'
-PACKAGE_STRING='mathgl 2.0'
-PACKAGE_BUGREPORT='mathgl.abalakin at gmail.com'
-PACKAGE_URL=''
-
-ac_unique_file="src"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-# include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_subst_vars='am__EXEEXT_FALSE
-am__EXEEXT_TRUE
-LTLIBOBJS
-LIB@&t at OBJS
-AM_CXXFLAGS
-USE_OCTAVE_FALSE
-USE_OCTAVE_TRUE
-OCTAVE_INCFLAGS
-OCTAVE_ARCH
-OCTAVE
-USE_PYTHON_FALSE
-USE_PYTHON_TRUE
-pkgpyexecdir
-pyexecdir
-pkgpythondir
-pythondir
-PYTHON_PLATFORM
-PYTHON_EXEC_PREFIX
-PYTHON_PREFIX
-PYTHON_VERSION
-PYTHON
-HAVE_SWIG
-PYTHON_HEADERS
-USE_QT_FALSE
-USE_QT_TRUE
-QT_VERSION
-QT_LIBS
-QT_LDFLAGS
-QT_LFLAGS
-QT_CPPFLAGS
-QT_INCPATH
-QT_CXXFLAGS
-QT_CFLAGS
-QT_DEFINES
-QT_VERSION_MAJOR
-TMPDIR
-QT_PATH
-RCC
-UIC
-MOC
-QMAKE
-USE_FLTK_FALSE
-USE_FLTK_TRUE
-FLTK_LIBS
-FLTK_FLAGS
-USE_U3D_FALSE
-USE_U3D_TRUE
-U3D_LIBS
-USE_PDF_FALSE
-USE_PDF_TRUE
-USE_JPEG_FALSE
-USE_JPEG_TRUE
-JPEG_LIBS
-JPEG_FLAGS
-PNG_LIBS
-USE_HDF4_FALSE
-USE_HDF4_TRUE
-HDF4_LIBS
-HDF4_FLAGS
-USE_HDF5_FALSE
-USE_HDF5_TRUE
-HDF5_LIBS
-HDF5_FLAGS
-USE_GLUT_FALSE
-USE_GLUT_TRUE
-GL_LIBS
-USE_GSL_FALSE
-USE_GSL_TRUE
-GSL_LIBS
-GSL_FLAGS
-USE_PTHREAD_FALSE
-USE_PTHREAD_TRUE
-PTHREAD_LIBS
-PTHREAD_FLAGS
-CXXCPP
-CPP
-OTOOL64
-OTOOL
-LIPO
-NMEDIT
-DSYMUTIL
-lt_ECHO
-RANLIB
-AR
-LN_S
-NM
-ac_ct_DUMPBIN
-DUMPBIN
-LD
-FGREP
-EGREP
-GREP
-SED
-LIBTOOL
-OBJDUMP
-DLLTOOL
-AS
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-am__fastdepCXX_FALSE
-am__fastdepCXX_TRUE
-CXXDEPMODE
-ac_ct_CXX
-CXXFLAGS
-CXX
-am__fastdepCC_FALSE
-am__fastdepCC_TRUE
-CCDEPMODE
-AMDEPBACKSLASH
-AMDEP_FALSE
-AMDEP_TRUE
-am__quote
-am__include
-DEPDIR
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-am__untar
-am__tar
-AMTAR
-am__leading_dot
-SET_MAKE
-AWK
-mkdir_p
-MKDIR_P
-INSTALL_STRIP_PROGRAM
-STRIP
-install_sh
-MAKEINFO
-AUTOHEADER
-AUTOMAKE
-AUTOCONF
-ACLOCAL
-VERSION
-PACKAGE
-CYGPATH_W
-am__isrc
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-MGL_AGE
-MGL_REVISION
-MGL_CURRENT
-MGL_RELEASE
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-enable_dependency_tracking
-enable_shared
-enable_static
-with_pic
-enable_fast_install
-with_gnu_ld
-enable_libtool_lock
-enable_double
-enable_all
-enable_langall
-enable_pthread
-enable_gsl
-enable_hdf5
-enable_hdf5_18
-enable_hdf4
-enable_jpeg
-enable_u3d
-enable_pdf
-enable_fltk
-enable_qt
-with_qt
-enable_python
-enable_octave
-'
- ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CXX
-CXXFLAGS
-CCC
-CPP
-CXXCPP
-TMPDIR'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval $ac_prev=\$ac_option
- ac_prev=
- continue
- fi
-
- case $ac_option in
- *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
- *=) ac_optarg= ;;
- *) ac_optarg=yes ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_dashdash$ac_option in
- --)
- ac_dashdash=yes ;;
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=*)
- datadir=$ac_optarg ;;
-
- -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
- | --dataroo | --dataro | --datar)
- ac_prev=datarootdir ;;
- -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
- | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
- datarootdir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=no ;;
-
- -docdir | --docdir | --docdi | --doc | --do)
- ac_prev=docdir ;;
- -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
- docdir=$ac_optarg ;;
-
- -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
- ac_prev=dvidir ;;
- -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
- dvidir=$ac_optarg ;;
-
- -enable-* | --enable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=\$ac_optarg ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
- ac_prev=htmldir ;;
- -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
- | --ht=*)
- htmldir=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localedir | --localedir | --localedi | --localed | --locale)
- ac_prev=localedir ;;
- -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
- localedir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst | --locals)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
- ac_prev=pdfdir ;;
- -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
- pdfdir=$ac_optarg ;;
-
- -psdir | --psdir | --psdi | --psd | --ps)
- ac_prev=psdir ;;
- -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
- psdir=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=\$ac_optarg ;;
-
- -without-* | --without-*)
- ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=no ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- case $ac_envvar in #(
- '' | [0-9]* | *[!_$as_cr_alnum]* )
- as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
- esac
- eval $ac_envvar=\$ac_optarg
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
- case $enable_option_checking in
- no) ;;
- fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
- *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
- esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
- datadir sysconfdir sharedstatedir localstatedir includedir \
- oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
-do
- eval ac_val=\$$ac_var
- # Remove trailing slashes.
- case $ac_val in
- */ )
- ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
- eval $ac_var=\$ac_val;;
- esac
- # Be sure to have absolute directory names.
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) continue;;
- NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
- esac
- as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used" >&2
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then the parent directory.
- ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_myself" : 'X\(//\)[^/]' \| \
- X"$as_myself" : 'X\(//\)$' \| \
- X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r "$srcdir/$ac_unique_file"; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
- test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
- pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
- srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
- eval ac_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_env_${ac_var}_value=\$${ac_var}
- eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures mathgl 2.0 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking ...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- @<:@@S|@ac_default_prefix@:>@
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- @<:@PREFIX@:>@
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root @<:@DATAROOTDIR/doc/mathgl@:>@
- --htmldir=DIR html documentation [DOCDIR]
- --dvidir=DIR dvi documentation [DOCDIR]
- --pdfdir=DIR pdf documentation [DOCDIR]
- --psdir=DIR ps documentation [DOCDIR]
-_ACEOF
-
- cat <<\_ACEOF
-
-Program names:
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM run sed PROGRAM on installed program names
-
-System types:
- --build=BUILD configure for building on BUILD [guessed]
- --host=HOST cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
- case $ac_init_help in
- short | recursive ) echo "Configuration of mathgl 2.0:";;
- esac
- cat <<\_ACEOF
-
-Optional Features:
- --disable-option-checking ignore unrecognized --enable/--with options
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors
- --enable-shared@<:@=PKGS@:>@ build shared libraries @<:@default=yes@:>@
- --enable-static@<:@=PKGS@:>@ build static libraries @<:@default=yes@:>@
- --enable-fast-install@<:@=PKGS@:>@
- optimize for fast installation @<:@default=yes@:>@
- --disable-libtool-lock avoid locking (might break parallel builds)
- --enable-double Turn on double precision in MathGL library
- --enable-all Turn on all features
- --enable-langall Turn on all language interfaces
- --enable-pthread Turn on pthread support in MathGL library
- --enable-gsl Turn on gsl functions
- --enable-hdf5 Turn on hdf5
- --enable-hdf5_18 Turn on hdf5 version 1.8
- --enable-hdf4 Turn on hdf4
- --enable-jpeg Turn on jpeg
- --enable-u3d Turn on u3d functions
- --enable-pdf Turn on u3d and pdf functions
- --enable-fltk Turn on fltk
- --enable-qt Turn on Qt
- --enable-python Turn on interface to python
- --enable-octave Turn on interface to octave
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-pic try to use only PIC/non-PIC objects @<:@default=use
- both@:>@
- --with-gnu-ld assume the C compiler uses GNU ld @<:@default=no@:>@
- --with-qt Path to Qt @<:@Look in PATH and /usr/local/Trolltech@:>@
-
-Some influential environment variables:
- CC C compiler command
- CFLAGS C compiler flags
- LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
- nonstandard directory <lib dir>
- LIBS libraries to pass to the linker, e.g. -l<library>
- CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
- you have headers in a nonstandard directory <include dir>
- CXX C++ compiler command
- CXXFLAGS C++ compiler flags
- CPP C preprocessor
- CXXCPP C++ preprocessor
- TMPDIR A temporary directory with write access @<:@/tmp@:>@
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <mathgl.abalakin at gmail.com>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d "$ac_dir" ||
- { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
- continue
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
- cd "$ac_dir" || { ac_status=$?; continue; }
- # Check for guested configure.
- if test -f "$ac_srcdir/configure.gnu"; then
- echo &&
- $SHELL "$ac_srcdir/configure.gnu" --help=recursive
- elif test -f "$ac_srcdir/configure"; then
- echo &&
- $SHELL "$ac_srcdir/configure" --help=recursive
- else
- $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi || ac_status=$?
- cd "$ac_pwd" || { ac_status=$?; break; }
- done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
- cat <<\_ACEOF
-mathgl configure 2.0
-generated by GNU Autoconf 2.67
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-@%:@ ac_fn_c_try_compile LINENO
-@%:@ --------------------------
-@%:@ Try to compile conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_compile
-
-@%:@ ac_fn_cxx_try_compile LINENO
-@%:@ ----------------------------
-@%:@ Try to compile conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_cxx_try_compile
-
-@%:@ ac_fn_c_try_link LINENO
-@%:@ -----------------------
-@%:@ Try to link conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_link
-
-@%:@ ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-@%:@ -------------------------------------------------------
-@%:@ Tests whether HEADER exists and can be compiled using the include files in
-@%:@ INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} @%:@ ac_fn_c_check_header_compile
-
-@%:@ ac_fn_c_try_cpp LINENO
-@%:@ ----------------------
-@%:@ Try to preprocess conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_cpp
-
-@%:@ ac_fn_c_try_run LINENO
-@%:@ ----------------------
-@%:@ Try to link conftest. at S|@ac_ext, and return whether this succeeded. Assumes
-@%:@ that executables *can* be run.
-ac_fn_c_try_run ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
- ac_retval=0
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=$ac_status
-fi
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_run
-
-@%:@ ac_fn_c_check_func LINENO FUNC VAR
-@%:@ ----------------------------------
-@%:@ Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $2 innocuous_$2
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $2 (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $2
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int
-main ()
-{
-return $2 ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} @%:@ ac_fn_c_check_func
-
-@%:@ ac_fn_cxx_try_cpp LINENO
-@%:@ ------------------------
-@%:@ Try to preprocess conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_cxx_try_cpp
-
-@%:@ ac_fn_cxx_try_link LINENO
-@%:@ -------------------------
-@%:@ Try to link conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_cxx_try_link
-
-@%:@ ac_fn_cxx_check_header_mongrel LINENO HEADER VAR INCLUDES
-@%:@ ---------------------------------------------------------
-@%:@ Tests whether HEADER exists, giving a warning if it cannot be compiled using
-@%:@ the include files in INCLUDES and setting the cache variable VAR
-@%:@ accordingly.
-ac_fn_cxx_check_header_mongrel ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval "test \"\${$3+set}\"" = set; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_header_compiler=yes
-else
- ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <$2>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- ac_header_preproc=yes
-else
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in #((
- yes:no: )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
- no:yes:* )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ---------------------------------------- ##
-## Report this to mathgl.abalakin at gmail.com ##
-## ---------------------------------------- ##"
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} @%:@ ac_fn_cxx_check_header_mongrel
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by mathgl $as_me 2.0, which was
-generated by GNU Autoconf 2.67. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
- done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
- for ac_arg
- do
- case $ac_arg in
- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- continue ;;
- *\'*)
- ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case $ac_pass in
- 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
- 2)
- as_fn_append ac_configure_args1 " '$ac_arg'"
- if test $ac_must_keep_next = true; then
- ac_must_keep_next=false # Got value, back to normal.
- else
- case $ac_arg in
- *=* | --config-cache | -C | -disable-* | --disable-* \
- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
- | -with-* | --with-* | -without-* | --without-* | --x)
- case "$ac_configure_args0 " in
- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
- esac
- ;;
- -* ) ac_must_keep_next=true ;;
- esac
- fi
- as_fn_append ac_configure_args " '$ac_arg'"
- ;;
- esac
- done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
-
- $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
- echo
- # The following way of writing the cache mishandles newlines in values,
-(
- for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
- (set) 2>&1 |
- case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- sed -n \
- "s/'\''/'\''\\\\'\'''\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
- ;; #(
- *)
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-)
- echo
-
- $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
- echo
- for ac_var in $ac_subst_vars
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
-
- if test -n "$ac_subst_files"; then
- $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
- echo
- for ac_var in $ac_subst_files
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
- fi
-
- if test -s confdefs.h; then
- $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
- echo
- cat confdefs.h
- echo
- fi
- test "$ac_signal" != 0 &&
- $as_echo "$as_me: caught signal $ac_signal"
- $as_echo "$as_me: exit $exit_status"
- } >&5
- rm -f core *.core core.conftest.* &&
- rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
- # We do not want a PATH search for config.site.
- case $CONFIG_SITE in @%:@((
- -*) ac_site_file1=./$CONFIG_SITE;;
- */*) ac_site_file1=$CONFIG_SITE;;
- *) ac_site_file1=./$CONFIG_SITE;;
- esac
-elif test "x$prefix" != xNONE; then
- ac_site_file1=$prefix/share/config.site
- ac_site_file2=$prefix/etc/config.site
-else
- ac_site_file1=$ac_default_prefix/share/config.site
- ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
- test "x$ac_site_file" = xNONE && continue
- if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file" \
- || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5 ; }
- fi
-done
-
-if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special files
- # actually), so we avoid doing that. DJGPP emulates it as a regular file.
- if test /dev/null != "$cache_file" && test -f "$cache_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . "$cache_file";;
- *) . "./$cache_file";;
- esac
- fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val=\$ac_cv_env_${ac_var}_value
- eval ac_new_val=\$ac_env_${ac_var}_value
- case $ac_old_set,$ac_new_set in
- set,)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- # differences in whitespace do not lead to failure.
- ac_old_val_w=`echo x $ac_old_val`
- ac_new_val_w=`echo x $ac_new_val`
- if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- ac_cache_corrupted=:
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
- eval $ac_var=\$ac_old_val
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
-$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
-$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) as_fn_append ac_configure_args " '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-MGL_RELEASE=2.0
-
-
-
-ac_aux_dir=
-for ac_dir in config "$srcdir"/config; do
- if test -f "$ac_dir/install-sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f "$ac_dir/install.sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f "$ac_dir/shtool"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- as_fn_error $? "cannot find install-sh, install.sh, or shtool in config \"$srcdir\"/config" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
-
-
-
-ac_config_headers="$ac_config_headers include/mgl/config.h"
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-
-#MGL_RELEASE=1.4
-#AC_SUBST(MGL_RELEASE)
-
-# LT Version numbers, remember to change them just *before* a release.
-# (Interfaces removed: CURRENT++, AGE=0, REVISION=0)
-# (Interfaces added: CURRENT++, AGE++, REVISION=0)
-# (No interfaces changed: REVISION++)
-MGL_CURRENT=6
-MGL_REVISION=0
-MGL_AGE=0
-
-
-
-
-am__api_version='1.11'
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in @%:@((
- ./ | .// | /[cC]/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- rm -rf conftest.one conftest.two conftest.dir
- echo one > conftest.one
- echo two > conftest.two
- mkdir conftest.dir
- if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
- test -s conftest.one && test -s conftest.two &&
- test -s conftest.dir/conftest.one &&
- test -s conftest.dir/conftest.two
- then
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- fi
- done
- done
- ;;
-esac
-
- done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- INSTALL=$ac_install_sh
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[\\\"\#\$\&\'\`$am_lf]*)
- as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5 ;;
-esac
-case $srcdir in
- *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
- as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5 ;;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$*" != "X $srcdir/configure conftest.file" \
- && test "$*" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
-alias in your environment" "$LINENO" 5
- fi
-
- test "$2" = conftest.file
- )
-then
- # Ok.
- :
-else
- as_fn_error $? "newly created file is older than distributed files!
-Check your system clock" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-test "$program_prefix" != NONE &&
- program_transform_name="s&^&$program_prefix&;$program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s&\$&$program_suffix&;$program_transform_name"
-# Double any \ or $.
-# By default was `s,x,x', remove it if useless.
-ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
-fi
-
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
-if test -z "$MKDIR_P"; then
- if test "${ac_cv_path_mkdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in mkdir gmkdir; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
- case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
- 'mkdir (GNU coreutils) '* | \
- 'mkdir (coreutils) '* | \
- 'mkdir (fileutils) '4.1*)
- ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
- break 3;;
- esac
- done
- done
- done
-IFS=$as_save_IFS
-
-fi
-
- test -d ./--version && rmdir ./--version
- if test "${ac_cv_path_mkdir+set}" = set; then
- MKDIR_P="$ac_cv_path_mkdir -p"
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for MKDIR_P within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- MKDIR_P="$ac_install_sh -d"
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
-
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
- [\\/$]* | ?:[\\/]*) ;;
- */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
-for ac_prog in gawk mawk nawk awk
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AWK+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AWK"; then
- ac_cv_prog_AWK="$AWK" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AWK=$ac_cv_prog_AWK
-if test -n "$AWK"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$AWK" && break
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
- @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
- *@@@%%%=?*=@@@%%%*)
- eval ac_cv_prog_make_${ac_make}_set=yes;;
- *)
- eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- SET_MAKE=
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- am__isrc=' -I$(srcdir)'
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-
-
-# Define the identity of the package.
- PACKAGE='mathgl'
- VERSION='2.0'
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE "$PACKAGE"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define VERSION "$VERSION"
-_ACEOF
-
-# Some tools Automake needs.
-
-ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
-
-
-AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
-
-
-AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
-
-
-AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
-
-
-MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility.
-
-AMTAR=${AMTAR-"${am_missing_run}tar"}
-
-am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
-
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-else
- CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- fi
-fi
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $@%:@ != 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
- fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- for ac_prog in cl.exe
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CC" && break
- done
-fi
-if test -z "$CC"; then
- ac_ct_CC=$CC
- for ac_prog in cl.exe
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CC" && break
-done
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- * ) ac_rmfiles="$ac_rmfiles $ac_file";;
- esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link_default") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile. We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
- ;;
- [ab].out )
- # We found the default executable, but exeext='' is most
- # certainly right.
- break;;
- *.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
- then :; else
- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- fi
- # We set ac_cv_exeext here because the later test for it is not
- # safe: cross compilers may not add the suffix if given an `-o'
- # argument, so we may need to know it at that point already.
- # Even if this section looks crufty: it has the advantage of
- # actually working.
- break;;
- * )
- break;;
- esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
- ac_file=''
-fi
-if test -z "$ac_file"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5 ; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- break;;
- * ) break;;
- esac
-done
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
- { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- if { ac_try='./conftest$ac_cv_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5 ; }
- fi
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if test "${ac_cv_objext+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- for ac_file in conftest.o conftest.obj conftest.*; do
- test -f "$ac_file" || continue;
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
- *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
- break;;
- esac
-done
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GCC=yes
-else
- GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_c_werror_flag=$ac_c_werror_flag
- ac_c_werror_flag=yes
- ac_cv_prog_cc_g=no
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-else
- CFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- ac_c_werror_flag=$ac_save_c_werror_flag
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
- CFLAGS="-O2"
- else
- CFLAGS=
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
- char **p;
- int i;
-{
- return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
- char *s;
- va_list v;
- va_start (v,p);
- s = g (p, va_arg (v,int));
- va_end (v);
- return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
- function prototypes and stuff, but not '\xHH' hex character constants.
- These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std is added to get
- proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
- array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std. */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
- inside strings and character constants. */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
- -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
- CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
- test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
- x)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
- xno)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
- *)
- CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-
-fi
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-DEPDIR="${am__leading_dot}deps"
-
-ac_config_commands="$ac_config_commands depfiles"
-
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
-
-@%:@ Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
- enableval=$enable_dependency_tracking;
-fi
-
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
-fi
- if test "x$enable_dependency_tracking" != xno; then
- AMDEP_TRUE=
- AMDEP_FALSE='#'
-else
- AMDEP_TRUE='#'
- AMDEP_FALSE=
-fi
-
-
-
-depcc="$CC" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CC_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CC_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CC_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
-CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
- am__fastdepCC_TRUE=
- am__fastdepCC_FALSE='#'
-else
- am__fastdepCC_TRUE='#'
- am__fastdepCC_FALSE=
-fi
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -z "$CXX"; then
- if test -n "$CCC"; then
- CXX=$CCC
- else
- if test -n "$ac_tool_prefix"; then
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CXX"; then
- ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CXX=$ac_cv_prog_CXX
-if test -n "$CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
-$as_echo "$CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CXX" && break
- done
-fi
-if test -z "$CXX"; then
- ac_ct_CXX=$CXX
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CXX"; then
- ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CXX="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
-if test -n "$ac_ct_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
-$as_echo "$ac_ct_CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CXX" && break
-done
-
- if test "x$ac_ct_CXX" = x; then
- CXX="g++"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CXX=$ac_ct_CXX
- fi
-fi
-
- fi
-fi
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
-$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
-$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GXX=yes
-else
- GXX=
-fi
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
-$as_echo_n "checking whether $CXX accepts -g... " >&6; }
-if test "${ac_cv_prog_cxx_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_cxx_werror_flag=$ac_cxx_werror_flag
- ac_cxx_werror_flag=yes
- ac_cv_prog_cxx_g=no
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-else
- CXXFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-
-else
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
-$as_echo "$ac_cv_prog_cxx_g" >&6; }
-if test "$ac_test_CXXFLAGS" = set; then
- CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
- if test "$GXX" = yes; then
- CXXFLAGS="-g -O2"
- else
- CXXFLAGS="-g"
- fi
-else
- if test "$GXX" = yes; then
- CXXFLAGS="-O2"
- else
- CXXFLAGS=
- fi
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-depcc="$CXX" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CXX_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CXX_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CXX_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
-CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
- am__fastdepCXX_TRUE=
- am__fastdepCXX_FALSE='#'
-else
- am__fastdepCXX_TRUE='#'
- am__fastdepCXX_FALSE=
-fi
-
-
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if test "${ac_cv_build+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
- ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
- as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5 ;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if test "${ac_cv_host+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$host_alias" = x; then
- ac_cv_host=$ac_cv_build
-else
- ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5 ;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AS=$ac_cv_prog_AS
-if test -n "$AS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
-$as_echo "$AS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AS"; then
- ac_ct_AS=$AS
- # Extract the first word of "as", so it can be a program name with args.
-set dummy as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_AS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_AS"; then
- ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_AS="as"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AS=$ac_cv_prog_ac_ct_AS
-if test -n "$ac_ct_AS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
-$as_echo "$ac_ct_AS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_AS" = x; then
- AS="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- AS=$ac_ct_AS
- fi
-else
- AS="$ac_cv_prog_AS"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DLLTOOL"; then
- ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DLLTOOL"; then
- ac_ct_DLLTOOL=$DLLTOOL
- # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DLLTOOL"; then
- ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DLLTOOL="dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_DLLTOOL" = x; then
- DLLTOOL="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DLLTOOL=$ac_ct_DLLTOOL
- fi
-else
- DLLTOOL="$ac_cv_prog_DLLTOOL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OBJDUMP"; then
- ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
- ac_ct_OBJDUMP=$OBJDUMP
- # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OBJDUMP"; then
- ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OBJDUMP="objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OBJDUMP" = x; then
- OBJDUMP="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OBJDUMP=$ac_ct_OBJDUMP
- fi
-else
- OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
- ;;
-esac
-
-test -z "$AS" && AS=as
-
-
-
-
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-
-enable_dlopen=yes
-
-
-
-case `pwd` in
- *\ * | *\ *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
-esac
-
-
-
-macro_version='2.2.6b'
-macro_revision='1.3017'
-
-
-
-
-
-
-
-
-
-
-
-
-
-ltmain="$ac_aux_dir/ltmain.sh"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if test "${ac_cv_path_SED+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
- for ac_i in 1 2 3 4 5 6 7; do
- ac_script="$ac_script$as_nl$ac_script"
- done
- echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
- { ac_script=; unset ac_script;}
- if test -z "$SED"; then
- ac_path_SED_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in sed gsed; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
-# Check for GNU ac_path_SED and select it if it is found.
- # Check for GNU $ac_path_SED
-case `"$ac_path_SED" --version 2>&1` in
-*GNU*)
- ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo '' >> "conftest.nl"
- "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_SED_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_SED="$ac_path_SED"
- ac_path_SED_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_SED_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_SED"; then
- as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
- fi
-else
- ac_cv_path_SED=$SED
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
- SED="$ac_cv_path_SED"
- rm -f conftest.sed
-
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$GREP"; then
- ac_path_GREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-# Check for GNU ac_path_GREP and select it if it is found.
- # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'GREP' >> "conftest.nl"
- "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_GREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_GREP="$ac_path_GREP"
- ac_path_GREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_GREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_GREP"; then
- as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
- then ac_cv_path_EGREP="$GREP -E"
- else
- if test -z "$EGREP"; then
- ac_path_EGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
- # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'EGREP' >> "conftest.nl"
- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_EGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_EGREP="$ac_path_EGREP"
- ac_path_EGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_EGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_EGREP"; then
- as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_EGREP=$EGREP
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if test "${ac_cv_path_FGREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
- then ac_cv_path_FGREP="$GREP -F"
- else
- if test -z "$FGREP"; then
- ac_path_FGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in fgrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
-# Check for GNU ac_path_FGREP and select it if it is found.
- # Check for GNU $ac_path_FGREP
-case `"$ac_path_FGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'FGREP' >> "conftest.nl"
- "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_FGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_FGREP="$ac_path_FGREP"
- ac_path_FGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_FGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_FGREP"; then
- as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_FGREP=$FGREP
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
- FGREP="$ac_cv_path_FGREP"
-
-
-test -z "$GREP" && GREP=grep
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-@%:@ Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
- withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
- with_gnu_ld=no
-fi
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [\\/]* | ?:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if test "${lt_cv_path_LD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if test "${lt_cv_prog_gnu_ld+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if test "${lt_cv_path_NM+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$NM"; then
- # Let the user override the test.
- lt_cv_path_NM="$NM"
-else
- lt_nm_to_check="${ac_tool_prefix}nm"
- if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
- lt_nm_to_check="$lt_nm_to_check nm"
- fi
- for lt_tmp_nm in $lt_nm_to_check; do
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/$lt_tmp_nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
- break
- ;;
- *)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- ;;
- esac
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
- done
- : ${lt_cv_path_NM=no}
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
-if test "$lt_cv_path_NM" != "no"; then
- NM="$lt_cv_path_NM"
-else
- # Didn't find any BSD compatible name lister, look for dumpbin.
- if test -n "$ac_tool_prefix"; then
- for ac_prog in "dumpbin -symbols" "link -dump -symbols"
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DUMPBIN+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DUMPBIN"; then
- ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DUMPBIN=$ac_cv_prog_DUMPBIN
-if test -n "$DUMPBIN"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$DUMPBIN" && break
- done
-fi
-if test -z "$DUMPBIN"; then
- ac_ct_DUMPBIN=$DUMPBIN
- for ac_prog in "dumpbin -symbols" "link -dump -symbols"
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DUMPBIN"; then
- ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
-if test -n "$ac_ct_DUMPBIN"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_DUMPBIN" && break
-done
-
- if test "x$ac_ct_DUMPBIN" = x; then
- DUMPBIN=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DUMPBIN=$ac_ct_DUMPBIN
- fi
-fi
-
-
- if test "$DUMPBIN" != ":"; then
- NM="$DUMPBIN"
- fi
-fi
-test -z "$NM" && NM=nm
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if test "${lt_cv_nm_interface+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_nm_interface="BSD nm"
- echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&5)
- (eval "$ac_compile" 2>conftest.err)
- cat conftest.err >&5
- (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
- (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
- cat conftest.err >&5
- (eval echo "\"\$as_me:__oline__: output\"" >&5)
- cat conftest.out >&5
- if $GREP 'External.*some_variable' conftest.out > /dev/null; then
- lt_cv_nm_interface="MS dumpbin"
- fi
- rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
-LN_S=$as_ln_s
-if test "$LN_S" = "ln -s"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
-fi
-
-# find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if test "${lt_cv_sys_max_cmd_len+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- i=0
- teststring="ABCD"
-
- case $build_os in
- msdosdjgpp*)
- # On DJGPP, this test can blow up pretty badly due to problems in libc
- # (any single argument exceeding 2000 bytes causes a buffer overrun
- # during glob expansion). Even if it were fixed, the result of this
- # check would be larger than it should be.
- lt_cv_sys_max_cmd_len=12288; # 12K is about right
- ;;
-
- gnu*)
- # Under GNU Hurd, this test is not required because there is
- # no limit to the length of command line arguments.
- # Libtool will interpret -1 as no limit whatsoever
- lt_cv_sys_max_cmd_len=-1;
- ;;
-
- cygwin* | mingw* | cegcc*)
- # On Win9x/ME, this test blows up -- it succeeds, but takes
- # about 5 minutes as the teststring grows exponentially.
- # Worse, since 9x/ME are not pre-emptively multitasking,
- # you end up with a "frozen" computer, even though with patience
- # the test eventually succeeds (with a max line length of 256k).
- # Instead, let's just punt: use the minimum linelength reported by
- # all of the supported platforms: 8192 (on NT/2K/XP).
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- amigaos*)
- # On AmigaOS with pdksh, this test takes hours, literally.
- # So we just punt and use a minimum line length of 8192.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
- # This has been around since 386BSD, at least. Likely further.
- if test -x /sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
- elif test -x /usr/sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
- else
- lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
- fi
- # And add a safety zone
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- ;;
-
- interix*)
- # We know the value 262144 and hardcode it with a safety zone (like BSD)
- lt_cv_sys_max_cmd_len=196608
- ;;
-
- osf*)
- # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
- # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
- # nice to cause kernel panics so lets avoid the loop below.
- # First set a reasonable default.
- lt_cv_sys_max_cmd_len=16384
- #
- if test -x /sbin/sysconfig; then
- case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
- *1*) lt_cv_sys_max_cmd_len=-1 ;;
- esac
- fi
- ;;
- sco3.2v5*)
- lt_cv_sys_max_cmd_len=102400
- ;;
- sysv5* | sco5v6* | sysv4.2uw2*)
- kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
- if test -n "$kargmax"; then
- lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`
- else
- lt_cv_sys_max_cmd_len=32768
- fi
- ;;
- *)
- lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
- if test -n "$lt_cv_sys_max_cmd_len"; then
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- else
- # Make teststring a little bigger before we do anything with it.
- # a 1K string should be a reasonable start.
- for i in 1 2 3 4 5 6 7 8 ; do
- teststring=$teststring$teststring
- done
- SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
- # If test is not a shell built-in, we'll probably end up computing a
- # maximum length that is only half of the actual maximum length, but
- # we can't tell.
- while { test "X"`$SHELL $0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
- = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
- test $i != 17 # 1/2 MB should be enough
- do
- i=`expr $i + 1`
- teststring=$teststring$teststring
- done
- # Only check the string length outside the loop.
- lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
- teststring=
- # Add a significant safety factor because C++ compilers can tack on
- # massive amounts of additional arguments before passing them to the
- # linker. It appears as though 1/2 is a usable value.
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
- fi
- ;;
- esac
-
-fi
-
-if test -n $lt_cv_sys_max_cmd_len ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-
-
-
-
-
-
-: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
-$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
- test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
- = c,a/b,, \
- && eval 'test $(( 1 + 1 )) -eq 2 \
- && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
- && xsi_shell=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
-$as_echo "$xsi_shell" >&6; }
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
-$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
- >/dev/null 2>&1 \
- && lt_shell_append=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
-$as_echo "$lt_shell_append" >&6; }
-
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- lt_unset=unset
-else
- lt_unset=false
-fi
-
-
-
-
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
- # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
- lt_SP2NL='tr \040 \012'
- lt_NL2SP='tr \015\012 \040\040'
- ;;
- *) # EBCDIC based system
- lt_SP2NL='tr \100 \n'
- lt_NL2SP='tr \r\n \100\100'
- ;;
-esac
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if test "${lt_cv_ld_reload_flag+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_ld_reload_flag='-r'
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
- darwin*)
- if test "$GCC" = yes; then
- reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
- else
- reload_cmds='$LD$reload_flag -o $output$reload_objs'
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OBJDUMP"; then
- ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
- ac_ct_OBJDUMP=$OBJDUMP
- # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OBJDUMP"; then
- ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OBJDUMP="objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OBJDUMP" = x; then
- OBJDUMP="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OBJDUMP=$ac_ct_OBJDUMP
- fi
-else
- OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if test "${lt_cv_deplibs_check_method+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[4-9]*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-beos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-bsdi[45]*)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- lt_cv_file_magic_test_file=/shlib/libc.so
- ;;
-
-cygwin*)
- # func_win32_libid is a shell function defined in ltmain.sh
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- ;;
-
-mingw* | pw32*)
- # Base MSYS/MinGW do not provide the 'file' command needed by
- # func_win32_libid shell function, so use a weaker test based on 'objdump',
- # unless we find 'file', for example because we are cross-compiling.
- if ( file / ) >/dev/null 2>&1; then
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- else
- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- fi
- ;;
-
-cegcc)
- # use the weaker test based on 'objdump'. See mingw*.
- lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- ;;
-
-darwin* | rhapsody*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-freebsd* | dragonfly*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- case $host_cpu in
- i*86 )
- # Not sure whether the presence of OpenBSD here was a mistake.
- # Let's accept both of them until this is cleared up.
- lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
- else
- lt_cv_deplibs_check_method=pass_all
- fi
- ;;
-
-gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-hpux10.20* | hpux11*)
- lt_cv_file_magic_cmd=/usr/bin/file
- case $host_cpu in
- ia64*)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
- lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
- ;;
- hppa*64*)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'
- lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
- ;;
- *)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
- lt_cv_file_magic_test_file=/usr/lib/libc.sl
- ;;
- esac
- ;;
-
-interix[3-9]*)
- # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
- fi
- ;;
-
-newos6*)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libnls.so
- ;;
-
-*nto* | *qnx*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-openbsd*)
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
- fi
- ;;
-
-osf3* | osf4* | osf5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-rdos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-solaris*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv4 | sysv4.3*)
- case $host_vendor in
- motorola)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- ncr)
- lt_cv_deplibs_check_method=pass_all
- ;;
- sequent)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
- ;;
- sni)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
- siemens)
- lt_cv_deplibs_check_method=pass_all
- ;;
- pc)
- lt_cv_deplibs_check_method=pass_all
- ;;
- esac
- ;;
-
-tpf*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AR+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AR"; then
- ac_ct_AR=$AR
- # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_AR"; then
- ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_AR="ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AR=$ac_cv_prog_ac_ct_AR
-if test -n "$ac_ct_AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_AR" = x; then
- AR="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- AR=$ac_ct_AR
- fi
-else
- AR="$ac_cv_prog_AR"
-fi
-
-test -z "$AR" && AR=ar
-test -z "$AR_FLAGS" && AR_FLAGS=cru
-
-
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-test -z "$STRIP" && STRIP=:
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_RANLIB+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
- ac_ct_RANLIB=$RANLIB
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_RANLIB"; then
- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_RANLIB" = x; then
- RANLIB=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- RANLIB=$ac_ct_RANLIB
- fi
-else
- RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-test -z "$RANLIB" && RANLIB=:
-
-
-
-
-
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
- case $host_os in
- openbsd*)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
- ;;
- *)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
- ;;
- esac
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
-
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[BCDEGRST]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
- symcode='[BCDT]'
- ;;
-cygwin* | mingw* | pw32* | cegcc*)
- symcode='[ABCDGISTW]'
- ;;
-hpux*)
- if test "$host_cpu" = ia64; then
- symcode='[ABCDEGRST]'
- fi
- ;;
-irix* | nonstopux*)
- symcode='[BCDEGRST]'
- ;;
-osf*)
- symcode='[BCDEGQRST]'
- ;;
-solaris*)
- symcode='[BDRT]'
- ;;
-sco3.2v5*)
- symcode='[DT]'
- ;;
-sysv4.2uw2*)
- symcode='[DT]'
- ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
- symcode='[ABDT]'
- ;;
-sysv4)
- symcode='[DFNSTU]'
- ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
- symcode='[ABCDGIRSTW]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
- opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
- ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
- # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
- symxfrm="\\1 $ac_symprfx\\2 \\2"
-
- # Write the raw and C identifiers.
- if test "$lt_cv_nm_interface" = "MS dumpbin"; then
- # Fake it for dumpbin and say T for any non-static function
- # and D for any global variable.
- # Also find C++ and __fastcall symbols from MSVC++,
- # which start with @ or ?.
- lt_cv_sys_global_symbol_pipe="$AWK '"\
-" {last_section=section; section=\$ 3};"\
-" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-" \$ 0!~/External *\|/{next};"\
-" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-" {if(hide[section]) next};"\
-" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-" s[1]~/^[@?]/{print s[1], s[1]; next};"\
-" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-" ' prfx=^$ac_symprfx"
- else
- lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
- fi
-
- # Check to see that the pipe works correctly.
- pipe_works=no
-
- rm -f conftest*
- cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- # Now try to grab the symbols.
- nlist=conftest.nm
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\""; } >&5
- (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s "$nlist"; then
- # Try sorting and uniquifying the output.
- if sort "$nlist" | uniq > "$nlist"T; then
- mv -f "$nlist"T "$nlist"
- else
- rm -f "$nlist"T
- fi
-
- # Make sure that we snagged all the symbols we need.
- if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
- if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
- cat <<_LT_EOF > conftest.$ac_ext
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
- # Now generate the symbol file.
- eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
- cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols. */
-const struct {
- const char *name;
- void *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[] =
-{
- { "@PROGRAM@", (void *) 0 },
-_LT_EOF
- $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
- cat <<\_LT_EOF >> conftest.$ac_ext
- {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
- # Now try linking the two files.
- mv conftest.$ac_objext conftstm.$ac_objext
- lt_save_LIBS="$LIBS"
- lt_save_CFLAGS="$CFLAGS"
- LIBS="conftstm.$ac_objext"
- CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext}; then
- pipe_works=yes
- fi
- LIBS="$lt_save_LIBS"
- CFLAGS="$lt_save_CFLAGS"
- else
- echo "cannot find nm_test_func in $nlist" >&5
- fi
- else
- echo "cannot find nm_test_var in $nlist" >&5
- fi
- else
- echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
- fi
- else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- fi
- rm -rf conftest* conftst*
-
- # Do not use the global_symbol_pipe unless it works.
- if test "$pipe_works" = yes; then
- break
- else
- lt_cv_sys_global_symbol_pipe=
- fi
-done
-
-fi
-
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
- lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-@%:@ Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
- enableval=$enable_libtool_lock;
-fi
-
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.$ac_objext` in
- *ELF-32*)
- HPUX_IA64_MODE="32"
- ;;
- *ELF-64*)
- HPUX_IA64_MODE="64"
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-*-*-irix6*)
- # Find out which ABI we are using.
- echo '#line __oline__ "configure"' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- if test "$lt_cv_prog_gnu_ld" = yes; then
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -melf32bsmip"
- ;;
- *N32*)
- LD="${LD-ld} -melf32bmipn32"
- ;;
- *64-bit*)
- LD="${LD-ld} -melf64bmip"
- ;;
- esac
- else
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -32"
- ;;
- *N32*)
- LD="${LD-ld} -n32"
- ;;
- *64-bit*)
- LD="${LD-ld} -64"
- ;;
- esac
- fi
- fi
- rm -rf conftest*
- ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.o` in
- *32-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_i386_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_i386"
- ;;
- ppc64-*linux*|powerpc64-*linux*)
- LD="${LD-ld} -m elf32ppclinux"
- ;;
- s390x-*linux*)
- LD="${LD-ld} -m elf_s390"
- ;;
- sparc64-*linux*)
- LD="${LD-ld} -m elf32_sparc"
- ;;
- esac
- ;;
- *64-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_x86_64_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_x86_64"
- ;;
- ppc*-*linux*|powerpc*-*linux*)
- LD="${LD-ld} -m elf64ppc"
- ;;
- s390*-*linux*|s390*-*tpf*)
- LD="${LD-ld} -m elf64_s390"
- ;;
- sparc*-*linux*)
- LD="${LD-ld} -m elf64_sparc"
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
-*-*-sco3.2v5*)
- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -belf"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if test "${lt_cv_cc_needs_belf+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- lt_cv_cc_needs_belf=yes
-else
- lt_cv_cc_needs_belf=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
- CFLAGS="$SAVE_CFLAGS"
- fi
- ;;
-sparc*-*solaris*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.o` in
- *64-bit*)
- case $lt_cv_prog_gnu_ld in
- yes*) LD="${LD-ld} -m elf64_sparc" ;;
- *)
- if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
- LD="${LD-ld} -64"
- fi
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-esac
-
-need_locks="$enable_libtool_lock"
-
-
- case $host_os in
- rhapsody* | darwin*)
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DSYMUTIL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DSYMUTIL"; then
- ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DSYMUTIL=$ac_cv_prog_DSYMUTIL
-if test -n "$DSYMUTIL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DSYMUTIL"; then
- ac_ct_DSYMUTIL=$DSYMUTIL
- # Extract the first word of "dsymutil", so it can be a program name with args.
-set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DSYMUTIL"; then
- ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
-if test -n "$ac_ct_DSYMUTIL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_DSYMUTIL" = x; then
- DSYMUTIL=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DSYMUTIL=$ac_ct_DSYMUTIL
- fi
-else
- DSYMUTIL="$ac_cv_prog_DSYMUTIL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
-set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_NMEDIT+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$NMEDIT"; then
- ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-NMEDIT=$ac_cv_prog_NMEDIT
-if test -n "$NMEDIT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_NMEDIT"; then
- ac_ct_NMEDIT=$NMEDIT
- # Extract the first word of "nmedit", so it can be a program name with args.
-set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_NMEDIT"; then
- ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_NMEDIT="nmedit"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
-if test -n "$ac_ct_NMEDIT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_NMEDIT" = x; then
- NMEDIT=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- NMEDIT=$ac_ct_NMEDIT
- fi
-else
- NMEDIT="$ac_cv_prog_NMEDIT"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
-set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_LIPO+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$LIPO"; then
- ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-LIPO=$ac_cv_prog_LIPO
-if test -n "$LIPO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_LIPO"; then
- ac_ct_LIPO=$LIPO
- # Extract the first word of "lipo", so it can be a program name with args.
-set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_LIPO"; then
- ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_LIPO="lipo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
-if test -n "$ac_ct_LIPO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_LIPO" = x; then
- LIPO=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- LIPO=$ac_ct_LIPO
- fi
-else
- LIPO="$ac_cv_prog_LIPO"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OTOOL"; then
- ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL=$ac_cv_prog_OTOOL
-if test -n "$OTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL"; then
- ac_ct_OTOOL=$OTOOL
- # Extract the first word of "otool", so it can be a program name with args.
-set dummy otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OTOOL"; then
- ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OTOOL="otool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
-if test -n "$ac_ct_OTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OTOOL" = x; then
- OTOOL=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OTOOL=$ac_ct_OTOOL
- fi
-else
- OTOOL="$ac_cv_prog_OTOOL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OTOOL64+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OTOOL64"; then
- ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL64=$ac_cv_prog_OTOOL64
-if test -n "$OTOOL64"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL64"; then
- ac_ct_OTOOL64=$OTOOL64
- # Extract the first word of "otool64", so it can be a program name with args.
-set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OTOOL64"; then
- ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OTOOL64="otool64"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
-if test -n "$ac_ct_OTOOL64"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OTOOL64" = x; then
- OTOOL64=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OTOOL64=$ac_ct_OTOOL64
- fi
-else
- OTOOL64="$ac_cv_prog_OTOOL64"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if test "${lt_cv_apple_cc_single_mod+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_apple_cc_single_mod=no
- if test -z "${LT_MULTI_MODULE}"; then
- # By default we will add the -single_module flag. You can override
- # by either setting the environment variable LT_MULTI_MODULE
- # non-empty at configure time, or by adding -multi_module to the
- # link flags.
- rm -rf libconftest.dylib*
- echo "int foo(void){return 1;}" > conftest.c
- echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&5
- $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
- -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
- _lt_result=$?
- if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
- lt_cv_apple_cc_single_mod=yes
- else
- cat conftest.err >&5
- fi
- rm -rf libconftest.dylib*
- rm -f conftest.*
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if test "${lt_cv_ld_exported_symbols_list+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_ld_exported_symbols_list=no
- save_LDFLAGS=$LDFLAGS
- echo "_main" > conftest.sym
- LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- lt_cv_ld_exported_symbols_list=yes
-else
- lt_cv_ld_exported_symbols_list=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
- case $host_os in
- rhapsody* | darwin1.[012])
- _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
- darwin1.*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- darwin*) # darwin 5.x on
- # if running on 10.5 or later, the deployment target defaults
- # to the OS version, if on x86, and 10.4, the deployment
- # target defaults to 10.4. Don't you love it?
- case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
- 10.0,*86*-darwin8*|10.0,*-darwin[91]*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- 10.[012]*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- 10.*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- esac
- ;;
- esac
- if test "$lt_cv_apple_cc_single_mod" = "yes"; then
- _lt_dar_single_mod='$single_module'
- fi
- if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
- _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
- else
- _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
- fi
- if test "$DSYMUTIL" != ":"; then
- _lt_dsymutil='~$DSYMUTIL $lib || :'
- else
- _lt_dsymutil=
- fi
- ;;
- esac
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
- CPP=
-fi
-if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CPP needs to be expanded
- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
- do
- ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
- break
-fi
-
- done
- ac_cv_prog_CPP=$CPP
-
-fi
- CPP=$ac_cv_prog_CPP
-else
- ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_header_stdc=yes
-else
- ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then :
- :
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
- (('a' <= (c) && (c) <= 'i') \
- || ('j' <= (c) && (c) <= 'r') \
- || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
- int i;
- for (i = 0; i < 256; i++)
- if (XOR (islower (i), ISLOWER (i))
- || toupper (i) != TOUPPER (i))
- return 2;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "@%:@define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
- inttypes.h stdint.h unistd.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-for ac_header in dlfcn.h
-do :
- ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_dlfcn_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DLFCN_H 1
-_ACEOF
-
-fi
-
-done
-
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -z "$CXX"; then
- if test -n "$CCC"; then
- CXX=$CCC
- else
- if test -n "$ac_tool_prefix"; then
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CXX"; then
- ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CXX=$ac_cv_prog_CXX
-if test -n "$CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
-$as_echo "$CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CXX" && break
- done
-fi
-if test -z "$CXX"; then
- ac_ct_CXX=$CXX
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CXX"; then
- ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CXX="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
-if test -n "$ac_ct_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
-$as_echo "$ac_ct_CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CXX" && break
-done
-
- if test "x$ac_ct_CXX" = x; then
- CXX="g++"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CXX=$ac_ct_CXX
- fi
-fi
-
- fi
-fi
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
-$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
-$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GXX=yes
-else
- GXX=
-fi
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
-$as_echo_n "checking whether $CXX accepts -g... " >&6; }
-if test "${ac_cv_prog_cxx_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_cxx_werror_flag=$ac_cxx_werror_flag
- ac_cxx_werror_flag=yes
- ac_cv_prog_cxx_g=no
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-else
- CXXFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-
-else
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
-$as_echo "$ac_cv_prog_cxx_g" >&6; }
-if test "$ac_test_CXXFLAGS" = set; then
- CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
- if test "$GXX" = yes; then
- CXXFLAGS="-g -O2"
- else
- CXXFLAGS="-g"
- fi
-else
- if test "$GXX" = yes; then
- CXXFLAGS="-O2"
- else
- CXXFLAGS=
- fi
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-depcc="$CXX" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CXX_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CXX_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CXX_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
-CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
- am__fastdepCXX_TRUE=
- am__fastdepCXX_FALSE='#'
-else
- am__fastdepCXX_TRUE='#'
- am__fastdepCXX_FALSE=
-fi
-
-
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
- ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
- (test "X$CXX" != "Xg++"))) ; then
- ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5
-$as_echo_n "checking how to run the C++ preprocessor... " >&6; }
-if test -z "$CXXCPP"; then
- if test "${ac_cv_prog_CXXCPP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CXXCPP needs to be expanded
- for CXXCPP in "$CXX -E" "/lib/cpp"
- do
- ac_preproc_ok=false
-for ac_cxx_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
- Syntax error
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
- break
-fi
-
- done
- ac_cv_prog_CXXCPP=$CXXCPP
-
-fi
- CXXCPP=$ac_cv_prog_CXXCPP
-else
- ac_cv_prog_CXXCPP=$CXXCPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5
-$as_echo "$CXXCPP" >&6; }
-ac_preproc_ok=false
-for ac_cxx_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
- Syntax error
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-_lt_caught_CXX_error=yes; }
-fi
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-else
- _lt_caught_CXX_error=yes
-fi
-
-
-
-
-
-# Set options
-
-
-
-
-
- @%:@ Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
- enableval=$enable_shared; p=${PACKAGE-default}
- case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
- enable_shared=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_shared=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_shared=yes
-fi
-
-
-
-
-
-
-
-
-
- @%:@ Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
- enableval=$enable_static; p=${PACKAGE-default}
- case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
- enable_static=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_static=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_static=yes
-fi
-
-
-
-
-
-
-
-
-
-
-@%:@ Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
- withval=$with_pic; pic_mode="$withval"
-else
- pic_mode=default
-fi
-
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
- @%:@ Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
- enableval=$enable_fast_install; p=${PACKAGE-default}
- case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
- enable_fast_install=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_fast_install=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_fast_install=yes
-fi
-
-
-
-
-
-
-
-
-
-
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-test -z "$LN_S" && LN_S="ln -s"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if test "${lt_cv_objdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
- lt_cv_objdir=.libs
-else
- # MS-DOS does not allow filenames that begin with a dot.
- lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
-objdir=$lt_cv_objdir
-
-
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-case $host_os in
-aix3*)
- # AIX sometimes has problems with the GCC collect2 program. For some
- # reason, if we set the COLLECT_NAMES environment variable, the problems
- # vanish in a puff of smoke.
- if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
- fi
- ;;
-esac
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\(["`\\]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-for cc_temp in $compiler""; do
- case $cc_temp in
- compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
- distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
- \-*) ;;
- *) break;;
- esac
-done
-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
-
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
- if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if test "${lt_cv_path_MAGIC_CMD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MAGIC_CMD in
-[\\/*] | ?:[\\/]*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/${ac_tool_prefix}file; then
- lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-
-
-if test -z "$lt_cv_path_MAGIC_CMD"; then
- if test -n "$ac_tool_prefix"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if test "${lt_cv_path_MAGIC_CMD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MAGIC_CMD in
-[\\/*] | ?:[\\/]*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/file; then
- lt_cv_path_MAGIC_CMD="$ac_dir/file"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- else
- MAGIC_CMD=:
- fi
-fi
-
- fi
- ;;
-esac
-
-# Use C for the default configuration in the libtool script
-
-lt_save_CC="$CC"
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-objext=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
-
-lt_prog_compiler_no_builtin_flag=
-
-if test "$GCC" = yes; then
- lt_prog_compiler_no_builtin_flag=' -fno-builtin'
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_rtti_exceptions=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="-fno-rtti -fno-exceptions"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_rtti_exceptions=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
-
-if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
- lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
-else
- :
-fi
-
-fi
-
-
-
-
-
-
- lt_prog_compiler_wl=
-lt_prog_compiler_pic=
-lt_prog_compiler_static=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-
- if test "$GCC" = yes; then
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_static='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- lt_prog_compiler_pic='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- lt_prog_compiler_pic='-DDLL_EXPORT'
- ;;
-
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- lt_prog_compiler_pic='-fno-common'
- ;;
-
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic='-fPIC'
- ;;
- esac
- ;;
-
- interix[3-9]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
-
- msdosdjgpp*)
- # Just because we use GCC doesn't mean we suddenly get shared libraries
- # on systems that don't support them.
- lt_prog_compiler_can_build_shared=no
- enable_shared=no
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic='-fPIC -shared'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- lt_prog_compiler_pic=-Kconform_pic
- fi
- ;;
-
- *)
- lt_prog_compiler_pic='-fPIC'
- ;;
- esac
- else
- # PORTME Check for flag to pass linker flags through the system compiler.
- case $host_os in
- aix*)
- lt_prog_compiler_wl='-Wl,'
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static='-Bstatic'
- else
- lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- lt_prog_compiler_pic='-DDLL_EXPORT'
- ;;
-
- hpux9* | hpux10* | hpux11*)
- lt_prog_compiler_wl='-Wl,'
- # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
- # not for PA HP-UX.
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic='+Z'
- ;;
- esac
- # Is there a better lt_prog_compiler_static that works with the bundled CC?
- lt_prog_compiler_static='${wl}-a ${wl}archive'
- ;;
-
- irix5* | irix6* | nonstopux*)
- lt_prog_compiler_wl='-Wl,'
- # PIC (with -KPIC) is the default.
- lt_prog_compiler_static='-non_shared'
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- # old Intel for x86_64 which still supported -KPIC.
- ecc*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-static'
- ;;
- # icc used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- icc* | ifort*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-fPIC'
- lt_prog_compiler_static='-static'
- ;;
- # Lahey Fortran 8.1.
- lf95*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='--shared'
- lt_prog_compiler_static='--static'
- ;;
- pgcc* | pgf77* | pgf90* | pgf95*)
- # Portland Group compilers (*not* the Pentium gcc compiler,
- # which looks to be a dead project)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-fpic'
- lt_prog_compiler_static='-Bstatic'
- ;;
- ccc*)
- lt_prog_compiler_wl='-Wl,'
- # All Alpha code is PIC.
- lt_prog_compiler_static='-non_shared'
- ;;
- xl*)
- # IBM XL C 8.0/Fortran 10.1 on PPC
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-qpic'
- lt_prog_compiler_static='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C 5.9
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- lt_prog_compiler_wl='-Wl,'
- ;;
- *Sun\ F*)
- # Sun Fortran 8.3 passes all unrecognized flags to the linker
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- lt_prog_compiler_wl=''
- ;;
- esac
- ;;
- esac
- ;;
-
- newsos6)
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic='-fPIC -shared'
- ;;
-
- osf3* | osf4* | osf5*)
- lt_prog_compiler_wl='-Wl,'
- # All OSF/1 code is PIC.
- lt_prog_compiler_static='-non_shared'
- ;;
-
- rdos*)
- lt_prog_compiler_static='-non_shared'
- ;;
-
- solaris*)
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- case $cc_basename in
- f77* | f90* | f95*)
- lt_prog_compiler_wl='-Qoption ld ';;
- *)
- lt_prog_compiler_wl='-Wl,';;
- esac
- ;;
-
- sunos4*)
- lt_prog_compiler_wl='-Qoption ld '
- lt_prog_compiler_pic='-PIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- sysv4 | sysv4.2uw2* | sysv4.3*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec ;then
- lt_prog_compiler_pic='-Kconform_pic'
- lt_prog_compiler_static='-Bstatic'
- fi
- ;;
-
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- unicos*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_can_build_shared=no
- ;;
-
- uts4*)
- lt_prog_compiler_pic='-pic'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- *)
- lt_prog_compiler_can_build_shared=no
- ;;
- esac
- fi
-
-case $host_os in
- # For platforms which do not support PIC, -DPIC is meaningless:
- *djgpp*)
- lt_prog_compiler_pic=
- ;;
- *)
- lt_prog_compiler_pic="$lt_prog_compiler_pic@&t@ -DPIC"
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5
-$as_echo "$lt_prog_compiler_pic" >&6; }
-
-
-
-
-
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$lt_prog_compiler_pic"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if test "${lt_cv_prog_compiler_pic_works+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_pic_works=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$lt_prog_compiler_pic@&t@ -DPIC"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_pic_works=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
- case $lt_prog_compiler_pic in
- "" | " "*) ;;
- *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
- esac
-else
- lt_prog_compiler_pic=
- lt_prog_compiler_can_build_shared=no
-fi
-
-fi
-
-
-
-
-
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if test "${lt_cv_prog_compiler_static_works+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_static_works=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_static_works=yes
- fi
- else
- lt_cv_prog_compiler_static_works=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_static_works" = xyes; then
- :
-else
- lt_prog_compiler_static=
-fi
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
- if test "$hard_links" = no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
-
- runpath_var=
- allow_undefined_flag=
- always_export_symbols=no
- archive_cmds=
- archive_expsym_cmds=
- compiler_needs_object=no
- enable_shared_with_static_runtimes=no
- export_dynamic_flag_spec=
- export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- hardcode_automatic=no
- hardcode_direct=no
- hardcode_direct_absolute=no
- hardcode_libdir_flag_spec=
- hardcode_libdir_flag_spec_ld=
- hardcode_libdir_separator=
- hardcode_minus_L=no
- hardcode_shlibpath_var=unsupported
- inherit_rpath=no
- link_all_deplibs=unknown
- module_cmds=
- module_expsym_cmds=
- old_archive_from_new_cmds=
- old_archive_from_expsyms_cmds=
- thread_safe_flag_spec=
- whole_archive_flag_spec=
- # include_expsyms should be a list of space-separated symbols to be *always*
- # included in the symbol list
- include_expsyms=
- # exclude_expsyms can be an extended regexp of symbols to exclude
- # it will be wrapped by ` (' and `)$', so one must not match beginning or
- # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
- # as well as any symbol that contains `d'.
- exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
- # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
- # platforms (ab)use it in PIC code, but their linkers get confused if
- # the symbol is explicitly referenced. Since portable code cannot
- # rely on this symbol name, it's probably fine to never include it in
- # preloaded symbol tables.
- # Exclude shared library initialization/finalization symbols.
- extract_expsyms_cmds=
-
- case $host_os in
- cygwin* | mingw* | pw32* | cegcc*)
- # FIXME: the MSVC++ port hasn't been tested in a loooong time
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- if test "$GCC" != yes; then
- with_gnu_ld=no
- fi
- ;;
- interix*)
- # we just hope/assume this is gcc and not c89 (= MSVC++)
- with_gnu_ld=yes
- ;;
- openbsd*)
- with_gnu_ld=no
- ;;
- linux* | k*bsd*-gnu)
- link_all_deplibs=no
- ;;
- esac
-
- ld_shlibs=yes
- if test "$with_gnu_ld" = yes; then
- # If archive_cmds runs LD, not CC, wlarc should be empty
- wlarc='${wl}'
-
- # Set some defaults for GNU ld with shared library support. These
- # are reset later if shared libraries are not supported. Putting them
- # here allows them to be overridden if necessary.
- runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec='${wl}--export-dynamic'
- # ancient GNU ld didn't support --whole-archive et. al.
- if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
- whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- whole_archive_flag_spec=
- fi
- supports_anon_versioning=no
- case `$LD -v 2>&1` in
- *GNU\ gold*) supports_anon_versioning=yes ;;
- *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
- *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
- *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
- *\ 2.11.*) ;; # other 2.11 versions
- *) supports_anon_versioning=yes ;;
- esac
-
- # See if GNU ld supports shared libraries.
- case $host_os in
- aix[3-9]*)
- # On AIX/PPC, the GNU linker is very broken
- if test "$host_cpu" != ia64; then
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support. If you
-*** really care for shared libraries, you may want to modify your PATH
-*** so that a non-GNU linker is found, and then restart.
-
-_LT_EOF
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds=''
- ;;
- m68k)
- archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- ;;
- esac
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- allow_undefined_flag=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
- # as there is no search path for DLLs.
- hardcode_libdir_flag_spec='-L$libdir'
- allow_undefined_flag=unsupported
- always_export_symbols=no
- enable_shared_with_static_runtimes=yes
- export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- interix[3-9]*)
- hardcode_direct=no
- hardcode_shlibpath_var=no
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- export_dynamic_flag_spec='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
-
- gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
- tmp_diet=no
- if test "$host_os" = linux-dietlibc; then
- case $cc_basename in
- diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
- esac
- fi
- if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
- && test "$tmp_diet" = no
- then
- tmp_addflag=
- tmp_sharedflag='-shared'
- case $cc_basename,$host_cpu in
- pgcc*) # Portland Group C compiler
- whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag'
- ;;
- pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag -Mnomain' ;;
- ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
- tmp_addflag=' -i_dynamic' ;;
- efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
- tmp_addflag=' -i_dynamic -nofor_main' ;;
- ifc* | ifort*) # Intel Fortran compiler
- tmp_addflag=' -nofor_main' ;;
- lf95*) # Lahey Fortran 8.1
- whole_archive_flag_spec=
- tmp_sharedflag='--shared' ;;
- xl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
- tmp_sharedflag='-qmkshrobj'
- tmp_addflag= ;;
- esac
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*) # Sun C 5.9
- whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- compiler_needs_object=yes
- tmp_sharedflag='-G' ;;
- *Sun\ F*) # Sun Fortran 8.3
- tmp_sharedflag='-G' ;;
- esac
- archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
-
- case $cc_basename in
- xlf*)
- # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
- whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
- hardcode_libdir_flag_spec=
- hardcode_libdir_flag_spec_ld='-rpath $libdir'
- archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
- fi
- ;;
- esac
- else
- ld_shlibs=no
- fi
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
- wlarc=
- else
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- fi
- ;;
-
- solaris*)
- if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
- case `$LD -v 2>&1` in
- *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- ;;
- *)
- # For security reasons, it is highly recommended that you always
- # use absolute paths for naming shared libraries, and exclude the
- # DT_RUNPATH tag from executables and libraries. But doing so
- # requires that you compile everything twice, which is a pain.
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
- esac
- ;;
-
- sunos4*)
- archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- wlarc=
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- *)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
- esac
-
- if test "$ld_shlibs" = no; then
- runpath_var=
- hardcode_libdir_flag_spec=
- export_dynamic_flag_spec=
- whole_archive_flag_spec=
- fi
- else
- # PORTME fill in a description of your system's linker (not GNU ld)
- case $host_os in
- aix3*)
- allow_undefined_flag=unsupported
- always_export_symbols=yes
- archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
- # Note: this linker hardcodes the directories in LIBPATH if there
- # are no directories specified by -L.
- hardcode_minus_L=yes
- if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
- # Neither direct hardcoding nor static linking is supported with a
- # broken collect2.
- hardcode_direct=unsupported
- fi
- ;;
-
- aix[4-9]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
- for ld_flag in $LDFLAGS; do
- if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
- aix_use_runtimelinking=yes
- break
- fi
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- archive_cmds=''
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- hardcode_libdir_separator=':'
- link_all_deplibs=yes
- file_list_spec='${wl}-f,'
-
- if test "$GCC" = yes; then
- case $host_os in aix4.[012]|aix4.[012].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- hardcode_direct=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- hardcode_minus_L=yes
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_libdir_separator=
- fi
- ;;
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- link_all_deplibs=no
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- export_dynamic_flag_spec='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to export.
- always_export_symbols=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- allow_undefined_flag='-berok'
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
- allow_undefined_flag="-z nodefs"
- archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- no_undefined_flag=' ${wl}-bernotok'
- allow_undefined_flag=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- whole_archive_flag_spec='$convenience'
- archive_cmds_need_lc=yes
- # This is similar to how AIX traditionally builds its shared libraries.
- archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds=''
- ;;
- m68k)
- archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- ;;
- esac
- ;;
-
- bsdi[45]*)
- export_dynamic_flag_spec=-rdynamic
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- hardcode_libdir_flag_spec=' '
- allow_undefined_flag=unsupported
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # Tell ltmain to make .dll files, not .so files.
- shrext_cmds=".dll"
- # FIXME: Setting linknames here is a bad hack.
- archive_cmds='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
- # The linker will automatically build a .lib file if we build a DLL.
- old_archive_from_new_cmds='true'
- # FIXME: Should let the user specify the lib program.
- old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
- fix_srcfile_path='`cygpath -w "$srcfile"`'
- enable_shared_with_static_runtimes=yes
- ;;
-
- darwin* | rhapsody*)
-
-
- archive_cmds_need_lc=no
- hardcode_direct=no
- hardcode_automatic=yes
- hardcode_shlibpath_var=unsupported
- whole_archive_flag_spec=''
- link_all_deplibs=yes
- allow_undefined_flag="$_lt_dar_allow_undefined"
- case $cc_basename in
- ifort*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test "$_lt_dar_can_shared" = "yes"; then
- output_verbose_link_cmd=echo
- archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
- module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
- archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
- module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
-
- else
- ld_shlibs=no
- fi
-
- ;;
-
- dgux*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- freebsd1*)
- ld_shlibs=no
- ;;
-
- # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
- # support. Future versions do this automatically, but an explicit c++rt0.o
- # does not break anything, and helps significantly (at the cost of a little
- # extra space).
- freebsd2.2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- # Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
- freebsd* | dragonfly*)
- archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- hpux9*)
- if test "$GCC" = yes; then
- archive_cmds='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- fi
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_direct=yes
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- export_dynamic_flag_spec='${wl}-E'
- ;;
-
- hpux10*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
- fi
- if test "$with_gnu_ld" = no; then
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_flag_spec_ld='+b $libdir'
- hardcode_libdir_separator=:
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- export_dynamic_flag_spec='${wl}-E'
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- fi
- ;;
-
- hpux11*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case $host_cpu in
- hppa*64*)
- archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- else
- case $host_cpu in
- hppa*64*)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- fi
- if test "$with_gnu_ld" = no; then
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- hardcode_direct=no
- hardcode_shlibpath_var=no
- ;;
- *)
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- export_dynamic_flag_spec='${wl}-E'
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- ;;
- esac
- fi
- ;;
-
- irix5* | irix6* | nonstopux*)
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- # Try to use the -exported_symbol ld option, if it does not
- # work, assume that -exports_file does not work either and
- # implicitly export all symbols.
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-int foo(void) {}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS="$save_LDFLAGS"
- else
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- inherit_rpath=yes
- link_all_deplibs=yes
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
- else
- archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
- fi
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- newsos6)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_shlibpath_var=no
- ;;
-
- *nto* | *qnx*)
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- hardcode_direct_absolute=yes
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- export_dynamic_flag_spec='${wl}-E'
- else
- case $host_os in
- openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-R$libdir'
- ;;
- *)
- archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- ;;
- esac
- fi
- else
- ld_shlibs=no
- fi
- ;;
-
- os2*)
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- allow_undefined_flag=unsupported
- archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
- old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
- ;;
-
- osf3*)
- if test "$GCC" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- ;;
-
- osf4* | osf5*) # as osf3* with the addition of -msym flag
- if test "$GCC" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
- $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
- # Both c and cxx compiler support -rpath directly
- hardcode_libdir_flag_spec='-rpath $libdir'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_separator=:
- ;;
-
- solaris*)
- no_undefined_flag=' -z defs'
- if test "$GCC" = yes; then
- wlarc='${wl}'
- archive_cmds='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- else
- case `$CC -V 2>&1` in
- *"Compilers 5.0"*)
- wlarc=''
- archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
- ;;
- *)
- wlarc='${wl}'
- archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- ;;
- esac
- fi
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_shlibpath_var=no
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'. GCC discards it without `$wl',
- # but is careful enough not to reorder.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- if test "$GCC" = yes; then
- whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- else
- whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
- fi
- ;;
- esac
- link_all_deplibs=yes
- ;;
-
- sunos4*)
- if test "x$host_vendor" = xsequent; then
- # Use $CC to link under sequent, because it throws in some extra .o
- # files that make .init and .fini sections work.
- archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
- fi
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- sysv4)
- case $host_vendor in
- sni)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes # is this really true???
- ;;
- siemens)
- ## LD is ld it makes a PLAMLIB
- ## CC just makes a GrossModule.
- archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- reload_cmds='$CC -r -o $output$reload_objs'
- hardcode_direct=no
- ;;
- motorola)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=no #Motorola manual says yes, but my tests say they lie
- ;;
- esac
- runpath_var='LD_RUN_PATH'
- hardcode_shlibpath_var=no
- ;;
-
- sysv4.3*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- export_dynamic_flag_spec='-Bexport'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ld_shlibs=yes
- fi
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
- no_undefined_flag='${wl}-z,text'
- archive_cmds_need_lc=no
- hardcode_shlibpath_var=no
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- no_undefined_flag='${wl}-z,text'
- allow_undefined_flag='${wl}-z,nodefs'
- archive_cmds_need_lc=no
- hardcode_shlibpath_var=no
- hardcode_libdir_flag_spec='${wl}-R,$libdir'
- hardcode_libdir_separator=':'
- link_all_deplibs=yes
- export_dynamic_flag_spec='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- uts4*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- *)
- ld_shlibs=no
- ;;
- esac
-
- if test x$host_vendor = xsni; then
- case $host in
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- export_dynamic_flag_spec='${wl}-Blargedynsym'
- ;;
- esac
- fi
- fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
-test "$ld_shlibs" = no && can_build_shared=no
-
-with_gnu_ld=$with_gnu_ld
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$archive_cmds_need_lc" in
-x|xyes)
- # Assume -lc should be added
- archive_cmds_need_lc=yes
-
- if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $archive_cmds in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
- $RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$lt_prog_compiler_wl
- pic_flag=$lt_prog_compiler_pic
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$allow_undefined_flag
- allow_undefined_flag=
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
- (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- then
- archive_cmds_need_lc=no
- else
- archive_cmds_need_lc=yes
- fi
- allow_undefined_flag=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5
-$as_echo "$archive_cmds_need_lc" >&6; }
- ;;
- esac
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
-
-if test "$GCC" = yes; then
- case $host_os in
- darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
- *) lt_awk_arg="/^libraries:/" ;;
- esac
- lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
- # if the path contains ";" then we assume it to be the separator
- # otherwise default to the standard path separator (i.e. ":") - it is
- # assumed that no part of a normal pathname contains ";" but that should
- # okay in the real world where ";" in dirpaths is itself problematic.
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
- else
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- # Ok, now we have the path, separated by spaces, we can step through it
- # and add multilib dir if necessary.
- lt_tmp_lt_search_path_spec=
- lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
- for lt_sys_path in $lt_search_path_spec; do
- if test -d "$lt_sys_path/$lt_multi_os_dir"; then
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
- else
- test -d "$lt_sys_path" && \
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
- fi
- done
- lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
-BEGIN {RS=" "; FS="/|\n";} {
- lt_foo="";
- lt_count=0;
- for (lt_i = NF; lt_i > 0; lt_i--) {
- if ($lt_i != "" && $lt_i != ".") {
- if ($lt_i == "..") {
- lt_count++;
- } else {
- if (lt_count == 0) {
- lt_foo="/" $lt_i lt_foo;
- } else {
- lt_count--;
- }
- }
- }
- }
- if (lt_foo != "") { lt_freq[lt_foo]++; }
- if (lt_freq[lt_foo] == 1) { print lt_foo; }
-}'`
- sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
-else
- sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
-
-aix[4-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[01] | aix4.[01].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}${shared_ext}$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='${libname}${shared_ext}'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[45]*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=".dll"
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
- # It is most probably a Windows format PATH printed by
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
- # path with ; separators, and with drive letters. We can handle the
- # drive letters (cygwin fileutils understands them), so leave them,
- # especially as we might pass files found there to a mingw objdump,
- # which wouldn't understand a cygwinified path. Ahh.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- ;;
- esac
- ;;
-
- *)
- library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
- soname_spec='${libname}${release}${major}$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-
- sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd* | dragonfly*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[123]*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[01]* | freebsdelf3.[01]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
- freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- fi
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-interix[3-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" = yes; then
- version_type=linux
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # Some binutils ld are patched to set DT_RUNPATH
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
- LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
- shlibpath_overrides_runpath=yes
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsdelf*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='NetBSD ld.elf_so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd*)
- version_type=sunos
- sys_lib_dlsearch_path_spec="/usr/lib"
- need_lib_prefix=no
- # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
- case $host_os in
- openbsd3.3 | openbsd3.3.*) need_version=yes ;;
- *) need_version=no ;;
- esac
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case $host_os in
- openbsd2.[89] | openbsd2.[89].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- ;;
-
-os2*)
- libname_spec='$name'
- shrext_cmds=".dll"
- need_lib_prefix=no
- library_names_spec='$libname${shared_ext} $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
- soname_spec='$libname${shared_ext}.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=freebsd-elf
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test "$with_gnu_ld" = yes; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
- sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
- sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
-hardcode_action=
-if test -n "$hardcode_libdir_flag_spec" ||
- test -n "$runpath_var" ||
- test "X$hardcode_automatic" = "Xyes" ; then
-
- # We can hardcode non-existent directories.
- if test "$hardcode_direct" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
- test "$hardcode_minus_L" != no; then
- # Linking always hardcodes the temporary library directory.
- hardcode_action=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- hardcode_action=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- hardcode_action=unsupported
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
-
-if test "$hardcode_action" = relink ||
- test "$inherit_rpath" = yes; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-
-
-
-
-
-
- if test "x$enable_dlopen" != xyes; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
- lt_cv_dlopen=no
- lt_cv_dlopen_libs=
-
- case $host_os in
- beos*)
- lt_cv_dlopen="load_add_on"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
- mingw* | pw32* | cegcc*)
- lt_cv_dlopen="LoadLibrary"
- lt_cv_dlopen_libs=
- ;;
-
- cygwin*)
- lt_cv_dlopen="dlopen"
- lt_cv_dlopen_libs=
- ;;
-
- darwin*)
- # if libdl is installed we need to link against it
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dl_dlopen=yes
-else
- ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
-
- lt_cv_dlopen="dyld"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
-
-fi
-
- ;;
-
- *)
- ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = x""yes; then :
- lt_cv_dlopen="shl_load"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if test "${ac_cv_lib_dld_shl_load+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char shl_load ();
-int
-main ()
-{
-return shl_load ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dld_shl_load=yes
-else
- ac_cv_lib_dld_shl_load=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = x""yes; then :
- lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
-else
- ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dl_dlopen=yes
-else
- ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if test "${ac_cv_lib_svld_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsvld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_svld_dlopen=yes
-else
- ac_cv_lib_svld_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if test "${ac_cv_lib_dld_dld_link+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dld_link ();
-int
-main ()
-{
-return dld_link ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dld_dld_link=yes
-else
- ac_cv_lib_dld_dld_link=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = x""yes; then :
- lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
- ;;
- esac
-
- if test "x$lt_cv_dlopen" != xno; then
- enable_dlopen=yes
- else
- enable_dlopen=no
- fi
-
- case $lt_cv_dlopen in
- dlopen)
- save_CPPFLAGS="$CPPFLAGS"
- test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
- save_LDFLAGS="$LDFLAGS"
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
- save_LIBS="$LIBS"
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if test "${lt_cv_dlopen_self+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- lt_cv_dlopen_self=cross
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-#line __oline__ "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}
-_LT_EOF
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) >&5 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
- x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
- x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
- esac
- else :
- # compilation failed
- lt_cv_dlopen_self=no
- fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
-
- if test "x$lt_cv_dlopen_self" = xyes; then
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if test "${lt_cv_dlopen_self_static+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- lt_cv_dlopen_self_static=cross
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-#line __oline__ "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}
-_LT_EOF
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) >&5 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
- x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
- x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
- esac
- else :
- # compilation failed
- lt_cv_dlopen_self_static=no
- fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
- fi
-
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
- ;;
- esac
-
- case $lt_cv_dlopen_self in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case $lt_cv_dlopen_self_static in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-striplib=
-old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
- test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
- test -z "$striplib" && striplib="$STRIP --strip-unneeded"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-# FIXME - insert some real tests, host_os isn't really good enough
- case $host_os in
- darwin*)
- if test -n "$STRIP" ; then
- striplib="$STRIP -x"
- old_striplib="$STRIP -S"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
- ;;
- *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- ;;
- esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
- # Report which library types will actually be built
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
-
- aix[4-9]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
-
-
-
-
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-CC="$lt_save_CC"
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-archive_cmds_need_lc_CXX=no
-allow_undefined_flag_CXX=
-always_export_symbols_CXX=no
-archive_expsym_cmds_CXX=
-compiler_needs_object_CXX=no
-export_dynamic_flag_spec_CXX=
-hardcode_direct_CXX=no
-hardcode_direct_absolute_CXX=no
-hardcode_libdir_flag_spec_CXX=
-hardcode_libdir_flag_spec_ld_CXX=
-hardcode_libdir_separator_CXX=
-hardcode_minus_L_CXX=no
-hardcode_shlibpath_var_CXX=unsupported
-hardcode_automatic_CXX=no
-inherit_rpath_CXX=no
-module_cmds_CXX=
-module_expsym_cmds_CXX=
-link_all_deplibs_CXX=unknown
-old_archive_cmds_CXX=$old_archive_cmds
-no_undefined_flag_CXX=
-whole_archive_flag_spec_CXX=
-enable_shared_with_static_runtimes_CXX=no
-
-# Source file extension for C++ test sources.
-ac_ext=cpp
-
-# Object file extension for compiled C++ test sources.
-objext=o
-objext_CXX=$objext
-
-# No sense in running all these tests if we already determined that
-# the CXX compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="int some_variable = 0;"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code='int main(int, char *[]) { return(0); }'
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-
- # save warnings/boilerplate of simple test code
- ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-
- ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-
-
- # Allow CC to be a program name with arguments.
- lt_save_CC=$CC
- lt_save_LD=$LD
- lt_save_GCC=$GCC
- GCC=$GXX
- lt_save_with_gnu_ld=$with_gnu_ld
- lt_save_path_LD=$lt_cv_path_LD
- if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
- lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
- else
- $as_unset lt_cv_prog_gnu_ld
- fi
- if test -n "${lt_cv_path_LDCXX+set}"; then
- lt_cv_path_LD=$lt_cv_path_LDCXX
- else
- $as_unset lt_cv_path_LD
- fi
- test -z "${LDCXX+set}" || LD=$LDCXX
- CC=${CXX-"c++"}
- compiler=$CC
- compiler_CXX=$CC
- for cc_temp in $compiler""; do
- case $cc_temp in
- compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
- distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
- \-*) ;;
- *) break;;
- esac
-done
-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
-
-
- if test -n "$compiler"; then
- # We don't want -fno-exception when compiling C++ code, so set the
- # no_builtin_flag separately
- if test "$GXX" = yes; then
- lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'
- else
- lt_prog_compiler_no_builtin_flag_CXX=
- fi
-
- if test "$GXX" = yes; then
- # Set up default GNU C++ configuration
-
-
-
-@%:@ Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
- withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
- with_gnu_ld=no
-fi
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [\\/]* | ?:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if test "${lt_cv_path_LD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if test "${lt_cv_prog_gnu_ld+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-
-
-
-
-
-
- # Check if GNU C++ uses GNU ld as the underlying linker, since the
- # archiving commands below assume that GNU ld is being used.
- if test "$with_gnu_ld" = yes; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
-
- # If archive_cmds runs LD, not CC, wlarc should be empty
- # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
- # investigate it a little bit more. (MM)
- wlarc='${wl}'
-
- # ancient GNU ld didn't support --whole-archive et. al.
- if eval "`$CC -print-prog-name=ld` --help 2>&1" |
- $GREP 'no-whole-archive' > /dev/null; then
- whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- whole_archive_flag_spec_CXX=
- fi
- else
- with_gnu_ld=no
- wlarc=
-
- # A generic and very simple default shared library creation
- # command for GNU C++ for the case where it uses the native
- # linker, instead of GNU ld. If possible, this setting should
- # overridden to take advantage of the native linker features on
- # the platform it is being used on.
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- fi
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- GXX=no
- with_gnu_ld=no
- wlarc=
- fi
-
- # PORTME: fill in a description of your system's C++ link characteristics
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
- ld_shlibs_CXX=yes
- case $host_os in
- aix3*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aix[4-9]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
- for ld_flag in $LDFLAGS; do
- case $ld_flag in
- *-brtl*)
- aix_use_runtimelinking=yes
- break
- ;;
- esac
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- archive_cmds_CXX=''
- hardcode_direct_CXX=yes
- hardcode_direct_absolute_CXX=yes
- hardcode_libdir_separator_CXX=':'
- link_all_deplibs_CXX=yes
- file_list_spec_CXX='${wl}-f,'
-
- if test "$GXX" = yes; then
- case $host_os in aix4.[012]|aix4.[012].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- hardcode_direct_CXX=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- hardcode_minus_L_CXX=yes
- hardcode_libdir_flag_spec_CXX='-L$libdir'
- hardcode_libdir_separator_CXX=
- fi
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- export_dynamic_flag_spec_CXX='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to
- # export.
- always_export_symbols_CXX=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- allow_undefined_flag_CXX='-berok'
- # Determine the default libpath from the value encoded in an empty
- # executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
-
- archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib'
- allow_undefined_flag_CXX="-z nodefs"
- archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- no_undefined_flag_CXX=' ${wl}-bernotok'
- allow_undefined_flag_CXX=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- whole_archive_flag_spec_CXX='$convenience'
- archive_cmds_need_lc_CXX=yes
- # This is similar to how AIX traditionally builds its shared
- # libraries.
- archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- allow_undefined_flag_CXX=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- ld_shlibs_CXX=no
- fi
- ;;
-
- chorus*)
- case $cc_basename in
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,
- # as there is no search path for DLLs.
- hardcode_libdir_flag_spec_CXX='-L$libdir'
- allow_undefined_flag_CXX=unsupported
- always_export_symbols_CXX=no
- enable_shared_with_static_runtimes_CXX=yes
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- ld_shlibs_CXX=no
- fi
- ;;
- darwin* | rhapsody*)
-
-
- archive_cmds_need_lc_CXX=no
- hardcode_direct_CXX=no
- hardcode_automatic_CXX=yes
- hardcode_shlibpath_var_CXX=unsupported
- whole_archive_flag_spec_CXX=''
- link_all_deplibs_CXX=yes
- allow_undefined_flag_CXX="$_lt_dar_allow_undefined"
- case $cc_basename in
- ifort*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test "$_lt_dar_can_shared" = "yes"; then
- output_verbose_link_cmd=echo
- archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
- module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
- archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
- module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
- if test "$lt_cv_apple_cc_single_mod" != "yes"; then
- archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
- archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
- fi
-
- else
- ld_shlibs_CXX=no
- fi
-
- ;;
-
- dgux*)
- case $cc_basename in
- ec++*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- freebsd[12]*)
- # C++ shared libraries reported to be fairly broken before
- # switch to ELF
- ld_shlibs_CXX=no
- ;;
-
- freebsd-elf*)
- archive_cmds_need_lc_CXX=no
- ;;
-
- freebsd* | dragonfly*)
- # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
- # conventions
- ld_shlibs_CXX=yes
- ;;
-
- gnu*)
- ;;
-
- hpux9*)
- hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
- export_dynamic_flag_spec_CXX='${wl}-E'
- hardcode_direct_CXX=yes
- hardcode_minus_L_CXX=yes # Not in the search PATH,
- # but as the default
- # location of the library.
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aCC*)
- archive_cmds_CXX='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- hpux10*|hpux11*)
- if test $with_gnu_ld = no; then
- hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- ;;
- *)
- export_dynamic_flag_spec_CXX='${wl}-E'
- ;;
- esac
- fi
- case $host_cpu in
- hppa*64*|ia64*)
- hardcode_direct_CXX=no
- hardcode_shlibpath_var_CXX=no
- ;;
- *)
- hardcode_direct_CXX=yes
- hardcode_direct_absolute_CXX=yes
- hardcode_minus_L_CXX=yes # Not in the search PATH,
- # but as the default
- # location of the library.
- ;;
- esac
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aCC*)
- case $host_cpu in
- hppa*64*)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- if test $with_gnu_ld = no; then
- case $host_cpu in
- hppa*64*)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- fi
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- interix[3-9]*)
- hardcode_direct_CXX=no
- hardcode_shlibpath_var_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- archive_expsym_cmds_CXX='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
- irix5* | irix6*)
- case $cc_basename in
- CC*)
- # SGI C++
- archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
-
- # Archives containing C++ object files must be created using
- # "CC -ar", where "CC" is the IRIX C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'
- ;;
- *)
- if test "$GXX" = yes; then
- if test "$with_gnu_ld" = no; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
- fi
- fi
- link_all_deplibs_CXX=yes
- ;;
- esac
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
- inherit_rpath_CXX=yes
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
- archive_expsym_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
-
- # Archives containing C++ object files must be created using
- # "CC -Bstatic", where "CC" is the KAI C++ compiler.
- old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'
- ;;
- icpc* | ecpc* )
- # Intel C++
- with_gnu_ld=yes
- # version 8.0 and above of icpc choke on multiply defined symbols
- # if we add $predep_objects and $postdep_objects, however 7.1 and
- # earlier do not add the objects themselves.
- case `$CC -V 2>&1` in
- *"Version 7."*)
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- *) # Version 8.0 or newer
- tmp_idyn=
- case $host_cpu in
- ia64*) tmp_idyn=' -i_dynamic';;
- esac
- archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- esac
- archive_cmds_need_lc_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- case `$CC -V` in
- *pgCC\ [1-5]* | *pgcpp\ [1-5]*)
- prelink_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
- compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
- old_archive_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
- $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
- $RANLIB $oldlib'
- archive_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- archive_expsym_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- *) # Version 6 will use weak symbols
- archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- esac
-
- hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- whole_archive_flag_spec_CXX='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- ;;
- cxx*)
- # Compaq C++
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
-
- runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec_CXX='-rpath $libdir'
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- xl*)
- # IBM XL 8.0 on PPC, with GNU ld
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- no_undefined_flag_CXX=' -zdefs'
- archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- whole_archive_flag_spec_CXX='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- compiler_needs_object_CXX=yes
-
- # Not sure whether something based on
- # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
- # would be better.
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
- ;;
- esac
- ;;
- esac
- ;;
-
- lynxos*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- m88k*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- mvs*)
- case $cc_basename in
- cxx*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
- wlarc=
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- hardcode_direct_CXX=yes
- hardcode_shlibpath_var_CXX=no
- fi
- # Workaround some broken pre-1.5 toolchains
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
- ;;
-
- *nto* | *qnx*)
- ld_shlibs_CXX=yes
- ;;
-
- openbsd2*)
- # C++ shared libraries are fairly broken
- ld_shlibs_CXX=no
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- hardcode_direct_CXX=yes
- hardcode_shlibpath_var_CXX=no
- hardcode_direct_absolute_CXX=yes
- archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
- export_dynamic_flag_spec_CXX='${wl}-E'
- whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- fi
- output_verbose_link_cmd=echo
- else
- ld_shlibs_CXX=no
- fi
- ;;
-
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- hardcode_libdir_separator_CXX=:
-
- # Archives containing C++ object files must be created using
- # the KAI C++ compiler.
- case $host in
- osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;
- *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;
- esac
- ;;
- RCC*)
- # Rational C++ 2.4.1
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- cxx*)
- case $host in
- osf3*)
- allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- ;;
- *)
- allow_undefined_flag_CXX=' -expect_unresolved \*'
- archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
- echo "-hidden">> $lib.exp~
- $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
- $RM $lib.exp'
- hardcode_libdir_flag_spec_CXX='-rpath $libdir'
- ;;
- esac
-
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*'
- case $host in
- osf3*)
- archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- *)
- archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- esac
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- psos*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- lcc*)
- # Lucid
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- archive_cmds_need_lc_CXX=yes
- no_undefined_flag_CXX=' -zdefs'
- archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- hardcode_shlibpath_var_CXX=no
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'
- ;;
- esac
- link_all_deplibs_CXX=yes
-
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
- ;;
- gcx*)
- # Green Hills C++ Compiler
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-
- # The C++ compiler must be used to create the archive.
- old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
- ;;
- *)
- # GNU C++ compiler with Solaris linker
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- no_undefined_flag_CXX=' ${wl}-z ${wl}defs'
- if $CC --version | $GREP -v '^2\.7' > /dev/null; then
- archive_cmds_CXX='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- else
- # g++ 2.7 appears to require `-G' NOT `-shared' on this
- # platform.
- archive_cmds_CXX='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-R $wl$libdir'
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- whole_archive_flag_spec_CXX='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- ;;
- esac
- fi
- ;;
- esac
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
- no_undefined_flag_CXX='${wl}-z,text'
- archive_cmds_need_lc_CXX=no
- hardcode_shlibpath_var_CXX=no
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- no_undefined_flag_CXX='${wl}-z,text'
- allow_undefined_flag_CXX='${wl}-z,nodefs'
- archive_cmds_need_lc_CXX=no
- hardcode_shlibpath_var_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-R,$libdir'
- hardcode_libdir_separator_CXX=':'
- link_all_deplibs_CXX=yes
- export_dynamic_flag_spec_CXX='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- vxworks*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
-$as_echo "$ld_shlibs_CXX" >&6; }
- test "$ld_shlibs_CXX" = no && can_build_shared=no
-
- GCC_CXX="$GXX"
- LD_CXX="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- # Dependencies to place before and after the object being linked:
-predep_objects_CXX=
-postdep_objects_CXX=
-predeps_CXX=
-postdeps_CXX=
-compiler_lib_search_path_CXX=
-
-cat > conftest.$ac_ext <<_LT_EOF
-class Foo
-{
-public:
- Foo (void) { a = 0; }
-private:
- int a;
-};
-_LT_EOF
-
-if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- # Parse the compiler output and extract the necessary
- # objects, libraries and library flags.
-
- # Sentinel used to keep track of whether or not we are before
- # the conftest object file.
- pre_test_object_deps_done=no
-
- for p in `eval "$output_verbose_link_cmd"`; do
- case $p in
-
- -L* | -R* | -l*)
- # Some compilers place space between "-{L,R}" and the path.
- # Remove the space.
- if test $p = "-L" ||
- test $p = "-R"; then
- prev=$p
- continue
- else
- prev=
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- case $p in
- -L* | -R*)
- # Internal compiler library paths should come after those
- # provided the user. The postdeps already come after the
- # user supplied libs so there is no need to process them.
- if test -z "$compiler_lib_search_path_CXX"; then
- compiler_lib_search_path_CXX="${prev}${p}"
- else
- compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} ${prev}${p}"
- fi
- ;;
- # The "-l" case would never come before the object being
- # linked, so don't bother handling this case.
- esac
- else
- if test -z "$postdeps_CXX"; then
- postdeps_CXX="${prev}${p}"
- else
- postdeps_CXX="${postdeps_CXX} ${prev}${p}"
- fi
- fi
- ;;
-
- *.$objext)
- # This assumes that the test object file only shows up
- # once in the compiler output.
- if test "$p" = "conftest.$objext"; then
- pre_test_object_deps_done=yes
- continue
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- if test -z "$predep_objects_CXX"; then
- predep_objects_CXX="$p"
- else
- predep_objects_CXX="$predep_objects_CXX $p"
- fi
- else
- if test -z "$postdep_objects_CXX"; then
- postdep_objects_CXX="$p"
- else
- postdep_objects_CXX="$postdep_objects_CXX $p"
- fi
- fi
- ;;
-
- *) ;; # Ignore the rest.
-
- esac
- done
-
- # Clean up.
- rm -f a.out a.exe
-else
- echo "libtool.m4: error: problem compiling CXX test program"
-fi
-
-$RM -f confest.$objext
-
-# PORTME: override above test on systems where it is broken
-case $host_os in
-interix[3-9]*)
- # Interix 3.5 installs completely hosed .la files for C++, so rather than
- # hack all around it, let's just trust "g++" to DTRT.
- predep_objects_CXX=
- postdep_objects_CXX=
- postdeps_CXX=
- ;;
-
-linux*)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
-
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- if test "$solaris_use_stlport4" != yes; then
- postdeps_CXX='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-
-solaris*)
- case $cc_basename in
- CC*)
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- # Adding this requires a known-good setup of shared libraries for
- # Sun compiler versions before 5.6, else PIC objects from an old
- # archive will be linked into the output, leading to subtle bugs.
- if test "$solaris_use_stlport4" != yes; then
- postdeps_CXX='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-esac
-
-
-case " $postdeps_CXX " in
-*" -lc "*) archive_cmds_need_lc_CXX=no ;;
-esac
- compiler_lib_search_dirs_CXX=
-if test -n "${compiler_lib_search_path_CXX}"; then
- compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- lt_prog_compiler_wl_CXX=
-lt_prog_compiler_pic_CXX=
-lt_prog_compiler_static_CXX=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-
- # C++ specific cases for pic, static, wl, etc.
- if test "$GXX" = yes; then
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static_CXX='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
- mingw* | cygwin* | os2* | pw32* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
- ;;
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- lt_prog_compiler_pic_CXX='-fno-common'
- ;;
- *djgpp*)
- # DJGPP does not support shared libraries at all
- lt_prog_compiler_pic_CXX=
- ;;
- interix[3-9]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
- sysv4*MP*)
- if test -d /usr/nec; then
- lt_prog_compiler_pic_CXX=-Kconform_pic
- fi
- ;;
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- ;;
- *)
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- esac
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic_CXX='-fPIC -shared'
- ;;
- *)
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- esac
- else
- case $host_os in
- aix[4-9]*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static_CXX='-Bstatic'
- else
- lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
- chorus*)
- case $cc_basename in
- cxch68*)
- # Green Hills C++ Compiler
- # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
- ;;
- esac
- ;;
- dgux*)
- case $cc_basename in
- ec++*)
- lt_prog_compiler_pic_CXX='-KPIC'
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- freebsd* | dragonfly*)
- # FreeBSD uses GNU C++
- ;;
- hpux9* | hpux10* | hpux11*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='${wl}-a ${wl}archive'
- if test "$host_cpu" != ia64; then
- lt_prog_compiler_pic_CXX='+Z'
- fi
- ;;
- aCC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='${wl}-a ${wl}archive'
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic_CXX='+Z'
- ;;
- esac
- ;;
- *)
- ;;
- esac
- ;;
- interix*)
- # This is c89, which is MS Visual C++ (no shared libs)
- # Anyone wants to do a port?
- ;;
- irix5* | irix6* | nonstopux*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='-non_shared'
- # CC pic flag -KPIC is the default.
- ;;
- *)
- ;;
- esac
- ;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # KAI C++ Compiler
- lt_prog_compiler_wl_CXX='--backend -Wl,'
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- ecpc* )
- # old Intel C++ for x86_64 which still supported -KPIC.
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-static'
- ;;
- icpc* )
- # Intel C++, used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-fPIC'
- lt_prog_compiler_static_CXX='-static'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-fpic'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- cxx*)
- # Compaq C++
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_static_CXX='-non_shared'
- ;;
- xlc* | xlC*)
- # IBM XL 8.0 on PPC
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-qpic'
- lt_prog_compiler_static_CXX='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- lt_prog_compiler_wl_CXX='-Qoption ld '
- ;;
- esac
- ;;
- esac
- ;;
- lynxos*)
- ;;
- m88k*)
- ;;
- mvs*)
- case $cc_basename in
- cxx*)
- lt_prog_compiler_pic_CXX='-W c,exportall'
- ;;
- *)
- ;;
- esac
- ;;
- netbsd* | netbsdelf*-gnu)
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic_CXX='-fPIC -shared'
- ;;
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- lt_prog_compiler_wl_CXX='--backend -Wl,'
- ;;
- RCC*)
- # Rational C++ 2.4.1
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- cxx*)
- # Digital/Compaq C++
- lt_prog_compiler_wl_CXX='-Wl,'
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_static_CXX='-non_shared'
- ;;
- *)
- ;;
- esac
- ;;
- psos*)
- ;;
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- lt_prog_compiler_wl_CXX='-Qoption ld '
- ;;
- gcx*)
- # Green Hills C++ Compiler
- lt_prog_compiler_pic_CXX='-PIC'
- ;;
- *)
- ;;
- esac
- ;;
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- lt_prog_compiler_pic_CXX='-pic'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- lcc*)
- # Lucid
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- esac
- ;;
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- lt_prog_compiler_pic_CXX='-KPIC'
- ;;
- *)
- ;;
- esac
- ;;
- vxworks*)
- ;;
- *)
- lt_prog_compiler_can_build_shared_CXX=no
- ;;
- esac
- fi
-
-case $host_os in
- # For platforms which do not support PIC, -DPIC is meaningless:
- *djgpp*)
- lt_prog_compiler_pic_CXX=
- ;;
- *)
- lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX@&t@ -DPIC"
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_CXX" >&5
-$as_echo "$lt_prog_compiler_pic_CXX" >&6; }
-
-
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$lt_prog_compiler_pic_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }
-if test "${lt_cv_prog_compiler_pic_works_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_pic_works_CXX=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$lt_prog_compiler_pic_CXX@&t@ -DPIC"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_pic_works_CXX=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }
-
-if test x"$lt_cv_prog_compiler_pic_works_CXX" = xyes; then
- case $lt_prog_compiler_pic_CXX in
- "" | " "*) ;;
- *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;
- esac
-else
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_can_build_shared_CXX=no
-fi
-
-fi
-
-
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if test "${lt_cv_prog_compiler_static_works_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_static_works_CXX=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_static_works_CXX=yes
- fi
- else
- lt_cv_prog_compiler_static_works_CXX=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }
-
-if test x"$lt_cv_prog_compiler_static_works_CXX" = xyes; then
- :
-else
- lt_prog_compiler_static_CXX=
-fi
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o_CXX=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o_CXX=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o_CXX=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o_CXX=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
-
-
-
-
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o_CXX" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
- if test "$hard_links" = no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
-
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- case $host_os in
- aix[4-9]*)
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- ;;
- pw32*)
- export_symbols_cmds_CXX="$ltdll_cmds"
- ;;
- cygwin* | mingw* | cegcc*)
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;/^.*[ ]__nm__/s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- linux* | k*bsd*-gnu)
- link_all_deplibs_CXX=no
- ;;
- *)
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- esac
- exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
-$as_echo "$ld_shlibs_CXX" >&6; }
-test "$ld_shlibs_CXX" = no && can_build_shared=no
-
-with_gnu_ld_CXX=$with_gnu_ld
-
-
-
-
-
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$archive_cmds_need_lc_CXX" in
-x|xyes)
- # Assume -lc should be added
- archive_cmds_need_lc_CXX=yes
-
- if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $archive_cmds_CXX in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
- $RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$lt_prog_compiler_wl_CXX
- pic_flag=$lt_prog_compiler_pic_CXX
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$allow_undefined_flag_CXX
- allow_undefined_flag_CXX=
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
- (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- then
- archive_cmds_need_lc_CXX=no
- else
- archive_cmds_need_lc_CXX=yes
- fi
- allow_undefined_flag_CXX=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_CXX" >&5
-$as_echo "$archive_cmds_need_lc_CXX" >&6; }
- ;;
- esac
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
-
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
-
-aix[4-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[01] | aix4.[01].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}${shared_ext}$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='${libname}${shared_ext}'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[45]*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=".dll"
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
- # It is most probably a Windows format PATH printed by
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
- # path with ; separators, and with drive letters. We can handle the
- # drive letters (cygwin fileutils understands them), so leave them,
- # especially as we might pass files found there to a mingw objdump,
- # which wouldn't understand a cygwinified path. Ahh.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- ;;
- esac
- ;;
-
- *)
- library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
- soname_spec='${libname}${release}${major}$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd* | dragonfly*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[123]*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[01]* | freebsdelf3.[01]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
- freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- fi
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-interix[3-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" = yes; then
- version_type=linux
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # Some binutils ld are patched to set DT_RUNPATH
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \
- LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
- shlibpath_overrides_runpath=yes
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsdelf*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='NetBSD ld.elf_so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd*)
- version_type=sunos
- sys_lib_dlsearch_path_spec="/usr/lib"
- need_lib_prefix=no
- # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
- case $host_os in
- openbsd3.3 | openbsd3.3.*) need_version=yes ;;
- *) need_version=no ;;
- esac
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case $host_os in
- openbsd2.[89] | openbsd2.[89].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- ;;
-
-os2*)
- libname_spec='$name'
- shrext_cmds=".dll"
- need_lib_prefix=no
- library_names_spec='$libname${shared_ext} $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
- soname_spec='$libname${shared_ext}.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=freebsd-elf
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test "$with_gnu_ld" = yes; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
- sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
- sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
-hardcode_action_CXX=
-if test -n "$hardcode_libdir_flag_spec_CXX" ||
- test -n "$runpath_var_CXX" ||
- test "X$hardcode_automatic_CXX" = "Xyes" ; then
-
- # We can hardcode non-existent directories.
- if test "$hardcode_direct_CXX" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" != no &&
- test "$hardcode_minus_L_CXX" != no; then
- # Linking always hardcodes the temporary library directory.
- hardcode_action_CXX=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- hardcode_action_CXX=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- hardcode_action_CXX=unsupported
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5
-$as_echo "$hardcode_action_CXX" >&6; }
-
-if test "$hardcode_action_CXX" = relink ||
- test "$inherit_rpath_CXX" = yes; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-
-
-
-
-
-
-
- fi # test -n "$compiler"
-
- CC=$lt_save_CC
- LDCXX=$LD
- LD=$lt_save_LD
- GCC=$lt_save_GCC
- with_gnu_ld=$lt_save_with_gnu_ld
- lt_cv_path_LDCXX=$lt_cv_path_LD
- lt_cv_path_LD=$lt_save_path_LD
- lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
- lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-
-
-
-
-
-
-
-
-
-
-
-
- ac_config_commands="$ac_config_commands libtool"
-
-
-
-
-# Only expand once:
-
-
-
-@%:@ Check whether --enable-double was given.
-if test "${enable_double+set}" = set; then :
- enableval=$enable_double; case "${enableval}" in
- yes) double=true ;;
- no) double=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-double" "$LINENO" 5 ;;
-esac
-else
- double=false
-fi
-
-
-if (test x$double = xtrue) ;then
-
-$as_echo "@%:@define MGL_USE_DOUBLE 1" >>confdefs.h
-
-else
-
-$as_echo "@%:@define MGL_USE_DOUBLE 0" >>confdefs.h
-
-fi
-
-@%:@ Check whether --enable-all was given.
-if test "${enable_all+set}" = set; then :
- enableval=$enable_all; case "${enableval}" in
- yes) all=true ;;
- no) all=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-all" "$LINENO" 5 ;;
-esac
-else
- all=false
-fi
-
-
-@%:@ Check whether --enable-langall was given.
-if test "${enable_langall+set}" = set; then :
- enableval=$enable_langall; case "${enableval}" in
- yes) langall=true ;;
- no) langall=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-langall" "$LINENO" 5 ;;
-esac
-else
- langall=false
-fi
-
-
-@%:@ Check whether --enable-pthread was given.
-if test "${enable_pthread+set}" = set; then :
- enableval=$enable_pthread; case "${enableval}" in
- yes) pthread=true ;;
- no) pthread=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-pthread" "$LINENO" 5 ;;
-esac
-else
- pthread=true
-fi
-
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
-if test "x$ac_cv_header_pthread_h" = x""yes; then :
- (test x$all = xtrue || test x$pthread = xtrue) && PTHREAD_FLAGS=-DHAVE_PTHREAD
-else
- (test x$all = xtrue || test x$pthread = xtrue) && echo "Please install posix threads headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpthread" >&5
-$as_echo_n "checking for main in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpthread $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_pthread_main=yes
-else
- ac_cv_lib_pthread_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_main" >&5
-$as_echo "$ac_cv_lib_pthread_main" >&6; }
-if test "x$ac_cv_lib_pthread_main" = x""yes; then :
- (test x$all = xtrue || test x$pthread = xtrue) && PTHREAD_LIBS=-lpthread
-else
- (test x$all = xtrue || test x$pthread = xtrue) && echo "Please install posix threads library" && exit
-fi
-
- if test x$pthread = xtrue; then
- USE_PTHREAD_TRUE=
- USE_PTHREAD_FALSE='#'
-else
- USE_PTHREAD_TRUE='#'
- USE_PTHREAD_FALSE=
-fi
-
-
-@%:@ Check whether --enable-gsl was given.
-if test "${enable_gsl+set}" = set; then :
- enableval=$enable_gsl; case "${enableval}" in
- yes) gsl=true ;;
- no) gsl=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-gsl" "$LINENO" 5 ;;
-esac
-else
- gsl=true
-fi
-
-
-if (test x$all = xtrue || test x$gsl = xtrue) ;then
- GSL_PROG=gsl-config
- # Extract the first word of "$GSL_PROG", so it can be a program name with args.
-set dummy $GSL_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_GSL_FLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$GSL_FLAGS"; then
- ac_cv_prog_GSL_FLAGS="$GSL_FLAGS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_GSL_FLAGS="`$GSL_PROG --cflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-GSL_FLAGS=$ac_cv_prog_GSL_FLAGS
-if test -n "$GSL_FLAGS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GSL_FLAGS" >&5
-$as_echo "$GSL_FLAGS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "$GSL_PROG", so it can be a program name with args.
-set dummy $GSL_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_GSL_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$GSL_LIBS"; then
- ac_cv_prog_GSL_LIBS="$GSL_LIBS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_GSL_LIBS="`$GSL_PROG --libs`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-GSL_LIBS=$ac_cv_prog_GSL_LIBS
-if test -n "$GSL_LIBS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GSL_LIBS" >&5
-$as_echo "$GSL_LIBS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "$GSL_LIBS" ;then
- test_gsl=true
- else
- echo "Please install gsl headers and libraries and make sure that \
- path to $GSL_PROG exist in your PATH"
- exit
- fi
-else
- GSL_FLAGS=-DNO_GSL
-
-fi
- if test x$test_gsl = xtrue; then
- USE_GSL_TRUE=
- USE_GSL_FALSE='#'
-else
- USE_GSL_TRUE='#'
- USE_GSL_FALSE=
-fi
-
-
-case "${host}" in
- *darwin*)
- GL_LIBS="-framework OpenGL"
-
- ;;
-
- *w32*)
- GL_LIBS=opengl32
- ac_fn_cxx_check_header_mongrel "$LINENO" "GL/gl.h" "ac_cv_header_GL_gl_h" "$ac_includes_default"
-if test "x$ac_cv_header_GL_gl_h" = x""yes; then :
-
-else
- echo "Please install OpenGL headers (GL/gl.h)"; exit
-fi
-
-
- as_ac_Lib=`$as_echo "ac_cv_lib_${GL_LIBS}''_main" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -l${GL_LIBS}" >&5
-$as_echo_n "checking for main in -l${GL_LIBS}... " >&6; }
-if eval "test \"\${$as_ac_Lib+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-l${GL_LIBS} $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- eval "$as_ac_Lib=yes"
-else
- eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
- GL_LIBS=-l${GL_LIBS}
-else
- echo "Please install OpenGL library (lib${GL_LIBS}.a)"; exit
-fi
-
- ;;
-
- *)
- GL_LIBS=GL
- ac_fn_cxx_check_header_mongrel "$LINENO" "GL/gl.h" "ac_cv_header_GL_gl_h" "$ac_includes_default"
-if test "x$ac_cv_header_GL_gl_h" = x""yes; then :
-
-else
- echo "Please install OpenGL headers (GL/gl.h)"; exit
-fi
-
-
- as_ac_Lib=`$as_echo "ac_cv_lib_${GL_LIBS}''_main" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -l${GL_LIBS}" >&5
-$as_echo_n "checking for main in -l${GL_LIBS}... " >&6; }
-if eval "test \"\${$as_ac_Lib+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-l${GL_LIBS} $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- eval "$as_ac_Lib=yes"
-else
- eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
- GL_LIBS=-l${GL_LIBS}
-else
- echo "Please install OpenGL library (lib${GL_LIBS}.a)"; exit
-fi
-
- ;;
-
-esac
- if (test x$all = xtrue || test x$glut = xtrue); then
- USE_GLUT_TRUE=
- USE_GLUT_FALSE='#'
-else
- USE_GLUT_TRUE='#'
- USE_GLUT_FALSE=
-fi
-
-
-case "${host}" in
- *linux*)
- ADDON_FLAGS=-DNO_COLOR_ARRAY
- ;;
-
- *)
- ;;
-esac
-
-@%:@ Check whether --enable-hdf5 was given.
-if test "${enable_hdf5+set}" = set; then :
- enableval=$enable_hdf5; case "${enableval}" in
- yes) hdf5=true ;;
- no) hdf5=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf5" "$LINENO" 5 ;;
-esac
-else
- hdf5=false
-fi
-
-@%:@ Check whether --enable-hdf5_18 was given.
-if test "${enable_hdf5_18+set}" = set; then :
- enableval=$enable_hdf5_18; case "${enableval}" in
- yes) hdf5_18=true ;;
- no) hdf5_18=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf5_18" "$LINENO" 5 ;;
-esac
-else
- hdf5_18=false
-fi
-
-#AC_CHECK_HEADER(hdf5.h,[(test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_FLAGS=-DHAVE_HDF5 AC_SUBST(HDF5_FLAGS)],
-ac_fn_cxx_check_header_mongrel "$LINENO" "hdf5.h" "ac_cv_header_hdf5_h" "$ac_includes_default"
-if test "x$ac_cv_header_hdf5_h" = x""yes; then :
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_FLAGS=-DHAVE_HDF5
-else
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && echo "Please install hdf5 headers" && exit
-fi
-
-
-if ((test x$all = xtrue || test x$hdf5 = xtrue) && test x$hdf5_18 = xfalse) ;then
- HDF5_FLAGS="$HDF5_FLAGS -DH5_USE_16_API"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lhdf5" >&5
-$as_echo_n "checking for main in -lhdf5... " >&6; }
-if test "${ac_cv_lib_hdf5_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lhdf5 $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_hdf5_main=yes
-else
- ac_cv_lib_hdf5_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_hdf5_main" >&5
-$as_echo "$ac_cv_lib_hdf5_main" >&6; }
-if test "x$ac_cv_lib_hdf5_main" = x""yes; then :
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_LIBS=-lhdf5
-else
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && echo "Please install hdf5 library" && exit
-fi
-
- if (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue); then
- USE_HDF5_TRUE=
- USE_HDF5_FALSE='#'
-else
- USE_HDF5_TRUE='#'
- USE_HDF5_FALSE=
-fi
-
-
-
-@%:@ Check whether --enable-hdf4 was given.
-if test "${enable_hdf4+set}" = set; then :
- enableval=$enable_hdf4; case "${enableval}" in
- yes) hdf4=true ;;
- no) hdf4=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf4" "$LINENO" 5 ;;
-esac
-else
- hdf4=false
-fi
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "hdf/mfhdf.h" "ac_cv_header_hdf_mfhdf_h" "$ac_includes_default"
-if test "x$ac_cv_header_hdf_mfhdf_h" = x""yes; then :
- (test x$all = xtrue || test x$hdf4 = xtrue) && HDF4_FLAGS=-DHAVE_HDF4
-else
- (test x$all = xtrue || test x$hdf4 = xtrue) && echo "Please install hdf4 headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ldf" >&5
-$as_echo_n "checking for main in -ldf... " >&6; }
-if test "${ac_cv_lib_df_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldf $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_df_main=yes
-else
- ac_cv_lib_df_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_df_main" >&5
-$as_echo "$ac_cv_lib_df_main" >&6; }
-if test "x$ac_cv_lib_df_main" = x""yes; then :
- (test x$all = xtrue || test x$hdf4 = xtrue) && HDF4_LIBS="-lmfhdf -ldf"
-else
- (test x$all = xtrue || test x$hdf4 = xtrue) && echo "Please install hdf4 library" && exit
-fi
-
- if (test x$all = xtrue || test x$hdf4 = xtrue); then
- USE_HDF4_TRUE=
- USE_HDF4_FALSE='#'
-else
- USE_HDF4_TRUE='#'
- USE_HDF4_FALSE=
-fi
-
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "png.h" "ac_cv_header_png_h" "$ac_includes_default"
-if test "x$ac_cv_header_png_h" = x""yes; then :
-
-else
- echo "Please install png headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpng" >&5
-$as_echo_n "checking for main in -lpng... " >&6; }
-if test "${ac_cv_lib_png_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpng $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_png_main=yes
-else
- ac_cv_lib_png_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_png_main" >&5
-$as_echo "$ac_cv_lib_png_main" >&6; }
-if test "x$ac_cv_lib_png_main" = x""yes; then :
- PNG_LIBS=-lpng
-else
- echo "Please install png library" && exit
-fi
-
-
-@%:@ Check whether --enable-jpeg was given.
-if test "${enable_jpeg+set}" = set; then :
- enableval=$enable_jpeg; case "${enableval}" in
- yes) jpeg=true ;;
- no) jpeg=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-jpeg" "$LINENO" 5 ;;
-esac
-else
- jpeg=false
-fi
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "jpeglib.h" "ac_cv_header_jpeglib_h" "$ac_includes_default"
-if test "x$ac_cv_header_jpeglib_h" = x""yes; then :
- (test x$all = xtrue || test x$jpeg = xtrue) && JPEG_FLAGS=-DHAVE_JPEG
-else
- (test x$all = xtrue || test x$jpeg = xtrue) && echo "Please install jpeg headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ljpeg" >&5
-$as_echo_n "checking for main in -ljpeg... " >&6; }
-if test "${ac_cv_lib_jpeg_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ljpeg $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_jpeg_main=yes
-else
- ac_cv_lib_jpeg_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_main" >&5
-$as_echo "$ac_cv_lib_jpeg_main" >&6; }
-if test "x$ac_cv_lib_jpeg_main" = x""yes; then :
- (test x$all = xtrue || test x$jpeg = xtrue) && JPEG_LIBS=-ljpeg
-else
- (test x$all = xtrue || test x$jpeg = xtrue) && echo "Please install jpeg library" && exit
-fi
-
- if (test x$all = xtrue || test x$jpeg = xtrue); then
- USE_JPEG_TRUE=
- USE_JPEG_FALSE='#'
-else
- USE_JPEG_TRUE='#'
- USE_JPEG_FALSE=
-fi
-
-
-@%:@ Check whether --enable-u3d was given.
-if test "${enable_u3d+set}" = set; then :
- enableval=$enable_u3d; case "${enableval}" in
- yes) u3d=true ;;
- no) u3d=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-u3d" "$LINENO" 5 ;;
-esac
-else
- u3d=false
-fi
-
-@%:@ Check whether --enable-pdf was given.
-if test "${enable_pdf+set}" = set; then :
- enableval=$enable_pdf; case "${enableval}" in
- yes) pdf=true; u3d=true ;;
- no) pdf=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-pdf" "$LINENO" 5 ;;
-esac
-else
- pdf=false
-fi
-
-if test "x$pdf" == xtrue; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lhpdf" >&5
-$as_echo_n "checking for main in -lhpdf... " >&6; }
-if test "${ac_cv_lib_hpdf_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lhpdf $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_hpdf_main=yes
-else
- ac_cv_lib_hpdf_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_hpdf_main" >&5
-$as_echo "$ac_cv_lib_hpdf_main" >&6; }
-if test "x$ac_cv_lib_hpdf_main" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBHPDF 1
-_ACEOF
-
- LIBS="-lhpdf $LIBS"
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-pdf was given, but test for libharu failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-fi
-if test "x$pdf" == xtrue; then :
- for ac_header in hpdf.h
-do :
- ac_fn_cxx_check_header_mongrel "$LINENO" "hpdf.h" "ac_cv_header_hpdf_h" "$ac_includes_default"
-if test "x$ac_cv_header_hpdf_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_HPDF_H 1
-_ACEOF
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-pdf was given, but test for headers failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-done
-
-fi
- if test x$pdf = xtrue; then
- USE_PDF_TRUE=
- USE_PDF_FALSE='#'
-else
- USE_PDF_TRUE='#'
- USE_PDF_FALSE=
-fi
-
-
-if test "x$u3d" == xtrue; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lIDTF" >&5
-$as_echo_n "checking for main in -lIDTF... " >&6; }
-if test "${ac_cv_lib_IDTF_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lIDTF -lm -ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_IDTF_main=yes
-else
- ac_cv_lib_IDTF_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_IDTF_main" >&5
-$as_echo "$ac_cv_lib_IDTF_main" >&6; }
-if test "x$ac_cv_lib_IDTF_main" = x""yes; then :
- U3D_LIBS="-lIDTF -lm -ldl"
-
-
-$as_echo "@%:@define HAVE_U3D 1" >>confdefs.h
-
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-u3d was given, but test for libIDTF failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-
-fi
-if test "x$u3d" == xtrue; then :
- for ac_header in u3d/SceneConverterLib.h
-do :
- ac_fn_cxx_check_header_mongrel "$LINENO" "u3d/SceneConverterLib.h" "ac_cv_header_u3d_SceneConverterLib_h" "$ac_includes_default"
-if test "x$ac_cv_header_u3d_SceneConverterLib_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_U3D_SCENECONVERTERLIB_H 1
-_ACEOF
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-u3d was given, but test for headers failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-done
-
-fi
- if test x$u3d = xtrue; then
- USE_U3D_TRUE=
- USE_U3D_FALSE='#'
-else
- USE_U3D_TRUE='#'
- USE_U3D_FALSE=
-fi
-
-
-@%:@ Check whether --enable-fltk was given.
-if test "${enable_fltk+set}" = set; then :
- enableval=$enable_fltk; case "${enableval}" in
- yes) fltk=true ;;
- no) fltk=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-fltk" "$LINENO" 5 ;;
-esac
-else
- fltk=false
-fi
-
-if (test x$all = xtrue || test x$fltk = xtrue) ;then
- FLTK_PROG=fltk-config
- # Extract the first word of "$FLTK_PROG", so it can be a program name with args.
-set dummy $FLTK_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_FLTK_FLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$FLTK_FLAGS"; then
- ac_cv_prog_FLTK_FLAGS="$FLTK_FLAGS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_FLTK_FLAGS="`$FLTK_PROG --cxxflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-FLTK_FLAGS=$ac_cv_prog_FLTK_FLAGS
-if test -n "$FLTK_FLAGS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FLTK_FLAGS" >&5
-$as_echo "$FLTK_FLAGS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "$FLTK_PROG", so it can be a program name with args.
-set dummy $FLTK_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_FLTK_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$FLTK_LIBS"; then
- ac_cv_prog_FLTK_LIBS="$FLTK_LIBS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_FLTK_LIBS="`$FLTK_PROG --ldflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-FLTK_LIBS=$ac_cv_prog_FLTK_LIBS
-if test -n "$FLTK_LIBS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FLTK_LIBS" >&5
-$as_echo "$FLTK_LIBS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "$FLTK_FLAGS" && test "$FLTK_LIBS" ;then
- test_fltk=true
- else
- echo "Please install FLTK headers and libraries and make sure that \
- path to $FLTK_PROG exist in your PATH"
- exit
- fi
-fi
- if test x$test_fltk = xtrue; then
- USE_FLTK_TRUE=
- USE_FLTK_FALSE='#'
-else
- USE_FLTK_TRUE='#'
- USE_FLTK_FALSE=
-fi
-
-
-@%:@ Check whether --enable-qt was given.
-if test "${enable_qt+set}" = set; then :
- enableval=$enable_qt; case "${enableval}" in
- yes) qt=true ;;
- no) qt=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-qt" "$LINENO" 5 ;;
-esac
-else
- qt=false
-fi
-
-if (test x$all = xtrue || test x$qt = xtrue) ;then
-
-
-
-
- test x"$TROLL" != x && echo 'ViM rox emacs.'
-
-
-@%:@ Check whether --with-qt was given.
-if test "${with_qt+set}" = set; then :
- withval=$with_qt; QT_PATH=$withval
-else
- QT_PATH=
-fi
-
-
- # Find Qt.
- if test -d /usr/local/Trolltech; then
- # Try to find the latest version.
- tmp_qt_paths=`echo /usr/local/Trolltech/*/bin | tr ' ' '\n' | sort -nr \
- | xargs | sed 's/ */:/g'`
- fi
-
- # Find qmake.
- for ac_prog in qmake-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_QMAKE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $QMAKE in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_QMAKE="$QMAKE" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_DIR:$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_QMAKE="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-QMAKE=$ac_cv_path_QMAKE
-if test -n "$QMAKE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $QMAKE" >&5
-$as_echo "$QMAKE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$QMAKE" && break
-done
-test -n "$QMAKE" || QMAKE="missing"
-
- if test x"$QMAKE" = xmissing; then
- for ac_prog in qmake${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_QMAKE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $QMAKE in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_QMAKE="$QMAKE" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_DIR:$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_QMAKE="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-QMAKE=$ac_cv_path_QMAKE
-if test -n "$QMAKE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $QMAKE" >&5
-$as_echo "$QMAKE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$QMAKE" && break
-done
-test -n "$QMAKE" || QMAKE="missing"
-
- if test x"$QMAKE" = xmissing; then
- as_fn_error $? "Cannot find qmake in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find moc (Meta Object Compiler).
- for ac_prog in moc-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MOC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MOC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_MOC="$MOC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_MOC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-MOC=$ac_cv_path_MOC
-if test -n "$MOC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MOC" >&5
-$as_echo "$MOC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$MOC" && break
-done
-test -n "$MOC" || MOC="missing"
-
- if test x"$MOC" = xmissing; then
- for ac_prog in moc${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MOC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MOC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_MOC="$MOC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_MOC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-MOC=$ac_cv_path_MOC
-if test -n "$MOC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MOC" >&5
-$as_echo "$MOC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$MOC" && break
-done
-test -n "$MOC" || MOC="missing"
-
- if test x"$MOC" = xmissing; then
- as_fn_error $? "Cannot find moc (Meta Object Compiler) in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find uic (User Interface Compiler).
- for ac_prog in uic-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_UIC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $UIC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_UIC="$UIC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_UIC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-UIC=$ac_cv_path_UIC
-if test -n "$UIC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $UIC" >&5
-$as_echo "$UIC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$UIC" && break
-done
-test -n "$UIC" || UIC="missing"
-
- if test x"$UIC" = xmissing; then
- for ac_prog in uic${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_UIC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $UIC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_UIC="$UIC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_UIC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-UIC=$ac_cv_path_UIC
-if test -n "$UIC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $UIC" >&5
-$as_echo "$UIC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$UIC" && break
-done
-test -n "$UIC" || UIC="missing"
-
- if test x"$UIC" = xmissing; then
- as_fn_error $? "Cannot find uic (User Interface Compiler) in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find rcc (Qt Resource Compiler).
- for ac_prog in rcc-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_RCC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $RCC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_RCC="$RCC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_RCC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-RCC=$ac_cv_path_RCC
-if test -n "$RCC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RCC" >&5
-$as_echo "$RCC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$RCC" && break
-done
-test -n "$RCC" || RCC="false"
-
- if test x"$RCC" = xfalse; then
- for ac_prog in rcc${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_RCC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $RCC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_RCC="$RCC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_RCC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-RCC=$ac_cv_path_RCC
-if test -n "$RCC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RCC" >&5
-$as_echo "$RCC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$RCC" && break
-done
-test -n "$RCC" || RCC="false"
-
- if test x"$RCC" = xfalse; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find rcc (Qt Resource Compiler) in your PATH. Try using --with-qt." >&5
-$as_echo "$as_me: WARNING: Cannot find rcc (Qt Resource Compiler) in your PATH. Try using --with-qt." >&2;}
- fi
- fi
-
- # If we don't know the path to Qt, guess it from the path to qmake.
- if test x"$QT_PATH" = x; then
- QT_PATH=`dirname "$QMAKE"`
- fi
- if test x"$QT_PATH" = x; then
- as_fn_error $? "Cannot find the path to your Qt install. Use --with-qt." "$LINENO" 5
- fi
-
-
- # Get ready to build a test-app with Qt.
-
- # Look for a writable temporary directory.
-
- if test x"$TMPDIR" = x || test ! -d "$TMPDIR" || test ! -w "$TMPDIR"; then
- echo "$as_me:$LINENO: no TMPDIR or bad TMPDIR ($TMPDIR)" \
- >&5
- for i in /tmp /var/tmp; do
- if test -d "$i" && test -w "$i"; then
- TMPDIR=$i
- export TMPDIR
- echo "$as_me:$LINENO: setting TMPDIR=$TMPDIR" >&5
- break
- fi
- done
- fi
-
- # Kludge!! QMake has a very strange behavior. For instance, if you
- # install Qt under your $HOME and run QMake somewhere else under your
- # $HOME, it will try to be clever and produce Makefiles with relative
- # include paths. In order to avoid this, we will test QMake from a
- # temporary directory (usually /tmp). Note that this problem was only
- # observed with Qt 4.
- my_configure_pwd=`pwd`
- my_tmpdir="$TMPDIR/conftest$$.dir"
- test -d "$my_tmpdir" || mkdir "$my_tmpdir"
- if test -w "$my_tmpdir" && cd "$my_tmpdir"
- then
- :
- else
- as_fn_error $? "Cannot cd to or write in $my_tmpdir" "$LINENO" 5
- fi
- cat >conftest.h <<_ASEOF
-#include <QObject>
-
-class Foo: public QObject
-{
- Q_OBJECT;
-public:
- Foo();
- ~Foo() {}
-public slots:
- void setValue(int value);
-signals:
- void valueChanged(int newValue);
-private:
- int value_;
-};
-_ASEOF
-
- cat >conftest.cpp <<_ASEOF
-#include "conftest.h"
-Foo::Foo()
- : value_ (42)
-{
- connect(this, SIGNAL(valueChanged(int)), this, SLOT(setValue(int)));
-}
-
-void Foo::setValue(int value)
-{
- value_ = value;
-}
-
-int main()
-{
- Foo f;
-}
-_ASEOF
- if $QMAKE -project; then :; else
- as_fn_error $? "Calling $QMAKE -project failed." "$LINENO" 5
- fi
-
- # Find the .pro file generated by qmake.
- pro_file='conftest.dir.pro'
- test -f $pro_file || pro_file=`echo *.pro`
- if test -f "$pro_file"; then :; else
- as_fn_error $? "Can't find the .pro file generated by Qmake." "$LINENO" 5
- fi
-
-
-
-
-
-
-
- echo "$as_me:$LINENO: Invoking $QMAKE on $pro_file" >&5
- sed 's/^/| /' "$pro_file" >&5
-
- if $QMAKE; then :; else
- as_fn_error $? "Calling $QMAKE failed." "$LINENO" 5
- fi
- # Try to compile a simple Qt app.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we can build a simple Qt app" >&5
-$as_echo_n "checking whether we can build a simple Qt app... " >&6; }
-if test "${at_cv_qt_build+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_qt_build=ko
- : ${MAKE=make}
-
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 4'
- else
- echo "$as_me:$LINENO: Build failed, trying to #include <qobject.h> \
-instead" >&5
- sed 's/<QObject>/<qobject.h>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 3'
- else
- # Sometimes (such as on Debian) build will fail because Qt hasn't been
- # installed in debug mode and qmake tries (by default) to build apps in
- # debug mode => Try again in release mode.
- echo "$as_me:$LINENO: Build failed, trying to enforce release mode" \
- >&5
-
- # Tweak the value of CONFIG in the .pro file for +release.
-
- qt_conf=''
- for at_mod in +release; do
- at_mod=`echo "$at_mod" | sed 's/^-//; tough
- s/^+//; beef
- :ough
- s/^/CONFIG -= /;n
- :eef
- s/^/CONFIG += /'`
- qt_conf="$qt_conf
-$at_mod"
- done
- echo "$qt_conf" | sed 1d >>"$pro_file"
-
-
- sed 's/<qobject.h>/<QObject>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 4, release mode forced'
- else
- echo "$as_me:$LINENO: Build failed, trying to #include <qobject.h> \
-instead" >&5
- sed 's/<QObject>/<qobject.h>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 3, release mode forced'
- else
- at_cv_qt_build=ko
- echo "$as_me:$LINENO: failed program was:" >&5
- sed 's/^/| /' conftest.h >&5
- echo "$as_me:$LINENO: failed program was:" >&5
- sed 's/^/| /' conftest.cpp >&5
- fi # if make with Qt3-style #include and release mode forced.
- fi # if make with Qt4-style #include and release mode forced.
- fi # if make with Qt3-style #include.
- fi # if make with Qt4-style #include.
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_qt_build" >&5
-$as_echo "$at_cv_qt_build" >&6; }
- if test x"$at_cv_qt_build" = xko; then
- as_fn_error $? "Cannot build a test Qt program" "$LINENO" 5
- fi
- QT_VERSION_MAJOR=`echo "$at_cv_qt_build" | sed 's/^^0-9*//'`
-
-
- # This sed filter is applied after an expression of the form: /^FOO.*=/!d;
- # It starts by removing the beginning of the line, removing references to
- # SUBLIBS, removing unnecessary whitespaces at the beginning, and prefixes
- # all variable uses by QT_.
- qt_sed_filter='s///;
- s/$(SUBLIBS)//g;
- s/^ *//;
- s/\$(\(@<:@A-Z_@:>@@<:@A-Z_@:>@*\))/$(QT_\1)/g'
-
- # Find the Makefile (qmake happens to generate a fake Makefile which invokes
- # a Makefile.Debug or Makefile.Release). We we have both, we'll pick the
- # Makefile.Release. The reason is that the main difference is that release
- # uses -Os and debug -g. We can override -Os by passing another -O but we
- # usually don't override -g.
- if test -f Makefile.Release; then
- at_mfile='Makefile.Release'
- else
- at_mfile='Makefile'
- fi
- if test -f $at_mfile; then :; else
- cd "$my_configure_pwd"
- as_fn_error $? "Cannot find the Makefile generated by qmake." "$LINENO" 5
- fi
-
- # Find the DEFINES of Qt (should have been named CPPFLAGS).
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the DEFINES to use with Qt" >&5
-$as_echo_n "checking for the DEFINES to use with Qt... " >&6; }
-if test "${at_cv_env_QT_DEFINES+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_DEFINES=`sed "/^DEFINES@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_DEFINES" >&5
-$as_echo "$at_cv_env_QT_DEFINES" >&6; }
- QT_DEFINES=$at_cv_env_QT_DEFINES
-
-
- # Find the CFLAGS of Qt (We can use Qt in C?!)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the CFLAGS to use with Qt" >&5
-$as_echo_n "checking for the CFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_CFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_CFLAGS=`sed "/^CFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_CFLAGS" >&5
-$as_echo "$at_cv_env_QT_CFLAGS" >&6; }
- QT_CFLAGS=$at_cv_env_QT_CFLAGS
-
-
- # Find the CXXFLAGS of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the CXXFLAGS to use with Qt" >&5
-$as_echo_n "checking for the CXXFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_CXXFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_CXXFLAGS=`sed "/^CXXFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_CXXFLAGS" >&5
-$as_echo "$at_cv_env_QT_CXXFLAGS" >&6; }
- QT_CXXFLAGS=$at_cv_env_QT_CXXFLAGS
-
-
- # Find the INCPATH of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the INCPATH to use with Qt" >&5
-$as_echo_n "checking for the INCPATH to use with Qt... " >&6; }
-if test "${at_cv_env_QT_INCPATH+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_INCPATH=`sed "/^INCPATH@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_INCPATH" >&5
-$as_echo "$at_cv_env_QT_INCPATH" >&6; }
- QT_INCPATH=$at_cv_env_QT_INCPATH
-
-
- QT_CPPFLAGS="$at_cv_env_QT_DEFINES $at_cv_env_QT_INCPATH"
-
-
- # Find the LFLAGS of Qt (Should have been named LDFLAGS)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the LDFLAGS to use with Qt" >&5
-$as_echo_n "checking for the LDFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_LDFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_LDFLAGS=`sed "/^LDFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_LDFLAGS" >&5
-$as_echo "$at_cv_env_QT_LDFLAGS" >&6; }
- QT_LFLAGS=$at_cv_env_QT_LDFLAGS
-
- QT_LDFLAGS=$at_cv_env_QT_LDFLAGS
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether host operating system is Darwin" >&5
-$as_echo_n "checking whether host operating system is Darwin... " >&6; }
- at_darwin="no"
- case $host_os in
- darwin*)
- at_darwin="yes"
- ;;
- esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_darwin" >&5
-$as_echo "$at_darwin" >&6; }
-
- # Find the LIBS of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the LIBS to use with Qt" >&5
-$as_echo_n "checking for the LIBS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_LIBS=`sed "/^LIBS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
- if test x$at_darwin = xyes; then
- # Fix QT_LIBS: as of today Libtool (GNU Libtool 1.5.23a) doesn't handle
- # -F properly. The "bug" has been fixed on 22 October 2006
- # by Peter O'Gorman but we provide backward compatibility here.
- at_cv_env_QT_LIBS=`echo "$at_cv_env_QT_LIBS" \
- | sed 's/^-F/-Wl,-F/;s/ -F/ -Wl,-F/g'`
- fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_LIBS" >&5
-$as_echo "$at_cv_env_QT_LIBS" >&6; }
- QT_LIBS=$at_cv_env_QT_LIBS
-
-
- cd "$my_configure_pwd" || echo 'WTF!'
- rm -rf "$my_tmpdir"
-
-
- if test x"$QMAKE" = x; then
- as_fn_error $? "\$QMAKE is empty. \
-Did you invoke AT@&t at _WITH_QT before AT@&t at _REQUIRE_QT_VERSION?" "$LINENO" 5
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Qt's version" >&5
-$as_echo_n "checking for Qt's version... " >&6; }
-if test "${at_cv_QT_VERSION+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- echo "$as_me:$LINENO: Running $QMAKE --version:" >&5
- $QMAKE --version >&5 2>&1
- qmake_version_sed='/^.*\([0-9]\.[0-9]\.[0-9]\).*$/!d;s//\1/'
- at_cv_QT_VERSION=`$QMAKE --version 2>&1 | sed "$qmake_version_sed"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_QT_VERSION" >&5
-$as_echo "$at_cv_QT_VERSION" >&6; }
- if test x"$at_cv_QT_VERSION" = x; then
- as_fn_error $? "Cannot detect Qt's version." "$LINENO" 5
- fi
- QT_VERSION=$at_cv_QT_VERSION
-
- as_arg_v1=$QT_VERSION
-as_arg_v2=4.3
-awk "$as_awk_strverscmp" v1="$as_arg_v1" v2="$as_arg_v2" /dev/null
-case $? in @%:@(
- 1) :
- as_fn_error $? "This package requires Qt 4.3 or above." "$LINENO" 5 ;; @%:@(
- 0) :
- ;; @%:@(
- 2) :
- ;; @%:@(
- *) :
- ;;
-esac
-
- test_qt=true
-fi
- if test x$test_qt = xtrue; then
- USE_QT_TRUE=
- USE_QT_FALSE='#'
-else
- USE_QT_TRUE='#'
- USE_QT_FALSE=
-fi
-
-
-@%:@ Check whether --enable-python was given.
-if test "${enable_python+set}" = set; then :
- enableval=$enable_python; case "${enableval}" in
- yes) python=true ;;
- no) python=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-python" "$LINENO" 5 ;;
-esac
-else
- python=false
-fi
-
-if (test x$langall = xtrue || test x$python = xtrue) ;then
- # Extract the first word of "python-config", so it can be a program name with args.
-set dummy python-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_PYTHON_HEADERS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$PYTHON_HEADERS"; then
- ac_cv_prog_PYTHON_HEADERS="$PYTHON_HEADERS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_PYTHON_HEADERS="`python-config --cflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-PYTHON_HEADERS=$ac_cv_prog_PYTHON_HEADERS
-if test -n "$PYTHON_HEADERS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON_HEADERS" >&5
-$as_echo "$PYTHON_HEADERS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "swig$EXEEXT", so it can be a program name with args.
-set dummy swig$EXEEXT; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_HAVE_SWIG+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$HAVE_SWIG"; then
- ac_cv_prog_HAVE_SWIG="$HAVE_SWIG" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_HAVE_SWIG="true"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-HAVE_SWIG=$ac_cv_prog_HAVE_SWIG
-if test -n "$HAVE_SWIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HAVE_SWIG" >&5
-$as_echo "$HAVE_SWIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if (test "$PYTHON_HEADERS" && test "$HAVE_SWIG") ;then
- test_python=true
-
-
-
-
- # Find any Python interpreter.
- if test -z "$PYTHON"; then
- for ac_prog in python python2 python3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_PYTHON+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $PYTHON in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-PYTHON=$ac_cv_path_PYTHON
-if test -n "$PYTHON"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
-$as_echo "$PYTHON" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$PYTHON" && break
-done
-test -n "$PYTHON" || PYTHON=":"
-
- fi
- am_display_PYTHON=python
-
-
- if test "$PYTHON" = :; then
- as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
- else
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
-$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
-if test "${am_cv_python_version+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
-$as_echo "$am_cv_python_version" >&6; }
- PYTHON_VERSION=$am_cv_python_version
-
-
-
- PYTHON_PREFIX='${prefix}'
-
- PYTHON_EXEC_PREFIX='${exec_prefix}'
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
-$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
-if test "${am_cv_python_platform+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
-$as_echo "$am_cv_python_platform" >&6; }
- PYTHON_PLATFORM=$am_cv_python_platform
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
-$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
-if test "${am_cv_python_pythondir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$prefix" = xNONE
- then
- am_py_prefix=$ac_default_prefix
- else
- am_py_prefix=$prefix
- fi
- am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null ||
- echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pythondir in
- $am_py_prefix*)
- am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
- am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
- ;;
- *)
- case $am_py_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
-$as_echo "$am_cv_python_pythondir" >&6; }
- pythondir=$am_cv_python_pythondir
-
-
-
- pkgpythondir=\${pythondir}/$PACKAGE
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
-$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
-if test "${am_cv_python_pyexecdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$exec_prefix" = xNONE
- then
- am_py_exec_prefix=$am_py_prefix
- else
- am_py_exec_prefix=$exec_prefix
- fi
- am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null ||
- echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pyexecdir in
- $am_py_exec_prefix*)
- am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
- am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
- ;;
- *)
- case $am_py_exec_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
-$as_echo "$am_cv_python_pyexecdir" >&6; }
- pyexecdir=$am_cv_python_pyexecdir
-
-
-
- pkgpyexecdir=\${pyexecdir}/$PACKAGE
-
-
-
- fi
-
-
- else
- echo Please install python-dev and swig packages
- exit
- fi
-fi
- if test x$test_python = xtrue ; then
- USE_PYTHON_TRUE=
- USE_PYTHON_FALSE='#'
-else
- USE_PYTHON_TRUE='#'
- USE_PYTHON_FALSE=
-fi
-
-
-@%:@ Check whether --enable-octave was given.
-if test "${enable_octave+set}" = set; then :
- enableval=$enable_octave; case "${enableval}" in
- yes) octave=true ;;
- no) octave=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-octave" "$LINENO" 5 ;;
-esac
-else
- octave=false
-fi
-
-if (test x$langall = xtrue || test x$octave = xtrue) ;then
- # Extract the first word of "octave-config", so it can be a program name with args.
-set dummy octave-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OCTAVE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OCTAVE"; then
- ac_cv_prog_OCTAVE="$OCTAVE" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OCTAVE="octave-config"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OCTAVE=$ac_cv_prog_OCTAVE
-if test -n "$OCTAVE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCTAVE" >&5
-$as_echo "$OCTAVE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-# find Octave arch
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Octave arch" >&5
-$as_echo_n "checking for Octave arch... " >&6; }
- OCTAVE_ARCH=`$OCTAVE -p CANONICAL_HOST_TYPE`-`$OCTAVE -p API_VERSION`
- OCTAVE_INCFLAGS="-I`$OCTAVE -p OCTINCLUDEDIR`"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCTAVE_ARCH" >&5
-$as_echo "$OCTAVE_ARCH" >&6; }
- OCTAVE_ARCH=$OCTAVE_ARCH
-
- OCTAVE_INCFLAGS=$OCTAVE_INCFLAGS
-
- test_octave=true
-fi
- if test x$test_octave = xtrue ; then
- USE_OCTAVE_TRUE=
- USE_OCTAVE_FALSE='#'
-else
- USE_OCTAVE_TRUE='#'
- USE_OCTAVE_FALSE=
-fi
-
-
-AM_CXXFLAGS="$AM_CXXFLAGS -Wall $GSL_FLAGS"
-
-
-ac_config_files="$ac_config_files Makefile src/Makefile include/Makefile widgets/Makefile lang/Makefile utils/Makefile examples/Makefile"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
- for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
-
- (set) 2>&1 |
- case $as_nl`(ac_space=' '; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- # `set' does not quote correctly, so add quotes: double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \.
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;; #(
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-) |
- sed '
- /^ac_cv_env_/b end
- t clear
- :clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
- if test -w "$cache_file"; then
- test "x$cache_file" != "x/dev/null" &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
- cat confcache >$cache_file
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
- fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIB@&t at OBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
- ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
- # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
- # will be set to the directory where LIBOBJS objects are built.
- as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
- as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIB@&t at OBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
- if test -n "$EXEEXT"; then
- am__EXEEXT_TRUE=
- am__EXEEXT_FALSE='#'
-else
- am__EXEEXT_TRUE='#'
- am__EXEEXT_FALSE=
-fi
-
-if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
- as_fn_error $? "conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PTHREAD_TRUE}" && test -z "${USE_PTHREAD_FALSE}"; then
- as_fn_error $? "conditional \"USE_PTHREAD\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_GSL_TRUE}" && test -z "${USE_GSL_FALSE}"; then
- as_fn_error $? "conditional \"USE_GSL\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_GLUT_TRUE}" && test -z "${USE_GLUT_FALSE}"; then
- as_fn_error $? "conditional \"USE_GLUT\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_HDF5_TRUE}" && test -z "${USE_HDF5_FALSE}"; then
- as_fn_error $? "conditional \"USE_HDF5\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_HDF4_TRUE}" && test -z "${USE_HDF4_FALSE}"; then
- as_fn_error $? "conditional \"USE_HDF4\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_JPEG_TRUE}" && test -z "${USE_JPEG_FALSE}"; then
- as_fn_error $? "conditional \"USE_JPEG\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PDF_TRUE}" && test -z "${USE_PDF_FALSE}"; then
- as_fn_error $? "conditional \"USE_PDF\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_U3D_TRUE}" && test -z "${USE_U3D_FALSE}"; then
- as_fn_error $? "conditional \"USE_U3D\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_FLTK_TRUE}" && test -z "${USE_FLTK_FALSE}"; then
- as_fn_error $? "conditional \"USE_FLTK\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_QT_TRUE}" && test -z "${USE_QT_FALSE}"; then
- as_fn_error $? "conditional \"USE_QT\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PYTHON_TRUE}" && test -z "${USE_PYTHON_FALSE}"; then
- as_fn_error $? "conditional \"USE_PYTHON\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_OCTAVE_TRUE}" && test -z "${USE_OCTAVE_FALSE}"; then
- as_fn_error $? "conditional \"USE_OCTAVE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-
-: ${CONFIG_STATUS=./config.status}
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in @%:@(
- *posix*) :
- set -o posix ;; @%:@(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in @%:@(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-case $0 in @%:@((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} @%:@ as_fn_error
-
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -p'
- fi
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in @%:@(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by mathgl $as_me 2.0, which was
-generated by GNU Autoconf 2.67. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration. Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
- -h, --help print this help, then exit
- -V, --version print version number and configuration settings, then exit
- --config print configuration, then exit
- -q, --quiet, --silent
- do not print progress messages
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
- --header=FILE[:TEMPLATE]
- instantiate the configuration header FILE
-
-Configuration files:
-$config_files
-
-Configuration headers:
-$config_headers
-
-Configuration commands:
-$config_commands
-
-Report bugs to <mathgl.abalakin at gmail.com>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-mathgl config.status 2.0
-configured by $0, generated by GNU Autoconf 2.67,
- with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-MKDIR_P='$MKDIR_P'
-AWK='$AWK'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=?*)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
- ac_shift=:
- ;;
- --*=)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=
- ac_shift=:
- ;;
- *)
- ac_option=$1
- ac_optarg=$2
- ac_shift=shift
- ;;
- esac
-
- case $ac_option in
- # Handling of the options.
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- ac_cs_recheck=: ;;
- --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
- $as_echo "$ac_cs_version"; exit ;;
- --config | --confi | --conf | --con | --co | --c )
- $as_echo "$ac_cs_config"; exit ;;
- --debug | --debu | --deb | --de | --d | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- '') as_fn_error $? "missing file argument" ;;
- esac
- as_fn_append CONFIG_FILES " '$ac_optarg'"
- ac_need_defaults=false;;
- --header | --heade | --head | --hea )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- as_fn_append CONFIG_HEADERS " '$ac_optarg'"
- ac_need_defaults=false;;
- --he | --h)
- # Conflict between --help and --header
- as_fn_error $? "ambiguous option: \`$1'
-Try \`$0 --help' for more information.";;
- --help | --hel | -h )
- $as_echo "$ac_cs_usage"; exit ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil | --si | --s)
- ac_cs_silent=: ;;
-
- # This is an error.
- -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
- *) as_fn_append ac_config_targets " $1"
- ac_need_defaults=false ;;
-
- esac
- shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
- exec 6>/dev/null
- ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
- shift
- \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
- CONFIG_SHELL='$SHELL'
- export CONFIG_SHELL
- exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
-@%:@@%:@ Running $as_me. @%:@@%:@
-_ASBOX
- $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
-
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-sed_quote_subst='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-AS='`$ECHO "X$AS" | $Xsed -e "$delay_single_quote_subst"`'
-DLLTOOL='`$ECHO "X$DLLTOOL" | $Xsed -e "$delay_single_quote_subst"`'
-OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
-macro_version='`$ECHO "X$macro_version" | $Xsed -e "$delay_single_quote_subst"`'
-macro_revision='`$ECHO "X$macro_revision" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared='`$ECHO "X$enable_shared" | $Xsed -e "$delay_single_quote_subst"`'
-enable_static='`$ECHO "X$enable_static" | $Xsed -e "$delay_single_quote_subst"`'
-pic_mode='`$ECHO "X$pic_mode" | $Xsed -e "$delay_single_quote_subst"`'
-enable_fast_install='`$ECHO "X$enable_fast_install" | $Xsed -e "$delay_single_quote_subst"`'
-host_alias='`$ECHO "X$host_alias" | $Xsed -e "$delay_single_quote_subst"`'
-host='`$ECHO "X$host" | $Xsed -e "$delay_single_quote_subst"`'
-host_os='`$ECHO "X$host_os" | $Xsed -e "$delay_single_quote_subst"`'
-build_alias='`$ECHO "X$build_alias" | $Xsed -e "$delay_single_quote_subst"`'
-build='`$ECHO "X$build" | $Xsed -e "$delay_single_quote_subst"`'
-build_os='`$ECHO "X$build_os" | $Xsed -e "$delay_single_quote_subst"`'
-SED='`$ECHO "X$SED" | $Xsed -e "$delay_single_quote_subst"`'
-Xsed='`$ECHO "X$Xsed" | $Xsed -e "$delay_single_quote_subst"`'
-GREP='`$ECHO "X$GREP" | $Xsed -e "$delay_single_quote_subst"`'
-EGREP='`$ECHO "X$EGREP" | $Xsed -e "$delay_single_quote_subst"`'
-FGREP='`$ECHO "X$FGREP" | $Xsed -e "$delay_single_quote_subst"`'
-LD='`$ECHO "X$LD" | $Xsed -e "$delay_single_quote_subst"`'
-NM='`$ECHO "X$NM" | $Xsed -e "$delay_single_quote_subst"`'
-LN_S='`$ECHO "X$LN_S" | $Xsed -e "$delay_single_quote_subst"`'
-max_cmd_len='`$ECHO "X$max_cmd_len" | $Xsed -e "$delay_single_quote_subst"`'
-ac_objext='`$ECHO "X$ac_objext" | $Xsed -e "$delay_single_quote_subst"`'
-exeext='`$ECHO "X$exeext" | $Xsed -e "$delay_single_quote_subst"`'
-lt_unset='`$ECHO "X$lt_unset" | $Xsed -e "$delay_single_quote_subst"`'
-lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`'
-lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
-reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
-reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
-file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
-AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
-AR_FLAGS='`$ECHO "X$AR_FLAGS" | $Xsed -e "$delay_single_quote_subst"`'
-STRIP='`$ECHO "X$STRIP" | $Xsed -e "$delay_single_quote_subst"`'
-RANLIB='`$ECHO "X$RANLIB" | $Xsed -e "$delay_single_quote_subst"`'
-old_postinstall_cmds='`$ECHO "X$old_postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_postuninstall_cmds='`$ECHO "X$old_postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_cmds='`$ECHO "X$old_archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-CC='`$ECHO "X$CC" | $Xsed -e "$delay_single_quote_subst"`'
-CFLAGS='`$ECHO "X$CFLAGS" | $Xsed -e "$delay_single_quote_subst"`'
-compiler='`$ECHO "X$compiler" | $Xsed -e "$delay_single_quote_subst"`'
-GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
-objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
-SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
-ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
-MAGIC_CMD='`$ECHO "X$MAGIC_CMD" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_no_builtin_flag='`$ECHO "X$lt_prog_compiler_no_builtin_flag" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_wl='`$ECHO "X$lt_prog_compiler_wl" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
-need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
-DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
-NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
-LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
-OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
-OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
-libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
-shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_need_lc='`$ECHO "X$archive_cmds_need_lc" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared_with_static_runtimes='`$ECHO "X$enable_shared_with_static_runtimes" | $Xsed -e "$delay_single_quote_subst"`'
-export_dynamic_flag_spec='`$ECHO "X$export_dynamic_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-whole_archive_flag_spec='`$ECHO "X$whole_archive_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_needs_object='`$ECHO "X$compiler_needs_object" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_new_cmds='`$ECHO "X$old_archive_from_new_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_expsyms_cmds='`$ECHO "X$old_archive_from_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds='`$ECHO "X$archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_expsym_cmds='`$ECHO "X$archive_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-module_cmds='`$ECHO "X$module_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-module_expsym_cmds='`$ECHO "X$module_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-with_gnu_ld='`$ECHO "X$with_gnu_ld" | $Xsed -e "$delay_single_quote_subst"`'
-allow_undefined_flag='`$ECHO "X$allow_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
-no_undefined_flag='`$ECHO "X$no_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec='`$ECHO "X$hardcode_libdir_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_ld='`$ECHO "X$hardcode_libdir_flag_spec_ld" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_separator='`$ECHO "X$hardcode_libdir_separator" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct='`$ECHO "X$hardcode_direct" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_absolute='`$ECHO "X$hardcode_direct_absolute" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_minus_L='`$ECHO "X$hardcode_minus_L" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_shlibpath_var='`$ECHO "X$hardcode_shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_automatic='`$ECHO "X$hardcode_automatic" | $Xsed -e "$delay_single_quote_subst"`'
-inherit_rpath='`$ECHO "X$inherit_rpath" | $Xsed -e "$delay_single_quote_subst"`'
-link_all_deplibs='`$ECHO "X$link_all_deplibs" | $Xsed -e "$delay_single_quote_subst"`'
-fix_srcfile_path='`$ECHO "X$fix_srcfile_path" | $Xsed -e "$delay_single_quote_subst"`'
-always_export_symbols='`$ECHO "X$always_export_symbols" | $Xsed -e "$delay_single_quote_subst"`'
-export_symbols_cmds='`$ECHO "X$export_symbols_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-exclude_expsyms='`$ECHO "X$exclude_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
-include_expsyms='`$ECHO "X$include_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
-prelink_cmds='`$ECHO "X$prelink_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-file_list_spec='`$ECHO "X$file_list_spec" | $Xsed -e "$delay_single_quote_subst"`'
-variables_saved_for_relink='`$ECHO "X$variables_saved_for_relink" | $Xsed -e "$delay_single_quote_subst"`'
-need_lib_prefix='`$ECHO "X$need_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
-need_version='`$ECHO "X$need_version" | $Xsed -e "$delay_single_quote_subst"`'
-version_type='`$ECHO "X$version_type" | $Xsed -e "$delay_single_quote_subst"`'
-runpath_var='`$ECHO "X$runpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-shlibpath_var='`$ECHO "X$shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-shlibpath_overrides_runpath='`$ECHO "X$shlibpath_overrides_runpath" | $Xsed -e "$delay_single_quote_subst"`'
-libname_spec='`$ECHO "X$libname_spec" | $Xsed -e "$delay_single_quote_subst"`'
-library_names_spec='`$ECHO "X$library_names_spec" | $Xsed -e "$delay_single_quote_subst"`'
-soname_spec='`$ECHO "X$soname_spec" | $Xsed -e "$delay_single_quote_subst"`'
-postinstall_cmds='`$ECHO "X$postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-postuninstall_cmds='`$ECHO "X$postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-finish_cmds='`$ECHO "X$finish_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-finish_eval='`$ECHO "X$finish_eval" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_into_libs='`$ECHO "X$hardcode_into_libs" | $Xsed -e "$delay_single_quote_subst"`'
-sys_lib_search_path_spec='`$ECHO "X$sys_lib_search_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
-sys_lib_dlsearch_path_spec='`$ECHO "X$sys_lib_dlsearch_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_action='`$ECHO "X$hardcode_action" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen='`$ECHO "X$enable_dlopen" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen_self='`$ECHO "X$enable_dlopen_self" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen_self_static='`$ECHO "X$enable_dlopen_self_static" | $Xsed -e "$delay_single_quote_subst"`'
-old_striplib='`$ECHO "X$old_striplib" | $Xsed -e "$delay_single_quote_subst"`'
-striplib='`$ECHO "X$striplib" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_dirs='`$ECHO "X$compiler_lib_search_dirs" | $Xsed -e "$delay_single_quote_subst"`'
-predep_objects='`$ECHO "X$predep_objects" | $Xsed -e "$delay_single_quote_subst"`'
-postdep_objects='`$ECHO "X$postdep_objects" | $Xsed -e "$delay_single_quote_subst"`'
-predeps='`$ECHO "X$predeps" | $Xsed -e "$delay_single_quote_subst"`'
-postdeps='`$ECHO "X$postdeps" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_path='`$ECHO "X$compiler_lib_search_path" | $Xsed -e "$delay_single_quote_subst"`'
-LD_CXX='`$ECHO "X$LD_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_cmds_CXX='`$ECHO "X$old_archive_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_CXX='`$ECHO "X$compiler_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-GCC_CXX='`$ECHO "X$GCC_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "X$lt_prog_compiler_no_builtin_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_wl_CXX='`$ECHO "X$lt_prog_compiler_wl_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_pic_CXX='`$ECHO "X$lt_prog_compiler_pic_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_static_CXX='`$ECHO "X$lt_prog_compiler_static_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_prog_compiler_c_o_CXX='`$ECHO "X$lt_cv_prog_compiler_c_o_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_need_lc_CXX='`$ECHO "X$archive_cmds_need_lc_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared_with_static_runtimes_CXX='`$ECHO "X$enable_shared_with_static_runtimes_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-export_dynamic_flag_spec_CXX='`$ECHO "X$export_dynamic_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-whole_archive_flag_spec_CXX='`$ECHO "X$whole_archive_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_needs_object_CXX='`$ECHO "X$compiler_needs_object_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_new_cmds_CXX='`$ECHO "X$old_archive_from_new_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_expsyms_cmds_CXX='`$ECHO "X$old_archive_from_expsyms_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_CXX='`$ECHO "X$archive_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_expsym_cmds_CXX='`$ECHO "X$archive_expsym_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-module_cmds_CXX='`$ECHO "X$module_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-module_expsym_cmds_CXX='`$ECHO "X$module_expsym_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-with_gnu_ld_CXX='`$ECHO "X$with_gnu_ld_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-allow_undefined_flag_CXX='`$ECHO "X$allow_undefined_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-no_undefined_flag_CXX='`$ECHO "X$no_undefined_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_CXX='`$ECHO "X$hardcode_libdir_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_ld_CXX='`$ECHO "X$hardcode_libdir_flag_spec_ld_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_separator_CXX='`$ECHO "X$hardcode_libdir_separator_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_CXX='`$ECHO "X$hardcode_direct_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_absolute_CXX='`$ECHO "X$hardcode_direct_absolute_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_minus_L_CXX='`$ECHO "X$hardcode_minus_L_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_shlibpath_var_CXX='`$ECHO "X$hardcode_shlibpath_var_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_automatic_CXX='`$ECHO "X$hardcode_automatic_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-inherit_rpath_CXX='`$ECHO "X$inherit_rpath_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-link_all_deplibs_CXX='`$ECHO "X$link_all_deplibs_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-fix_srcfile_path_CXX='`$ECHO "X$fix_srcfile_path_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-always_export_symbols_CXX='`$ECHO "X$always_export_symbols_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-export_symbols_cmds_CXX='`$ECHO "X$export_symbols_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-exclude_expsyms_CXX='`$ECHO "X$exclude_expsyms_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-include_expsyms_CXX='`$ECHO "X$include_expsyms_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-prelink_cmds_CXX='`$ECHO "X$prelink_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-file_list_spec_CXX='`$ECHO "X$file_list_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_action_CXX='`$ECHO "X$hardcode_action_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_dirs_CXX='`$ECHO "X$compiler_lib_search_dirs_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-predep_objects_CXX='`$ECHO "X$predep_objects_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-postdep_objects_CXX='`$ECHO "X$postdep_objects_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-predeps_CXX='`$ECHO "X$predeps_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-postdeps_CXX='`$ECHO "X$postdeps_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_path_CXX='`$ECHO "X$compiler_lib_search_path_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# Quote evaled strings.
-for var in SED \
-GREP \
-EGREP \
-FGREP \
-LD \
-NM \
-LN_S \
-lt_SP2NL \
-lt_NL2SP \
-reload_flag \
-deplibs_check_method \
-file_magic_cmd \
-AR \
-AR_FLAGS \
-STRIP \
-RANLIB \
-CC \
-CFLAGS \
-compiler \
-lt_cv_sys_global_symbol_pipe \
-lt_cv_sys_global_symbol_to_cdecl \
-lt_cv_sys_global_symbol_to_c_name_address \
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
-SHELL \
-ECHO \
-lt_prog_compiler_no_builtin_flag \
-lt_prog_compiler_wl \
-lt_prog_compiler_pic \
-lt_prog_compiler_static \
-lt_cv_prog_compiler_c_o \
-need_locks \
-DSYMUTIL \
-NMEDIT \
-LIPO \
-OTOOL \
-OTOOL64 \
-shrext_cmds \
-export_dynamic_flag_spec \
-whole_archive_flag_spec \
-compiler_needs_object \
-with_gnu_ld \
-allow_undefined_flag \
-no_undefined_flag \
-hardcode_libdir_flag_spec \
-hardcode_libdir_flag_spec_ld \
-hardcode_libdir_separator \
-fix_srcfile_path \
-exclude_expsyms \
-include_expsyms \
-file_list_spec \
-variables_saved_for_relink \
-libname_spec \
-library_names_spec \
-soname_spec \
-finish_eval \
-old_striplib \
-striplib \
-compiler_lib_search_dirs \
-predep_objects \
-postdep_objects \
-predeps \
-postdeps \
-compiler_lib_search_path \
-LD_CXX \
-compiler_CXX \
-lt_prog_compiler_no_builtin_flag_CXX \
-lt_prog_compiler_wl_CXX \
-lt_prog_compiler_pic_CXX \
-lt_prog_compiler_static_CXX \
-lt_cv_prog_compiler_c_o_CXX \
-export_dynamic_flag_spec_CXX \
-whole_archive_flag_spec_CXX \
-compiler_needs_object_CXX \
-with_gnu_ld_CXX \
-allow_undefined_flag_CXX \
-no_undefined_flag_CXX \
-hardcode_libdir_flag_spec_CXX \
-hardcode_libdir_flag_spec_ld_CXX \
-hardcode_libdir_separator_CXX \
-fix_srcfile_path_CXX \
-exclude_expsyms_CXX \
-include_expsyms_CXX \
-file_list_spec_CXX \
-compiler_lib_search_dirs_CXX \
-predep_objects_CXX \
-postdep_objects_CXX \
-predeps_CXX \
-postdeps_CXX \
-compiler_lib_search_path_CXX; do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[\\\\\\\`\\"\\\$]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Double-quote double-evaled strings.
-for var in reload_cmds \
-old_postinstall_cmds \
-old_postuninstall_cmds \
-old_archive_cmds \
-extract_expsyms_cmds \
-old_archive_from_new_cmds \
-old_archive_from_expsyms_cmds \
-archive_cmds \
-archive_expsym_cmds \
-module_cmds \
-module_expsym_cmds \
-export_symbols_cmds \
-prelink_cmds \
-postinstall_cmds \
-postuninstall_cmds \
-finish_cmds \
-sys_lib_search_path_spec \
-sys_lib_dlsearch_path_spec \
-old_archive_cmds_CXX \
-old_archive_from_new_cmds_CXX \
-old_archive_from_expsyms_cmds_CXX \
-archive_cmds_CXX \
-archive_expsym_cmds_CXX \
-module_cmds_CXX \
-module_expsym_cmds_CXX \
-export_symbols_cmds_CXX \
-prelink_cmds_CXX; do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[\\\\\\\`\\"\\\$]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Fix-up fallback echo if it was mangled by the above quoting rules.
-case \$lt_ECHO in
-*'\\\$0 --fallback-echo"') lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\$0 --fallback-echo"\$/\$0 --fallback-echo"/'\`
- ;;
-esac
-
-ac_aux_dir='$ac_aux_dir'
-xsi_shell='$xsi_shell'
-lt_shell_append='$lt_shell_append'
-
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-
-
- PACKAGE='$PACKAGE'
- VERSION='$VERSION'
- TIMESTAMP='$TIMESTAMP'
- RM='$RM'
- ofile='$ofile'
-
-
-
-
-
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
- case $ac_config_target in
- "include/mgl/config.h") CONFIG_HEADERS="$CONFIG_HEADERS include/mgl/config.h" ;;
- "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
- "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
- "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
- "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;;
- "widgets/Makefile") CONFIG_FILES="$CONFIG_FILES widgets/Makefile" ;;
- "lang/Makefile") CONFIG_FILES="$CONFIG_FILES lang/Makefile" ;;
- "utils/Makefile") CONFIG_FILES="$CONFIG_FILES utils/Makefile" ;;
- "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
-
- *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;;
- esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
- test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
- test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
- tmp=
- trap 'exit_status=$?
- { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
-' 0
- trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
- tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
-} ||
-{
- tmp=./conf$$-$RANDOM
- (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
- eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
- ac_cs_awk_cr='\\r'
-else
- ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$tmp/subs1.awk" &&
-_ACEOF
-
-
-{
- echo "cat >conf$$subs.awk <<_ACEOF" &&
- echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
- echo "_ACEOF"
-} >conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
- . ./conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
- ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
- if test $ac_delim_n = $ac_delim_num; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
- N
- s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$tmp/subs1.awk" <<_ACAWK &&
- for (key in S) S_is_set[key] = 1
- FS = ""
-
-}
-{
- line = $ 0
- nfields = split(line, field, "@")
- substed = 0
- len = length(field[1])
- for (i = 2; i < nfields; i++) {
- key = field[i]
- keylen = length(key)
- if (S_is_set[key]) {
- value = S[key]
- line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
- len += length(value) + length(field[++i])
- substed = 1
- } else
- len += 1 + keylen
- }
-
- print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
- sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
- cat
-fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
- || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
-h
-s///
-s/^/:/
-s/[ ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[ ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[ ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-# Set up the scripts for CONFIG_HEADERS section.
-# No need to generate them if there are no CONFIG_HEADERS.
-# This happens for instance with `./config.status Makefile'.
-if test -n "$CONFIG_HEADERS"; then
-cat >"$tmp/defines.awk" <<\_ACAWK ||
-BEGIN {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
- ac_t=`sed -n "/$ac_delim/p" confdefs.h`
- if test -z "$ac_t"; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any. Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[ ]*#[ ]*define[ ][ ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- for (key in D) D_is_set[key] = 1
- FS = ""
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
- line = \$ 0
- split(line, arg, " ")
- if (arg[1] == "#") {
- defundef = arg[2]
- mac1 = arg[3]
- } else {
- defundef = substr(arg[1], 2)
- mac1 = arg[2]
- }
- split(mac1, mac2, "(") #)
- macro = mac2[1]
- prefix = substr(line, 1, index(line, defundef) - 1)
- if (D_is_set[macro]) {
- # Preserve the white space surrounding the "#".
- print prefix "define", macro P[macro] D[macro]
- next
- } else {
- # Replace #undef with comments. This is necessary, for example,
- # in the case of _POSIX_SOURCE, which is predefined and required
- # on some systems where configure will not decide to define it.
- if (defundef == "undef") {
- print "/*", prefix defundef, macro, "*/"
- next
- }
- }
-}
-{ print }
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
- as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
-fi # test -n "$CONFIG_HEADERS"
-
-
-eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
-shift
-for ac_tag
-do
- case $ac_tag in
- :[FHLC]) ac_mode=$ac_tag; continue;;
- esac
- case $ac_mode$ac_tag in
- :[FHL]*:*);;
- :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;;
- :[FH]-) ac_tag=-:-;;
- :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
- esac
- ac_save_IFS=$IFS
- IFS=:
- set x $ac_tag
- IFS=$ac_save_IFS
- shift
- ac_file=$1
- shift
-
- case $ac_mode in
- :L) ac_source=$1;;
- :[FH])
- ac_file_inputs=
- for ac_f
- do
- case $ac_f in
- -) ac_f="$tmp/stdin";;
- *) # Look for the file first in the build tree, then in the source tree
- # (if the path is not absolute). The absolute path cannot be DOS-style,
- # because $ac_f cannot contain `:'.
- test -f "$ac_f" ||
- case $ac_f in
- [\\/$]*) false;;
- *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
- esac ||
- as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;;
- esac
- case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
- as_fn_append ac_file_inputs " '$ac_f'"
- done
-
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- configure_input='Generated from '`
- $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
- `' by configure.'
- if test x"$ac_file" != x-; then
- configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
- fi
- # Neutralize special characters interpreted by sed in replacement strings.
- case $configure_input in #(
- *\&* | *\|* | *\\* )
- ac_sed_conf_input=`$as_echo "$configure_input" |
- sed 's/[\\\\&|]/\\\\&/g'`;; #(
- *) ac_sed_conf_input=$configure_input;;
- esac
-
- case $ac_tag in
- *:-:* | *:-) cat >"$tmp/stdin" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
- esac
- ;;
- esac
-
- ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir="$ac_dir"; as_fn_mkdir_p
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
- case $ac_mode in
- :F)
- #
- # CONFIG_FILE
- #
-
- case $INSTALL in
- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
- esac
- ac_MKDIR_P=$MKDIR_P
- case $MKDIR_P in
- [\\/$]* | ?:[\\/]* ) ;;
- */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
- esac
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
- p
- q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- ac_datarootdir_hack='
- s&@datadir@&$datadir&g
- s&@docdir@&$docdir&g
- s&@infodir@&$infodir&g
- s&@localedir@&$localedir&g
- s&@mandir@&$mandir&g
- s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-s&@INSTALL@&$ac_INSTALL&;t t
-s&@MKDIR_P@&$ac_MKDIR_P&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&2;}
-
- rm -f "$tmp/stdin"
- case $ac_file in
- -) cat "$tmp/out" && rm -f "$tmp/out";;
- *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
- esac \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
- :H)
- #
- # CONFIG_HEADER
- #
- if test x"$ac_file" != x-; then
- {
- $as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
- } >"$tmp/config.h" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
- else
- rm -f "$ac_file"
- mv "$tmp/config.h" "$ac_file" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- fi
- else
- $as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
- || as_fn_error $? "could not create -" "$LINENO" 5
- fi
-# Compute "$ac_file"'s index in $config_headers.
-_am_arg="$ac_file"
-_am_stamp_count=1
-for _am_header in $config_headers :; do
- case $_am_header in
- $_am_arg | $_am_arg:* )
- break ;;
- * )
- _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
-done
-echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
-$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$_am_arg" : 'X\(//\)[^/]' \| \
- X"$_am_arg" : 'X\(//\)$' \| \
- X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$_am_arg" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`/stamp-h$_am_stamp_count
- ;;
-
- :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
- esac
-
-
- case $ac_file$ac_mode in
- "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$mf" : 'X\(//\)[^/]' \| \
- X"$mf" : 'X\(//\)$' \| \
- X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$file" : 'X\(//\)[^/]' \| \
- X"$file" : 'X\(//\)$' \| \
- X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir=$dirpart/$fdir; as_fn_mkdir_p
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
- ;;
- "libtool":C)
-
- # See if we are running on zsh, and set the options which allow our
- # commands through without removal of \ escapes.
- if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
- fi
-
- cfgfile="${ofile}T"
- trap "$RM \"$cfgfile\"; exit 1" 1 2 15
- $RM "$cfgfile"
-
- cat <<_LT_EOF >> "$cfgfile"
-#! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-#
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gordon Matzigkeit, 1996
-#
-# This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
-#
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING. If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-
-# The names of the tagged configurations supported by this script.
-available_tags="CXX "
-
-# ### BEGIN LIBTOOL CONFIG
-
-# Assembler program.
-AS=$AS
-
-# DLL creation program.
-DLLTOOL=$DLLTOOL
-
-# Object dumper program.
-OBJDUMP=$OBJDUMP
-
-# Which release of libtool.m4 was used?
-macro_version=$macro_version
-macro_revision=$macro_revision
-
-# Whether or not to build shared libraries.
-build_libtool_libs=$enable_shared
-
-# Whether or not to build static libraries.
-build_old_libs=$enable_static
-
-# What type of objects to build.
-pic_mode=$pic_mode
-
-# Whether or not to optimize for fast installation.
-fast_install=$enable_fast_install
-
-# The host system.
-host_alias=$host_alias
-host=$host
-host_os=$host_os
-
-# The build system.
-build_alias=$build_alias
-build=$build
-build_os=$build_os
-
-# A sed program that does not truncate output.
-SED=$lt_SED
-
-# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-Xsed="\$SED -e 1s/^X//"
-
-# A grep program that handles long lines.
-GREP=$lt_GREP
-
-# An ERE matcher.
-EGREP=$lt_EGREP
-
-# A literal string matcher.
-FGREP=$lt_FGREP
-
-# A BSD- or MS-compatible name lister.
-NM=$lt_NM
-
-# Whether we need soft or hard links.
-LN_S=$lt_LN_S
-
-# What is the maximum length of a command?
-max_cmd_len=$max_cmd_len
-
-# Object file suffix (normally "o").
-objext=$ac_objext
-
-# Executable file suffix (normally "").
-exeext=$exeext
-
-# whether the shell understands "unset".
-lt_unset=$lt_unset
-
-# turn spaces into newlines.
-SP2NL=$lt_lt_SP2NL
-
-# turn newlines into spaces.
-NL2SP=$lt_lt_NL2SP
-
-# How to create reloadable object files.
-reload_flag=$lt_reload_flag
-reload_cmds=$lt_reload_cmds
-
-# Method to check whether dependent libraries are shared objects.
-deplibs_check_method=$lt_deplibs_check_method
-
-# Command to use when deplibs_check_method == "file_magic".
-file_magic_cmd=$lt_file_magic_cmd
-
-# The archiver.
-AR=$lt_AR
-AR_FLAGS=$lt_AR_FLAGS
-
-# A symbol stripping program.
-STRIP=$lt_STRIP
-
-# Commands used to install an old-style archive.
-RANLIB=$lt_RANLIB
-old_postinstall_cmds=$lt_old_postinstall_cmds
-old_postuninstall_cmds=$lt_old_postuninstall_cmds
-
-# A C compiler.
-LTCC=$lt_CC
-
-# LTCC compiler flags.
-LTCFLAGS=$lt_CFLAGS
-
-# Take the output of nm and produce a listing of raw symbols and C names.
-global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
-
-# Transform the output of nm in a proper C declaration.
-global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
-
-# Transform the output of nm in a C name address pair.
-global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
-
-# Transform the output of nm in a C name address pair when lib prefix is needed.
-global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
-
-# The name of the directory that contains temporary libtool files.
-objdir=$objdir
-
-# Shell to use when invoking shell scripts.
-SHELL=$lt_SHELL
-
-# An echo program that does not interpret backslashes.
-ECHO=$lt_ECHO
-
-# Used to examine libraries when file_magic_cmd begins with "file".
-MAGIC_CMD=$MAGIC_CMD
-
-# Must we lock files when doing compilation?
-need_locks=$lt_need_locks
-
-# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
-DSYMUTIL=$lt_DSYMUTIL
-
-# Tool to change global to local symbols on Mac OS X.
-NMEDIT=$lt_NMEDIT
-
-# Tool to manipulate fat objects and archives on Mac OS X.
-LIPO=$lt_LIPO
-
-# ldd/readelf like tool for Mach-O binaries on Mac OS X.
-OTOOL=$lt_OTOOL
-
-# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
-OTOOL64=$lt_OTOOL64
-
-# Old archive suffix (normally "a").
-libext=$libext
-
-# Shared library suffix (normally ".so").
-shrext_cmds=$lt_shrext_cmds
-
-# The commands to extract the exported symbol list from a shared archive.
-extract_expsyms_cmds=$lt_extract_expsyms_cmds
-
-# Variables whose values should be saved in libtool wrapper scripts and
-# restored at link time.
-variables_saved_for_relink=$lt_variables_saved_for_relink
-
-# Do we need the "lib" prefix for modules?
-need_lib_prefix=$need_lib_prefix
-
-# Do we need a version for libraries?
-need_version=$need_version
-
-# Library versioning type.
-version_type=$version_type
-
-# Shared library runtime path variable.
-runpath_var=$runpath_var
-
-# Shared library path variable.
-shlibpath_var=$shlibpath_var
-
-# Is shlibpath searched before the hard-coded library search path?
-shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-
-# Format of library name prefix.
-libname_spec=$lt_libname_spec
-
-# List of archive names. First name is the real one, the rest are links.
-# The last name is the one that the linker finds with -lNAME
-library_names_spec=$lt_library_names_spec
-
-# The coded name of the library, if different from the real name.
-soname_spec=$lt_soname_spec
-
-# Command to use after installation of a shared archive.
-postinstall_cmds=$lt_postinstall_cmds
-
-# Command to use after uninstallation of a shared archive.
-postuninstall_cmds=$lt_postuninstall_cmds
-
-# Commands used to finish a libtool library installation in a directory.
-finish_cmds=$lt_finish_cmds
-
-# As "finish_cmds", except a single script fragment to be evaled but
-# not shown.
-finish_eval=$lt_finish_eval
-
-# Whether we should hardcode library paths into libraries.
-hardcode_into_libs=$hardcode_into_libs
-
-# Compile-time system search path for libraries.
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
-
-# Run-time system search path for libraries.
-sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-
-# Whether dlopen is supported.
-dlopen_support=$enable_dlopen
-
-# Whether dlopen of programs is supported.
-dlopen_self=$enable_dlopen_self
-
-# Whether dlopen of statically linked programs is supported.
-dlopen_self_static=$enable_dlopen_self_static
-
-# Commands to strip libraries.
-old_striplib=$lt_old_striplib
-striplib=$lt_striplib
-
-
-# The linker used to build libraries.
-LD=$lt_LD
-
-# Commands used to build an old-style archive.
-old_archive_cmds=$lt_old_archive_cmds
-
-# A language specific compiler.
-CC=$lt_compiler
-
-# Is the compiler the GNU compiler?
-with_gcc=$GCC
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
-
-# How to pass a linker flag through the compiler.
-wl=$lt_lt_prog_compiler_wl
-
-# Additional compiler flags for building library objects.
-pic_flag=$lt_lt_prog_compiler_pic
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$lt_lt_prog_compiler_static
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$lt_lt_cv_prog_compiler_c_o
-
-# Whether or not to add -lc for building shared libraries.
-build_libtool_need_lc=$archive_cmds_need_lc
-
-# Whether or not to disallow shared libs when runtime libs are static.
-allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$lt_whole_archive_flag_spec
-
-# Whether the compiler copes with passing no objects directly.
-compiler_needs_object=$lt_compiler_needs_object
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
-
-# Create a temporary old-style archive to link instead of a shared archive.
-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
-
-# Commands used to build a shared archive.
-archive_cmds=$lt_archive_cmds
-archive_expsym_cmds=$lt_archive_expsym_cmds
-
-# Commands used to build a loadable module if different from building
-# a shared archive.
-module_cmds=$lt_module_cmds
-module_expsym_cmds=$lt_module_expsym_cmds
-
-# Whether we are building with GNU ld or not.
-with_gnu_ld=$lt_with_gnu_ld
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$lt_allow_undefined_flag
-
-# Flag that enforces no undefined symbols.
-no_undefined_flag=$lt_no_undefined_flag
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist
-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
-
-# If ld is used when linking, flag to hardcode \$libdir into a binary
-# during linking. This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld
-
-# Whether we need a single "-rpath" flag with a separated argument.
-hardcode_libdir_separator=$lt_hardcode_libdir_separator
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary.
-hardcode_direct=$hardcode_direct
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary and the resulting library dependency is
-# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
-# library is relocated.
-hardcode_direct_absolute=$hardcode_direct_absolute
-
-# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
-# into the resulting binary.
-hardcode_minus_L=$hardcode_minus_L
-
-# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
-# into the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var
-
-# Set to "yes" if building a shared library automatically hardcodes DIR
-# into the library and all subsequent libraries and executables linked
-# against it.
-hardcode_automatic=$hardcode_automatic
-
-# Set to yes if linker adds runtime paths of dependent libraries
-# to runtime path list.
-inherit_rpath=$inherit_rpath
-
-# Whether libtool must link a program against all its dependency libraries.
-link_all_deplibs=$link_all_deplibs
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path=$lt_fix_srcfile_path
-
-# Set to "yes" if exported symbols are required.
-always_export_symbols=$always_export_symbols
-
-# The commands to list exported symbols.
-export_symbols_cmds=$lt_export_symbols_cmds
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$lt_exclude_expsyms
-
-# Symbols that must always be exported.
-include_expsyms=$lt_include_expsyms
-
-# Commands necessary for linking programs (against libraries) with templates.
-prelink_cmds=$lt_prelink_cmds
-
-# Specify filename containing input files.
-file_list_spec=$lt_file_list_spec
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action
-
-# The directories searched by this compiler when creating a shared library.
-compiler_lib_search_dirs=$lt_compiler_lib_search_dirs
-
-# Dependencies to place before and after the objects being linked to
-# create a shared library.
-predep_objects=$lt_predep_objects
-postdep_objects=$lt_postdep_objects
-predeps=$lt_predeps
-postdeps=$lt_postdeps
-
-# The library search path used internally by the compiler when linking
-# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path
-
-# ### END LIBTOOL CONFIG
-
-_LT_EOF
-
- case $host_os in
- aix3*)
- cat <<\_LT_EOF >> "$cfgfile"
-# AIX sometimes has problems with the GCC collect2 program. For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
-fi
-_LT_EOF
- ;;
- esac
-
-
-ltmain="$ac_aux_dir/ltmain.sh"
-
-
- # We use sed instead of cat because bash on DJGPP gets confused if
- # if finds mixed CR/LF and LF-only lines. Since sed operates in
- # text mode, it properly converts lines to CR/LF. This bash problem
- # is reportedly fixed, but why not run on old versions too?
- sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- case $xsi_shell in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result="${1##*/}"
-}
-
-# func_dirname_and_basename file append nondir_replacement
-# perform func_basename and func_dirname in a single function
-# call:
-# dirname: Compute the dirname of FILE. If nonempty,
-# add APPEND to the result, otherwise set result
-# to NONDIR_REPLACEMENT.
-# value returned in "$func_dirname_result"
-# basename: Compute filename of FILE.
-# value retuned in "$func_basename_result"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
- func_basename_result="${1##*/}"
-}
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-func_stripname ()
-{
- # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
- # positional parameters, so assign one to ordinary parameter first.
- func_stripname_result=${3}
- func_stripname_result=${func_stripname_result#"${1}"}
- func_stripname_result=${func_stripname_result%"${2}"}
-}
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=${1%%=*}
- func_opt_split_arg=${1#*=}
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- case ${1} in
- *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
- *) func_lo2o_result=${1} ;;
- esac
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=${1%.*}.lo
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=$(( $* ))
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=${#1}
-}
-
-_LT_EOF
- ;;
- *) # Bourne compatible functions.
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- # Extract subdirectory from the argument.
- func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
- if test "X$func_dirname_result" = "X${1}"; then
- func_dirname_result="${3}"
- else
- func_dirname_result="$func_dirname_result${2}"
- fi
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
-}
-
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-# func_strip_suffix prefix name
-func_stripname ()
-{
- case ${2} in
- .*) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
- *) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
- esac
-}
-
-# sed scripts:
-my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q'
-my_sed_long_arg='1s/^-[^=]*=//'
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
- func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=`expr "$@"`
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
-}
-
-_LT_EOF
-esac
-
-case $lt_shell_append in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$1+=\$2"
-}
-_LT_EOF
- ;;
- *)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$1=\$$1\$2"
-}
-
-_LT_EOF
- ;;
- esac
-
-
- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- mv -f "$cfgfile" "$ofile" ||
- (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
- chmod +x "$ofile"
-
-
- cat <<_LT_EOF >> "$ofile"
-
-# ### BEGIN LIBTOOL TAG CONFIG: CXX
-
-# The linker used to build libraries.
-LD=$lt_LD_CXX
-
-# Commands used to build an old-style archive.
-old_archive_cmds=$lt_old_archive_cmds_CXX
-
-# A language specific compiler.
-CC=$lt_compiler_CXX
-
-# Is the compiler the GNU compiler?
-with_gcc=$GCC_CXX
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX
-
-# How to pass a linker flag through the compiler.
-wl=$lt_lt_prog_compiler_wl_CXX
-
-# Additional compiler flags for building library objects.
-pic_flag=$lt_lt_prog_compiler_pic_CXX
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$lt_lt_prog_compiler_static_CXX
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX
-
-# Whether or not to add -lc for building shared libraries.
-build_libtool_need_lc=$archive_cmds_need_lc_CXX
-
-# Whether or not to disallow shared libs when runtime libs are static.
-allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX
-
-# Whether the compiler copes with passing no objects directly.
-compiler_needs_object=$lt_compiler_needs_object_CXX
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX
-
-# Create a temporary old-style archive to link instead of a shared archive.
-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX
-
-# Commands used to build a shared archive.
-archive_cmds=$lt_archive_cmds_CXX
-archive_expsym_cmds=$lt_archive_expsym_cmds_CXX
-
-# Commands used to build a loadable module if different from building
-# a shared archive.
-module_cmds=$lt_module_cmds_CXX
-module_expsym_cmds=$lt_module_expsym_cmds_CXX
-
-# Whether we are building with GNU ld or not.
-with_gnu_ld=$lt_with_gnu_ld_CXX
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$lt_allow_undefined_flag_CXX
-
-# Flag that enforces no undefined symbols.
-no_undefined_flag=$lt_no_undefined_flag_CXX
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist
-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX
-
-# If ld is used when linking, flag to hardcode \$libdir into a binary
-# during linking. This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_CXX
-
-# Whether we need a single "-rpath" flag with a separated argument.
-hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary.
-hardcode_direct=$hardcode_direct_CXX
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary and the resulting library dependency is
-# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
-# library is relocated.
-hardcode_direct_absolute=$hardcode_direct_absolute_CXX
-
-# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
-# into the resulting binary.
-hardcode_minus_L=$hardcode_minus_L_CXX
-
-# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
-# into the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX
-
-# Set to "yes" if building a shared library automatically hardcodes DIR
-# into the library and all subsequent libraries and executables linked
-# against it.
-hardcode_automatic=$hardcode_automatic_CXX
-
-# Set to yes if linker adds runtime paths of dependent libraries
-# to runtime path list.
-inherit_rpath=$inherit_rpath_CXX
-
-# Whether libtool must link a program against all its dependency libraries.
-link_all_deplibs=$link_all_deplibs_CXX
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path=$lt_fix_srcfile_path_CXX
-
-# Set to "yes" if exported symbols are required.
-always_export_symbols=$always_export_symbols_CXX
-
-# The commands to list exported symbols.
-export_symbols_cmds=$lt_export_symbols_cmds_CXX
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$lt_exclude_expsyms_CXX
-
-# Symbols that must always be exported.
-include_expsyms=$lt_include_expsyms_CXX
-
-# Commands necessary for linking programs (against libraries) with templates.
-prelink_cmds=$lt_prelink_cmds_CXX
-
-# Specify filename containing input files.
-file_list_spec=$lt_file_list_spec_CXX
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action_CXX
-
-# The directories searched by this compiler when creating a shared library.
-compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX
-
-# Dependencies to place before and after the objects being linked to
-# create a shared library.
-predep_objects=$lt_predep_objects_CXX
-postdep_objects=$lt_postdep_objects_CXX
-predeps=$lt_predeps_CXX
-postdeps=$lt_postdeps_CXX
-
-# The library search path used internally by the compiler when linking
-# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
-
-# ### END LIBTOOL TAG CONFIG: CXX
-_LT_EOF
-
- ;;
-
- esac
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
- as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- ac_config_status_args=
- test "$silent" = yes &&
- ac_config_status_args="$ac_config_status_args --quiet"
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
-
diff --git a/autom4te.cache/output.1 b/autom4te.cache/output.1
deleted file mode 100644
index c502bf6..0000000
--- a/autom4te.cache/output.1
+++ /dev/null
@@ -1,19491 +0,0 @@
-@%:@! /bin/sh
-@%:@ Guess values for system-dependent variables and create Makefiles.
-@%:@ Generated by GNU Autoconf 2.67 for mathgl 2.0.
-@%:@
-@%:@ Report bugs to <mathgl.abalakin at gmail.com>.
-@%:@
-@%:@
-@%:@ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-@%:@ 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-@%:@ Foundation, Inc.
-@%:@
-@%:@
-@%:@ This configure script is free software; the Free Software Foundation
-@%:@ gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in @%:@(
- *posix*) :
- set -o posix ;; @%:@(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in @%:@(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-case $0 in @%:@((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '\${1+\"\$@\"}'='\"\$@\"'
- setopt NO_GLOB_SUBST
-else
- case \`(set -o) 2>/dev/null\` in @%:@(
- *posix*) :
- set -o posix ;; @%:@(
- *) :
- ;;
-esac
-fi
-"
- as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-
-else
- exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1"
- as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
- as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
- eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
- test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
- if (eval "$as_required") 2>/dev/null; then :
- as_have_required=yes
-else
- as_have_required=no
-fi
- if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- as_found=:
- case $as_dir in @%:@(
- /*)
- for as_base in sh bash ksh sh5; do
- # Try only shells that exist, to save several forks.
- as_shell=$as_dir/$as_base
- if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
- CONFIG_SHELL=$as_shell as_have_required=yes
- if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
- break 2
-fi
-fi
- done;;
- esac
- as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
- CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
- if test "x$CONFIG_SHELL" != x; then :
- # We cannot yet assume a decent shell, so we have to provide a
- # neutralization value for shells without unset; and this also
- # works around shells that cannot unset nonexistent variables.
- BASH_ENV=/dev/null
- ENV=/dev/null
- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
-fi
-
- if test x$as_have_required = xno; then :
- $as_echo "$0: This script requires a shell more modern than all"
- $as_echo "$0: the shells that I found on your system."
- if test x${ZSH_VERSION+set} = xset ; then
- $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
- $as_echo "$0: be upgraded to zsh 4.3.4 or later."
- else
- $as_echo "$0: Please tell bug-autoconf at gnu.org and
-$0: mathgl.abalakin at gmail.com about your system, including
-$0: any error possibly output before this message. Then
-$0: install a modern shell, or manually run the script
-$0: under such a shell if you do have one."
- fi
- exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} @%:@ as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -p'
- fi
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in @%:@(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-
-# Check that we are running under the correct shell.
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-case X$lt_ECHO in
-X*--fallback-echo)
- # Remove one level of quotation (which was required for Make).
- ECHO=`echo "$lt_ECHO" | sed 's,\\\\\$\\$0,'$0','`
- ;;
-esac
-
-ECHO=${lt_ECHO-echo}
-if test "X$1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X$1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
- # Yippee, $ECHO works!
- :
-else
- # Restart under the correct shell.
- exec $SHELL "$0" --no-reexec ${1+"$@"}
-fi
-
-if test "X$1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<_LT_EOF
-$*
-_LT_EOF
- exit 0
-fi
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test -z "$lt_ECHO"; then
- if test "X${echo_test_string+set}" != Xset; then
- # find a string as large as possible, as long as the shell can cope with it
- for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
- # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
- { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
- then
- break
- fi
- done
- fi
-
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- :
- else
- # The Solaris, AIX, and Digital Unix default echo programs unquote
- # backslashes. This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- #
- # So, first we look for a working echo in the user's PATH.
-
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for dir in $PATH /usr/ucb; do
- IFS="$lt_save_ifs"
- if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
- test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$dir/echo"
- break
- fi
- done
- IFS="$lt_save_ifs"
-
- if test "X$ECHO" = Xecho; then
- # We didn't find a better echo, so look for alternatives.
- if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # This shell has a builtin print -r that does the trick.
- ECHO='print -r'
- elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
- test "X$CONFIG_SHELL" != X/bin/ksh; then
- # If we have ksh, try running configure again with it.
- ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
- export ORIGINAL_CONFIG_SHELL
- CONFIG_SHELL=/bin/ksh
- export CONFIG_SHELL
- exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"}
- else
- # Try using printf.
- ECHO='printf %s\n'
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # Cool, printf works
- :
- elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
- export CONFIG_SHELL
- SHELL="$CONFIG_SHELL"
- export SHELL
- ECHO="$CONFIG_SHELL $0 --fallback-echo"
- elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$CONFIG_SHELL $0 --fallback-echo"
- else
- # maybe with a smaller string...
- prev=:
-
- for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
- if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
- then
- break
- fi
- prev="$cmd"
- done
-
- if test "$prev" != 'sed 50q "$0"'; then
- echo_test_string=`eval $prev`
- export echo_test_string
- exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"}
- else
- # Oops. We lost completely, so just stick with echo.
- ECHO=echo
- fi
- fi
- fi
- fi
- fi
-fi
-
-# Copy echo and quote the copy suitably for passing to libtool from
-# the Makefile, instead of quoting the original, which is used later.
-lt_ECHO=$ECHO
-if test "X$lt_ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then
- lt_ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo"
-fi
-
-
-
-as_awk_strverscmp='
- # Use only awk features that work with 7th edition Unix awk (1978).
- # My, what an old awk you have, Mr. Solaris!
- END {
- while (length(v1) && length(v2)) {
- # Set d1 to be the next thing to compare from v1, and likewise for d2.
- # Normally this is a single character, but if v1 and v2 contain digits,
- # compare them as integers and fractions as strverscmp does.
- if (v1 ~ /^[0-9]/ && v2 ~ /^[0-9]/) {
- # Split v1 and v2 into their leading digit string components d1 and d2,
- # and advance v1 and v2 past the leading digit strings.
- for (len1 = 1; substr(v1, len1 + 1) ~ /^[0-9]/; len1++) continue
- for (len2 = 1; substr(v2, len2 + 1) ~ /^[0-9]/; len2++) continue
- d1 = substr(v1, 1, len1); v1 = substr(v1, len1 + 1)
- d2 = substr(v2, 1, len2); v2 = substr(v2, len2 + 1)
- if (d1 ~ /^0/) {
- if (d2 ~ /^0/) {
- # Compare two fractions.
- while (d1 ~ /^0/ && d2 ~ /^0/) {
- d1 = substr(d1, 2); len1--
- d2 = substr(d2, 2); len2--
- }
- if (len1 != len2 && ! (len1 && len2 && substr(d1, 1, 1) == substr(d2, 1, 1))) {
- # The two components differ in length, and the common prefix
- # contains only leading zeros. Consider the longer to be less.
- d1 = -len1
- d2 = -len2
- } else {
- # Otherwise, compare as strings.
- d1 = "x" d1
- d2 = "x" d2
- }
- } else {
- # A fraction is less than an integer.
- exit 1
- }
- } else {
- if (d2 ~ /^0/) {
- # An integer is greater than a fraction.
- exit 2
- } else {
- # Compare two integers.
- d1 += 0
- d2 += 0
- }
- }
- } else {
- # The normal case, without worrying about digits.
- d1 = substr(v1, 1, 1); v1 = substr(v1, 2)
- d2 = substr(v2, 1, 1); v2 = substr(v2, 2)
- }
- if (d1 < d2) exit 1
- if (d1 > d2) exit 2
- }
- # Beware Solaris /usr/xgp4/bin/awk (at least through Solaris 10),
- # which mishandles some comparisons of empty strings to integers.
- if (length(v2)) exit 1
- if (length(v1)) exit 2
- }
-'
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIB@&t at OBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='mathgl'
-PACKAGE_TARNAME='mathgl'
-PACKAGE_VERSION='2.0'
-PACKAGE_STRING='mathgl 2.0'
-PACKAGE_BUGREPORT='mathgl.abalakin at gmail.com'
-PACKAGE_URL=''
-
-ac_unique_file="src"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-# include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_subst_vars='am__EXEEXT_FALSE
-am__EXEEXT_TRUE
-LTLIBOBJS
-LIB@&t at OBJS
-AM_CXXFLAGS
-USE_OCTAVE_FALSE
-USE_OCTAVE_TRUE
-OCTAVE_INCFLAGS
-OCTAVE_ARCH
-OCTAVE
-USE_PYTHON_FALSE
-USE_PYTHON_TRUE
-pkgpyexecdir
-pyexecdir
-pkgpythondir
-pythondir
-PYTHON_PLATFORM
-PYTHON_EXEC_PREFIX
-PYTHON_PREFIX
-PYTHON_VERSION
-PYTHON
-HAVE_SWIG
-PYTHON_HEADERS
-USE_QT_FALSE
-USE_QT_TRUE
-QT_VERSION
-QT_LIBS
-QT_LDFLAGS
-QT_LFLAGS
-QT_CPPFLAGS
-QT_INCPATH
-QT_CXXFLAGS
-QT_CFLAGS
-QT_DEFINES
-QT_VERSION_MAJOR
-TMPDIR
-QT_PATH
-RCC
-UIC
-MOC
-QMAKE
-USE_FLTK_FALSE
-USE_FLTK_TRUE
-FLTK_LIBS
-FLTK_FLAGS
-USE_U3D_FALSE
-USE_U3D_TRUE
-U3D_LIBS
-USE_PDF_FALSE
-USE_PDF_TRUE
-USE_JPEG_FALSE
-USE_JPEG_TRUE
-JPEG_LIBS
-JPEG_FLAGS
-PNG_LIBS
-USE_HDF4_FALSE
-USE_HDF4_TRUE
-HDF4_LIBS
-HDF4_FLAGS
-USE_HDF5_FALSE
-USE_HDF5_TRUE
-HDF5_LIBS
-HDF5_FLAGS
-USE_GLUT_FALSE
-USE_GLUT_TRUE
-GL_LIBS
-USE_GSL_FALSE
-USE_GSL_TRUE
-GSL_LIBS
-GSL_FLAGS
-USE_PTHREAD_FALSE
-USE_PTHREAD_TRUE
-PTHREAD_LIBS
-PTHREAD_FLAGS
-CXXCPP
-CPP
-OTOOL64
-OTOOL
-LIPO
-NMEDIT
-DSYMUTIL
-lt_ECHO
-RANLIB
-AR
-LN_S
-NM
-ac_ct_DUMPBIN
-DUMPBIN
-LD
-FGREP
-EGREP
-GREP
-SED
-LIBTOOL
-OBJDUMP
-DLLTOOL
-AS
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-am__fastdepCXX_FALSE
-am__fastdepCXX_TRUE
-CXXDEPMODE
-ac_ct_CXX
-CXXFLAGS
-CXX
-am__fastdepCC_FALSE
-am__fastdepCC_TRUE
-CCDEPMODE
-AMDEPBACKSLASH
-AMDEP_FALSE
-AMDEP_TRUE
-am__quote
-am__include
-DEPDIR
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-am__untar
-am__tar
-AMTAR
-am__leading_dot
-SET_MAKE
-AWK
-mkdir_p
-MKDIR_P
-INSTALL_STRIP_PROGRAM
-STRIP
-install_sh
-MAKEINFO
-AUTOHEADER
-AUTOMAKE
-AUTOCONF
-ACLOCAL
-VERSION
-PACKAGE
-CYGPATH_W
-am__isrc
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-MGL_AGE
-MGL_REVISION
-MGL_CURRENT
-MGL_RELEASE
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-enable_dependency_tracking
-enable_shared
-enable_static
-with_pic
-enable_fast_install
-with_gnu_ld
-enable_libtool_lock
-enable_double
-enable_all
-enable_langall
-enable_pthread
-enable_gsl
-enable_hdf5
-enable_hdf5_18
-enable_hdf4
-enable_jpeg
-enable_u3d
-enable_pdf
-enable_fltk
-enable_qt
-with_qt
-enable_python
-enable_octave
-'
- ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CXX
-CXXFLAGS
-CCC
-CPP
-CXXCPP
-TMPDIR'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval $ac_prev=\$ac_option
- ac_prev=
- continue
- fi
-
- case $ac_option in
- *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
- *=) ac_optarg= ;;
- *) ac_optarg=yes ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_dashdash$ac_option in
- --)
- ac_dashdash=yes ;;
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=*)
- datadir=$ac_optarg ;;
-
- -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
- | --dataroo | --dataro | --datar)
- ac_prev=datarootdir ;;
- -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
- | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
- datarootdir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=no ;;
-
- -docdir | --docdir | --docdi | --doc | --do)
- ac_prev=docdir ;;
- -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
- docdir=$ac_optarg ;;
-
- -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
- ac_prev=dvidir ;;
- -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
- dvidir=$ac_optarg ;;
-
- -enable-* | --enable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=\$ac_optarg ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
- ac_prev=htmldir ;;
- -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
- | --ht=*)
- htmldir=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localedir | --localedir | --localedi | --localed | --locale)
- ac_prev=localedir ;;
- -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
- localedir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst | --locals)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
- ac_prev=pdfdir ;;
- -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
- pdfdir=$ac_optarg ;;
-
- -psdir | --psdir | --psdi | --psd | --ps)
- ac_prev=psdir ;;
- -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
- psdir=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=\$ac_optarg ;;
-
- -without-* | --without-*)
- ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=no ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- case $ac_envvar in #(
- '' | [0-9]* | *[!_$as_cr_alnum]* )
- as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
- esac
- eval $ac_envvar=\$ac_optarg
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
- case $enable_option_checking in
- no) ;;
- fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
- *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
- esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
- datadir sysconfdir sharedstatedir localstatedir includedir \
- oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
-do
- eval ac_val=\$$ac_var
- # Remove trailing slashes.
- case $ac_val in
- */ )
- ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
- eval $ac_var=\$ac_val;;
- esac
- # Be sure to have absolute directory names.
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) continue;;
- NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
- esac
- as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used" >&2
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then the parent directory.
- ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_myself" : 'X\(//\)[^/]' \| \
- X"$as_myself" : 'X\(//\)$' \| \
- X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r "$srcdir/$ac_unique_file"; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
- test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
- pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
- srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
- eval ac_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_env_${ac_var}_value=\$${ac_var}
- eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures mathgl 2.0 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking ...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- @<:@@S|@ac_default_prefix@:>@
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- @<:@PREFIX@:>@
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root @<:@DATAROOTDIR/doc/mathgl@:>@
- --htmldir=DIR html documentation [DOCDIR]
- --dvidir=DIR dvi documentation [DOCDIR]
- --pdfdir=DIR pdf documentation [DOCDIR]
- --psdir=DIR ps documentation [DOCDIR]
-_ACEOF
-
- cat <<\_ACEOF
-
-Program names:
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM run sed PROGRAM on installed program names
-
-System types:
- --build=BUILD configure for building on BUILD [guessed]
- --host=HOST cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
- case $ac_init_help in
- short | recursive ) echo "Configuration of mathgl 2.0:";;
- esac
- cat <<\_ACEOF
-
-Optional Features:
- --disable-option-checking ignore unrecognized --enable/--with options
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors
- --enable-shared@<:@=PKGS@:>@ build shared libraries @<:@default=yes@:>@
- --enable-static@<:@=PKGS@:>@ build static libraries @<:@default=yes@:>@
- --enable-fast-install@<:@=PKGS@:>@
- optimize for fast installation @<:@default=yes@:>@
- --disable-libtool-lock avoid locking (might break parallel builds)
- --enable-double Turn on double precision in MathGL library
- --enable-all Turn on all features
- --enable-langall Turn on all language interfaces
- --enable-pthread Turn on pthread support in MathGL library
- --enable-gsl Turn on gsl functions
- --enable-hdf5 Turn on hdf5
- --enable-hdf5_18 Turn on hdf5 version 1.8
- --enable-hdf4 Turn on hdf4
- --enable-jpeg Turn on jpeg
- --enable-u3d Turn on u3d functions
- --enable-pdf Turn on u3d and pdf functions
- --enable-fltk Turn on fltk
- --enable-qt Turn on Qt
- --enable-python Turn on interface to python
- --enable-octave Turn on interface to octave
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-pic try to use only PIC/non-PIC objects @<:@default=use
- both@:>@
- --with-gnu-ld assume the C compiler uses GNU ld @<:@default=no@:>@
- --with-qt Path to Qt @<:@Look in PATH and /usr/local/Trolltech@:>@
-
-Some influential environment variables:
- CC C compiler command
- CFLAGS C compiler flags
- LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
- nonstandard directory <lib dir>
- LIBS libraries to pass to the linker, e.g. -l<library>
- CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
- you have headers in a nonstandard directory <include dir>
- CXX C++ compiler command
- CXXFLAGS C++ compiler flags
- CPP C preprocessor
- CXXCPP C++ preprocessor
- TMPDIR A temporary directory with write access @<:@/tmp@:>@
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <mathgl.abalakin at gmail.com>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d "$ac_dir" ||
- { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
- continue
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
- cd "$ac_dir" || { ac_status=$?; continue; }
- # Check for guested configure.
- if test -f "$ac_srcdir/configure.gnu"; then
- echo &&
- $SHELL "$ac_srcdir/configure.gnu" --help=recursive
- elif test -f "$ac_srcdir/configure"; then
- echo &&
- $SHELL "$ac_srcdir/configure" --help=recursive
- else
- $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi || ac_status=$?
- cd "$ac_pwd" || { ac_status=$?; break; }
- done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
- cat <<\_ACEOF
-mathgl configure 2.0
-generated by GNU Autoconf 2.67
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-@%:@ ac_fn_c_try_compile LINENO
-@%:@ --------------------------
-@%:@ Try to compile conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_compile
-
-@%:@ ac_fn_cxx_try_compile LINENO
-@%:@ ----------------------------
-@%:@ Try to compile conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_cxx_try_compile
-
-@%:@ ac_fn_c_try_link LINENO
-@%:@ -----------------------
-@%:@ Try to link conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_link
-
-@%:@ ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-@%:@ -------------------------------------------------------
-@%:@ Tests whether HEADER exists and can be compiled using the include files in
-@%:@ INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} @%:@ ac_fn_c_check_header_compile
-
-@%:@ ac_fn_c_try_cpp LINENO
-@%:@ ----------------------
-@%:@ Try to preprocess conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_cpp
-
-@%:@ ac_fn_c_try_run LINENO
-@%:@ ----------------------
-@%:@ Try to link conftest. at S|@ac_ext, and return whether this succeeded. Assumes
-@%:@ that executables *can* be run.
-ac_fn_c_try_run ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
- ac_retval=0
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=$ac_status
-fi
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_c_try_run
-
-@%:@ ac_fn_c_check_func LINENO FUNC VAR
-@%:@ ----------------------------------
-@%:@ Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $2 innocuous_$2
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $2 (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $2
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int
-main ()
-{
-return $2 ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} @%:@ ac_fn_c_check_func
-
-@%:@ ac_fn_cxx_try_cpp LINENO
-@%:@ ------------------------
-@%:@ Try to preprocess conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_cxx_try_cpp
-
-@%:@ ac_fn_cxx_try_link LINENO
-@%:@ -------------------------
-@%:@ Try to link conftest. at S|@ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} @%:@ ac_fn_cxx_try_link
-
-@%:@ ac_fn_cxx_check_header_mongrel LINENO HEADER VAR INCLUDES
-@%:@ ---------------------------------------------------------
-@%:@ Tests whether HEADER exists, giving a warning if it cannot be compiled using
-@%:@ the include files in INCLUDES and setting the cache variable VAR
-@%:@ accordingly.
-ac_fn_cxx_check_header_mongrel ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval "test \"\${$3+set}\"" = set; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-@%:@include <$2>
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_header_compiler=yes
-else
- ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <$2>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- ac_header_preproc=yes
-else
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in #((
- yes:no: )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
- no:yes:* )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ---------------------------------------- ##
-## Report this to mathgl.abalakin at gmail.com ##
-## ---------------------------------------- ##"
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} @%:@ ac_fn_cxx_check_header_mongrel
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by mathgl $as_me 2.0, which was
-generated by GNU Autoconf 2.67. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
- done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
- for ac_arg
- do
- case $ac_arg in
- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- continue ;;
- *\'*)
- ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case $ac_pass in
- 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
- 2)
- as_fn_append ac_configure_args1 " '$ac_arg'"
- if test $ac_must_keep_next = true; then
- ac_must_keep_next=false # Got value, back to normal.
- else
- case $ac_arg in
- *=* | --config-cache | -C | -disable-* | --disable-* \
- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
- | -with-* | --with-* | -without-* | --without-* | --x)
- case "$ac_configure_args0 " in
- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
- esac
- ;;
- -* ) ac_must_keep_next=true ;;
- esac
- fi
- as_fn_append ac_configure_args " '$ac_arg'"
- ;;
- esac
- done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
-
- $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
- echo
- # The following way of writing the cache mishandles newlines in values,
-(
- for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
- (set) 2>&1 |
- case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- sed -n \
- "s/'\''/'\''\\\\'\'''\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
- ;; #(
- *)
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-)
- echo
-
- $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
- echo
- for ac_var in $ac_subst_vars
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
-
- if test -n "$ac_subst_files"; then
- $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
- echo
- for ac_var in $ac_subst_files
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
- fi
-
- if test -s confdefs.h; then
- $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
- echo
- cat confdefs.h
- echo
- fi
- test "$ac_signal" != 0 &&
- $as_echo "$as_me: caught signal $ac_signal"
- $as_echo "$as_me: exit $exit_status"
- } >&5
- rm -f core *.core core.conftest.* &&
- rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
- # We do not want a PATH search for config.site.
- case $CONFIG_SITE in @%:@((
- -*) ac_site_file1=./$CONFIG_SITE;;
- */*) ac_site_file1=$CONFIG_SITE;;
- *) ac_site_file1=./$CONFIG_SITE;;
- esac
-elif test "x$prefix" != xNONE; then
- ac_site_file1=$prefix/share/config.site
- ac_site_file2=$prefix/etc/config.site
-else
- ac_site_file1=$ac_default_prefix/share/config.site
- ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
- test "x$ac_site_file" = xNONE && continue
- if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file" \
- || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5 ; }
- fi
-done
-
-if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special files
- # actually), so we avoid doing that. DJGPP emulates it as a regular file.
- if test /dev/null != "$cache_file" && test -f "$cache_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . "$cache_file";;
- *) . "./$cache_file";;
- esac
- fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val=\$ac_cv_env_${ac_var}_value
- eval ac_new_val=\$ac_env_${ac_var}_value
- case $ac_old_set,$ac_new_set in
- set,)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- # differences in whitespace do not lead to failure.
- ac_old_val_w=`echo x $ac_old_val`
- ac_new_val_w=`echo x $ac_new_val`
- if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- ac_cache_corrupted=:
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
- eval $ac_var=\$ac_old_val
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
-$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
-$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) as_fn_append ac_configure_args " '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-MGL_RELEASE=2.0
-
-
-
-ac_aux_dir=
-for ac_dir in config "$srcdir"/config; do
- if test -f "$ac_dir/install-sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f "$ac_dir/install.sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f "$ac_dir/shtool"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- as_fn_error $? "cannot find install-sh, install.sh, or shtool in config \"$srcdir\"/config" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
-
-
-
-ac_config_headers="$ac_config_headers include/mgl/config.h"
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-
-#MGL_RELEASE=1.4
-#AC_SUBST(MGL_RELEASE)
-
-# LT Version numbers, remember to change them just *before* a release.
-# (Interfaces removed: CURRENT++, AGE=0, REVISION=0)
-# (Interfaces added: CURRENT++, AGE++, REVISION=0)
-# (No interfaces changed: REVISION++)
-MGL_CURRENT=6
-MGL_REVISION=0
-MGL_AGE=0
-
-
-
-
-am__api_version='1.11'
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in @%:@((
- ./ | .// | /[cC]/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- rm -rf conftest.one conftest.two conftest.dir
- echo one > conftest.one
- echo two > conftest.two
- mkdir conftest.dir
- if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
- test -s conftest.one && test -s conftest.two &&
- test -s conftest.dir/conftest.one &&
- test -s conftest.dir/conftest.two
- then
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- fi
- done
- done
- ;;
-esac
-
- done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- INSTALL=$ac_install_sh
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[\\\"\#\$\&\'\`$am_lf]*)
- as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5 ;;
-esac
-case $srcdir in
- *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
- as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5 ;;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$*" != "X $srcdir/configure conftest.file" \
- && test "$*" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
-alias in your environment" "$LINENO" 5
- fi
-
- test "$2" = conftest.file
- )
-then
- # Ok.
- :
-else
- as_fn_error $? "newly created file is older than distributed files!
-Check your system clock" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-test "$program_prefix" != NONE &&
- program_transform_name="s&^&$program_prefix&;$program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s&\$&$program_suffix&;$program_transform_name"
-# Double any \ or $.
-# By default was `s,x,x', remove it if useless.
-ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
-fi
-
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
-if test -z "$MKDIR_P"; then
- if test "${ac_cv_path_mkdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in mkdir gmkdir; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
- case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
- 'mkdir (GNU coreutils) '* | \
- 'mkdir (coreutils) '* | \
- 'mkdir (fileutils) '4.1*)
- ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
- break 3;;
- esac
- done
- done
- done
-IFS=$as_save_IFS
-
-fi
-
- test -d ./--version && rmdir ./--version
- if test "${ac_cv_path_mkdir+set}" = set; then
- MKDIR_P="$ac_cv_path_mkdir -p"
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for MKDIR_P within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- MKDIR_P="$ac_install_sh -d"
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
-
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
- [\\/$]* | ?:[\\/]*) ;;
- */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
-for ac_prog in gawk mawk nawk awk
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AWK+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AWK"; then
- ac_cv_prog_AWK="$AWK" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AWK=$ac_cv_prog_AWK
-if test -n "$AWK"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$AWK" && break
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
- @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
- *@@@%%%=?*=@@@%%%*)
- eval ac_cv_prog_make_${ac_make}_set=yes;;
- *)
- eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- SET_MAKE=
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- am__isrc=' -I$(srcdir)'
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-
-
-# Define the identity of the package.
- PACKAGE='mathgl'
- VERSION='2.0'
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE "$PACKAGE"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define VERSION "$VERSION"
-_ACEOF
-
-# Some tools Automake needs.
-
-ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
-
-
-AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
-
-
-AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
-
-
-AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
-
-
-MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility.
-
-AMTAR=${AMTAR-"${am_missing_run}tar"}
-
-am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
-
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-else
- CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- fi
-fi
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $@%:@ != 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
- fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- for ac_prog in cl.exe
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CC" && break
- done
-fi
-if test -z "$CC"; then
- ac_ct_CC=$CC
- for ac_prog in cl.exe
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CC" && break
-done
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- * ) ac_rmfiles="$ac_rmfiles $ac_file";;
- esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link_default") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile. We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
- ;;
- [ab].out )
- # We found the default executable, but exeext='' is most
- # certainly right.
- break;;
- *.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
- then :; else
- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- fi
- # We set ac_cv_exeext here because the later test for it is not
- # safe: cross compilers may not add the suffix if given an `-o'
- # argument, so we may need to know it at that point already.
- # Even if this section looks crufty: it has the advantage of
- # actually working.
- break;;
- * )
- break;;
- esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
- ac_file=''
-fi
-if test -z "$ac_file"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5 ; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- break;;
- * ) break;;
- esac
-done
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
- { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- if { ac_try='./conftest$ac_cv_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5 ; }
- fi
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if test "${ac_cv_objext+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- for ac_file in conftest.o conftest.obj conftest.*; do
- test -f "$ac_file" || continue;
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
- *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
- break;;
- esac
-done
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GCC=yes
-else
- GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_c_werror_flag=$ac_c_werror_flag
- ac_c_werror_flag=yes
- ac_cv_prog_cc_g=no
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-else
- CFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- ac_c_werror_flag=$ac_save_c_werror_flag
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
- CFLAGS="-O2"
- else
- CFLAGS=
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
- char **p;
- int i;
-{
- return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
- char *s;
- va_list v;
- va_start (v,p);
- s = g (p, va_arg (v,int));
- va_end (v);
- return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
- function prototypes and stuff, but not '\xHH' hex character constants.
- These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std is added to get
- proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
- array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std. */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
- inside strings and character constants. */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
- -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
- CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
- test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
- x)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
- xno)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
- *)
- CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-
-fi
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-DEPDIR="${am__leading_dot}deps"
-
-ac_config_commands="$ac_config_commands depfiles"
-
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
-
-@%:@ Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
- enableval=$enable_dependency_tracking;
-fi
-
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
-fi
- if test "x$enable_dependency_tracking" != xno; then
- AMDEP_TRUE=
- AMDEP_FALSE='#'
-else
- AMDEP_TRUE='#'
- AMDEP_FALSE=
-fi
-
-
-
-depcc="$CC" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CC_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CC_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CC_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
-CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
- am__fastdepCC_TRUE=
- am__fastdepCC_FALSE='#'
-else
- am__fastdepCC_TRUE='#'
- am__fastdepCC_FALSE=
-fi
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -z "$CXX"; then
- if test -n "$CCC"; then
- CXX=$CCC
- else
- if test -n "$ac_tool_prefix"; then
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CXX"; then
- ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CXX=$ac_cv_prog_CXX
-if test -n "$CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
-$as_echo "$CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CXX" && break
- done
-fi
-if test -z "$CXX"; then
- ac_ct_CXX=$CXX
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CXX"; then
- ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CXX="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
-if test -n "$ac_ct_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
-$as_echo "$ac_ct_CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CXX" && break
-done
-
- if test "x$ac_ct_CXX" = x; then
- CXX="g++"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CXX=$ac_ct_CXX
- fi
-fi
-
- fi
-fi
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
-$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
-$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GXX=yes
-else
- GXX=
-fi
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
-$as_echo_n "checking whether $CXX accepts -g... " >&6; }
-if test "${ac_cv_prog_cxx_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_cxx_werror_flag=$ac_cxx_werror_flag
- ac_cxx_werror_flag=yes
- ac_cv_prog_cxx_g=no
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-else
- CXXFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-
-else
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
-$as_echo "$ac_cv_prog_cxx_g" >&6; }
-if test "$ac_test_CXXFLAGS" = set; then
- CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
- if test "$GXX" = yes; then
- CXXFLAGS="-g -O2"
- else
- CXXFLAGS="-g"
- fi
-else
- if test "$GXX" = yes; then
- CXXFLAGS="-O2"
- else
- CXXFLAGS=
- fi
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-depcc="$CXX" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CXX_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CXX_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CXX_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
-CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
- am__fastdepCXX_TRUE=
- am__fastdepCXX_FALSE='#'
-else
- am__fastdepCXX_TRUE='#'
- am__fastdepCXX_FALSE=
-fi
-
-
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if test "${ac_cv_build+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
- ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
- as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5 ;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if test "${ac_cv_host+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$host_alias" = x; then
- ac_cv_host=$ac_cv_build
-else
- ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5 ;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AS=$ac_cv_prog_AS
-if test -n "$AS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
-$as_echo "$AS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AS"; then
- ac_ct_AS=$AS
- # Extract the first word of "as", so it can be a program name with args.
-set dummy as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_AS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_AS"; then
- ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_AS="as"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AS=$ac_cv_prog_ac_ct_AS
-if test -n "$ac_ct_AS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
-$as_echo "$ac_ct_AS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_AS" = x; then
- AS="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- AS=$ac_ct_AS
- fi
-else
- AS="$ac_cv_prog_AS"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DLLTOOL"; then
- ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DLLTOOL"; then
- ac_ct_DLLTOOL=$DLLTOOL
- # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DLLTOOL"; then
- ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DLLTOOL="dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_DLLTOOL" = x; then
- DLLTOOL="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DLLTOOL=$ac_ct_DLLTOOL
- fi
-else
- DLLTOOL="$ac_cv_prog_DLLTOOL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OBJDUMP"; then
- ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
- ac_ct_OBJDUMP=$OBJDUMP
- # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OBJDUMP"; then
- ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OBJDUMP="objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OBJDUMP" = x; then
- OBJDUMP="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OBJDUMP=$ac_ct_OBJDUMP
- fi
-else
- OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
- ;;
-esac
-
-test -z "$AS" && AS=as
-
-
-
-
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-
-enable_dlopen=yes
-
-
-
-case `pwd` in
- *\ * | *\ *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
-esac
-
-
-
-macro_version='2.2.6b'
-macro_revision='1.3017'
-
-
-
-
-
-
-
-
-
-
-
-
-
-ltmain="$ac_aux_dir/ltmain.sh"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if test "${ac_cv_path_SED+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
- for ac_i in 1 2 3 4 5 6 7; do
- ac_script="$ac_script$as_nl$ac_script"
- done
- echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
- { ac_script=; unset ac_script;}
- if test -z "$SED"; then
- ac_path_SED_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in sed gsed; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
-# Check for GNU ac_path_SED and select it if it is found.
- # Check for GNU $ac_path_SED
-case `"$ac_path_SED" --version 2>&1` in
-*GNU*)
- ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo '' >> "conftest.nl"
- "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_SED_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_SED="$ac_path_SED"
- ac_path_SED_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_SED_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_SED"; then
- as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
- fi
-else
- ac_cv_path_SED=$SED
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
- SED="$ac_cv_path_SED"
- rm -f conftest.sed
-
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$GREP"; then
- ac_path_GREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-# Check for GNU ac_path_GREP and select it if it is found.
- # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'GREP' >> "conftest.nl"
- "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_GREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_GREP="$ac_path_GREP"
- ac_path_GREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_GREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_GREP"; then
- as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
- then ac_cv_path_EGREP="$GREP -E"
- else
- if test -z "$EGREP"; then
- ac_path_EGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
- # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'EGREP' >> "conftest.nl"
- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_EGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_EGREP="$ac_path_EGREP"
- ac_path_EGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_EGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_EGREP"; then
- as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_EGREP=$EGREP
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if test "${ac_cv_path_FGREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
- then ac_cv_path_FGREP="$GREP -F"
- else
- if test -z "$FGREP"; then
- ac_path_FGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in fgrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
-# Check for GNU ac_path_FGREP and select it if it is found.
- # Check for GNU $ac_path_FGREP
-case `"$ac_path_FGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'FGREP' >> "conftest.nl"
- "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_FGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_FGREP="$ac_path_FGREP"
- ac_path_FGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_FGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_FGREP"; then
- as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_FGREP=$FGREP
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
- FGREP="$ac_cv_path_FGREP"
-
-
-test -z "$GREP" && GREP=grep
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-@%:@ Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
- withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
- with_gnu_ld=no
-fi
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [\\/]* | ?:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if test "${lt_cv_path_LD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if test "${lt_cv_prog_gnu_ld+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if test "${lt_cv_path_NM+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$NM"; then
- # Let the user override the test.
- lt_cv_path_NM="$NM"
-else
- lt_nm_to_check="${ac_tool_prefix}nm"
- if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
- lt_nm_to_check="$lt_nm_to_check nm"
- fi
- for lt_tmp_nm in $lt_nm_to_check; do
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/$lt_tmp_nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
- break
- ;;
- *)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- ;;
- esac
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
- done
- : ${lt_cv_path_NM=no}
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
-if test "$lt_cv_path_NM" != "no"; then
- NM="$lt_cv_path_NM"
-else
- # Didn't find any BSD compatible name lister, look for dumpbin.
- if test -n "$ac_tool_prefix"; then
- for ac_prog in "dumpbin -symbols" "link -dump -symbols"
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DUMPBIN+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DUMPBIN"; then
- ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DUMPBIN=$ac_cv_prog_DUMPBIN
-if test -n "$DUMPBIN"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$DUMPBIN" && break
- done
-fi
-if test -z "$DUMPBIN"; then
- ac_ct_DUMPBIN=$DUMPBIN
- for ac_prog in "dumpbin -symbols" "link -dump -symbols"
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DUMPBIN"; then
- ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
-if test -n "$ac_ct_DUMPBIN"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_DUMPBIN" && break
-done
-
- if test "x$ac_ct_DUMPBIN" = x; then
- DUMPBIN=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DUMPBIN=$ac_ct_DUMPBIN
- fi
-fi
-
-
- if test "$DUMPBIN" != ":"; then
- NM="$DUMPBIN"
- fi
-fi
-test -z "$NM" && NM=nm
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if test "${lt_cv_nm_interface+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_nm_interface="BSD nm"
- echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&5)
- (eval "$ac_compile" 2>conftest.err)
- cat conftest.err >&5
- (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
- (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
- cat conftest.err >&5
- (eval echo "\"\$as_me:__oline__: output\"" >&5)
- cat conftest.out >&5
- if $GREP 'External.*some_variable' conftest.out > /dev/null; then
- lt_cv_nm_interface="MS dumpbin"
- fi
- rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
-LN_S=$as_ln_s
-if test "$LN_S" = "ln -s"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
-fi
-
-# find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if test "${lt_cv_sys_max_cmd_len+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- i=0
- teststring="ABCD"
-
- case $build_os in
- msdosdjgpp*)
- # On DJGPP, this test can blow up pretty badly due to problems in libc
- # (any single argument exceeding 2000 bytes causes a buffer overrun
- # during glob expansion). Even if it were fixed, the result of this
- # check would be larger than it should be.
- lt_cv_sys_max_cmd_len=12288; # 12K is about right
- ;;
-
- gnu*)
- # Under GNU Hurd, this test is not required because there is
- # no limit to the length of command line arguments.
- # Libtool will interpret -1 as no limit whatsoever
- lt_cv_sys_max_cmd_len=-1;
- ;;
-
- cygwin* | mingw* | cegcc*)
- # On Win9x/ME, this test blows up -- it succeeds, but takes
- # about 5 minutes as the teststring grows exponentially.
- # Worse, since 9x/ME are not pre-emptively multitasking,
- # you end up with a "frozen" computer, even though with patience
- # the test eventually succeeds (with a max line length of 256k).
- # Instead, let's just punt: use the minimum linelength reported by
- # all of the supported platforms: 8192 (on NT/2K/XP).
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- amigaos*)
- # On AmigaOS with pdksh, this test takes hours, literally.
- # So we just punt and use a minimum line length of 8192.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
- # This has been around since 386BSD, at least. Likely further.
- if test -x /sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
- elif test -x /usr/sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
- else
- lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
- fi
- # And add a safety zone
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- ;;
-
- interix*)
- # We know the value 262144 and hardcode it with a safety zone (like BSD)
- lt_cv_sys_max_cmd_len=196608
- ;;
-
- osf*)
- # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
- # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
- # nice to cause kernel panics so lets avoid the loop below.
- # First set a reasonable default.
- lt_cv_sys_max_cmd_len=16384
- #
- if test -x /sbin/sysconfig; then
- case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
- *1*) lt_cv_sys_max_cmd_len=-1 ;;
- esac
- fi
- ;;
- sco3.2v5*)
- lt_cv_sys_max_cmd_len=102400
- ;;
- sysv5* | sco5v6* | sysv4.2uw2*)
- kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
- if test -n "$kargmax"; then
- lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`
- else
- lt_cv_sys_max_cmd_len=32768
- fi
- ;;
- *)
- lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
- if test -n "$lt_cv_sys_max_cmd_len"; then
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- else
- # Make teststring a little bigger before we do anything with it.
- # a 1K string should be a reasonable start.
- for i in 1 2 3 4 5 6 7 8 ; do
- teststring=$teststring$teststring
- done
- SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
- # If test is not a shell built-in, we'll probably end up computing a
- # maximum length that is only half of the actual maximum length, but
- # we can't tell.
- while { test "X"`$SHELL $0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
- = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
- test $i != 17 # 1/2 MB should be enough
- do
- i=`expr $i + 1`
- teststring=$teststring$teststring
- done
- # Only check the string length outside the loop.
- lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
- teststring=
- # Add a significant safety factor because C++ compilers can tack on
- # massive amounts of additional arguments before passing them to the
- # linker. It appears as though 1/2 is a usable value.
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
- fi
- ;;
- esac
-
-fi
-
-if test -n $lt_cv_sys_max_cmd_len ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-
-
-
-
-
-
-: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
-$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
- test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
- = c,a/b,, \
- && eval 'test $(( 1 + 1 )) -eq 2 \
- && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
- && xsi_shell=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
-$as_echo "$xsi_shell" >&6; }
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
-$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
- >/dev/null 2>&1 \
- && lt_shell_append=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
-$as_echo "$lt_shell_append" >&6; }
-
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- lt_unset=unset
-else
- lt_unset=false
-fi
-
-
-
-
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
- # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
- lt_SP2NL='tr \040 \012'
- lt_NL2SP='tr \015\012 \040\040'
- ;;
- *) # EBCDIC based system
- lt_SP2NL='tr \100 \n'
- lt_NL2SP='tr \r\n \100\100'
- ;;
-esac
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if test "${lt_cv_ld_reload_flag+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_ld_reload_flag='-r'
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
- darwin*)
- if test "$GCC" = yes; then
- reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
- else
- reload_cmds='$LD$reload_flag -o $output$reload_objs'
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OBJDUMP"; then
- ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
- ac_ct_OBJDUMP=$OBJDUMP
- # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OBJDUMP"; then
- ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OBJDUMP="objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OBJDUMP" = x; then
- OBJDUMP="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OBJDUMP=$ac_ct_OBJDUMP
- fi
-else
- OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if test "${lt_cv_deplibs_check_method+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[4-9]*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-beos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-bsdi[45]*)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- lt_cv_file_magic_test_file=/shlib/libc.so
- ;;
-
-cygwin*)
- # func_win32_libid is a shell function defined in ltmain.sh
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- ;;
-
-mingw* | pw32*)
- # Base MSYS/MinGW do not provide the 'file' command needed by
- # func_win32_libid shell function, so use a weaker test based on 'objdump',
- # unless we find 'file', for example because we are cross-compiling.
- if ( file / ) >/dev/null 2>&1; then
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- else
- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- fi
- ;;
-
-cegcc)
- # use the weaker test based on 'objdump'. See mingw*.
- lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- ;;
-
-darwin* | rhapsody*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-freebsd* | dragonfly*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- case $host_cpu in
- i*86 )
- # Not sure whether the presence of OpenBSD here was a mistake.
- # Let's accept both of them until this is cleared up.
- lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
- else
- lt_cv_deplibs_check_method=pass_all
- fi
- ;;
-
-gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-hpux10.20* | hpux11*)
- lt_cv_file_magic_cmd=/usr/bin/file
- case $host_cpu in
- ia64*)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
- lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
- ;;
- hppa*64*)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'
- lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
- ;;
- *)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
- lt_cv_file_magic_test_file=/usr/lib/libc.sl
- ;;
- esac
- ;;
-
-interix[3-9]*)
- # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
- fi
- ;;
-
-newos6*)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libnls.so
- ;;
-
-*nto* | *qnx*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-openbsd*)
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
- fi
- ;;
-
-osf3* | osf4* | osf5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-rdos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-solaris*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv4 | sysv4.3*)
- case $host_vendor in
- motorola)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- ncr)
- lt_cv_deplibs_check_method=pass_all
- ;;
- sequent)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
- ;;
- sni)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
- siemens)
- lt_cv_deplibs_check_method=pass_all
- ;;
- pc)
- lt_cv_deplibs_check_method=pass_all
- ;;
- esac
- ;;
-
-tpf*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AR+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AR"; then
- ac_ct_AR=$AR
- # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_AR"; then
- ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_AR="ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AR=$ac_cv_prog_ac_ct_AR
-if test -n "$ac_ct_AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_AR" = x; then
- AR="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- AR=$ac_ct_AR
- fi
-else
- AR="$ac_cv_prog_AR"
-fi
-
-test -z "$AR" && AR=ar
-test -z "$AR_FLAGS" && AR_FLAGS=cru
-
-
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-test -z "$STRIP" && STRIP=:
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_RANLIB+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
- ac_ct_RANLIB=$RANLIB
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_RANLIB"; then
- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_RANLIB" = x; then
- RANLIB=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- RANLIB=$ac_ct_RANLIB
- fi
-else
- RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-test -z "$RANLIB" && RANLIB=:
-
-
-
-
-
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
- case $host_os in
- openbsd*)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
- ;;
- *)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
- ;;
- esac
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
-
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[BCDEGRST]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
- symcode='[BCDT]'
- ;;
-cygwin* | mingw* | pw32* | cegcc*)
- symcode='[ABCDGISTW]'
- ;;
-hpux*)
- if test "$host_cpu" = ia64; then
- symcode='[ABCDEGRST]'
- fi
- ;;
-irix* | nonstopux*)
- symcode='[BCDEGRST]'
- ;;
-osf*)
- symcode='[BCDEGQRST]'
- ;;
-solaris*)
- symcode='[BDRT]'
- ;;
-sco3.2v5*)
- symcode='[DT]'
- ;;
-sysv4.2uw2*)
- symcode='[DT]'
- ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
- symcode='[ABDT]'
- ;;
-sysv4)
- symcode='[DFNSTU]'
- ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
- symcode='[ABCDGIRSTW]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
- opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
- ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
- # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
- symxfrm="\\1 $ac_symprfx\\2 \\2"
-
- # Write the raw and C identifiers.
- if test "$lt_cv_nm_interface" = "MS dumpbin"; then
- # Fake it for dumpbin and say T for any non-static function
- # and D for any global variable.
- # Also find C++ and __fastcall symbols from MSVC++,
- # which start with @ or ?.
- lt_cv_sys_global_symbol_pipe="$AWK '"\
-" {last_section=section; section=\$ 3};"\
-" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-" \$ 0!~/External *\|/{next};"\
-" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-" {if(hide[section]) next};"\
-" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-" s[1]~/^[@?]/{print s[1], s[1]; next};"\
-" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-" ' prfx=^$ac_symprfx"
- else
- lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
- fi
-
- # Check to see that the pipe works correctly.
- pipe_works=no
-
- rm -f conftest*
- cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- # Now try to grab the symbols.
- nlist=conftest.nm
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\""; } >&5
- (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s "$nlist"; then
- # Try sorting and uniquifying the output.
- if sort "$nlist" | uniq > "$nlist"T; then
- mv -f "$nlist"T "$nlist"
- else
- rm -f "$nlist"T
- fi
-
- # Make sure that we snagged all the symbols we need.
- if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
- if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
- cat <<_LT_EOF > conftest.$ac_ext
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
- # Now generate the symbol file.
- eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
- cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols. */
-const struct {
- const char *name;
- void *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[] =
-{
- { "@PROGRAM@", (void *) 0 },
-_LT_EOF
- $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
- cat <<\_LT_EOF >> conftest.$ac_ext
- {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
- # Now try linking the two files.
- mv conftest.$ac_objext conftstm.$ac_objext
- lt_save_LIBS="$LIBS"
- lt_save_CFLAGS="$CFLAGS"
- LIBS="conftstm.$ac_objext"
- CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext}; then
- pipe_works=yes
- fi
- LIBS="$lt_save_LIBS"
- CFLAGS="$lt_save_CFLAGS"
- else
- echo "cannot find nm_test_func in $nlist" >&5
- fi
- else
- echo "cannot find nm_test_var in $nlist" >&5
- fi
- else
- echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
- fi
- else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- fi
- rm -rf conftest* conftst*
-
- # Do not use the global_symbol_pipe unless it works.
- if test "$pipe_works" = yes; then
- break
- else
- lt_cv_sys_global_symbol_pipe=
- fi
-done
-
-fi
-
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
- lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-@%:@ Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
- enableval=$enable_libtool_lock;
-fi
-
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.$ac_objext` in
- *ELF-32*)
- HPUX_IA64_MODE="32"
- ;;
- *ELF-64*)
- HPUX_IA64_MODE="64"
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-*-*-irix6*)
- # Find out which ABI we are using.
- echo '#line __oline__ "configure"' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- if test "$lt_cv_prog_gnu_ld" = yes; then
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -melf32bsmip"
- ;;
- *N32*)
- LD="${LD-ld} -melf32bmipn32"
- ;;
- *64-bit*)
- LD="${LD-ld} -melf64bmip"
- ;;
- esac
- else
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -32"
- ;;
- *N32*)
- LD="${LD-ld} -n32"
- ;;
- *64-bit*)
- LD="${LD-ld} -64"
- ;;
- esac
- fi
- fi
- rm -rf conftest*
- ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.o` in
- *32-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_i386_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_i386"
- ;;
- ppc64-*linux*|powerpc64-*linux*)
- LD="${LD-ld} -m elf32ppclinux"
- ;;
- s390x-*linux*)
- LD="${LD-ld} -m elf_s390"
- ;;
- sparc64-*linux*)
- LD="${LD-ld} -m elf32_sparc"
- ;;
- esac
- ;;
- *64-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_x86_64_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_x86_64"
- ;;
- ppc*-*linux*|powerpc*-*linux*)
- LD="${LD-ld} -m elf64ppc"
- ;;
- s390*-*linux*|s390*-*tpf*)
- LD="${LD-ld} -m elf64_s390"
- ;;
- sparc*-*linux*)
- LD="${LD-ld} -m elf64_sparc"
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
-*-*-sco3.2v5*)
- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -belf"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if test "${lt_cv_cc_needs_belf+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- lt_cv_cc_needs_belf=yes
-else
- lt_cv_cc_needs_belf=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
- CFLAGS="$SAVE_CFLAGS"
- fi
- ;;
-sparc*-*solaris*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.o` in
- *64-bit*)
- case $lt_cv_prog_gnu_ld in
- yes*) LD="${LD-ld} -m elf64_sparc" ;;
- *)
- if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
- LD="${LD-ld} -64"
- fi
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-esac
-
-need_locks="$enable_libtool_lock"
-
-
- case $host_os in
- rhapsody* | darwin*)
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DSYMUTIL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DSYMUTIL"; then
- ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DSYMUTIL=$ac_cv_prog_DSYMUTIL
-if test -n "$DSYMUTIL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DSYMUTIL"; then
- ac_ct_DSYMUTIL=$DSYMUTIL
- # Extract the first word of "dsymutil", so it can be a program name with args.
-set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DSYMUTIL"; then
- ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
-if test -n "$ac_ct_DSYMUTIL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_DSYMUTIL" = x; then
- DSYMUTIL=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DSYMUTIL=$ac_ct_DSYMUTIL
- fi
-else
- DSYMUTIL="$ac_cv_prog_DSYMUTIL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
-set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_NMEDIT+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$NMEDIT"; then
- ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-NMEDIT=$ac_cv_prog_NMEDIT
-if test -n "$NMEDIT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_NMEDIT"; then
- ac_ct_NMEDIT=$NMEDIT
- # Extract the first word of "nmedit", so it can be a program name with args.
-set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_NMEDIT"; then
- ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_NMEDIT="nmedit"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
-if test -n "$ac_ct_NMEDIT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_NMEDIT" = x; then
- NMEDIT=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- NMEDIT=$ac_ct_NMEDIT
- fi
-else
- NMEDIT="$ac_cv_prog_NMEDIT"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
-set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_LIPO+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$LIPO"; then
- ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-LIPO=$ac_cv_prog_LIPO
-if test -n "$LIPO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_LIPO"; then
- ac_ct_LIPO=$LIPO
- # Extract the first word of "lipo", so it can be a program name with args.
-set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_LIPO"; then
- ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_LIPO="lipo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
-if test -n "$ac_ct_LIPO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_LIPO" = x; then
- LIPO=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- LIPO=$ac_ct_LIPO
- fi
-else
- LIPO="$ac_cv_prog_LIPO"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OTOOL"; then
- ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL=$ac_cv_prog_OTOOL
-if test -n "$OTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL"; then
- ac_ct_OTOOL=$OTOOL
- # Extract the first word of "otool", so it can be a program name with args.
-set dummy otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OTOOL"; then
- ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OTOOL="otool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
-if test -n "$ac_ct_OTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OTOOL" = x; then
- OTOOL=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OTOOL=$ac_ct_OTOOL
- fi
-else
- OTOOL="$ac_cv_prog_OTOOL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OTOOL64+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OTOOL64"; then
- ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL64=$ac_cv_prog_OTOOL64
-if test -n "$OTOOL64"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL64"; then
- ac_ct_OTOOL64=$OTOOL64
- # Extract the first word of "otool64", so it can be a program name with args.
-set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OTOOL64"; then
- ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OTOOL64="otool64"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
-if test -n "$ac_ct_OTOOL64"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OTOOL64" = x; then
- OTOOL64=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OTOOL64=$ac_ct_OTOOL64
- fi
-else
- OTOOL64="$ac_cv_prog_OTOOL64"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if test "${lt_cv_apple_cc_single_mod+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_apple_cc_single_mod=no
- if test -z "${LT_MULTI_MODULE}"; then
- # By default we will add the -single_module flag. You can override
- # by either setting the environment variable LT_MULTI_MODULE
- # non-empty at configure time, or by adding -multi_module to the
- # link flags.
- rm -rf libconftest.dylib*
- echo "int foo(void){return 1;}" > conftest.c
- echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&5
- $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
- -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
- _lt_result=$?
- if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
- lt_cv_apple_cc_single_mod=yes
- else
- cat conftest.err >&5
- fi
- rm -rf libconftest.dylib*
- rm -f conftest.*
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if test "${lt_cv_ld_exported_symbols_list+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_ld_exported_symbols_list=no
- save_LDFLAGS=$LDFLAGS
- echo "_main" > conftest.sym
- LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- lt_cv_ld_exported_symbols_list=yes
-else
- lt_cv_ld_exported_symbols_list=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
- case $host_os in
- rhapsody* | darwin1.[012])
- _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
- darwin1.*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- darwin*) # darwin 5.x on
- # if running on 10.5 or later, the deployment target defaults
- # to the OS version, if on x86, and 10.4, the deployment
- # target defaults to 10.4. Don't you love it?
- case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
- 10.0,*86*-darwin8*|10.0,*-darwin[91]*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- 10.[012]*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- 10.*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- esac
- ;;
- esac
- if test "$lt_cv_apple_cc_single_mod" = "yes"; then
- _lt_dar_single_mod='$single_module'
- fi
- if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
- _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
- else
- _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
- fi
- if test "$DSYMUTIL" != ":"; then
- _lt_dsymutil='~$DSYMUTIL $lib || :'
- else
- _lt_dsymutil=
- fi
- ;;
- esac
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
- CPP=
-fi
-if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CPP needs to be expanded
- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
- do
- ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
- break
-fi
-
- done
- ac_cv_prog_CPP=$CPP
-
-fi
- CPP=$ac_cv_prog_CPP
-else
- ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_header_stdc=yes
-else
- ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then :
- :
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
- (('a' <= (c) && (c) <= 'i') \
- || ('j' <= (c) && (c) <= 'r') \
- || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
- int i;
- for (i = 0; i < 256; i++)
- if (XOR (islower (i), ISLOWER (i))
- || toupper (i) != TOUPPER (i))
- return 2;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "@%:@define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
- inttypes.h stdint.h unistd.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-for ac_header in dlfcn.h
-do :
- ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_dlfcn_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_DLFCN_H 1
-_ACEOF
-
-fi
-
-done
-
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -z "$CXX"; then
- if test -n "$CCC"; then
- CXX=$CCC
- else
- if test -n "$ac_tool_prefix"; then
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CXX"; then
- ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CXX=$ac_cv_prog_CXX
-if test -n "$CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
-$as_echo "$CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CXX" && break
- done
-fi
-if test -z "$CXX"; then
- ac_ct_CXX=$CXX
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CXX"; then
- ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CXX="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
-if test -n "$ac_ct_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
-$as_echo "$ac_ct_CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CXX" && break
-done
-
- if test "x$ac_ct_CXX" = x; then
- CXX="g++"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CXX=$ac_ct_CXX
- fi
-fi
-
- fi
-fi
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
-$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
-$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GXX=yes
-else
- GXX=
-fi
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
-$as_echo_n "checking whether $CXX accepts -g... " >&6; }
-if test "${ac_cv_prog_cxx_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_cxx_werror_flag=$ac_cxx_werror_flag
- ac_cxx_werror_flag=yes
- ac_cv_prog_cxx_g=no
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-else
- CXXFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-
-else
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
-$as_echo "$ac_cv_prog_cxx_g" >&6; }
-if test "$ac_test_CXXFLAGS" = set; then
- CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
- if test "$GXX" = yes; then
- CXXFLAGS="-g -O2"
- else
- CXXFLAGS="-g"
- fi
-else
- if test "$GXX" = yes; then
- CXXFLAGS="-O2"
- else
- CXXFLAGS=
- fi
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-depcc="$CXX" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CXX_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CXX_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CXX_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
-CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
- am__fastdepCXX_TRUE=
- am__fastdepCXX_FALSE='#'
-else
- am__fastdepCXX_TRUE='#'
- am__fastdepCXX_FALSE=
-fi
-
-
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
- ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
- (test "X$CXX" != "Xg++"))) ; then
- ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5
-$as_echo_n "checking how to run the C++ preprocessor... " >&6; }
-if test -z "$CXXCPP"; then
- if test "${ac_cv_prog_CXXCPP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CXXCPP needs to be expanded
- for CXXCPP in "$CXX -E" "/lib/cpp"
- do
- ac_preproc_ok=false
-for ac_cxx_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
- Syntax error
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
- break
-fi
-
- done
- ac_cv_prog_CXXCPP=$CXXCPP
-
-fi
- CXXCPP=$ac_cv_prog_CXXCPP
-else
- ac_cv_prog_CXXCPP=$CXXCPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5
-$as_echo "$CXXCPP" >&6; }
-ac_preproc_ok=false
-for ac_cxx_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@ifdef __STDC__
-@%:@ include <limits.h>
-@%:@else
-@%:@ include <assert.h>
-@%:@endif
- Syntax error
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-@%:@include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-_lt_caught_CXX_error=yes; }
-fi
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-else
- _lt_caught_CXX_error=yes
-fi
-
-
-
-
-
-# Set options
-
-
-
-
-
- @%:@ Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
- enableval=$enable_shared; p=${PACKAGE-default}
- case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
- enable_shared=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_shared=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_shared=yes
-fi
-
-
-
-
-
-
-
-
-
- @%:@ Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
- enableval=$enable_static; p=${PACKAGE-default}
- case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
- enable_static=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_static=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_static=yes
-fi
-
-
-
-
-
-
-
-
-
-
-@%:@ Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
- withval=$with_pic; pic_mode="$withval"
-else
- pic_mode=default
-fi
-
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
- @%:@ Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
- enableval=$enable_fast_install; p=${PACKAGE-default}
- case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
- enable_fast_install=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_fast_install=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_fast_install=yes
-fi
-
-
-
-
-
-
-
-
-
-
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-test -z "$LN_S" && LN_S="ln -s"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if test "${lt_cv_objdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
- lt_cv_objdir=.libs
-else
- # MS-DOS does not allow filenames that begin with a dot.
- lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
-objdir=$lt_cv_objdir
-
-
-
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-case $host_os in
-aix3*)
- # AIX sometimes has problems with the GCC collect2 program. For some
- # reason, if we set the COLLECT_NAMES environment variable, the problems
- # vanish in a puff of smoke.
- if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
- fi
- ;;
-esac
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\(["`\\]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-for cc_temp in $compiler""; do
- case $cc_temp in
- compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
- distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
- \-*) ;;
- *) break;;
- esac
-done
-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
-
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
- if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if test "${lt_cv_path_MAGIC_CMD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MAGIC_CMD in
-[\\/*] | ?:[\\/]*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/${ac_tool_prefix}file; then
- lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-
-
-if test -z "$lt_cv_path_MAGIC_CMD"; then
- if test -n "$ac_tool_prefix"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if test "${lt_cv_path_MAGIC_CMD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MAGIC_CMD in
-[\\/*] | ?:[\\/]*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/file; then
- lt_cv_path_MAGIC_CMD="$ac_dir/file"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- else
- MAGIC_CMD=:
- fi
-fi
-
- fi
- ;;
-esac
-
-# Use C for the default configuration in the libtool script
-
-lt_save_CC="$CC"
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-objext=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-
-
-if test -n "$compiler"; then
-
-lt_prog_compiler_no_builtin_flag=
-
-if test "$GCC" = yes; then
- lt_prog_compiler_no_builtin_flag=' -fno-builtin'
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_rtti_exceptions=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="-fno-rtti -fno-exceptions"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_rtti_exceptions=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
-
-if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
- lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
-else
- :
-fi
-
-fi
-
-
-
-
-
-
- lt_prog_compiler_wl=
-lt_prog_compiler_pic=
-lt_prog_compiler_static=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-
- if test "$GCC" = yes; then
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_static='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- lt_prog_compiler_pic='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- lt_prog_compiler_pic='-DDLL_EXPORT'
- ;;
-
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- lt_prog_compiler_pic='-fno-common'
- ;;
-
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic='-fPIC'
- ;;
- esac
- ;;
-
- interix[3-9]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
-
- msdosdjgpp*)
- # Just because we use GCC doesn't mean we suddenly get shared libraries
- # on systems that don't support them.
- lt_prog_compiler_can_build_shared=no
- enable_shared=no
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic='-fPIC -shared'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- lt_prog_compiler_pic=-Kconform_pic
- fi
- ;;
-
- *)
- lt_prog_compiler_pic='-fPIC'
- ;;
- esac
- else
- # PORTME Check for flag to pass linker flags through the system compiler.
- case $host_os in
- aix*)
- lt_prog_compiler_wl='-Wl,'
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static='-Bstatic'
- else
- lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- lt_prog_compiler_pic='-DDLL_EXPORT'
- ;;
-
- hpux9* | hpux10* | hpux11*)
- lt_prog_compiler_wl='-Wl,'
- # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
- # not for PA HP-UX.
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic='+Z'
- ;;
- esac
- # Is there a better lt_prog_compiler_static that works with the bundled CC?
- lt_prog_compiler_static='${wl}-a ${wl}archive'
- ;;
-
- irix5* | irix6* | nonstopux*)
- lt_prog_compiler_wl='-Wl,'
- # PIC (with -KPIC) is the default.
- lt_prog_compiler_static='-non_shared'
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- # old Intel for x86_64 which still supported -KPIC.
- ecc*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-static'
- ;;
- # icc used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- icc* | ifort*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-fPIC'
- lt_prog_compiler_static='-static'
- ;;
- # Lahey Fortran 8.1.
- lf95*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='--shared'
- lt_prog_compiler_static='--static'
- ;;
- pgcc* | pgf77* | pgf90* | pgf95*)
- # Portland Group compilers (*not* the Pentium gcc compiler,
- # which looks to be a dead project)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-fpic'
- lt_prog_compiler_static='-Bstatic'
- ;;
- ccc*)
- lt_prog_compiler_wl='-Wl,'
- # All Alpha code is PIC.
- lt_prog_compiler_static='-non_shared'
- ;;
- xl*)
- # IBM XL C 8.0/Fortran 10.1 on PPC
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-qpic'
- lt_prog_compiler_static='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C 5.9
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- lt_prog_compiler_wl='-Wl,'
- ;;
- *Sun\ F*)
- # Sun Fortran 8.3 passes all unrecognized flags to the linker
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- lt_prog_compiler_wl=''
- ;;
- esac
- ;;
- esac
- ;;
-
- newsos6)
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic='-fPIC -shared'
- ;;
-
- osf3* | osf4* | osf5*)
- lt_prog_compiler_wl='-Wl,'
- # All OSF/1 code is PIC.
- lt_prog_compiler_static='-non_shared'
- ;;
-
- rdos*)
- lt_prog_compiler_static='-non_shared'
- ;;
-
- solaris*)
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- case $cc_basename in
- f77* | f90* | f95*)
- lt_prog_compiler_wl='-Qoption ld ';;
- *)
- lt_prog_compiler_wl='-Wl,';;
- esac
- ;;
-
- sunos4*)
- lt_prog_compiler_wl='-Qoption ld '
- lt_prog_compiler_pic='-PIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- sysv4 | sysv4.2uw2* | sysv4.3*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec ;then
- lt_prog_compiler_pic='-Kconform_pic'
- lt_prog_compiler_static='-Bstatic'
- fi
- ;;
-
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- unicos*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_can_build_shared=no
- ;;
-
- uts4*)
- lt_prog_compiler_pic='-pic'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- *)
- lt_prog_compiler_can_build_shared=no
- ;;
- esac
- fi
-
-case $host_os in
- # For platforms which do not support PIC, -DPIC is meaningless:
- *djgpp*)
- lt_prog_compiler_pic=
- ;;
- *)
- lt_prog_compiler_pic="$lt_prog_compiler_pic@&t@ -DPIC"
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5
-$as_echo "$lt_prog_compiler_pic" >&6; }
-
-
-
-
-
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$lt_prog_compiler_pic"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if test "${lt_cv_prog_compiler_pic_works+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_pic_works=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$lt_prog_compiler_pic@&t@ -DPIC"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_pic_works=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
- case $lt_prog_compiler_pic in
- "" | " "*) ;;
- *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
- esac
-else
- lt_prog_compiler_pic=
- lt_prog_compiler_can_build_shared=no
-fi
-
-fi
-
-
-
-
-
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if test "${lt_cv_prog_compiler_static_works+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_static_works=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_static_works=yes
- fi
- else
- lt_cv_prog_compiler_static_works=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_static_works" = xyes; then
- :
-else
- lt_prog_compiler_static=
-fi
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
- if test "$hard_links" = no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
-
- runpath_var=
- allow_undefined_flag=
- always_export_symbols=no
- archive_cmds=
- archive_expsym_cmds=
- compiler_needs_object=no
- enable_shared_with_static_runtimes=no
- export_dynamic_flag_spec=
- export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- hardcode_automatic=no
- hardcode_direct=no
- hardcode_direct_absolute=no
- hardcode_libdir_flag_spec=
- hardcode_libdir_flag_spec_ld=
- hardcode_libdir_separator=
- hardcode_minus_L=no
- hardcode_shlibpath_var=unsupported
- inherit_rpath=no
- link_all_deplibs=unknown
- module_cmds=
- module_expsym_cmds=
- old_archive_from_new_cmds=
- old_archive_from_expsyms_cmds=
- thread_safe_flag_spec=
- whole_archive_flag_spec=
- # include_expsyms should be a list of space-separated symbols to be *always*
- # included in the symbol list
- include_expsyms=
- # exclude_expsyms can be an extended regexp of symbols to exclude
- # it will be wrapped by ` (' and `)$', so one must not match beginning or
- # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
- # as well as any symbol that contains `d'.
- exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
- # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
- # platforms (ab)use it in PIC code, but their linkers get confused if
- # the symbol is explicitly referenced. Since portable code cannot
- # rely on this symbol name, it's probably fine to never include it in
- # preloaded symbol tables.
- # Exclude shared library initialization/finalization symbols.
- extract_expsyms_cmds=
-
- case $host_os in
- cygwin* | mingw* | pw32* | cegcc*)
- # FIXME: the MSVC++ port hasn't been tested in a loooong time
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- if test "$GCC" != yes; then
- with_gnu_ld=no
- fi
- ;;
- interix*)
- # we just hope/assume this is gcc and not c89 (= MSVC++)
- with_gnu_ld=yes
- ;;
- openbsd*)
- with_gnu_ld=no
- ;;
- linux* | k*bsd*-gnu)
- link_all_deplibs=no
- ;;
- esac
-
- ld_shlibs=yes
- if test "$with_gnu_ld" = yes; then
- # If archive_cmds runs LD, not CC, wlarc should be empty
- wlarc='${wl}'
-
- # Set some defaults for GNU ld with shared library support. These
- # are reset later if shared libraries are not supported. Putting them
- # here allows them to be overridden if necessary.
- runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec='${wl}--export-dynamic'
- # ancient GNU ld didn't support --whole-archive et. al.
- if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
- whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- whole_archive_flag_spec=
- fi
- supports_anon_versioning=no
- case `$LD -v 2>&1` in
- *GNU\ gold*) supports_anon_versioning=yes ;;
- *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
- *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
- *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
- *\ 2.11.*) ;; # other 2.11 versions
- *) supports_anon_versioning=yes ;;
- esac
-
- # See if GNU ld supports shared libraries.
- case $host_os in
- aix[3-9]*)
- # On AIX/PPC, the GNU linker is very broken
- if test "$host_cpu" != ia64; then
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support. If you
-*** really care for shared libraries, you may want to modify your PATH
-*** so that a non-GNU linker is found, and then restart.
-
-_LT_EOF
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds=''
- ;;
- m68k)
- archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- ;;
- esac
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- allow_undefined_flag=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
- # as there is no search path for DLLs.
- hardcode_libdir_flag_spec='-L$libdir'
- allow_undefined_flag=unsupported
- always_export_symbols=no
- enable_shared_with_static_runtimes=yes
- export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- interix[3-9]*)
- hardcode_direct=no
- hardcode_shlibpath_var=no
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- export_dynamic_flag_spec='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
-
- gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
- tmp_diet=no
- if test "$host_os" = linux-dietlibc; then
- case $cc_basename in
- diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
- esac
- fi
- if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
- && test "$tmp_diet" = no
- then
- tmp_addflag=
- tmp_sharedflag='-shared'
- case $cc_basename,$host_cpu in
- pgcc*) # Portland Group C compiler
- whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag'
- ;;
- pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag -Mnomain' ;;
- ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
- tmp_addflag=' -i_dynamic' ;;
- efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
- tmp_addflag=' -i_dynamic -nofor_main' ;;
- ifc* | ifort*) # Intel Fortran compiler
- tmp_addflag=' -nofor_main' ;;
- lf95*) # Lahey Fortran 8.1
- whole_archive_flag_spec=
- tmp_sharedflag='--shared' ;;
- xl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
- tmp_sharedflag='-qmkshrobj'
- tmp_addflag= ;;
- esac
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*) # Sun C 5.9
- whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- compiler_needs_object=yes
- tmp_sharedflag='-G' ;;
- *Sun\ F*) # Sun Fortran 8.3
- tmp_sharedflag='-G' ;;
- esac
- archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
-
- case $cc_basename in
- xlf*)
- # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
- whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
- hardcode_libdir_flag_spec=
- hardcode_libdir_flag_spec_ld='-rpath $libdir'
- archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
- fi
- ;;
- esac
- else
- ld_shlibs=no
- fi
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
- wlarc=
- else
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- fi
- ;;
-
- solaris*)
- if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
- case `$LD -v 2>&1` in
- *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- ;;
- *)
- # For security reasons, it is highly recommended that you always
- # use absolute paths for naming shared libraries, and exclude the
- # DT_RUNPATH tag from executables and libraries. But doing so
- # requires that you compile everything twice, which is a pain.
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
- esac
- ;;
-
- sunos4*)
- archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- wlarc=
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- *)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
- esac
-
- if test "$ld_shlibs" = no; then
- runpath_var=
- hardcode_libdir_flag_spec=
- export_dynamic_flag_spec=
- whole_archive_flag_spec=
- fi
- else
- # PORTME fill in a description of your system's linker (not GNU ld)
- case $host_os in
- aix3*)
- allow_undefined_flag=unsupported
- always_export_symbols=yes
- archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
- # Note: this linker hardcodes the directories in LIBPATH if there
- # are no directories specified by -L.
- hardcode_minus_L=yes
- if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
- # Neither direct hardcoding nor static linking is supported with a
- # broken collect2.
- hardcode_direct=unsupported
- fi
- ;;
-
- aix[4-9]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
- for ld_flag in $LDFLAGS; do
- if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
- aix_use_runtimelinking=yes
- break
- fi
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- archive_cmds=''
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- hardcode_libdir_separator=':'
- link_all_deplibs=yes
- file_list_spec='${wl}-f,'
-
- if test "$GCC" = yes; then
- case $host_os in aix4.[012]|aix4.[012].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- hardcode_direct=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- hardcode_minus_L=yes
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_libdir_separator=
- fi
- ;;
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- link_all_deplibs=no
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- export_dynamic_flag_spec='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to export.
- always_export_symbols=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- allow_undefined_flag='-berok'
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
- allow_undefined_flag="-z nodefs"
- archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- no_undefined_flag=' ${wl}-bernotok'
- allow_undefined_flag=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- whole_archive_flag_spec='$convenience'
- archive_cmds_need_lc=yes
- # This is similar to how AIX traditionally builds its shared libraries.
- archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds=''
- ;;
- m68k)
- archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- ;;
- esac
- ;;
-
- bsdi[45]*)
- export_dynamic_flag_spec=-rdynamic
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- hardcode_libdir_flag_spec=' '
- allow_undefined_flag=unsupported
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # Tell ltmain to make .dll files, not .so files.
- shrext_cmds=".dll"
- # FIXME: Setting linknames here is a bad hack.
- archive_cmds='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
- # The linker will automatically build a .lib file if we build a DLL.
- old_archive_from_new_cmds='true'
- # FIXME: Should let the user specify the lib program.
- old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
- fix_srcfile_path='`cygpath -w "$srcfile"`'
- enable_shared_with_static_runtimes=yes
- ;;
-
- darwin* | rhapsody*)
-
-
- archive_cmds_need_lc=no
- hardcode_direct=no
- hardcode_automatic=yes
- hardcode_shlibpath_var=unsupported
- whole_archive_flag_spec=''
- link_all_deplibs=yes
- allow_undefined_flag="$_lt_dar_allow_undefined"
- case $cc_basename in
- ifort*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test "$_lt_dar_can_shared" = "yes"; then
- output_verbose_link_cmd=echo
- archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
- module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
- archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
- module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
-
- else
- ld_shlibs=no
- fi
-
- ;;
-
- dgux*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- freebsd1*)
- ld_shlibs=no
- ;;
-
- # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
- # support. Future versions do this automatically, but an explicit c++rt0.o
- # does not break anything, and helps significantly (at the cost of a little
- # extra space).
- freebsd2.2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- # Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
- freebsd* | dragonfly*)
- archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- hpux9*)
- if test "$GCC" = yes; then
- archive_cmds='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- fi
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_direct=yes
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- export_dynamic_flag_spec='${wl}-E'
- ;;
-
- hpux10*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
- fi
- if test "$with_gnu_ld" = no; then
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_flag_spec_ld='+b $libdir'
- hardcode_libdir_separator=:
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- export_dynamic_flag_spec='${wl}-E'
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- fi
- ;;
-
- hpux11*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case $host_cpu in
- hppa*64*)
- archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- else
- case $host_cpu in
- hppa*64*)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- fi
- if test "$with_gnu_ld" = no; then
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- hardcode_direct=no
- hardcode_shlibpath_var=no
- ;;
- *)
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- export_dynamic_flag_spec='${wl}-E'
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- ;;
- esac
- fi
- ;;
-
- irix5* | irix6* | nonstopux*)
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- # Try to use the -exported_symbol ld option, if it does not
- # work, assume that -exports_file does not work either and
- # implicitly export all symbols.
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-int foo(void) {}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS="$save_LDFLAGS"
- else
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- inherit_rpath=yes
- link_all_deplibs=yes
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
- else
- archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
- fi
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- newsos6)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_shlibpath_var=no
- ;;
-
- *nto* | *qnx*)
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- hardcode_direct_absolute=yes
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- export_dynamic_flag_spec='${wl}-E'
- else
- case $host_os in
- openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-R$libdir'
- ;;
- *)
- archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- ;;
- esac
- fi
- else
- ld_shlibs=no
- fi
- ;;
-
- os2*)
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- allow_undefined_flag=unsupported
- archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
- old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
- ;;
-
- osf3*)
- if test "$GCC" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- ;;
-
- osf4* | osf5*) # as osf3* with the addition of -msym flag
- if test "$GCC" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
- $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
- # Both c and cxx compiler support -rpath directly
- hardcode_libdir_flag_spec='-rpath $libdir'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_separator=:
- ;;
-
- solaris*)
- no_undefined_flag=' -z defs'
- if test "$GCC" = yes; then
- wlarc='${wl}'
- archive_cmds='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- else
- case `$CC -V 2>&1` in
- *"Compilers 5.0"*)
- wlarc=''
- archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
- ;;
- *)
- wlarc='${wl}'
- archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- ;;
- esac
- fi
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_shlibpath_var=no
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'. GCC discards it without `$wl',
- # but is careful enough not to reorder.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- if test "$GCC" = yes; then
- whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- else
- whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
- fi
- ;;
- esac
- link_all_deplibs=yes
- ;;
-
- sunos4*)
- if test "x$host_vendor" = xsequent; then
- # Use $CC to link under sequent, because it throws in some extra .o
- # files that make .init and .fini sections work.
- archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
- fi
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- sysv4)
- case $host_vendor in
- sni)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes # is this really true???
- ;;
- siemens)
- ## LD is ld it makes a PLAMLIB
- ## CC just makes a GrossModule.
- archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- reload_cmds='$CC -r -o $output$reload_objs'
- hardcode_direct=no
- ;;
- motorola)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=no #Motorola manual says yes, but my tests say they lie
- ;;
- esac
- runpath_var='LD_RUN_PATH'
- hardcode_shlibpath_var=no
- ;;
-
- sysv4.3*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- export_dynamic_flag_spec='-Bexport'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ld_shlibs=yes
- fi
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
- no_undefined_flag='${wl}-z,text'
- archive_cmds_need_lc=no
- hardcode_shlibpath_var=no
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- no_undefined_flag='${wl}-z,text'
- allow_undefined_flag='${wl}-z,nodefs'
- archive_cmds_need_lc=no
- hardcode_shlibpath_var=no
- hardcode_libdir_flag_spec='${wl}-R,$libdir'
- hardcode_libdir_separator=':'
- link_all_deplibs=yes
- export_dynamic_flag_spec='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- uts4*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- *)
- ld_shlibs=no
- ;;
- esac
-
- if test x$host_vendor = xsni; then
- case $host in
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- export_dynamic_flag_spec='${wl}-Blargedynsym'
- ;;
- esac
- fi
- fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
-test "$ld_shlibs" = no && can_build_shared=no
-
-with_gnu_ld=$with_gnu_ld
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$archive_cmds_need_lc" in
-x|xyes)
- # Assume -lc should be added
- archive_cmds_need_lc=yes
-
- if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $archive_cmds in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
- $RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$lt_prog_compiler_wl
- pic_flag=$lt_prog_compiler_pic
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$allow_undefined_flag
- allow_undefined_flag=
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
- (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- then
- archive_cmds_need_lc=no
- else
- archive_cmds_need_lc=yes
- fi
- allow_undefined_flag=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5
-$as_echo "$archive_cmds_need_lc" >&6; }
- ;;
- esac
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
-
-if test "$GCC" = yes; then
- case $host_os in
- darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
- *) lt_awk_arg="/^libraries:/" ;;
- esac
- lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
- # if the path contains ";" then we assume it to be the separator
- # otherwise default to the standard path separator (i.e. ":") - it is
- # assumed that no part of a normal pathname contains ";" but that should
- # okay in the real world where ";" in dirpaths is itself problematic.
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
- else
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- # Ok, now we have the path, separated by spaces, we can step through it
- # and add multilib dir if necessary.
- lt_tmp_lt_search_path_spec=
- lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
- for lt_sys_path in $lt_search_path_spec; do
- if test -d "$lt_sys_path/$lt_multi_os_dir"; then
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
- else
- test -d "$lt_sys_path" && \
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
- fi
- done
- lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
-BEGIN {RS=" "; FS="/|\n";} {
- lt_foo="";
- lt_count=0;
- for (lt_i = NF; lt_i > 0; lt_i--) {
- if ($lt_i != "" && $lt_i != ".") {
- if ($lt_i == "..") {
- lt_count++;
- } else {
- if (lt_count == 0) {
- lt_foo="/" $lt_i lt_foo;
- } else {
- lt_count--;
- }
- }
- }
- }
- if (lt_foo != "") { lt_freq[lt_foo]++; }
- if (lt_freq[lt_foo] == 1) { print lt_foo; }
-}'`
- sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
-else
- sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
-
-aix[4-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[01] | aix4.[01].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}${shared_ext}$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='${libname}${shared_ext}'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[45]*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=".dll"
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
- # It is most probably a Windows format PATH printed by
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
- # path with ; separators, and with drive letters. We can handle the
- # drive letters (cygwin fileutils understands them), so leave them,
- # especially as we might pass files found there to a mingw objdump,
- # which wouldn't understand a cygwinified path. Ahh.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- ;;
- esac
- ;;
-
- *)
- library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
- soname_spec='${libname}${release}${major}$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-
- sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd* | dragonfly*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[123]*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[01]* | freebsdelf3.[01]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
- freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- fi
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-interix[3-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" = yes; then
- version_type=linux
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # Some binutils ld are patched to set DT_RUNPATH
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
- LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
- shlibpath_overrides_runpath=yes
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsdelf*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='NetBSD ld.elf_so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd*)
- version_type=sunos
- sys_lib_dlsearch_path_spec="/usr/lib"
- need_lib_prefix=no
- # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
- case $host_os in
- openbsd3.3 | openbsd3.3.*) need_version=yes ;;
- *) need_version=no ;;
- esac
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case $host_os in
- openbsd2.[89] | openbsd2.[89].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- ;;
-
-os2*)
- libname_spec='$name'
- shrext_cmds=".dll"
- need_lib_prefix=no
- library_names_spec='$libname${shared_ext} $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
- soname_spec='$libname${shared_ext}.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=freebsd-elf
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test "$with_gnu_ld" = yes; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
- sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
- sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
-hardcode_action=
-if test -n "$hardcode_libdir_flag_spec" ||
- test -n "$runpath_var" ||
- test "X$hardcode_automatic" = "Xyes" ; then
-
- # We can hardcode non-existent directories.
- if test "$hardcode_direct" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
- test "$hardcode_minus_L" != no; then
- # Linking always hardcodes the temporary library directory.
- hardcode_action=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- hardcode_action=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- hardcode_action=unsupported
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
-
-if test "$hardcode_action" = relink ||
- test "$inherit_rpath" = yes; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-
-
-
-
-
-
- if test "x$enable_dlopen" != xyes; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
- lt_cv_dlopen=no
- lt_cv_dlopen_libs=
-
- case $host_os in
- beos*)
- lt_cv_dlopen="load_add_on"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
- mingw* | pw32* | cegcc*)
- lt_cv_dlopen="LoadLibrary"
- lt_cv_dlopen_libs=
- ;;
-
- cygwin*)
- lt_cv_dlopen="dlopen"
- lt_cv_dlopen_libs=
- ;;
-
- darwin*)
- # if libdl is installed we need to link against it
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dl_dlopen=yes
-else
- ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
-
- lt_cv_dlopen="dyld"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
-
-fi
-
- ;;
-
- *)
- ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = x""yes; then :
- lt_cv_dlopen="shl_load"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if test "${ac_cv_lib_dld_shl_load+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char shl_load ();
-int
-main ()
-{
-return shl_load ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dld_shl_load=yes
-else
- ac_cv_lib_dld_shl_load=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = x""yes; then :
- lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
-else
- ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dl_dlopen=yes
-else
- ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if test "${ac_cv_lib_svld_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsvld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_svld_dlopen=yes
-else
- ac_cv_lib_svld_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if test "${ac_cv_lib_dld_dld_link+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dld_link ();
-int
-main ()
-{
-return dld_link ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dld_dld_link=yes
-else
- ac_cv_lib_dld_dld_link=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = x""yes; then :
- lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
- ;;
- esac
-
- if test "x$lt_cv_dlopen" != xno; then
- enable_dlopen=yes
- else
- enable_dlopen=no
- fi
-
- case $lt_cv_dlopen in
- dlopen)
- save_CPPFLAGS="$CPPFLAGS"
- test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
- save_LDFLAGS="$LDFLAGS"
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
- save_LIBS="$LIBS"
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if test "${lt_cv_dlopen_self+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- lt_cv_dlopen_self=cross
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-#line __oline__ "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}
-_LT_EOF
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) >&5 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
- x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
- x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
- esac
- else :
- # compilation failed
- lt_cv_dlopen_self=no
- fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
-
- if test "x$lt_cv_dlopen_self" = xyes; then
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if test "${lt_cv_dlopen_self_static+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- lt_cv_dlopen_self_static=cross
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-#line __oline__ "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}
-_LT_EOF
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) >&5 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
- x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
- x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
- esac
- else :
- # compilation failed
- lt_cv_dlopen_self_static=no
- fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
- fi
-
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
- ;;
- esac
-
- case $lt_cv_dlopen_self in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case $lt_cv_dlopen_self_static in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-striplib=
-old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
- test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
- test -z "$striplib" && striplib="$STRIP --strip-unneeded"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-# FIXME - insert some real tests, host_os isn't really good enough
- case $host_os in
- darwin*)
- if test -n "$STRIP" ; then
- striplib="$STRIP -x"
- old_striplib="$STRIP -S"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
- ;;
- *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- ;;
- esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
- # Report which library types will actually be built
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
-
- aix[4-9]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
-
-
-
-
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-CC="$lt_save_CC"
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-archive_cmds_need_lc_CXX=no
-allow_undefined_flag_CXX=
-always_export_symbols_CXX=no
-archive_expsym_cmds_CXX=
-compiler_needs_object_CXX=no
-export_dynamic_flag_spec_CXX=
-hardcode_direct_CXX=no
-hardcode_direct_absolute_CXX=no
-hardcode_libdir_flag_spec_CXX=
-hardcode_libdir_flag_spec_ld_CXX=
-hardcode_libdir_separator_CXX=
-hardcode_minus_L_CXX=no
-hardcode_shlibpath_var_CXX=unsupported
-hardcode_automatic_CXX=no
-inherit_rpath_CXX=no
-module_cmds_CXX=
-module_expsym_cmds_CXX=
-link_all_deplibs_CXX=unknown
-old_archive_cmds_CXX=$old_archive_cmds
-no_undefined_flag_CXX=
-whole_archive_flag_spec_CXX=
-enable_shared_with_static_runtimes_CXX=no
-
-# Source file extension for C++ test sources.
-ac_ext=cpp
-
-# Object file extension for compiled C++ test sources.
-objext=o
-objext_CXX=$objext
-
-# No sense in running all these tests if we already determined that
-# the CXX compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="int some_variable = 0;"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code='int main(int, char *[]) { return(0); }'
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-
- # save warnings/boilerplate of simple test code
- ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-
- ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-
-
- # Allow CC to be a program name with arguments.
- lt_save_CC=$CC
- lt_save_LD=$LD
- lt_save_GCC=$GCC
- GCC=$GXX
- lt_save_with_gnu_ld=$with_gnu_ld
- lt_save_path_LD=$lt_cv_path_LD
- if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
- lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
- else
- $as_unset lt_cv_prog_gnu_ld
- fi
- if test -n "${lt_cv_path_LDCXX+set}"; then
- lt_cv_path_LD=$lt_cv_path_LDCXX
- else
- $as_unset lt_cv_path_LD
- fi
- test -z "${LDCXX+set}" || LD=$LDCXX
- CC=${CXX-"c++"}
- compiler=$CC
- compiler_CXX=$CC
- for cc_temp in $compiler""; do
- case $cc_temp in
- compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
- distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
- \-*) ;;
- *) break;;
- esac
-done
-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
-
-
- if test -n "$compiler"; then
- # We don't want -fno-exception when compiling C++ code, so set the
- # no_builtin_flag separately
- if test "$GXX" = yes; then
- lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'
- else
- lt_prog_compiler_no_builtin_flag_CXX=
- fi
-
- if test "$GXX" = yes; then
- # Set up default GNU C++ configuration
-
-
-
-@%:@ Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
- withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
- with_gnu_ld=no
-fi
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [\\/]* | ?:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if test "${lt_cv_path_LD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if test "${lt_cv_prog_gnu_ld+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-
-
-
-
-
-
- # Check if GNU C++ uses GNU ld as the underlying linker, since the
- # archiving commands below assume that GNU ld is being used.
- if test "$with_gnu_ld" = yes; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
-
- # If archive_cmds runs LD, not CC, wlarc should be empty
- # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
- # investigate it a little bit more. (MM)
- wlarc='${wl}'
-
- # ancient GNU ld didn't support --whole-archive et. al.
- if eval "`$CC -print-prog-name=ld` --help 2>&1" |
- $GREP 'no-whole-archive' > /dev/null; then
- whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- whole_archive_flag_spec_CXX=
- fi
- else
- with_gnu_ld=no
- wlarc=
-
- # A generic and very simple default shared library creation
- # command for GNU C++ for the case where it uses the native
- # linker, instead of GNU ld. If possible, this setting should
- # overridden to take advantage of the native linker features on
- # the platform it is being used on.
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- fi
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- GXX=no
- with_gnu_ld=no
- wlarc=
- fi
-
- # PORTME: fill in a description of your system's C++ link characteristics
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
- ld_shlibs_CXX=yes
- case $host_os in
- aix3*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aix[4-9]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
- for ld_flag in $LDFLAGS; do
- case $ld_flag in
- *-brtl*)
- aix_use_runtimelinking=yes
- break
- ;;
- esac
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- archive_cmds_CXX=''
- hardcode_direct_CXX=yes
- hardcode_direct_absolute_CXX=yes
- hardcode_libdir_separator_CXX=':'
- link_all_deplibs_CXX=yes
- file_list_spec_CXX='${wl}-f,'
-
- if test "$GXX" = yes; then
- case $host_os in aix4.[012]|aix4.[012].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- hardcode_direct_CXX=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- hardcode_minus_L_CXX=yes
- hardcode_libdir_flag_spec_CXX='-L$libdir'
- hardcode_libdir_separator_CXX=
- fi
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- export_dynamic_flag_spec_CXX='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to
- # export.
- always_export_symbols_CXX=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- allow_undefined_flag_CXX='-berok'
- # Determine the default libpath from the value encoded in an empty
- # executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
-
- archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib'
- allow_undefined_flag_CXX="-z nodefs"
- archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- no_undefined_flag_CXX=' ${wl}-bernotok'
- allow_undefined_flag_CXX=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- whole_archive_flag_spec_CXX='$convenience'
- archive_cmds_need_lc_CXX=yes
- # This is similar to how AIX traditionally builds its shared
- # libraries.
- archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- allow_undefined_flag_CXX=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- ld_shlibs_CXX=no
- fi
- ;;
-
- chorus*)
- case $cc_basename in
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,
- # as there is no search path for DLLs.
- hardcode_libdir_flag_spec_CXX='-L$libdir'
- allow_undefined_flag_CXX=unsupported
- always_export_symbols_CXX=no
- enable_shared_with_static_runtimes_CXX=yes
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- ld_shlibs_CXX=no
- fi
- ;;
- darwin* | rhapsody*)
-
-
- archive_cmds_need_lc_CXX=no
- hardcode_direct_CXX=no
- hardcode_automatic_CXX=yes
- hardcode_shlibpath_var_CXX=unsupported
- whole_archive_flag_spec_CXX=''
- link_all_deplibs_CXX=yes
- allow_undefined_flag_CXX="$_lt_dar_allow_undefined"
- case $cc_basename in
- ifort*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test "$_lt_dar_can_shared" = "yes"; then
- output_verbose_link_cmd=echo
- archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
- module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
- archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
- module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
- if test "$lt_cv_apple_cc_single_mod" != "yes"; then
- archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
- archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
- fi
-
- else
- ld_shlibs_CXX=no
- fi
-
- ;;
-
- dgux*)
- case $cc_basename in
- ec++*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- freebsd[12]*)
- # C++ shared libraries reported to be fairly broken before
- # switch to ELF
- ld_shlibs_CXX=no
- ;;
-
- freebsd-elf*)
- archive_cmds_need_lc_CXX=no
- ;;
-
- freebsd* | dragonfly*)
- # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
- # conventions
- ld_shlibs_CXX=yes
- ;;
-
- gnu*)
- ;;
-
- hpux9*)
- hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
- export_dynamic_flag_spec_CXX='${wl}-E'
- hardcode_direct_CXX=yes
- hardcode_minus_L_CXX=yes # Not in the search PATH,
- # but as the default
- # location of the library.
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aCC*)
- archive_cmds_CXX='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- hpux10*|hpux11*)
- if test $with_gnu_ld = no; then
- hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- ;;
- *)
- export_dynamic_flag_spec_CXX='${wl}-E'
- ;;
- esac
- fi
- case $host_cpu in
- hppa*64*|ia64*)
- hardcode_direct_CXX=no
- hardcode_shlibpath_var_CXX=no
- ;;
- *)
- hardcode_direct_CXX=yes
- hardcode_direct_absolute_CXX=yes
- hardcode_minus_L_CXX=yes # Not in the search PATH,
- # but as the default
- # location of the library.
- ;;
- esac
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aCC*)
- case $host_cpu in
- hppa*64*)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- if test $with_gnu_ld = no; then
- case $host_cpu in
- hppa*64*)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- fi
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- interix[3-9]*)
- hardcode_direct_CXX=no
- hardcode_shlibpath_var_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- archive_expsym_cmds_CXX='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
- irix5* | irix6*)
- case $cc_basename in
- CC*)
- # SGI C++
- archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
-
- # Archives containing C++ object files must be created using
- # "CC -ar", where "CC" is the IRIX C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'
- ;;
- *)
- if test "$GXX" = yes; then
- if test "$with_gnu_ld" = no; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
- fi
- fi
- link_all_deplibs_CXX=yes
- ;;
- esac
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
- inherit_rpath_CXX=yes
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
- archive_expsym_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
-
- # Archives containing C++ object files must be created using
- # "CC -Bstatic", where "CC" is the KAI C++ compiler.
- old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'
- ;;
- icpc* | ecpc* )
- # Intel C++
- with_gnu_ld=yes
- # version 8.0 and above of icpc choke on multiply defined symbols
- # if we add $predep_objects and $postdep_objects, however 7.1 and
- # earlier do not add the objects themselves.
- case `$CC -V 2>&1` in
- *"Version 7."*)
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- *) # Version 8.0 or newer
- tmp_idyn=
- case $host_cpu in
- ia64*) tmp_idyn=' -i_dynamic';;
- esac
- archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- esac
- archive_cmds_need_lc_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- case `$CC -V` in
- *pgCC\ [1-5]* | *pgcpp\ [1-5]*)
- prelink_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
- compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
- old_archive_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
- $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
- $RANLIB $oldlib'
- archive_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- archive_expsym_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- *) # Version 6 will use weak symbols
- archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- esac
-
- hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- whole_archive_flag_spec_CXX='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- ;;
- cxx*)
- # Compaq C++
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
-
- runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec_CXX='-rpath $libdir'
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- xl*)
- # IBM XL 8.0 on PPC, with GNU ld
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- no_undefined_flag_CXX=' -zdefs'
- archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- whole_archive_flag_spec_CXX='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- compiler_needs_object_CXX=yes
-
- # Not sure whether something based on
- # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
- # would be better.
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
- ;;
- esac
- ;;
- esac
- ;;
-
- lynxos*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- m88k*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- mvs*)
- case $cc_basename in
- cxx*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
- wlarc=
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- hardcode_direct_CXX=yes
- hardcode_shlibpath_var_CXX=no
- fi
- # Workaround some broken pre-1.5 toolchains
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
- ;;
-
- *nto* | *qnx*)
- ld_shlibs_CXX=yes
- ;;
-
- openbsd2*)
- # C++ shared libraries are fairly broken
- ld_shlibs_CXX=no
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- hardcode_direct_CXX=yes
- hardcode_shlibpath_var_CXX=no
- hardcode_direct_absolute_CXX=yes
- archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
- export_dynamic_flag_spec_CXX='${wl}-E'
- whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- fi
- output_verbose_link_cmd=echo
- else
- ld_shlibs_CXX=no
- fi
- ;;
-
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- hardcode_libdir_separator_CXX=:
-
- # Archives containing C++ object files must be created using
- # the KAI C++ compiler.
- case $host in
- osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;
- *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;
- esac
- ;;
- RCC*)
- # Rational C++ 2.4.1
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- cxx*)
- case $host in
- osf3*)
- allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- ;;
- *)
- allow_undefined_flag_CXX=' -expect_unresolved \*'
- archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
- echo "-hidden">> $lib.exp~
- $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
- $RM $lib.exp'
- hardcode_libdir_flag_spec_CXX='-rpath $libdir'
- ;;
- esac
-
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*'
- case $host in
- osf3*)
- archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- *)
- archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- esac
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- psos*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- lcc*)
- # Lucid
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- archive_cmds_need_lc_CXX=yes
- no_undefined_flag_CXX=' -zdefs'
- archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- hardcode_shlibpath_var_CXX=no
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'
- ;;
- esac
- link_all_deplibs_CXX=yes
-
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
- ;;
- gcx*)
- # Green Hills C++ Compiler
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-
- # The C++ compiler must be used to create the archive.
- old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
- ;;
- *)
- # GNU C++ compiler with Solaris linker
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- no_undefined_flag_CXX=' ${wl}-z ${wl}defs'
- if $CC --version | $GREP -v '^2\.7' > /dev/null; then
- archive_cmds_CXX='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- else
- # g++ 2.7 appears to require `-G' NOT `-shared' on this
- # platform.
- archive_cmds_CXX='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-R $wl$libdir'
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- whole_archive_flag_spec_CXX='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- ;;
- esac
- fi
- ;;
- esac
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
- no_undefined_flag_CXX='${wl}-z,text'
- archive_cmds_need_lc_CXX=no
- hardcode_shlibpath_var_CXX=no
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- no_undefined_flag_CXX='${wl}-z,text'
- allow_undefined_flag_CXX='${wl}-z,nodefs'
- archive_cmds_need_lc_CXX=no
- hardcode_shlibpath_var_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-R,$libdir'
- hardcode_libdir_separator_CXX=':'
- link_all_deplibs_CXX=yes
- export_dynamic_flag_spec_CXX='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- vxworks*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
-$as_echo "$ld_shlibs_CXX" >&6; }
- test "$ld_shlibs_CXX" = no && can_build_shared=no
-
- GCC_CXX="$GXX"
- LD_CXX="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- # Dependencies to place before and after the object being linked:
-predep_objects_CXX=
-postdep_objects_CXX=
-predeps_CXX=
-postdeps_CXX=
-compiler_lib_search_path_CXX=
-
-cat > conftest.$ac_ext <<_LT_EOF
-class Foo
-{
-public:
- Foo (void) { a = 0; }
-private:
- int a;
-};
-_LT_EOF
-
-if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- # Parse the compiler output and extract the necessary
- # objects, libraries and library flags.
-
- # Sentinel used to keep track of whether or not we are before
- # the conftest object file.
- pre_test_object_deps_done=no
-
- for p in `eval "$output_verbose_link_cmd"`; do
- case $p in
-
- -L* | -R* | -l*)
- # Some compilers place space between "-{L,R}" and the path.
- # Remove the space.
- if test $p = "-L" ||
- test $p = "-R"; then
- prev=$p
- continue
- else
- prev=
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- case $p in
- -L* | -R*)
- # Internal compiler library paths should come after those
- # provided the user. The postdeps already come after the
- # user supplied libs so there is no need to process them.
- if test -z "$compiler_lib_search_path_CXX"; then
- compiler_lib_search_path_CXX="${prev}${p}"
- else
- compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} ${prev}${p}"
- fi
- ;;
- # The "-l" case would never come before the object being
- # linked, so don't bother handling this case.
- esac
- else
- if test -z "$postdeps_CXX"; then
- postdeps_CXX="${prev}${p}"
- else
- postdeps_CXX="${postdeps_CXX} ${prev}${p}"
- fi
- fi
- ;;
-
- *.$objext)
- # This assumes that the test object file only shows up
- # once in the compiler output.
- if test "$p" = "conftest.$objext"; then
- pre_test_object_deps_done=yes
- continue
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- if test -z "$predep_objects_CXX"; then
- predep_objects_CXX="$p"
- else
- predep_objects_CXX="$predep_objects_CXX $p"
- fi
- else
- if test -z "$postdep_objects_CXX"; then
- postdep_objects_CXX="$p"
- else
- postdep_objects_CXX="$postdep_objects_CXX $p"
- fi
- fi
- ;;
-
- *) ;; # Ignore the rest.
-
- esac
- done
-
- # Clean up.
- rm -f a.out a.exe
-else
- echo "libtool.m4: error: problem compiling CXX test program"
-fi
-
-$RM -f confest.$objext
-
-# PORTME: override above test on systems where it is broken
-case $host_os in
-interix[3-9]*)
- # Interix 3.5 installs completely hosed .la files for C++, so rather than
- # hack all around it, let's just trust "g++" to DTRT.
- predep_objects_CXX=
- postdep_objects_CXX=
- postdeps_CXX=
- ;;
-
-linux*)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
-
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- if test "$solaris_use_stlport4" != yes; then
- postdeps_CXX='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-
-solaris*)
- case $cc_basename in
- CC*)
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- # Adding this requires a known-good setup of shared libraries for
- # Sun compiler versions before 5.6, else PIC objects from an old
- # archive will be linked into the output, leading to subtle bugs.
- if test "$solaris_use_stlport4" != yes; then
- postdeps_CXX='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-esac
-
-
-case " $postdeps_CXX " in
-*" -lc "*) archive_cmds_need_lc_CXX=no ;;
-esac
- compiler_lib_search_dirs_CXX=
-if test -n "${compiler_lib_search_path_CXX}"; then
- compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- lt_prog_compiler_wl_CXX=
-lt_prog_compiler_pic_CXX=
-lt_prog_compiler_static_CXX=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-
- # C++ specific cases for pic, static, wl, etc.
- if test "$GXX" = yes; then
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static_CXX='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
- mingw* | cygwin* | os2* | pw32* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
- ;;
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- lt_prog_compiler_pic_CXX='-fno-common'
- ;;
- *djgpp*)
- # DJGPP does not support shared libraries at all
- lt_prog_compiler_pic_CXX=
- ;;
- interix[3-9]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
- sysv4*MP*)
- if test -d /usr/nec; then
- lt_prog_compiler_pic_CXX=-Kconform_pic
- fi
- ;;
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- ;;
- *)
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- esac
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic_CXX='-fPIC -shared'
- ;;
- *)
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- esac
- else
- case $host_os in
- aix[4-9]*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static_CXX='-Bstatic'
- else
- lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
- chorus*)
- case $cc_basename in
- cxch68*)
- # Green Hills C++ Compiler
- # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
- ;;
- esac
- ;;
- dgux*)
- case $cc_basename in
- ec++*)
- lt_prog_compiler_pic_CXX='-KPIC'
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- freebsd* | dragonfly*)
- # FreeBSD uses GNU C++
- ;;
- hpux9* | hpux10* | hpux11*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='${wl}-a ${wl}archive'
- if test "$host_cpu" != ia64; then
- lt_prog_compiler_pic_CXX='+Z'
- fi
- ;;
- aCC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='${wl}-a ${wl}archive'
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic_CXX='+Z'
- ;;
- esac
- ;;
- *)
- ;;
- esac
- ;;
- interix*)
- # This is c89, which is MS Visual C++ (no shared libs)
- # Anyone wants to do a port?
- ;;
- irix5* | irix6* | nonstopux*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='-non_shared'
- # CC pic flag -KPIC is the default.
- ;;
- *)
- ;;
- esac
- ;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # KAI C++ Compiler
- lt_prog_compiler_wl_CXX='--backend -Wl,'
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- ecpc* )
- # old Intel C++ for x86_64 which still supported -KPIC.
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-static'
- ;;
- icpc* )
- # Intel C++, used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-fPIC'
- lt_prog_compiler_static_CXX='-static'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-fpic'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- cxx*)
- # Compaq C++
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_static_CXX='-non_shared'
- ;;
- xlc* | xlC*)
- # IBM XL 8.0 on PPC
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-qpic'
- lt_prog_compiler_static_CXX='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- lt_prog_compiler_wl_CXX='-Qoption ld '
- ;;
- esac
- ;;
- esac
- ;;
- lynxos*)
- ;;
- m88k*)
- ;;
- mvs*)
- case $cc_basename in
- cxx*)
- lt_prog_compiler_pic_CXX='-W c,exportall'
- ;;
- *)
- ;;
- esac
- ;;
- netbsd* | netbsdelf*-gnu)
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic_CXX='-fPIC -shared'
- ;;
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- lt_prog_compiler_wl_CXX='--backend -Wl,'
- ;;
- RCC*)
- # Rational C++ 2.4.1
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- cxx*)
- # Digital/Compaq C++
- lt_prog_compiler_wl_CXX='-Wl,'
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_static_CXX='-non_shared'
- ;;
- *)
- ;;
- esac
- ;;
- psos*)
- ;;
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- lt_prog_compiler_wl_CXX='-Qoption ld '
- ;;
- gcx*)
- # Green Hills C++ Compiler
- lt_prog_compiler_pic_CXX='-PIC'
- ;;
- *)
- ;;
- esac
- ;;
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- lt_prog_compiler_pic_CXX='-pic'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- lcc*)
- # Lucid
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- esac
- ;;
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- lt_prog_compiler_pic_CXX='-KPIC'
- ;;
- *)
- ;;
- esac
- ;;
- vxworks*)
- ;;
- *)
- lt_prog_compiler_can_build_shared_CXX=no
- ;;
- esac
- fi
-
-case $host_os in
- # For platforms which do not support PIC, -DPIC is meaningless:
- *djgpp*)
- lt_prog_compiler_pic_CXX=
- ;;
- *)
- lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX@&t@ -DPIC"
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_CXX" >&5
-$as_echo "$lt_prog_compiler_pic_CXX" >&6; }
-
-
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$lt_prog_compiler_pic_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }
-if test "${lt_cv_prog_compiler_pic_works_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_pic_works_CXX=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$lt_prog_compiler_pic_CXX@&t@ -DPIC"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_pic_works_CXX=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }
-
-if test x"$lt_cv_prog_compiler_pic_works_CXX" = xyes; then
- case $lt_prog_compiler_pic_CXX in
- "" | " "*) ;;
- *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;
- esac
-else
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_can_build_shared_CXX=no
-fi
-
-fi
-
-
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if test "${lt_cv_prog_compiler_static_works_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_static_works_CXX=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_static_works_CXX=yes
- fi
- else
- lt_cv_prog_compiler_static_works_CXX=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }
-
-if test x"$lt_cv_prog_compiler_static_works_CXX" = xyes; then
- :
-else
- lt_prog_compiler_static_CXX=
-fi
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o_CXX=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o_CXX=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o_CXX=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:__oline__: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o_CXX=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
-
-
-
-
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o_CXX" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
- if test "$hard_links" = no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
-
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- case $host_os in
- aix[4-9]*)
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- ;;
- pw32*)
- export_symbols_cmds_CXX="$ltdll_cmds"
- ;;
- cygwin* | mingw* | cegcc*)
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;/^.*[ ]__nm__/s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- linux* | k*bsd*-gnu)
- link_all_deplibs_CXX=no
- ;;
- *)
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- esac
- exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
-$as_echo "$ld_shlibs_CXX" >&6; }
-test "$ld_shlibs_CXX" = no && can_build_shared=no
-
-with_gnu_ld_CXX=$with_gnu_ld
-
-
-
-
-
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$archive_cmds_need_lc_CXX" in
-x|xyes)
- # Assume -lc should be added
- archive_cmds_need_lc_CXX=yes
-
- if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $archive_cmds_CXX in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
- $RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$lt_prog_compiler_wl_CXX
- pic_flag=$lt_prog_compiler_pic_CXX
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$allow_undefined_flag_CXX
- allow_undefined_flag_CXX=
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
- (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- then
- archive_cmds_need_lc_CXX=no
- else
- archive_cmds_need_lc_CXX=yes
- fi
- allow_undefined_flag_CXX=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_CXX" >&5
-$as_echo "$archive_cmds_need_lc_CXX" >&6; }
- ;;
- esac
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
-
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
-
-aix[4-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[01] | aix4.[01].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}${shared_ext}$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='${libname}${shared_ext}'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[45]*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=".dll"
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
- # It is most probably a Windows format PATH printed by
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
- # path with ; separators, and with drive letters. We can handle the
- # drive letters (cygwin fileutils understands them), so leave them,
- # especially as we might pass files found there to a mingw objdump,
- # which wouldn't understand a cygwinified path. Ahh.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- ;;
- esac
- ;;
-
- *)
- library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
- soname_spec='${libname}${release}${major}$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd* | dragonfly*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[123]*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[01]* | freebsdelf3.[01]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
- freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- fi
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-interix[3-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" = yes; then
- version_type=linux
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # Some binutils ld are patched to set DT_RUNPATH
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \
- LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
- shlibpath_overrides_runpath=yes
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsdelf*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='NetBSD ld.elf_so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd*)
- version_type=sunos
- sys_lib_dlsearch_path_spec="/usr/lib"
- need_lib_prefix=no
- # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
- case $host_os in
- openbsd3.3 | openbsd3.3.*) need_version=yes ;;
- *) need_version=no ;;
- esac
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case $host_os in
- openbsd2.[89] | openbsd2.[89].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- ;;
-
-os2*)
- libname_spec='$name'
- shrext_cmds=".dll"
- need_lib_prefix=no
- library_names_spec='$libname${shared_ext} $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
- soname_spec='$libname${shared_ext}.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=freebsd-elf
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test "$with_gnu_ld" = yes; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
- sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
- sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
-hardcode_action_CXX=
-if test -n "$hardcode_libdir_flag_spec_CXX" ||
- test -n "$runpath_var_CXX" ||
- test "X$hardcode_automatic_CXX" = "Xyes" ; then
-
- # We can hardcode non-existent directories.
- if test "$hardcode_direct_CXX" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" != no &&
- test "$hardcode_minus_L_CXX" != no; then
- # Linking always hardcodes the temporary library directory.
- hardcode_action_CXX=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- hardcode_action_CXX=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- hardcode_action_CXX=unsupported
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5
-$as_echo "$hardcode_action_CXX" >&6; }
-
-if test "$hardcode_action_CXX" = relink ||
- test "$inherit_rpath_CXX" = yes; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-
-
-
-
-
-
-
- fi # test -n "$compiler"
-
- CC=$lt_save_CC
- LDCXX=$LD
- LD=$lt_save_LD
- GCC=$lt_save_GCC
- with_gnu_ld=$lt_save_with_gnu_ld
- lt_cv_path_LDCXX=$lt_cv_path_LD
- lt_cv_path_LD=$lt_save_path_LD
- lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
- lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-
-
-
-
-
-
-
-
-
-
-
-
- ac_config_commands="$ac_config_commands libtool"
-
-
-
-
-# Only expand once:
-
-
-
-@%:@ Check whether --enable-double was given.
-if test "${enable_double+set}" = set; then :
- enableval=$enable_double; case "${enableval}" in
- yes) double=true ;;
- no) double=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-double" "$LINENO" 5 ;;
-esac
-else
- double=false
-fi
-
-
-if (test x$double = xtrue) ;then
-
-$as_echo "@%:@define MGL_USE_DOUBLE 1" >>confdefs.h
-
-else
-
-$as_echo "@%:@define MGL_USE_DOUBLE 0" >>confdefs.h
-
-fi
-
-@%:@ Check whether --enable-all was given.
-if test "${enable_all+set}" = set; then :
- enableval=$enable_all; case "${enableval}" in
- yes) all=true ;;
- no) all=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-all" "$LINENO" 5 ;;
-esac
-else
- all=false
-fi
-
-
-@%:@ Check whether --enable-langall was given.
-if test "${enable_langall+set}" = set; then :
- enableval=$enable_langall; case "${enableval}" in
- yes) langall=true ;;
- no) langall=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-langall" "$LINENO" 5 ;;
-esac
-else
- langall=false
-fi
-
-
-@%:@ Check whether --enable-pthread was given.
-if test "${enable_pthread+set}" = set; then :
- enableval=$enable_pthread; case "${enableval}" in
- yes) pthread=true ;;
- no) pthread=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-pthread" "$LINENO" 5 ;;
-esac
-else
- pthread=true
-fi
-
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
-if test "x$ac_cv_header_pthread_h" = x""yes; then :
- (test x$all = xtrue || test x$pthread = xtrue) && PTHREAD_FLAGS=-DHAVE_PTHREAD
-else
- (test x$all = xtrue || test x$pthread = xtrue) && echo "Please install posix threads headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpthread" >&5
-$as_echo_n "checking for main in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpthread $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_pthread_main=yes
-else
- ac_cv_lib_pthread_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_main" >&5
-$as_echo "$ac_cv_lib_pthread_main" >&6; }
-if test "x$ac_cv_lib_pthread_main" = x""yes; then :
- (test x$all = xtrue || test x$pthread = xtrue) && PTHREAD_LIBS=-lpthread
-else
- (test x$all = xtrue || test x$pthread = xtrue) && echo "Please install posix threads library" && exit
-fi
-
- if test x$pthread = xtrue; then
- USE_PTHREAD_TRUE=
- USE_PTHREAD_FALSE='#'
-else
- USE_PTHREAD_TRUE='#'
- USE_PTHREAD_FALSE=
-fi
-
-
-@%:@ Check whether --enable-gsl was given.
-if test "${enable_gsl+set}" = set; then :
- enableval=$enable_gsl; case "${enableval}" in
- yes) gsl=true ;;
- no) gsl=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-gsl" "$LINENO" 5 ;;
-esac
-else
- gsl=true
-fi
-
-
-if (test x$all = xtrue || test x$gsl = xtrue) ;then
- GSL_PROG=gsl-config
- # Extract the first word of "$GSL_PROG", so it can be a program name with args.
-set dummy $GSL_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_GSL_FLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$GSL_FLAGS"; then
- ac_cv_prog_GSL_FLAGS="$GSL_FLAGS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_GSL_FLAGS="`$GSL_PROG --cflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-GSL_FLAGS=$ac_cv_prog_GSL_FLAGS
-if test -n "$GSL_FLAGS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GSL_FLAGS" >&5
-$as_echo "$GSL_FLAGS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "$GSL_PROG", so it can be a program name with args.
-set dummy $GSL_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_GSL_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$GSL_LIBS"; then
- ac_cv_prog_GSL_LIBS="$GSL_LIBS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_GSL_LIBS="`$GSL_PROG --libs`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-GSL_LIBS=$ac_cv_prog_GSL_LIBS
-if test -n "$GSL_LIBS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GSL_LIBS" >&5
-$as_echo "$GSL_LIBS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "$GSL_LIBS" ;then
- test_gsl=true
- else
- echo "Please install gsl headers and libraries and make sure that \
- path to $GSL_PROG exist in your PATH"
- exit
- fi
-else
- GSL_FLAGS=-DNO_GSL
-
-fi
- if test x$test_gsl = xtrue; then
- USE_GSL_TRUE=
- USE_GSL_FALSE='#'
-else
- USE_GSL_TRUE='#'
- USE_GSL_FALSE=
-fi
-
-
-case "${host}" in
- *darwin*)
- GL_LIBS="-framework OpenGL"
-
- ;;
-
- *w32*)
- GL_LIBS=opengl32
- ac_fn_cxx_check_header_mongrel "$LINENO" "GL/gl.h" "ac_cv_header_GL_gl_h" "$ac_includes_default"
-if test "x$ac_cv_header_GL_gl_h" = x""yes; then :
-
-else
- echo "Please install OpenGL headers (GL/gl.h)"; exit
-fi
-
-
- as_ac_Lib=`$as_echo "ac_cv_lib_${GL_LIBS}''_main" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -l${GL_LIBS}" >&5
-$as_echo_n "checking for main in -l${GL_LIBS}... " >&6; }
-if eval "test \"\${$as_ac_Lib+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-l${GL_LIBS} $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- eval "$as_ac_Lib=yes"
-else
- eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
- GL_LIBS=-l${GL_LIBS}
-else
- echo "Please install OpenGL library (lib${GL_LIBS}.a)"; exit
-fi
-
- ;;
-
- *)
- GL_LIBS=GL
- ac_fn_cxx_check_header_mongrel "$LINENO" "GL/gl.h" "ac_cv_header_GL_gl_h" "$ac_includes_default"
-if test "x$ac_cv_header_GL_gl_h" = x""yes; then :
-
-else
- echo "Please install OpenGL headers (GL/gl.h)"; exit
-fi
-
-
- as_ac_Lib=`$as_echo "ac_cv_lib_${GL_LIBS}''_main" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -l${GL_LIBS}" >&5
-$as_echo_n "checking for main in -l${GL_LIBS}... " >&6; }
-if eval "test \"\${$as_ac_Lib+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-l${GL_LIBS} $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- eval "$as_ac_Lib=yes"
-else
- eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
- GL_LIBS=-l${GL_LIBS}
-else
- echo "Please install OpenGL library (lib${GL_LIBS}.a)"; exit
-fi
-
- ;;
-
-esac
- if (test x$all = xtrue || test x$glut = xtrue); then
- USE_GLUT_TRUE=
- USE_GLUT_FALSE='#'
-else
- USE_GLUT_TRUE='#'
- USE_GLUT_FALSE=
-fi
-
-
-case "${host}" in
- *linux*)
- ADDON_FLAGS=-DNO_COLOR_ARRAY
- ;;
-
- *)
- ;;
-esac
-
-@%:@ Check whether --enable-hdf5 was given.
-if test "${enable_hdf5+set}" = set; then :
- enableval=$enable_hdf5; case "${enableval}" in
- yes) hdf5=true ;;
- no) hdf5=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf5" "$LINENO" 5 ;;
-esac
-else
- hdf5=false
-fi
-
-@%:@ Check whether --enable-hdf5_18 was given.
-if test "${enable_hdf5_18+set}" = set; then :
- enableval=$enable_hdf5_18; case "${enableval}" in
- yes) hdf5_18=true ;;
- no) hdf5_18=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf5_18" "$LINENO" 5 ;;
-esac
-else
- hdf5_18=false
-fi
-
-#AC_CHECK_HEADER(hdf5.h,[(test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_FLAGS=-DHAVE_HDF5 AC_SUBST(HDF5_FLAGS)],
-ac_fn_cxx_check_header_mongrel "$LINENO" "hdf5.h" "ac_cv_header_hdf5_h" "$ac_includes_default"
-if test "x$ac_cv_header_hdf5_h" = x""yes; then :
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_FLAGS=-DHAVE_HDF5
-else
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && echo "Please install hdf5 headers" && exit
-fi
-
-
-if ((test x$all = xtrue || test x$hdf5 = xtrue) && test x$hdf5_18 = xfalse) ;then
- HDF5_FLAGS="$HDF5_FLAGS -DH5_USE_16_API"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lhdf5" >&5
-$as_echo_n "checking for main in -lhdf5... " >&6; }
-if test "${ac_cv_lib_hdf5_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lhdf5 $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_hdf5_main=yes
-else
- ac_cv_lib_hdf5_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_hdf5_main" >&5
-$as_echo "$ac_cv_lib_hdf5_main" >&6; }
-if test "x$ac_cv_lib_hdf5_main" = x""yes; then :
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_LIBS=-lhdf5
-else
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && echo "Please install hdf5 library" && exit
-fi
-
- if (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue); then
- USE_HDF5_TRUE=
- USE_HDF5_FALSE='#'
-else
- USE_HDF5_TRUE='#'
- USE_HDF5_FALSE=
-fi
-
-
-
-@%:@ Check whether --enable-hdf4 was given.
-if test "${enable_hdf4+set}" = set; then :
- enableval=$enable_hdf4; case "${enableval}" in
- yes) hdf4=true ;;
- no) hdf4=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf4" "$LINENO" 5 ;;
-esac
-else
- hdf4=false
-fi
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "hdf/mfhdf.h" "ac_cv_header_hdf_mfhdf_h" "$ac_includes_default"
-if test "x$ac_cv_header_hdf_mfhdf_h" = x""yes; then :
- (test x$all = xtrue || test x$hdf4 = xtrue) && HDF4_FLAGS=-DHAVE_HDF4
-else
- (test x$all = xtrue || test x$hdf4 = xtrue) && echo "Please install hdf4 headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ldf" >&5
-$as_echo_n "checking for main in -ldf... " >&6; }
-if test "${ac_cv_lib_df_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldf $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_df_main=yes
-else
- ac_cv_lib_df_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_df_main" >&5
-$as_echo "$ac_cv_lib_df_main" >&6; }
-if test "x$ac_cv_lib_df_main" = x""yes; then :
- (test x$all = xtrue || test x$hdf4 = xtrue) && HDF4_LIBS="-lmfhdf -ldf"
-else
- (test x$all = xtrue || test x$hdf4 = xtrue) && echo "Please install hdf4 library" && exit
-fi
-
- if (test x$all = xtrue || test x$hdf4 = xtrue); then
- USE_HDF4_TRUE=
- USE_HDF4_FALSE='#'
-else
- USE_HDF4_TRUE='#'
- USE_HDF4_FALSE=
-fi
-
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "png.h" "ac_cv_header_png_h" "$ac_includes_default"
-if test "x$ac_cv_header_png_h" = x""yes; then :
-
-else
- echo "Please install png headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpng" >&5
-$as_echo_n "checking for main in -lpng... " >&6; }
-if test "${ac_cv_lib_png_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpng $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_png_main=yes
-else
- ac_cv_lib_png_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_png_main" >&5
-$as_echo "$ac_cv_lib_png_main" >&6; }
-if test "x$ac_cv_lib_png_main" = x""yes; then :
- PNG_LIBS=-lpng
-else
- echo "Please install png library" && exit
-fi
-
-
-@%:@ Check whether --enable-jpeg was given.
-if test "${enable_jpeg+set}" = set; then :
- enableval=$enable_jpeg; case "${enableval}" in
- yes) jpeg=true ;;
- no) jpeg=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-jpeg" "$LINENO" 5 ;;
-esac
-else
- jpeg=false
-fi
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "jpeglib.h" "ac_cv_header_jpeglib_h" "$ac_includes_default"
-if test "x$ac_cv_header_jpeglib_h" = x""yes; then :
- (test x$all = xtrue || test x$jpeg = xtrue) && JPEG_FLAGS=-DHAVE_JPEG
-else
- (test x$all = xtrue || test x$jpeg = xtrue) && echo "Please install jpeg headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ljpeg" >&5
-$as_echo_n "checking for main in -ljpeg... " >&6; }
-if test "${ac_cv_lib_jpeg_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ljpeg $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_jpeg_main=yes
-else
- ac_cv_lib_jpeg_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_main" >&5
-$as_echo "$ac_cv_lib_jpeg_main" >&6; }
-if test "x$ac_cv_lib_jpeg_main" = x""yes; then :
- (test x$all = xtrue || test x$jpeg = xtrue) && JPEG_LIBS=-ljpeg
-else
- (test x$all = xtrue || test x$jpeg = xtrue) && echo "Please install jpeg library" && exit
-fi
-
- if (test x$all = xtrue || test x$jpeg = xtrue); then
- USE_JPEG_TRUE=
- USE_JPEG_FALSE='#'
-else
- USE_JPEG_TRUE='#'
- USE_JPEG_FALSE=
-fi
-
-
-@%:@ Check whether --enable-u3d was given.
-if test "${enable_u3d+set}" = set; then :
- enableval=$enable_u3d; case "${enableval}" in
- yes) u3d=true ;;
- no) u3d=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-u3d" "$LINENO" 5 ;;
-esac
-else
- u3d=false
-fi
-
-@%:@ Check whether --enable-pdf was given.
-if test "${enable_pdf+set}" = set; then :
- enableval=$enable_pdf; case "${enableval}" in
- yes) pdf=true; u3d=true ;;
- no) pdf=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-pdf" "$LINENO" 5 ;;
-esac
-else
- pdf=false
-fi
-
-if test "x$pdf" == xtrue; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lhpdf" >&5
-$as_echo_n "checking for main in -lhpdf... " >&6; }
-if test "${ac_cv_lib_hpdf_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lhpdf $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_hpdf_main=yes
-else
- ac_cv_lib_hpdf_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_hpdf_main" >&5
-$as_echo "$ac_cv_lib_hpdf_main" >&6; }
-if test "x$ac_cv_lib_hpdf_main" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_LIBHPDF 1
-_ACEOF
-
- LIBS="-lhpdf $LIBS"
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-pdf was given, but test for libharu failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-fi
-if test "x$pdf" == xtrue; then :
- for ac_header in hpdf.h
-do :
- ac_fn_cxx_check_header_mongrel "$LINENO" "hpdf.h" "ac_cv_header_hpdf_h" "$ac_includes_default"
-if test "x$ac_cv_header_hpdf_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_HPDF_H 1
-_ACEOF
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-pdf was given, but test for headers failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-done
-
-fi
- if test x$pdf = xtrue; then
- USE_PDF_TRUE=
- USE_PDF_FALSE='#'
-else
- USE_PDF_TRUE='#'
- USE_PDF_FALSE=
-fi
-
-
-if test "x$u3d" == xtrue; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lIDTF" >&5
-$as_echo_n "checking for main in -lIDTF... " >&6; }
-if test "${ac_cv_lib_IDTF_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lIDTF -lm -ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_IDTF_main=yes
-else
- ac_cv_lib_IDTF_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_IDTF_main" >&5
-$as_echo "$ac_cv_lib_IDTF_main" >&6; }
-if test "x$ac_cv_lib_IDTF_main" = x""yes; then :
- U3D_LIBS="-lIDTF -lm -ldl"
-
-
-$as_echo "@%:@define HAVE_U3D 1" >>confdefs.h
-
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-u3d was given, but test for libIDTF failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-
-fi
-if test "x$u3d" == xtrue; then :
- for ac_header in u3d/SceneConverterLib.h
-do :
- ac_fn_cxx_check_header_mongrel "$LINENO" "u3d/SceneConverterLib.h" "ac_cv_header_u3d_SceneConverterLib_h" "$ac_includes_default"
-if test "x$ac_cv_header_u3d_SceneConverterLib_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-@%:@define HAVE_U3D_SCENECONVERTERLIB_H 1
-_ACEOF
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-u3d was given, but test for headers failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-done
-
-fi
- if test x$u3d = xtrue; then
- USE_U3D_TRUE=
- USE_U3D_FALSE='#'
-else
- USE_U3D_TRUE='#'
- USE_U3D_FALSE=
-fi
-
-
-@%:@ Check whether --enable-fltk was given.
-if test "${enable_fltk+set}" = set; then :
- enableval=$enable_fltk; case "${enableval}" in
- yes) fltk=true ;;
- no) fltk=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-fltk" "$LINENO" 5 ;;
-esac
-else
- fltk=false
-fi
-
-if (test x$all = xtrue || test x$fltk = xtrue) ;then
- FLTK_PROG=fltk-config
- # Extract the first word of "$FLTK_PROG", so it can be a program name with args.
-set dummy $FLTK_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_FLTK_FLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$FLTK_FLAGS"; then
- ac_cv_prog_FLTK_FLAGS="$FLTK_FLAGS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_FLTK_FLAGS="`$FLTK_PROG --cxxflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-FLTK_FLAGS=$ac_cv_prog_FLTK_FLAGS
-if test -n "$FLTK_FLAGS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FLTK_FLAGS" >&5
-$as_echo "$FLTK_FLAGS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "$FLTK_PROG", so it can be a program name with args.
-set dummy $FLTK_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_FLTK_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$FLTK_LIBS"; then
- ac_cv_prog_FLTK_LIBS="$FLTK_LIBS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_FLTK_LIBS="`$FLTK_PROG --ldflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-FLTK_LIBS=$ac_cv_prog_FLTK_LIBS
-if test -n "$FLTK_LIBS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FLTK_LIBS" >&5
-$as_echo "$FLTK_LIBS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "$FLTK_FLAGS" && test "$FLTK_LIBS" ;then
- test_fltk=true
- else
- echo "Please install FLTK headers and libraries and make sure that \
- path to $FLTK_PROG exist in your PATH"
- exit
- fi
-fi
- if test x$test_fltk = xtrue; then
- USE_FLTK_TRUE=
- USE_FLTK_FALSE='#'
-else
- USE_FLTK_TRUE='#'
- USE_FLTK_FALSE=
-fi
-
-
-@%:@ Check whether --enable-qt was given.
-if test "${enable_qt+set}" = set; then :
- enableval=$enable_qt; case "${enableval}" in
- yes) qt=true ;;
- no) qt=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-qt" "$LINENO" 5 ;;
-esac
-else
- qt=false
-fi
-
-if (test x$all = xtrue || test x$qt = xtrue) ;then
-
-
-
-
- test x"$TROLL" != x && echo 'ViM rox emacs.'
-
-
-@%:@ Check whether --with-qt was given.
-if test "${with_qt+set}" = set; then :
- withval=$with_qt; QT_PATH=$withval
-else
- QT_PATH=
-fi
-
-
- # Find Qt.
- if test -d /usr/local/Trolltech; then
- # Try to find the latest version.
- tmp_qt_paths=`echo /usr/local/Trolltech/*/bin | tr ' ' '\n' | sort -nr \
- | xargs | sed 's/ */:/g'`
- fi
-
- # Find qmake.
- for ac_prog in qmake-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_QMAKE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $QMAKE in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_QMAKE="$QMAKE" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_DIR:$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_QMAKE="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-QMAKE=$ac_cv_path_QMAKE
-if test -n "$QMAKE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $QMAKE" >&5
-$as_echo "$QMAKE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$QMAKE" && break
-done
-test -n "$QMAKE" || QMAKE="missing"
-
- if test x"$QMAKE" = xmissing; then
- for ac_prog in qmake${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_QMAKE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $QMAKE in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_QMAKE="$QMAKE" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_DIR:$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_QMAKE="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-QMAKE=$ac_cv_path_QMAKE
-if test -n "$QMAKE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $QMAKE" >&5
-$as_echo "$QMAKE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$QMAKE" && break
-done
-test -n "$QMAKE" || QMAKE="missing"
-
- if test x"$QMAKE" = xmissing; then
- as_fn_error $? "Cannot find qmake in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find moc (Meta Object Compiler).
- for ac_prog in moc-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MOC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MOC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_MOC="$MOC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_MOC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-MOC=$ac_cv_path_MOC
-if test -n "$MOC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MOC" >&5
-$as_echo "$MOC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$MOC" && break
-done
-test -n "$MOC" || MOC="missing"
-
- if test x"$MOC" = xmissing; then
- for ac_prog in moc${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MOC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MOC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_MOC="$MOC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_MOC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-MOC=$ac_cv_path_MOC
-if test -n "$MOC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MOC" >&5
-$as_echo "$MOC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$MOC" && break
-done
-test -n "$MOC" || MOC="missing"
-
- if test x"$MOC" = xmissing; then
- as_fn_error $? "Cannot find moc (Meta Object Compiler) in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find uic (User Interface Compiler).
- for ac_prog in uic-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_UIC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $UIC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_UIC="$UIC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_UIC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-UIC=$ac_cv_path_UIC
-if test -n "$UIC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $UIC" >&5
-$as_echo "$UIC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$UIC" && break
-done
-test -n "$UIC" || UIC="missing"
-
- if test x"$UIC" = xmissing; then
- for ac_prog in uic${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_UIC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $UIC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_UIC="$UIC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_UIC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-UIC=$ac_cv_path_UIC
-if test -n "$UIC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $UIC" >&5
-$as_echo "$UIC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$UIC" && break
-done
-test -n "$UIC" || UIC="missing"
-
- if test x"$UIC" = xmissing; then
- as_fn_error $? "Cannot find uic (User Interface Compiler) in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find rcc (Qt Resource Compiler).
- for ac_prog in rcc-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_RCC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $RCC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_RCC="$RCC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_RCC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-RCC=$ac_cv_path_RCC
-if test -n "$RCC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RCC" >&5
-$as_echo "$RCC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$RCC" && break
-done
-test -n "$RCC" || RCC="false"
-
- if test x"$RCC" = xfalse; then
- for ac_prog in rcc${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_RCC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $RCC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_RCC="$RCC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_RCC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-RCC=$ac_cv_path_RCC
-if test -n "$RCC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RCC" >&5
-$as_echo "$RCC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$RCC" && break
-done
-test -n "$RCC" || RCC="false"
-
- if test x"$RCC" = xfalse; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find rcc (Qt Resource Compiler) in your PATH. Try using --with-qt." >&5
-$as_echo "$as_me: WARNING: Cannot find rcc (Qt Resource Compiler) in your PATH. Try using --with-qt." >&2;}
- fi
- fi
-
- # If we don't know the path to Qt, guess it from the path to qmake.
- if test x"$QT_PATH" = x; then
- QT_PATH=`dirname "$QMAKE"`
- fi
- if test x"$QT_PATH" = x; then
- as_fn_error $? "Cannot find the path to your Qt install. Use --with-qt." "$LINENO" 5
- fi
-
-
- # Get ready to build a test-app with Qt.
-
- # Look for a writable temporary directory.
-
- if test x"$TMPDIR" = x || test ! -d "$TMPDIR" || test ! -w "$TMPDIR"; then
- echo "$as_me:$LINENO: no TMPDIR or bad TMPDIR ($TMPDIR)" \
- >&5
- for i in /tmp /var/tmp; do
- if test -d "$i" && test -w "$i"; then
- TMPDIR=$i
- export TMPDIR
- echo "$as_me:$LINENO: setting TMPDIR=$TMPDIR" >&5
- break
- fi
- done
- fi
-
- # Kludge!! QMake has a very strange behavior. For instance, if you
- # install Qt under your $HOME and run QMake somewhere else under your
- # $HOME, it will try to be clever and produce Makefiles with relative
- # include paths. In order to avoid this, we will test QMake from a
- # temporary directory (usually /tmp). Note that this problem was only
- # observed with Qt 4.
- my_configure_pwd=`pwd`
- my_tmpdir="$TMPDIR/conftest$$.dir"
- test -d "$my_tmpdir" || mkdir "$my_tmpdir"
- if test -w "$my_tmpdir" && cd "$my_tmpdir"
- then
- :
- else
- as_fn_error $? "Cannot cd to or write in $my_tmpdir" "$LINENO" 5
- fi
- cat >conftest.h <<_ASEOF
-#include <QObject>
-
-class Foo: public QObject
-{
- Q_OBJECT;
-public:
- Foo();
- ~Foo() {}
-public slots:
- void setValue(int value);
-signals:
- void valueChanged(int newValue);
-private:
- int value_;
-};
-_ASEOF
-
- cat >conftest.cpp <<_ASEOF
-#include "conftest.h"
-Foo::Foo()
- : value_ (42)
-{
- connect(this, SIGNAL(valueChanged(int)), this, SLOT(setValue(int)));
-}
-
-void Foo::setValue(int value)
-{
- value_ = value;
-}
-
-int main()
-{
- Foo f;
-}
-_ASEOF
- if $QMAKE -project; then :; else
- as_fn_error $? "Calling $QMAKE -project failed." "$LINENO" 5
- fi
-
- # Find the .pro file generated by qmake.
- pro_file='conftest.dir.pro'
- test -f $pro_file || pro_file=`echo *.pro`
- if test -f "$pro_file"; then :; else
- as_fn_error $? "Can't find the .pro file generated by Qmake." "$LINENO" 5
- fi
-
-
-
-
-
-
-
- echo "$as_me:$LINENO: Invoking $QMAKE on $pro_file" >&5
- sed 's/^/| /' "$pro_file" >&5
-
- if $QMAKE; then :; else
- as_fn_error $? "Calling $QMAKE failed." "$LINENO" 5
- fi
- # Try to compile a simple Qt app.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we can build a simple Qt app" >&5
-$as_echo_n "checking whether we can build a simple Qt app... " >&6; }
-if test "${at_cv_qt_build+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_qt_build=ko
- : ${MAKE=make}
-
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 4'
- else
- echo "$as_me:$LINENO: Build failed, trying to #include <qobject.h> \
-instead" >&5
- sed 's/<QObject>/<qobject.h>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 3'
- else
- # Sometimes (such as on Debian) build will fail because Qt hasn't been
- # installed in debug mode and qmake tries (by default) to build apps in
- # debug mode => Try again in release mode.
- echo "$as_me:$LINENO: Build failed, trying to enforce release mode" \
- >&5
-
- # Tweak the value of CONFIG in the .pro file for +release.
-
- qt_conf=''
- for at_mod in +release; do
- at_mod=`echo "$at_mod" | sed 's/^-//; tough
- s/^+//; beef
- :ough
- s/^/CONFIG -= /;n
- :eef
- s/^/CONFIG += /'`
- qt_conf="$qt_conf
-$at_mod"
- done
- echo "$qt_conf" | sed 1d >>"$pro_file"
-
-
- sed 's/<qobject.h>/<QObject>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 4, release mode forced'
- else
- echo "$as_me:$LINENO: Build failed, trying to #include <qobject.h> \
-instead" >&5
- sed 's/<QObject>/<qobject.h>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 3, release mode forced'
- else
- at_cv_qt_build=ko
- echo "$as_me:$LINENO: failed program was:" >&5
- sed 's/^/| /' conftest.h >&5
- echo "$as_me:$LINENO: failed program was:" >&5
- sed 's/^/| /' conftest.cpp >&5
- fi # if make with Qt3-style #include and release mode forced.
- fi # if make with Qt4-style #include and release mode forced.
- fi # if make with Qt3-style #include.
- fi # if make with Qt4-style #include.
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_qt_build" >&5
-$as_echo "$at_cv_qt_build" >&6; }
- if test x"$at_cv_qt_build" = xko; then
- as_fn_error $? "Cannot build a test Qt program" "$LINENO" 5
- fi
- QT_VERSION_MAJOR=`echo "$at_cv_qt_build" | sed 's/^^0-9*//'`
-
-
- # This sed filter is applied after an expression of the form: /^FOO.*=/!d;
- # It starts by removing the beginning of the line, removing references to
- # SUBLIBS, removing unnecessary whitespaces at the beginning, and prefixes
- # all variable uses by QT_.
- qt_sed_filter='s///;
- s/$(SUBLIBS)//g;
- s/^ *//;
- s/\$(\(@<:@A-Z_@:>@@<:@A-Z_@:>@*\))/$(QT_\1)/g'
-
- # Find the Makefile (qmake happens to generate a fake Makefile which invokes
- # a Makefile.Debug or Makefile.Release). We we have both, we'll pick the
- # Makefile.Release. The reason is that the main difference is that release
- # uses -Os and debug -g. We can override -Os by passing another -O but we
- # usually don't override -g.
- if test -f Makefile.Release; then
- at_mfile='Makefile.Release'
- else
- at_mfile='Makefile'
- fi
- if test -f $at_mfile; then :; else
- cd "$my_configure_pwd"
- as_fn_error $? "Cannot find the Makefile generated by qmake." "$LINENO" 5
- fi
-
- # Find the DEFINES of Qt (should have been named CPPFLAGS).
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the DEFINES to use with Qt" >&5
-$as_echo_n "checking for the DEFINES to use with Qt... " >&6; }
-if test "${at_cv_env_QT_DEFINES+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_DEFINES=`sed "/^DEFINES@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_DEFINES" >&5
-$as_echo "$at_cv_env_QT_DEFINES" >&6; }
- QT_DEFINES=$at_cv_env_QT_DEFINES
-
-
- # Find the CFLAGS of Qt (We can use Qt in C?!)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the CFLAGS to use with Qt" >&5
-$as_echo_n "checking for the CFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_CFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_CFLAGS=`sed "/^CFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_CFLAGS" >&5
-$as_echo "$at_cv_env_QT_CFLAGS" >&6; }
- QT_CFLAGS=$at_cv_env_QT_CFLAGS
-
-
- # Find the CXXFLAGS of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the CXXFLAGS to use with Qt" >&5
-$as_echo_n "checking for the CXXFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_CXXFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_CXXFLAGS=`sed "/^CXXFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_CXXFLAGS" >&5
-$as_echo "$at_cv_env_QT_CXXFLAGS" >&6; }
- QT_CXXFLAGS=$at_cv_env_QT_CXXFLAGS
-
-
- # Find the INCPATH of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the INCPATH to use with Qt" >&5
-$as_echo_n "checking for the INCPATH to use with Qt... " >&6; }
-if test "${at_cv_env_QT_INCPATH+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_INCPATH=`sed "/^INCPATH@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_INCPATH" >&5
-$as_echo "$at_cv_env_QT_INCPATH" >&6; }
- QT_INCPATH=$at_cv_env_QT_INCPATH
-
-
- QT_CPPFLAGS="$at_cv_env_QT_DEFINES $at_cv_env_QT_INCPATH"
-
-
- # Find the LFLAGS of Qt (Should have been named LDFLAGS)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the LDFLAGS to use with Qt" >&5
-$as_echo_n "checking for the LDFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_LDFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_LDFLAGS=`sed "/^LDFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_LDFLAGS" >&5
-$as_echo "$at_cv_env_QT_LDFLAGS" >&6; }
- QT_LFLAGS=$at_cv_env_QT_LDFLAGS
-
- QT_LDFLAGS=$at_cv_env_QT_LDFLAGS
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether host operating system is Darwin" >&5
-$as_echo_n "checking whether host operating system is Darwin... " >&6; }
- at_darwin="no"
- case $host_os in
- darwin*)
- at_darwin="yes"
- ;;
- esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_darwin" >&5
-$as_echo "$at_darwin" >&6; }
-
- # Find the LIBS of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the LIBS to use with Qt" >&5
-$as_echo_n "checking for the LIBS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_LIBS=`sed "/^LIBS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
- if test x$at_darwin = xyes; then
- # Fix QT_LIBS: as of today Libtool (GNU Libtool 1.5.23a) doesn't handle
- # -F properly. The "bug" has been fixed on 22 October 2006
- # by Peter O'Gorman but we provide backward compatibility here.
- at_cv_env_QT_LIBS=`echo "$at_cv_env_QT_LIBS" \
- | sed 's/^-F/-Wl,-F/;s/ -F/ -Wl,-F/g'`
- fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_LIBS" >&5
-$as_echo "$at_cv_env_QT_LIBS" >&6; }
- QT_LIBS=$at_cv_env_QT_LIBS
-
-
- cd "$my_configure_pwd" || echo 'WTF!'
- rm -rf "$my_tmpdir"
-
-
- if test x"$QMAKE" = x; then
- as_fn_error $? "\$QMAKE is empty. \
-Did you invoke AT@&t at _WITH_QT before AT@&t at _REQUIRE_QT_VERSION?" "$LINENO" 5
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Qt's version" >&5
-$as_echo_n "checking for Qt's version... " >&6; }
-if test "${at_cv_QT_VERSION+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- echo "$as_me:$LINENO: Running $QMAKE --version:" >&5
- $QMAKE --version >&5 2>&1
- qmake_version_sed='/^.*\([0-9]\.[0-9]\.[0-9]\).*$/!d;s//\1/'
- at_cv_QT_VERSION=`$QMAKE --version 2>&1 | sed "$qmake_version_sed"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_QT_VERSION" >&5
-$as_echo "$at_cv_QT_VERSION" >&6; }
- if test x"$at_cv_QT_VERSION" = x; then
- as_fn_error $? "Cannot detect Qt's version." "$LINENO" 5
- fi
- QT_VERSION=$at_cv_QT_VERSION
-
- as_arg_v1=$QT_VERSION
-as_arg_v2=4.3
-awk "$as_awk_strverscmp" v1="$as_arg_v1" v2="$as_arg_v2" /dev/null
-case $? in @%:@(
- 1) :
- as_fn_error $? "This package requires Qt 4.3 or above." "$LINENO" 5 ;; @%:@(
- 0) :
- ;; @%:@(
- 2) :
- ;; @%:@(
- *) :
- ;;
-esac
-
- test_qt=true
-fi
- if test x$test_qt = xtrue; then
- USE_QT_TRUE=
- USE_QT_FALSE='#'
-else
- USE_QT_TRUE='#'
- USE_QT_FALSE=
-fi
-
-
-@%:@ Check whether --enable-python was given.
-if test "${enable_python+set}" = set; then :
- enableval=$enable_python; case "${enableval}" in
- yes) python=true ;;
- no) python=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-python" "$LINENO" 5 ;;
-esac
-else
- python=false
-fi
-
-if (test x$langall = xtrue || test x$python = xtrue) ;then
- # Extract the first word of "python-config", so it can be a program name with args.
-set dummy python-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_PYTHON_HEADERS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$PYTHON_HEADERS"; then
- ac_cv_prog_PYTHON_HEADERS="$PYTHON_HEADERS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_PYTHON_HEADERS="`python-config --cflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-PYTHON_HEADERS=$ac_cv_prog_PYTHON_HEADERS
-if test -n "$PYTHON_HEADERS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON_HEADERS" >&5
-$as_echo "$PYTHON_HEADERS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "swig$EXEEXT", so it can be a program name with args.
-set dummy swig$EXEEXT; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_HAVE_SWIG+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$HAVE_SWIG"; then
- ac_cv_prog_HAVE_SWIG="$HAVE_SWIG" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_HAVE_SWIG="true"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-HAVE_SWIG=$ac_cv_prog_HAVE_SWIG
-if test -n "$HAVE_SWIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HAVE_SWIG" >&5
-$as_echo "$HAVE_SWIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if (test "$PYTHON_HEADERS" && test "$HAVE_SWIG") ;then
- test_python=true
-
-
-
-
- # Find any Python interpreter.
- if test -z "$PYTHON"; then
- for ac_prog in python python2 python3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_PYTHON+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $PYTHON in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-PYTHON=$ac_cv_path_PYTHON
-if test -n "$PYTHON"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
-$as_echo "$PYTHON" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$PYTHON" && break
-done
-test -n "$PYTHON" || PYTHON=":"
-
- fi
- am_display_PYTHON=python
-
-
- if test "$PYTHON" = :; then
- as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
- else
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
-$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
-if test "${am_cv_python_version+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
-$as_echo "$am_cv_python_version" >&6; }
- PYTHON_VERSION=$am_cv_python_version
-
-
-
- PYTHON_PREFIX='${prefix}'
-
- PYTHON_EXEC_PREFIX='${exec_prefix}'
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
-$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
-if test "${am_cv_python_platform+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
-$as_echo "$am_cv_python_platform" >&6; }
- PYTHON_PLATFORM=$am_cv_python_platform
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
-$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
-if test "${am_cv_python_pythondir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$prefix" = xNONE
- then
- am_py_prefix=$ac_default_prefix
- else
- am_py_prefix=$prefix
- fi
- am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null ||
- echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pythondir in
- $am_py_prefix*)
- am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
- am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
- ;;
- *)
- case $am_py_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
-$as_echo "$am_cv_python_pythondir" >&6; }
- pythondir=$am_cv_python_pythondir
-
-
-
- pkgpythondir=\${pythondir}/$PACKAGE
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
-$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
-if test "${am_cv_python_pyexecdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$exec_prefix" = xNONE
- then
- am_py_exec_prefix=$am_py_prefix
- else
- am_py_exec_prefix=$exec_prefix
- fi
- am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null ||
- echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pyexecdir in
- $am_py_exec_prefix*)
- am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
- am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
- ;;
- *)
- case $am_py_exec_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
-$as_echo "$am_cv_python_pyexecdir" >&6; }
- pyexecdir=$am_cv_python_pyexecdir
-
-
-
- pkgpyexecdir=\${pyexecdir}/$PACKAGE
-
-
-
- fi
-
-
- else
- echo Please install python-dev and swig packages
- exit
- fi
-fi
- if test x$test_python = xtrue ; then
- USE_PYTHON_TRUE=
- USE_PYTHON_FALSE='#'
-else
- USE_PYTHON_TRUE='#'
- USE_PYTHON_FALSE=
-fi
-
-
-@%:@ Check whether --enable-octave was given.
-if test "${enable_octave+set}" = set; then :
- enableval=$enable_octave; case "${enableval}" in
- yes) octave=true ;;
- no) octave=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-octave" "$LINENO" 5 ;;
-esac
-else
- octave=false
-fi
-
-if (test x$langall = xtrue || test x$octave = xtrue) ;then
- # Extract the first word of "octave-config", so it can be a program name with args.
-set dummy octave-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OCTAVE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OCTAVE"; then
- ac_cv_prog_OCTAVE="$OCTAVE" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OCTAVE="octave-config"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OCTAVE=$ac_cv_prog_OCTAVE
-if test -n "$OCTAVE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCTAVE" >&5
-$as_echo "$OCTAVE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-# find Octave arch
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Octave arch" >&5
-$as_echo_n "checking for Octave arch... " >&6; }
- OCTAVE_ARCH=`$OCTAVE -p CANONICAL_HOST_TYPE`-`$OCTAVE -p API_VERSION`
- OCTAVE_INCFLAGS="-I`$OCTAVE -p OCTINCLUDEDIR`"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCTAVE_ARCH" >&5
-$as_echo "$OCTAVE_ARCH" >&6; }
- OCTAVE_ARCH=$OCTAVE_ARCH
-
- OCTAVE_INCFLAGS=$OCTAVE_INCFLAGS
-
- test_octave=true
-fi
- if test x$test_octave = xtrue ; then
- USE_OCTAVE_TRUE=
- USE_OCTAVE_FALSE='#'
-else
- USE_OCTAVE_TRUE='#'
- USE_OCTAVE_FALSE=
-fi
-
-
-AM_CXXFLAGS="$AM_CXXFLAGS -Wall $GSL_FLAGS"
-
-
-ac_config_files="$ac_config_files Makefile src/Makefile include/Makefile widgets/Makefile lang/Makefile utils/Makefile examples/Makefile"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
- for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
-
- (set) 2>&1 |
- case $as_nl`(ac_space=' '; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- # `set' does not quote correctly, so add quotes: double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \.
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;; #(
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-) |
- sed '
- /^ac_cv_env_/b end
- t clear
- :clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
- if test -w "$cache_file"; then
- test "x$cache_file" != "x/dev/null" &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
- cat confcache >$cache_file
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
- fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIB@&t at OBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
- ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
- # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
- # will be set to the directory where LIBOBJS objects are built.
- as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
- as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIB@&t at OBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
- if test -n "$EXEEXT"; then
- am__EXEEXT_TRUE=
- am__EXEEXT_FALSE='#'
-else
- am__EXEEXT_TRUE='#'
- am__EXEEXT_FALSE=
-fi
-
-if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
- as_fn_error $? "conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PTHREAD_TRUE}" && test -z "${USE_PTHREAD_FALSE}"; then
- as_fn_error $? "conditional \"USE_PTHREAD\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_GSL_TRUE}" && test -z "${USE_GSL_FALSE}"; then
- as_fn_error $? "conditional \"USE_GSL\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_GLUT_TRUE}" && test -z "${USE_GLUT_FALSE}"; then
- as_fn_error $? "conditional \"USE_GLUT\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_HDF5_TRUE}" && test -z "${USE_HDF5_FALSE}"; then
- as_fn_error $? "conditional \"USE_HDF5\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_HDF4_TRUE}" && test -z "${USE_HDF4_FALSE}"; then
- as_fn_error $? "conditional \"USE_HDF4\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_JPEG_TRUE}" && test -z "${USE_JPEG_FALSE}"; then
- as_fn_error $? "conditional \"USE_JPEG\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PDF_TRUE}" && test -z "${USE_PDF_FALSE}"; then
- as_fn_error $? "conditional \"USE_PDF\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_U3D_TRUE}" && test -z "${USE_U3D_FALSE}"; then
- as_fn_error $? "conditional \"USE_U3D\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_FLTK_TRUE}" && test -z "${USE_FLTK_FALSE}"; then
- as_fn_error $? "conditional \"USE_FLTK\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_QT_TRUE}" && test -z "${USE_QT_FALSE}"; then
- as_fn_error $? "conditional \"USE_QT\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PYTHON_TRUE}" && test -z "${USE_PYTHON_FALSE}"; then
- as_fn_error $? "conditional \"USE_PYTHON\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_OCTAVE_TRUE}" && test -z "${USE_OCTAVE_FALSE}"; then
- as_fn_error $? "conditional \"USE_OCTAVE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-
-: ${CONFIG_STATUS=./config.status}
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in @%:@(
- *posix*) :
- set -o posix ;; @%:@(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in @%:@(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-case $0 in @%:@((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD]
-@%:@ ----------------------------------------
-@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-@%:@ script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} @%:@ as_fn_error
-
-
-@%:@ as_fn_set_status STATUS
-@%:@ -----------------------
-@%:@ Set @S|@? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} @%:@ as_fn_set_status
-
-@%:@ as_fn_exit STATUS
-@%:@ -----------------
-@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} @%:@ as_fn_exit
-
-@%:@ as_fn_unset VAR
-@%:@ ---------------
-@%:@ Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-@%:@ as_fn_append VAR VALUE
-@%:@ ----------------------
-@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take
-@%:@ advantage of any shell optimizations that allow amortized linear growth over
-@%:@ repeated appends, instead of the typical quadratic growth present in naive
-@%:@ implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-@%:@ as_fn_arith ARG...
-@%:@ ------------------
-@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the
-@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments
-@%:@ must be portable across @S|@(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in @%:@(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -p'
- fi
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-@%:@ as_fn_mkdir_p
-@%:@ -------------
-@%:@ Create "@S|@as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} @%:@ as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in @%:@(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by mathgl $as_me 2.0, which was
-generated by GNU Autoconf 2.67. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration. Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
- -h, --help print this help, then exit
- -V, --version print version number and configuration settings, then exit
- --config print configuration, then exit
- -q, --quiet, --silent
- do not print progress messages
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
- --header=FILE[:TEMPLATE]
- instantiate the configuration header FILE
-
-Configuration files:
-$config_files
-
-Configuration headers:
-$config_headers
-
-Configuration commands:
-$config_commands
-
-Report bugs to <mathgl.abalakin at gmail.com>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-mathgl config.status 2.0
-configured by $0, generated by GNU Autoconf 2.67,
- with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-MKDIR_P='$MKDIR_P'
-AWK='$AWK'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=?*)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
- ac_shift=:
- ;;
- --*=)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=
- ac_shift=:
- ;;
- *)
- ac_option=$1
- ac_optarg=$2
- ac_shift=shift
- ;;
- esac
-
- case $ac_option in
- # Handling of the options.
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- ac_cs_recheck=: ;;
- --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
- $as_echo "$ac_cs_version"; exit ;;
- --config | --confi | --conf | --con | --co | --c )
- $as_echo "$ac_cs_config"; exit ;;
- --debug | --debu | --deb | --de | --d | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- '') as_fn_error $? "missing file argument" ;;
- esac
- as_fn_append CONFIG_FILES " '$ac_optarg'"
- ac_need_defaults=false;;
- --header | --heade | --head | --hea )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- as_fn_append CONFIG_HEADERS " '$ac_optarg'"
- ac_need_defaults=false;;
- --he | --h)
- # Conflict between --help and --header
- as_fn_error $? "ambiguous option: \`$1'
-Try \`$0 --help' for more information.";;
- --help | --hel | -h )
- $as_echo "$ac_cs_usage"; exit ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil | --si | --s)
- ac_cs_silent=: ;;
-
- # This is an error.
- -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
- *) as_fn_append ac_config_targets " $1"
- ac_need_defaults=false ;;
-
- esac
- shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
- exec 6>/dev/null
- ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
- shift
- \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
- CONFIG_SHELL='$SHELL'
- export CONFIG_SHELL
- exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
-@%:@@%:@ Running $as_me. @%:@@%:@
-_ASBOX
- $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
-
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-sed_quote_subst='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-AS='`$ECHO "X$AS" | $Xsed -e "$delay_single_quote_subst"`'
-DLLTOOL='`$ECHO "X$DLLTOOL" | $Xsed -e "$delay_single_quote_subst"`'
-OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
-macro_version='`$ECHO "X$macro_version" | $Xsed -e "$delay_single_quote_subst"`'
-macro_revision='`$ECHO "X$macro_revision" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared='`$ECHO "X$enable_shared" | $Xsed -e "$delay_single_quote_subst"`'
-enable_static='`$ECHO "X$enable_static" | $Xsed -e "$delay_single_quote_subst"`'
-pic_mode='`$ECHO "X$pic_mode" | $Xsed -e "$delay_single_quote_subst"`'
-enable_fast_install='`$ECHO "X$enable_fast_install" | $Xsed -e "$delay_single_quote_subst"`'
-host_alias='`$ECHO "X$host_alias" | $Xsed -e "$delay_single_quote_subst"`'
-host='`$ECHO "X$host" | $Xsed -e "$delay_single_quote_subst"`'
-host_os='`$ECHO "X$host_os" | $Xsed -e "$delay_single_quote_subst"`'
-build_alias='`$ECHO "X$build_alias" | $Xsed -e "$delay_single_quote_subst"`'
-build='`$ECHO "X$build" | $Xsed -e "$delay_single_quote_subst"`'
-build_os='`$ECHO "X$build_os" | $Xsed -e "$delay_single_quote_subst"`'
-SED='`$ECHO "X$SED" | $Xsed -e "$delay_single_quote_subst"`'
-Xsed='`$ECHO "X$Xsed" | $Xsed -e "$delay_single_quote_subst"`'
-GREP='`$ECHO "X$GREP" | $Xsed -e "$delay_single_quote_subst"`'
-EGREP='`$ECHO "X$EGREP" | $Xsed -e "$delay_single_quote_subst"`'
-FGREP='`$ECHO "X$FGREP" | $Xsed -e "$delay_single_quote_subst"`'
-LD='`$ECHO "X$LD" | $Xsed -e "$delay_single_quote_subst"`'
-NM='`$ECHO "X$NM" | $Xsed -e "$delay_single_quote_subst"`'
-LN_S='`$ECHO "X$LN_S" | $Xsed -e "$delay_single_quote_subst"`'
-max_cmd_len='`$ECHO "X$max_cmd_len" | $Xsed -e "$delay_single_quote_subst"`'
-ac_objext='`$ECHO "X$ac_objext" | $Xsed -e "$delay_single_quote_subst"`'
-exeext='`$ECHO "X$exeext" | $Xsed -e "$delay_single_quote_subst"`'
-lt_unset='`$ECHO "X$lt_unset" | $Xsed -e "$delay_single_quote_subst"`'
-lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`'
-lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
-reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
-reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
-file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
-AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
-AR_FLAGS='`$ECHO "X$AR_FLAGS" | $Xsed -e "$delay_single_quote_subst"`'
-STRIP='`$ECHO "X$STRIP" | $Xsed -e "$delay_single_quote_subst"`'
-RANLIB='`$ECHO "X$RANLIB" | $Xsed -e "$delay_single_quote_subst"`'
-old_postinstall_cmds='`$ECHO "X$old_postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_postuninstall_cmds='`$ECHO "X$old_postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_cmds='`$ECHO "X$old_archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-CC='`$ECHO "X$CC" | $Xsed -e "$delay_single_quote_subst"`'
-CFLAGS='`$ECHO "X$CFLAGS" | $Xsed -e "$delay_single_quote_subst"`'
-compiler='`$ECHO "X$compiler" | $Xsed -e "$delay_single_quote_subst"`'
-GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
-objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
-SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
-ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
-MAGIC_CMD='`$ECHO "X$MAGIC_CMD" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_no_builtin_flag='`$ECHO "X$lt_prog_compiler_no_builtin_flag" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_wl='`$ECHO "X$lt_prog_compiler_wl" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
-need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
-DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
-NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
-LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
-OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
-OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
-libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
-shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_need_lc='`$ECHO "X$archive_cmds_need_lc" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared_with_static_runtimes='`$ECHO "X$enable_shared_with_static_runtimes" | $Xsed -e "$delay_single_quote_subst"`'
-export_dynamic_flag_spec='`$ECHO "X$export_dynamic_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-whole_archive_flag_spec='`$ECHO "X$whole_archive_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_needs_object='`$ECHO "X$compiler_needs_object" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_new_cmds='`$ECHO "X$old_archive_from_new_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_expsyms_cmds='`$ECHO "X$old_archive_from_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds='`$ECHO "X$archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_expsym_cmds='`$ECHO "X$archive_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-module_cmds='`$ECHO "X$module_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-module_expsym_cmds='`$ECHO "X$module_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-with_gnu_ld='`$ECHO "X$with_gnu_ld" | $Xsed -e "$delay_single_quote_subst"`'
-allow_undefined_flag='`$ECHO "X$allow_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
-no_undefined_flag='`$ECHO "X$no_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec='`$ECHO "X$hardcode_libdir_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_ld='`$ECHO "X$hardcode_libdir_flag_spec_ld" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_separator='`$ECHO "X$hardcode_libdir_separator" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct='`$ECHO "X$hardcode_direct" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_absolute='`$ECHO "X$hardcode_direct_absolute" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_minus_L='`$ECHO "X$hardcode_minus_L" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_shlibpath_var='`$ECHO "X$hardcode_shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_automatic='`$ECHO "X$hardcode_automatic" | $Xsed -e "$delay_single_quote_subst"`'
-inherit_rpath='`$ECHO "X$inherit_rpath" | $Xsed -e "$delay_single_quote_subst"`'
-link_all_deplibs='`$ECHO "X$link_all_deplibs" | $Xsed -e "$delay_single_quote_subst"`'
-fix_srcfile_path='`$ECHO "X$fix_srcfile_path" | $Xsed -e "$delay_single_quote_subst"`'
-always_export_symbols='`$ECHO "X$always_export_symbols" | $Xsed -e "$delay_single_quote_subst"`'
-export_symbols_cmds='`$ECHO "X$export_symbols_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-exclude_expsyms='`$ECHO "X$exclude_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
-include_expsyms='`$ECHO "X$include_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
-prelink_cmds='`$ECHO "X$prelink_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-file_list_spec='`$ECHO "X$file_list_spec" | $Xsed -e "$delay_single_quote_subst"`'
-variables_saved_for_relink='`$ECHO "X$variables_saved_for_relink" | $Xsed -e "$delay_single_quote_subst"`'
-need_lib_prefix='`$ECHO "X$need_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
-need_version='`$ECHO "X$need_version" | $Xsed -e "$delay_single_quote_subst"`'
-version_type='`$ECHO "X$version_type" | $Xsed -e "$delay_single_quote_subst"`'
-runpath_var='`$ECHO "X$runpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-shlibpath_var='`$ECHO "X$shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-shlibpath_overrides_runpath='`$ECHO "X$shlibpath_overrides_runpath" | $Xsed -e "$delay_single_quote_subst"`'
-libname_spec='`$ECHO "X$libname_spec" | $Xsed -e "$delay_single_quote_subst"`'
-library_names_spec='`$ECHO "X$library_names_spec" | $Xsed -e "$delay_single_quote_subst"`'
-soname_spec='`$ECHO "X$soname_spec" | $Xsed -e "$delay_single_quote_subst"`'
-postinstall_cmds='`$ECHO "X$postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-postuninstall_cmds='`$ECHO "X$postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-finish_cmds='`$ECHO "X$finish_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-finish_eval='`$ECHO "X$finish_eval" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_into_libs='`$ECHO "X$hardcode_into_libs" | $Xsed -e "$delay_single_quote_subst"`'
-sys_lib_search_path_spec='`$ECHO "X$sys_lib_search_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
-sys_lib_dlsearch_path_spec='`$ECHO "X$sys_lib_dlsearch_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_action='`$ECHO "X$hardcode_action" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen='`$ECHO "X$enable_dlopen" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen_self='`$ECHO "X$enable_dlopen_self" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen_self_static='`$ECHO "X$enable_dlopen_self_static" | $Xsed -e "$delay_single_quote_subst"`'
-old_striplib='`$ECHO "X$old_striplib" | $Xsed -e "$delay_single_quote_subst"`'
-striplib='`$ECHO "X$striplib" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_dirs='`$ECHO "X$compiler_lib_search_dirs" | $Xsed -e "$delay_single_quote_subst"`'
-predep_objects='`$ECHO "X$predep_objects" | $Xsed -e "$delay_single_quote_subst"`'
-postdep_objects='`$ECHO "X$postdep_objects" | $Xsed -e "$delay_single_quote_subst"`'
-predeps='`$ECHO "X$predeps" | $Xsed -e "$delay_single_quote_subst"`'
-postdeps='`$ECHO "X$postdeps" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_path='`$ECHO "X$compiler_lib_search_path" | $Xsed -e "$delay_single_quote_subst"`'
-LD_CXX='`$ECHO "X$LD_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_cmds_CXX='`$ECHO "X$old_archive_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_CXX='`$ECHO "X$compiler_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-GCC_CXX='`$ECHO "X$GCC_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "X$lt_prog_compiler_no_builtin_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_wl_CXX='`$ECHO "X$lt_prog_compiler_wl_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_pic_CXX='`$ECHO "X$lt_prog_compiler_pic_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_static_CXX='`$ECHO "X$lt_prog_compiler_static_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_prog_compiler_c_o_CXX='`$ECHO "X$lt_cv_prog_compiler_c_o_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_need_lc_CXX='`$ECHO "X$archive_cmds_need_lc_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared_with_static_runtimes_CXX='`$ECHO "X$enable_shared_with_static_runtimes_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-export_dynamic_flag_spec_CXX='`$ECHO "X$export_dynamic_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-whole_archive_flag_spec_CXX='`$ECHO "X$whole_archive_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_needs_object_CXX='`$ECHO "X$compiler_needs_object_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_new_cmds_CXX='`$ECHO "X$old_archive_from_new_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_expsyms_cmds_CXX='`$ECHO "X$old_archive_from_expsyms_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_CXX='`$ECHO "X$archive_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_expsym_cmds_CXX='`$ECHO "X$archive_expsym_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-module_cmds_CXX='`$ECHO "X$module_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-module_expsym_cmds_CXX='`$ECHO "X$module_expsym_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-with_gnu_ld_CXX='`$ECHO "X$with_gnu_ld_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-allow_undefined_flag_CXX='`$ECHO "X$allow_undefined_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-no_undefined_flag_CXX='`$ECHO "X$no_undefined_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_CXX='`$ECHO "X$hardcode_libdir_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_ld_CXX='`$ECHO "X$hardcode_libdir_flag_spec_ld_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_separator_CXX='`$ECHO "X$hardcode_libdir_separator_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_CXX='`$ECHO "X$hardcode_direct_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_absolute_CXX='`$ECHO "X$hardcode_direct_absolute_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_minus_L_CXX='`$ECHO "X$hardcode_minus_L_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_shlibpath_var_CXX='`$ECHO "X$hardcode_shlibpath_var_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_automatic_CXX='`$ECHO "X$hardcode_automatic_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-inherit_rpath_CXX='`$ECHO "X$inherit_rpath_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-link_all_deplibs_CXX='`$ECHO "X$link_all_deplibs_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-fix_srcfile_path_CXX='`$ECHO "X$fix_srcfile_path_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-always_export_symbols_CXX='`$ECHO "X$always_export_symbols_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-export_symbols_cmds_CXX='`$ECHO "X$export_symbols_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-exclude_expsyms_CXX='`$ECHO "X$exclude_expsyms_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-include_expsyms_CXX='`$ECHO "X$include_expsyms_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-prelink_cmds_CXX='`$ECHO "X$prelink_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-file_list_spec_CXX='`$ECHO "X$file_list_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_action_CXX='`$ECHO "X$hardcode_action_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_dirs_CXX='`$ECHO "X$compiler_lib_search_dirs_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-predep_objects_CXX='`$ECHO "X$predep_objects_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-postdep_objects_CXX='`$ECHO "X$postdep_objects_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-predeps_CXX='`$ECHO "X$predeps_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-postdeps_CXX='`$ECHO "X$postdeps_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_path_CXX='`$ECHO "X$compiler_lib_search_path_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# Quote evaled strings.
-for var in SED \
-GREP \
-EGREP \
-FGREP \
-LD \
-NM \
-LN_S \
-lt_SP2NL \
-lt_NL2SP \
-reload_flag \
-deplibs_check_method \
-file_magic_cmd \
-AR \
-AR_FLAGS \
-STRIP \
-RANLIB \
-CC \
-CFLAGS \
-compiler \
-lt_cv_sys_global_symbol_pipe \
-lt_cv_sys_global_symbol_to_cdecl \
-lt_cv_sys_global_symbol_to_c_name_address \
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
-SHELL \
-ECHO \
-lt_prog_compiler_no_builtin_flag \
-lt_prog_compiler_wl \
-lt_prog_compiler_pic \
-lt_prog_compiler_static \
-lt_cv_prog_compiler_c_o \
-need_locks \
-DSYMUTIL \
-NMEDIT \
-LIPO \
-OTOOL \
-OTOOL64 \
-shrext_cmds \
-export_dynamic_flag_spec \
-whole_archive_flag_spec \
-compiler_needs_object \
-with_gnu_ld \
-allow_undefined_flag \
-no_undefined_flag \
-hardcode_libdir_flag_spec \
-hardcode_libdir_flag_spec_ld \
-hardcode_libdir_separator \
-fix_srcfile_path \
-exclude_expsyms \
-include_expsyms \
-file_list_spec \
-variables_saved_for_relink \
-libname_spec \
-library_names_spec \
-soname_spec \
-finish_eval \
-old_striplib \
-striplib \
-compiler_lib_search_dirs \
-predep_objects \
-postdep_objects \
-predeps \
-postdeps \
-compiler_lib_search_path \
-LD_CXX \
-compiler_CXX \
-lt_prog_compiler_no_builtin_flag_CXX \
-lt_prog_compiler_wl_CXX \
-lt_prog_compiler_pic_CXX \
-lt_prog_compiler_static_CXX \
-lt_cv_prog_compiler_c_o_CXX \
-export_dynamic_flag_spec_CXX \
-whole_archive_flag_spec_CXX \
-compiler_needs_object_CXX \
-with_gnu_ld_CXX \
-allow_undefined_flag_CXX \
-no_undefined_flag_CXX \
-hardcode_libdir_flag_spec_CXX \
-hardcode_libdir_flag_spec_ld_CXX \
-hardcode_libdir_separator_CXX \
-fix_srcfile_path_CXX \
-exclude_expsyms_CXX \
-include_expsyms_CXX \
-file_list_spec_CXX \
-compiler_lib_search_dirs_CXX \
-predep_objects_CXX \
-postdep_objects_CXX \
-predeps_CXX \
-postdeps_CXX \
-compiler_lib_search_path_CXX; do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[\\\\\\\`\\"\\\$]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Double-quote double-evaled strings.
-for var in reload_cmds \
-old_postinstall_cmds \
-old_postuninstall_cmds \
-old_archive_cmds \
-extract_expsyms_cmds \
-old_archive_from_new_cmds \
-old_archive_from_expsyms_cmds \
-archive_cmds \
-archive_expsym_cmds \
-module_cmds \
-module_expsym_cmds \
-export_symbols_cmds \
-prelink_cmds \
-postinstall_cmds \
-postuninstall_cmds \
-finish_cmds \
-sys_lib_search_path_spec \
-sys_lib_dlsearch_path_spec \
-old_archive_cmds_CXX \
-old_archive_from_new_cmds_CXX \
-old_archive_from_expsyms_cmds_CXX \
-archive_cmds_CXX \
-archive_expsym_cmds_CXX \
-module_cmds_CXX \
-module_expsym_cmds_CXX \
-export_symbols_cmds_CXX \
-prelink_cmds_CXX; do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[\\\\\\\`\\"\\\$]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Fix-up fallback echo if it was mangled by the above quoting rules.
-case \$lt_ECHO in
-*'\\\$0 --fallback-echo"') lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\$0 --fallback-echo"\$/\$0 --fallback-echo"/'\`
- ;;
-esac
-
-ac_aux_dir='$ac_aux_dir'
-xsi_shell='$xsi_shell'
-lt_shell_append='$lt_shell_append'
-
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-
-
- PACKAGE='$PACKAGE'
- VERSION='$VERSION'
- TIMESTAMP='$TIMESTAMP'
- RM='$RM'
- ofile='$ofile'
-
-
-
-
-
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
- case $ac_config_target in
- "include/mgl/config.h") CONFIG_HEADERS="$CONFIG_HEADERS include/mgl/config.h" ;;
- "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
- "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
- "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
- "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;;
- "widgets/Makefile") CONFIG_FILES="$CONFIG_FILES widgets/Makefile" ;;
- "lang/Makefile") CONFIG_FILES="$CONFIG_FILES lang/Makefile" ;;
- "utils/Makefile") CONFIG_FILES="$CONFIG_FILES utils/Makefile" ;;
- "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
-
- *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;;
- esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
- test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
- test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
- tmp=
- trap 'exit_status=$?
- { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
-' 0
- trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
- tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
-} ||
-{
- tmp=./conf$$-$RANDOM
- (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
- eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
- ac_cs_awk_cr='\\r'
-else
- ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$tmp/subs1.awk" &&
-_ACEOF
-
-
-{
- echo "cat >conf$$subs.awk <<_ACEOF" &&
- echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
- echo "_ACEOF"
-} >conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
- . ./conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
- ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
- if test $ac_delim_n = $ac_delim_num; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
- N
- s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$tmp/subs1.awk" <<_ACAWK &&
- for (key in S) S_is_set[key] = 1
- FS = ""
-
-}
-{
- line = $ 0
- nfields = split(line, field, "@")
- substed = 0
- len = length(field[1])
- for (i = 2; i < nfields; i++) {
- key = field[i]
- keylen = length(key)
- if (S_is_set[key]) {
- value = S[key]
- line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
- len += length(value) + length(field[++i])
- substed = 1
- } else
- len += 1 + keylen
- }
-
- print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
- sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
- cat
-fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
- || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
-h
-s///
-s/^/:/
-s/[ ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[ ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[ ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-# Set up the scripts for CONFIG_HEADERS section.
-# No need to generate them if there are no CONFIG_HEADERS.
-# This happens for instance with `./config.status Makefile'.
-if test -n "$CONFIG_HEADERS"; then
-cat >"$tmp/defines.awk" <<\_ACAWK ||
-BEGIN {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
- ac_t=`sed -n "/$ac_delim/p" confdefs.h`
- if test -z "$ac_t"; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any. Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[ ]*#[ ]*define[ ][ ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- for (key in D) D_is_set[key] = 1
- FS = ""
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
- line = \$ 0
- split(line, arg, " ")
- if (arg[1] == "#") {
- defundef = arg[2]
- mac1 = arg[3]
- } else {
- defundef = substr(arg[1], 2)
- mac1 = arg[2]
- }
- split(mac1, mac2, "(") #)
- macro = mac2[1]
- prefix = substr(line, 1, index(line, defundef) - 1)
- if (D_is_set[macro]) {
- # Preserve the white space surrounding the "#".
- print prefix "define", macro P[macro] D[macro]
- next
- } else {
- # Replace #undef with comments. This is necessary, for example,
- # in the case of _POSIX_SOURCE, which is predefined and required
- # on some systems where configure will not decide to define it.
- if (defundef == "undef") {
- print "/*", prefix defundef, macro, "*/"
- next
- }
- }
-}
-{ print }
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
- as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
-fi # test -n "$CONFIG_HEADERS"
-
-
-eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
-shift
-for ac_tag
-do
- case $ac_tag in
- :[FHLC]) ac_mode=$ac_tag; continue;;
- esac
- case $ac_mode$ac_tag in
- :[FHL]*:*);;
- :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;;
- :[FH]-) ac_tag=-:-;;
- :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
- esac
- ac_save_IFS=$IFS
- IFS=:
- set x $ac_tag
- IFS=$ac_save_IFS
- shift
- ac_file=$1
- shift
-
- case $ac_mode in
- :L) ac_source=$1;;
- :[FH])
- ac_file_inputs=
- for ac_f
- do
- case $ac_f in
- -) ac_f="$tmp/stdin";;
- *) # Look for the file first in the build tree, then in the source tree
- # (if the path is not absolute). The absolute path cannot be DOS-style,
- # because $ac_f cannot contain `:'.
- test -f "$ac_f" ||
- case $ac_f in
- [\\/$]*) false;;
- *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
- esac ||
- as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;;
- esac
- case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
- as_fn_append ac_file_inputs " '$ac_f'"
- done
-
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- configure_input='Generated from '`
- $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
- `' by configure.'
- if test x"$ac_file" != x-; then
- configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
- fi
- # Neutralize special characters interpreted by sed in replacement strings.
- case $configure_input in #(
- *\&* | *\|* | *\\* )
- ac_sed_conf_input=`$as_echo "$configure_input" |
- sed 's/[\\\\&|]/\\\\&/g'`;; #(
- *) ac_sed_conf_input=$configure_input;;
- esac
-
- case $ac_tag in
- *:-:* | *:-) cat >"$tmp/stdin" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
- esac
- ;;
- esac
-
- ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir="$ac_dir"; as_fn_mkdir_p
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
- case $ac_mode in
- :F)
- #
- # CONFIG_FILE
- #
-
- case $INSTALL in
- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
- esac
- ac_MKDIR_P=$MKDIR_P
- case $MKDIR_P in
- [\\/$]* | ?:[\\/]* ) ;;
- */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
- esac
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
- p
- q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- ac_datarootdir_hack='
- s&@datadir@&$datadir&g
- s&@docdir@&$docdir&g
- s&@infodir@&$infodir&g
- s&@localedir@&$localedir&g
- s&@mandir@&$mandir&g
- s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-s&@INSTALL@&$ac_INSTALL&;t t
-s&@MKDIR_P@&$ac_MKDIR_P&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&2;}
-
- rm -f "$tmp/stdin"
- case $ac_file in
- -) cat "$tmp/out" && rm -f "$tmp/out";;
- *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
- esac \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
- :H)
- #
- # CONFIG_HEADER
- #
- if test x"$ac_file" != x-; then
- {
- $as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
- } >"$tmp/config.h" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
- else
- rm -f "$ac_file"
- mv "$tmp/config.h" "$ac_file" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- fi
- else
- $as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
- || as_fn_error $? "could not create -" "$LINENO" 5
- fi
-# Compute "$ac_file"'s index in $config_headers.
-_am_arg="$ac_file"
-_am_stamp_count=1
-for _am_header in $config_headers :; do
- case $_am_header in
- $_am_arg | $_am_arg:* )
- break ;;
- * )
- _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
-done
-echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
-$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$_am_arg" : 'X\(//\)[^/]' \| \
- X"$_am_arg" : 'X\(//\)$' \| \
- X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$_am_arg" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`/stamp-h$_am_stamp_count
- ;;
-
- :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
- esac
-
-
- case $ac_file$ac_mode in
- "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$mf" : 'X\(//\)[^/]' \| \
- X"$mf" : 'X\(//\)$' \| \
- X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$file" : 'X\(//\)[^/]' \| \
- X"$file" : 'X\(//\)$' \| \
- X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir=$dirpart/$fdir; as_fn_mkdir_p
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
- ;;
- "libtool":C)
-
- # See if we are running on zsh, and set the options which allow our
- # commands through without removal of \ escapes.
- if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
- fi
-
- cfgfile="${ofile}T"
- trap "$RM \"$cfgfile\"; exit 1" 1 2 15
- $RM "$cfgfile"
-
- cat <<_LT_EOF >> "$cfgfile"
-#! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-#
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gordon Matzigkeit, 1996
-#
-# This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
-#
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING. If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-
-# The names of the tagged configurations supported by this script.
-available_tags="CXX "
-
-# ### BEGIN LIBTOOL CONFIG
-
-# Assembler program.
-AS=$AS
-
-# DLL creation program.
-DLLTOOL=$DLLTOOL
-
-# Object dumper program.
-OBJDUMP=$OBJDUMP
-
-# Which release of libtool.m4 was used?
-macro_version=$macro_version
-macro_revision=$macro_revision
-
-# Whether or not to build shared libraries.
-build_libtool_libs=$enable_shared
-
-# Whether or not to build static libraries.
-build_old_libs=$enable_static
-
-# What type of objects to build.
-pic_mode=$pic_mode
-
-# Whether or not to optimize for fast installation.
-fast_install=$enable_fast_install
-
-# The host system.
-host_alias=$host_alias
-host=$host
-host_os=$host_os
-
-# The build system.
-build_alias=$build_alias
-build=$build
-build_os=$build_os
-
-# A sed program that does not truncate output.
-SED=$lt_SED
-
-# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-Xsed="\$SED -e 1s/^X//"
-
-# A grep program that handles long lines.
-GREP=$lt_GREP
-
-# An ERE matcher.
-EGREP=$lt_EGREP
-
-# A literal string matcher.
-FGREP=$lt_FGREP
-
-# A BSD- or MS-compatible name lister.
-NM=$lt_NM
-
-# Whether we need soft or hard links.
-LN_S=$lt_LN_S
-
-# What is the maximum length of a command?
-max_cmd_len=$max_cmd_len
-
-# Object file suffix (normally "o").
-objext=$ac_objext
-
-# Executable file suffix (normally "").
-exeext=$exeext
-
-# whether the shell understands "unset".
-lt_unset=$lt_unset
-
-# turn spaces into newlines.
-SP2NL=$lt_lt_SP2NL
-
-# turn newlines into spaces.
-NL2SP=$lt_lt_NL2SP
-
-# How to create reloadable object files.
-reload_flag=$lt_reload_flag
-reload_cmds=$lt_reload_cmds
-
-# Method to check whether dependent libraries are shared objects.
-deplibs_check_method=$lt_deplibs_check_method
-
-# Command to use when deplibs_check_method == "file_magic".
-file_magic_cmd=$lt_file_magic_cmd
-
-# The archiver.
-AR=$lt_AR
-AR_FLAGS=$lt_AR_FLAGS
-
-# A symbol stripping program.
-STRIP=$lt_STRIP
-
-# Commands used to install an old-style archive.
-RANLIB=$lt_RANLIB
-old_postinstall_cmds=$lt_old_postinstall_cmds
-old_postuninstall_cmds=$lt_old_postuninstall_cmds
-
-# A C compiler.
-LTCC=$lt_CC
-
-# LTCC compiler flags.
-LTCFLAGS=$lt_CFLAGS
-
-# Take the output of nm and produce a listing of raw symbols and C names.
-global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
-
-# Transform the output of nm in a proper C declaration.
-global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
-
-# Transform the output of nm in a C name address pair.
-global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
-
-# Transform the output of nm in a C name address pair when lib prefix is needed.
-global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
-
-# The name of the directory that contains temporary libtool files.
-objdir=$objdir
-
-# Shell to use when invoking shell scripts.
-SHELL=$lt_SHELL
-
-# An echo program that does not interpret backslashes.
-ECHO=$lt_ECHO
-
-# Used to examine libraries when file_magic_cmd begins with "file".
-MAGIC_CMD=$MAGIC_CMD
-
-# Must we lock files when doing compilation?
-need_locks=$lt_need_locks
-
-# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
-DSYMUTIL=$lt_DSYMUTIL
-
-# Tool to change global to local symbols on Mac OS X.
-NMEDIT=$lt_NMEDIT
-
-# Tool to manipulate fat objects and archives on Mac OS X.
-LIPO=$lt_LIPO
-
-# ldd/readelf like tool for Mach-O binaries on Mac OS X.
-OTOOL=$lt_OTOOL
-
-# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
-OTOOL64=$lt_OTOOL64
-
-# Old archive suffix (normally "a").
-libext=$libext
-
-# Shared library suffix (normally ".so").
-shrext_cmds=$lt_shrext_cmds
-
-# The commands to extract the exported symbol list from a shared archive.
-extract_expsyms_cmds=$lt_extract_expsyms_cmds
-
-# Variables whose values should be saved in libtool wrapper scripts and
-# restored at link time.
-variables_saved_for_relink=$lt_variables_saved_for_relink
-
-# Do we need the "lib" prefix for modules?
-need_lib_prefix=$need_lib_prefix
-
-# Do we need a version for libraries?
-need_version=$need_version
-
-# Library versioning type.
-version_type=$version_type
-
-# Shared library runtime path variable.
-runpath_var=$runpath_var
-
-# Shared library path variable.
-shlibpath_var=$shlibpath_var
-
-# Is shlibpath searched before the hard-coded library search path?
-shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-
-# Format of library name prefix.
-libname_spec=$lt_libname_spec
-
-# List of archive names. First name is the real one, the rest are links.
-# The last name is the one that the linker finds with -lNAME
-library_names_spec=$lt_library_names_spec
-
-# The coded name of the library, if different from the real name.
-soname_spec=$lt_soname_spec
-
-# Command to use after installation of a shared archive.
-postinstall_cmds=$lt_postinstall_cmds
-
-# Command to use after uninstallation of a shared archive.
-postuninstall_cmds=$lt_postuninstall_cmds
-
-# Commands used to finish a libtool library installation in a directory.
-finish_cmds=$lt_finish_cmds
-
-# As "finish_cmds", except a single script fragment to be evaled but
-# not shown.
-finish_eval=$lt_finish_eval
-
-# Whether we should hardcode library paths into libraries.
-hardcode_into_libs=$hardcode_into_libs
-
-# Compile-time system search path for libraries.
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
-
-# Run-time system search path for libraries.
-sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-
-# Whether dlopen is supported.
-dlopen_support=$enable_dlopen
-
-# Whether dlopen of programs is supported.
-dlopen_self=$enable_dlopen_self
-
-# Whether dlopen of statically linked programs is supported.
-dlopen_self_static=$enable_dlopen_self_static
-
-# Commands to strip libraries.
-old_striplib=$lt_old_striplib
-striplib=$lt_striplib
-
-
-# The linker used to build libraries.
-LD=$lt_LD
-
-# Commands used to build an old-style archive.
-old_archive_cmds=$lt_old_archive_cmds
-
-# A language specific compiler.
-CC=$lt_compiler
-
-# Is the compiler the GNU compiler?
-with_gcc=$GCC
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
-
-# How to pass a linker flag through the compiler.
-wl=$lt_lt_prog_compiler_wl
-
-# Additional compiler flags for building library objects.
-pic_flag=$lt_lt_prog_compiler_pic
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$lt_lt_prog_compiler_static
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$lt_lt_cv_prog_compiler_c_o
-
-# Whether or not to add -lc for building shared libraries.
-build_libtool_need_lc=$archive_cmds_need_lc
-
-# Whether or not to disallow shared libs when runtime libs are static.
-allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$lt_whole_archive_flag_spec
-
-# Whether the compiler copes with passing no objects directly.
-compiler_needs_object=$lt_compiler_needs_object
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
-
-# Create a temporary old-style archive to link instead of a shared archive.
-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
-
-# Commands used to build a shared archive.
-archive_cmds=$lt_archive_cmds
-archive_expsym_cmds=$lt_archive_expsym_cmds
-
-# Commands used to build a loadable module if different from building
-# a shared archive.
-module_cmds=$lt_module_cmds
-module_expsym_cmds=$lt_module_expsym_cmds
-
-# Whether we are building with GNU ld or not.
-with_gnu_ld=$lt_with_gnu_ld
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$lt_allow_undefined_flag
-
-# Flag that enforces no undefined symbols.
-no_undefined_flag=$lt_no_undefined_flag
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist
-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
-
-# If ld is used when linking, flag to hardcode \$libdir into a binary
-# during linking. This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld
-
-# Whether we need a single "-rpath" flag with a separated argument.
-hardcode_libdir_separator=$lt_hardcode_libdir_separator
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary.
-hardcode_direct=$hardcode_direct
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary and the resulting library dependency is
-# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
-# library is relocated.
-hardcode_direct_absolute=$hardcode_direct_absolute
-
-# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
-# into the resulting binary.
-hardcode_minus_L=$hardcode_minus_L
-
-# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
-# into the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var
-
-# Set to "yes" if building a shared library automatically hardcodes DIR
-# into the library and all subsequent libraries and executables linked
-# against it.
-hardcode_automatic=$hardcode_automatic
-
-# Set to yes if linker adds runtime paths of dependent libraries
-# to runtime path list.
-inherit_rpath=$inherit_rpath
-
-# Whether libtool must link a program against all its dependency libraries.
-link_all_deplibs=$link_all_deplibs
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path=$lt_fix_srcfile_path
-
-# Set to "yes" if exported symbols are required.
-always_export_symbols=$always_export_symbols
-
-# The commands to list exported symbols.
-export_symbols_cmds=$lt_export_symbols_cmds
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$lt_exclude_expsyms
-
-# Symbols that must always be exported.
-include_expsyms=$lt_include_expsyms
-
-# Commands necessary for linking programs (against libraries) with templates.
-prelink_cmds=$lt_prelink_cmds
-
-# Specify filename containing input files.
-file_list_spec=$lt_file_list_spec
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action
-
-# The directories searched by this compiler when creating a shared library.
-compiler_lib_search_dirs=$lt_compiler_lib_search_dirs
-
-# Dependencies to place before and after the objects being linked to
-# create a shared library.
-predep_objects=$lt_predep_objects
-postdep_objects=$lt_postdep_objects
-predeps=$lt_predeps
-postdeps=$lt_postdeps
-
-# The library search path used internally by the compiler when linking
-# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path
-
-# ### END LIBTOOL CONFIG
-
-_LT_EOF
-
- case $host_os in
- aix3*)
- cat <<\_LT_EOF >> "$cfgfile"
-# AIX sometimes has problems with the GCC collect2 program. For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
-fi
-_LT_EOF
- ;;
- esac
-
-
-ltmain="$ac_aux_dir/ltmain.sh"
-
-
- # We use sed instead of cat because bash on DJGPP gets confused if
- # if finds mixed CR/LF and LF-only lines. Since sed operates in
- # text mode, it properly converts lines to CR/LF. This bash problem
- # is reportedly fixed, but why not run on old versions too?
- sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- case $xsi_shell in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result="${1##*/}"
-}
-
-# func_dirname_and_basename file append nondir_replacement
-# perform func_basename and func_dirname in a single function
-# call:
-# dirname: Compute the dirname of FILE. If nonempty,
-# add APPEND to the result, otherwise set result
-# to NONDIR_REPLACEMENT.
-# value returned in "$func_dirname_result"
-# basename: Compute filename of FILE.
-# value retuned in "$func_basename_result"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
- func_basename_result="${1##*/}"
-}
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-func_stripname ()
-{
- # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
- # positional parameters, so assign one to ordinary parameter first.
- func_stripname_result=${3}
- func_stripname_result=${func_stripname_result#"${1}"}
- func_stripname_result=${func_stripname_result%"${2}"}
-}
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=${1%%=*}
- func_opt_split_arg=${1#*=}
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- case ${1} in
- *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
- *) func_lo2o_result=${1} ;;
- esac
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=${1%.*}.lo
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=$(( $* ))
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=${#1}
-}
-
-_LT_EOF
- ;;
- *) # Bourne compatible functions.
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- # Extract subdirectory from the argument.
- func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
- if test "X$func_dirname_result" = "X${1}"; then
- func_dirname_result="${3}"
- else
- func_dirname_result="$func_dirname_result${2}"
- fi
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
-}
-
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-# func_strip_suffix prefix name
-func_stripname ()
-{
- case ${2} in
- .*) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
- *) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
- esac
-}
-
-# sed scripts:
-my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q'
-my_sed_long_arg='1s/^-[^=]*=//'
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
- func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=`expr "$@"`
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
-}
-
-_LT_EOF
-esac
-
-case $lt_shell_append in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$1+=\$2"
-}
-_LT_EOF
- ;;
- *)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$1=\$$1\$2"
-}
-
-_LT_EOF
- ;;
- esac
-
-
- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- mv -f "$cfgfile" "$ofile" ||
- (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
- chmod +x "$ofile"
-
-
- cat <<_LT_EOF >> "$ofile"
-
-# ### BEGIN LIBTOOL TAG CONFIG: CXX
-
-# The linker used to build libraries.
-LD=$lt_LD_CXX
-
-# Commands used to build an old-style archive.
-old_archive_cmds=$lt_old_archive_cmds_CXX
-
-# A language specific compiler.
-CC=$lt_compiler_CXX
-
-# Is the compiler the GNU compiler?
-with_gcc=$GCC_CXX
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX
-
-# How to pass a linker flag through the compiler.
-wl=$lt_lt_prog_compiler_wl_CXX
-
-# Additional compiler flags for building library objects.
-pic_flag=$lt_lt_prog_compiler_pic_CXX
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$lt_lt_prog_compiler_static_CXX
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX
-
-# Whether or not to add -lc for building shared libraries.
-build_libtool_need_lc=$archive_cmds_need_lc_CXX
-
-# Whether or not to disallow shared libs when runtime libs are static.
-allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX
-
-# Whether the compiler copes with passing no objects directly.
-compiler_needs_object=$lt_compiler_needs_object_CXX
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX
-
-# Create a temporary old-style archive to link instead of a shared archive.
-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX
-
-# Commands used to build a shared archive.
-archive_cmds=$lt_archive_cmds_CXX
-archive_expsym_cmds=$lt_archive_expsym_cmds_CXX
-
-# Commands used to build a loadable module if different from building
-# a shared archive.
-module_cmds=$lt_module_cmds_CXX
-module_expsym_cmds=$lt_module_expsym_cmds_CXX
-
-# Whether we are building with GNU ld or not.
-with_gnu_ld=$lt_with_gnu_ld_CXX
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$lt_allow_undefined_flag_CXX
-
-# Flag that enforces no undefined symbols.
-no_undefined_flag=$lt_no_undefined_flag_CXX
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist
-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX
-
-# If ld is used when linking, flag to hardcode \$libdir into a binary
-# during linking. This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_CXX
-
-# Whether we need a single "-rpath" flag with a separated argument.
-hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary.
-hardcode_direct=$hardcode_direct_CXX
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary and the resulting library dependency is
-# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
-# library is relocated.
-hardcode_direct_absolute=$hardcode_direct_absolute_CXX
-
-# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
-# into the resulting binary.
-hardcode_minus_L=$hardcode_minus_L_CXX
-
-# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
-# into the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX
-
-# Set to "yes" if building a shared library automatically hardcodes DIR
-# into the library and all subsequent libraries and executables linked
-# against it.
-hardcode_automatic=$hardcode_automatic_CXX
-
-# Set to yes if linker adds runtime paths of dependent libraries
-# to runtime path list.
-inherit_rpath=$inherit_rpath_CXX
-
-# Whether libtool must link a program against all its dependency libraries.
-link_all_deplibs=$link_all_deplibs_CXX
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path=$lt_fix_srcfile_path_CXX
-
-# Set to "yes" if exported symbols are required.
-always_export_symbols=$always_export_symbols_CXX
-
-# The commands to list exported symbols.
-export_symbols_cmds=$lt_export_symbols_cmds_CXX
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$lt_exclude_expsyms_CXX
-
-# Symbols that must always be exported.
-include_expsyms=$lt_include_expsyms_CXX
-
-# Commands necessary for linking programs (against libraries) with templates.
-prelink_cmds=$lt_prelink_cmds_CXX
-
-# Specify filename containing input files.
-file_list_spec=$lt_file_list_spec_CXX
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action_CXX
-
-# The directories searched by this compiler when creating a shared library.
-compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX
-
-# Dependencies to place before and after the objects being linked to
-# create a shared library.
-predep_objects=$lt_predep_objects_CXX
-postdep_objects=$lt_postdep_objects_CXX
-predeps=$lt_predeps_CXX
-postdeps=$lt_postdeps_CXX
-
-# The library search path used internally by the compiler when linking
-# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
-
-# ### END LIBTOOL TAG CONFIG: CXX
-_LT_EOF
-
- ;;
-
- esac
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
- as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- ac_config_status_args=
- test "$silent" = yes &&
- ac_config_status_args="$ac_config_status_args --quiet"
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
-
diff --git a/autom4te.cache/requests b/autom4te.cache/requests
deleted file mode 100644
index 25a790d..0000000
--- a/autom4te.cache/requests
+++ /dev/null
@@ -1,279 +0,0 @@
-# This file was generated by Autom4te Thu Aug 5 21:29:16 UTC 2010.
-# It contains the lists of macros which have been traced.
-# It can be safely removed.
-
- at request = (
- bless( [
- '0',
- 1,
- [
- '/usr/share/autoconf'
- ],
- [
- '/usr/share/autoconf/autoconf/autoconf.m4f',
- '/usr/share/aclocal/argz.m4',
- '/usr/share/aclocal/libtool.m4',
- '/usr/share/aclocal/ltdl.m4',
- '/usr/share/aclocal/ltoptions.m4',
- '/usr/share/aclocal/ltsugar.m4',
- '/usr/share/aclocal/ltversion.m4',
- '/usr/share/aclocal/lt~obsolete.m4',
- '/usr/share/aclocal-1.11/amversion.m4',
- '/usr/share/aclocal-1.11/auxdir.m4',
- '/usr/share/aclocal-1.11/cond.m4',
- '/usr/share/aclocal-1.11/depend.m4',
- '/usr/share/aclocal-1.11/depout.m4',
- '/usr/share/aclocal-1.11/init.m4',
- '/usr/share/aclocal-1.11/install-sh.m4',
- '/usr/share/aclocal-1.11/lead-dot.m4',
- '/usr/share/aclocal-1.11/make.m4',
- '/usr/share/aclocal-1.11/missing.m4',
- '/usr/share/aclocal-1.11/mkdirp.m4',
- '/usr/share/aclocal-1.11/options.m4',
- '/usr/share/aclocal-1.11/python.m4',
- '/usr/share/aclocal-1.11/runlog.m4',
- '/usr/share/aclocal-1.11/sanity.m4',
- '/usr/share/aclocal-1.11/silent.m4',
- '/usr/share/aclocal-1.11/strip.m4',
- '/usr/share/aclocal-1.11/substnot.m4',
- '/usr/share/aclocal-1.11/tar.m4',
- 'config/autotroll.m4',
- 'configure.ac'
- ],
- {
- 'AM_ENABLE_STATIC' => 1,
- 'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
- '_LT_AC_SHELL_INIT' => 1,
- 'AC_DEFUN' => 1,
- '_LT_AC_LANG_CXX_CONFIG' => 1,
- 'AC_PROG_LIBTOOL' => 1,
- 'AM_PROG_MKDIR_P' => 1,
- 'AM_PYTHON_CHECK_VERSION' => 1,
- 'AM_AUTOMAKE_VERSION' => 1,
- 'AM_SUBST_NOTMAKE' => 1,
- 'AM_MISSING_PROG' => 1,
- 'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
- '_LT_AC_LANG_C_CONFIG' => 1,
- 'AM_PROG_INSTALL_STRIP' => 1,
- '_m4_warn' => 1,
- 'AC_LIBTOOL_OBJDIR' => 1,
- 'gl_FUNC_ARGZ' => 1,
- 'AM_SANITY_CHECK' => 1,
- 'LTOBSOLETE_VERSION' => 1,
- 'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
- 'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
- 'LT_LIB_M' => 1,
- '_LT_AC_CHECK_DLFCN' => 1,
- 'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
- 'LTSUGAR_VERSION' => 1,
- '_LT_PROG_LTMAIN' => 1,
- 'LT_SYS_SYMBOL_USCORE' => 1,
- '_AM_PROG_TAR' => 1,
- 'AC_LIBTOOL_GCJ' => 1,
- 'LT_SYS_DLOPEN_DEPLIBS' => 1,
- 'LT_FUNC_DLSYM_USCORE' => 1,
- 'AC_LIBTOOL_CONFIG' => 1,
- '_LT_AC_LANG_F77' => 1,
- '_AM_SUBST_NOTMAKE' => 1,
- 'AC_LTDL_DLLIB' => 1,
- '_AM_AUTOCONF_VERSION' => 1,
- 'AM_DISABLE_SHARED' => 1,
- '_LTDL_SETUP' => 1,
- '_LT_AC_LANG_CXX' => 1,
- 'AM_PROG_LIBTOOL' => 1,
- 'AC_LIB_LTDL' => 1,
- '_LT_AC_FILE_LTDLL_C' => 1,
- 'AM_PROG_LD' => 1,
- 'AU_DEFUN' => 1,
- 'AC_PROG_NM' => 1,
- 'AC_LIBTOOL_DLOPEN' => 1,
- 'AC_PROG_LD' => 1,
- 'AC_ENABLE_FAST_INSTALL' => 1,
- 'AC_PROG_LD_GNU' => 1,
- 'AC_LIBTOOL_FC' => 1,
- 'LTDL_CONVENIENCE' => 1,
- '_AM_SET_OPTION' => 1,
- 'AC_LTDL_PREOPEN' => 1,
- '_LT_LINKER_BOILERPLATE' => 1,
- 'AC_LIBTOOL_LANG_CXX_CONFIG' => 1,
- 'AC_LIBTOOL_PROG_CC_C_O' => 1,
- 'gl_PREREQ_ARGZ' => 1,
- 'LT_SUPPORTED_TAG' => 1,
- 'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
- 'LT_PROG_RC' => 1,
- 'LT_SYS_MODULE_EXT' => 1,
- 'AC_DEFUN_ONCE' => 1,
- 'AT_WITH_QT' => 1,
- '_LT_AC_LANG_GCJ' => 1,
- 'AC_LTDL_OBJDIR' => 1,
- '_LT_PATH_TOOL_PREFIX' => 1,
- 'AC_LIBTOOL_RC' => 1,
- 'AM_SILENT_RULES' => 1,
- '_LT_AC_PROG_ECHO_BACKSLASH' => 1,
- 'AC_DISABLE_FAST_INSTALL' => 1,
- 'AT_REQUIRE_QT_VERSION' => 1,
- '_LT_AC_SYS_LIBPATH_AIX' => 1,
- '_LT_AC_TRY_DLOPEN_SELF' => 1,
- 'include' => 1,
- 'LT_AC_PROG_SED' => 1,
- 'AM_ENABLE_SHARED' => 1,
- 'LTDL_INSTALLABLE' => 1,
- '_LT_AC_LANG_GCJ_CONFIG' => 1,
- 'AC_ENABLE_SHARED' => 1,
- 'AC_LIBTOOL_SYS_HARD_LINK_LOCKS' => 1,
- 'AC_ENABLE_STATIC' => 1,
- '_LT_AC_TAGVAR' => 1,
- 'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
- 'AM_CONDITIONAL' => 1,
- 'LT_LIB_DLLOAD' => 1,
- '_AT_TWEAK_PRO_FILE' => 1,
- 'LTVERSION_VERSION' => 1,
- 'LTDL_INIT' => 1,
- 'AM_PROG_INSTALL_SH' => 1,
- 'm4_include' => 1,
- 'AC_PROG_EGREP' => 1,
- '_AC_AM_CONFIG_HEADER_HOOK' => 1,
- 'AC_PATH_MAGIC' => 1,
- 'AM_PATH_PYTHON' => 1,
- 'AC_LTDL_SYSSEARCHPATH' => 1,
- 'AM_MAKE_INCLUDE' => 1,
- '_LT_AC_TAGCONFIG' => 1,
- 'LT_CMD_MAX_LEN' => 1,
- 'm4_pattern_forbid' => 1,
- '_LT_LINKER_OPTION' => 1,
- 'AC_LIBTOOL_COMPILER_OPTION' => 1,
- 'AC_DISABLE_SHARED' => 1,
- '_LT_COMPILER_BOILERPLATE' => 1,
- 'AC_LIBTOOL_WIN32_DLL' => 1,
- 'AC_LIBTOOL_SETUP' => 1,
- 'AC_PROG_LD_RELOAD_FLAG' => 1,
- 'AC_LTDL_DLSYM_USCORE' => 1,
- 'AM_MISSING_HAS_RUN' => 1,
- 'LT_LANG' => 1,
- 'LT_SYS_DLSEARCH_PATH' => 1,
- 'LT_CONFIG_LTDL_DIR' => 1,
- 'AC_LIBTOOL_DLOPEN_SELF' => 1,
- 'LT_OUTPUT' => 1,
- 'AC_LIBTOOL_PROG_LD_SHLIBS' => 1,
- 'AC_WITH_LTDL' => 1,
- 'AC_LIBTOOL_LINKER_OPTION' => 1,
- 'LT_AC_PROG_RC' => 1,
- 'AC_LIBTOOL_CXX' => 1,
- 'LT_INIT' => 1,
- 'LT_AC_PROG_GCJ' => 1,
- 'LT_SYS_DLOPEN_SELF' => 1,
- 'AM_DISABLE_STATIC' => 1,
- 'AM_DEP_TRACK' => 1,
- '_AC_PROG_LIBTOOL' => 1,
- '_AM_IF_OPTION' => 1,
- 'AC_PATH_TOOL_PREFIX' => 1,
- 'm4_pattern_allow' => 1,
- 'AC_LIBTOOL_F77' => 1,
- 'AM_SET_LEADING_DOT' => 1,
- 'LT_AC_PROG_EGREP' => 1,
- '_AM_DEPENDENCIES' => 1,
- 'AC_LIBTOOL_LANG_C_CONFIG' => 1,
- 'LTOPTIONS_VERSION' => 1,
- '_LT_AC_SYS_COMPILER' => 1,
- 'AM_PROG_NM' => 1,
- 'AC_LIBLTDL_CONVENIENCE' => 1,
- 'AC_DEPLIBS_CHECK_METHOD' => 1,
- 'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
- 'AC_LIBLTDL_INSTALLABLE' => 1,
- 'AC_LTDL_ENABLE_INSTALL' => 1,
- 'LT_PROG_GCJ' => 1,
- 'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
- 'AM_INIT_AUTOMAKE' => 1,
- 'AC_DISABLE_STATIC' => 1,
- 'LT_PATH_NM' => 1,
- 'AC_LTDL_SHLIBEXT' => 1,
- '_LT_AC_LOCK' => 1,
- '_LT_AC_LANG_RC_CONFIG' => 1,
- 'LT_SYS_MODULE_PATH' => 1,
- 'AC_LIBTOOL_POSTDEP_PREDEP' => 1,
- 'LT_WITH_LTDL' => 1,
- 'AC_LTDL_SHLIBPATH' => 1,
- 'AM_AUX_DIR_EXPAND' => 1,
- '_LT_AC_LANG_F77_CONFIG' => 1,
- 'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
- '_AM_SET_OPTIONS' => 1,
- '_LT_COMPILER_OPTION' => 1,
- '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
- 'AM_RUN_LOG' => 1,
- 'AC_LIBTOOL_SYS_OLD_ARCHIVE' => 1,
- 'AC_LTDL_SYS_DLOPEN_DEPLIBS' => 1,
- 'AC_LIBTOOL_PICMODE' => 1,
- 'LT_PATH_LD' => 1,
- 'AC_CHECK_LIBM' => 1,
- 'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
- '_AM_MANGLE_OPTION' => 1,
- 'AC_LTDL_SYMBOL_USCORE' => 1,
- 'AC_LIBTOOL_SYS_MAX_CMD_LEN' => 1,
- 'AM_SET_DEPDIR' => 1,
- '_LT_CC_BASENAME' => 1,
- '_LT_LIBOBJ' => 1
- }
- ], 'Autom4te::Request' ),
- bless( [
- '1',
- 1,
- [
- '/usr/share/autoconf'
- ],
- [
- '/usr/share/autoconf/autoconf/autoconf.m4f',
- 'aclocal.m4',
- 'configure.ac'
- ],
- {
- '_LT_AC_TAGCONFIG' => 1,
- 'AM_PROG_F77_C_O' => 1,
- 'AC_INIT' => 1,
- 'm4_pattern_forbid' => 1,
- '_AM_COND_IF' => 1,
- 'AC_CANONICAL_TARGET' => 1,
- 'AC_SUBST' => 1,
- 'AC_CONFIG_LIBOBJ_DIR' => 1,
- 'AC_FC_SRCEXT' => 1,
- 'AC_CANONICAL_HOST' => 1,
- 'AC_PROG_LIBTOOL' => 1,
- 'AM_INIT_AUTOMAKE' => 1,
- 'AC_CONFIG_SUBDIRS' => 1,
- 'AM_AUTOMAKE_VERSION' => 1,
- 'LT_CONFIG_LTDL_DIR' => 1,
- 'AC_REQUIRE_AUX_FILE' => 1,
- 'AC_CONFIG_LINKS' => 1,
- 'm4_sinclude' => 1,
- 'LT_SUPPORTED_TAG' => 1,
- 'AM_MAINTAINER_MODE' => 1,
- 'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
- '_m4_warn' => 1,
- 'AM_PROG_CXX_C_O' => 1,
- '_AM_COND_ENDIF' => 1,
- 'AM_ENABLE_MULTILIB' => 1,
- 'AM_SILENT_RULES' => 1,
- 'AC_CONFIG_FILES' => 1,
- 'include' => 1,
- 'LT_INIT' => 1,
- 'AM_GNU_GETTEXT' => 1,
- 'AC_LIBSOURCE' => 1,
- 'AM_PROG_FC_C_O' => 1,
- 'AC_CANONICAL_BUILD' => 1,
- 'AC_FC_FREEFORM' => 1,
- 'AH_OUTPUT' => 1,
- '_AM_SUBST_NOTMAKE' => 1,
- 'AC_CONFIG_AUX_DIR' => 1,
- 'sinclude' => 1,
- 'AM_PROG_CC_C_O' => 1,
- 'm4_pattern_allow' => 1,
- 'AC_CANONICAL_SYSTEM' => 1,
- 'AM_CONDITIONAL' => 1,
- 'AC_CONFIG_HEADERS' => 1,
- 'AC_DEFINE_TRACE_LITERAL' => 1,
- 'm4_include' => 1,
- '_AM_COND_ELSE' => 1,
- 'AC_SUBST_TRACE' => 1
- }
- ], 'Autom4te::Request' )
- );
-
diff --git a/autom4te.cache/traces.0 b/autom4te.cache/traces.0
deleted file mode 100644
index 8370f32..0000000
--- a/autom4te.cache/traces.0
+++ /dev/null
@@ -1,2992 +0,0 @@
-m4trace:/usr/share/aclocal/argz.m4:12: -1- AC_DEFUN([gl_FUNC_ARGZ], [gl_PREREQ_ARGZ
-
-AC_CHECK_HEADERS([argz.h], [], [], [AC_INCLUDES_DEFAULT])
-
-AC_CHECK_TYPES([error_t],
- [],
- [AC_DEFINE([error_t], [int],
- [Define to a type to use for `error_t' if it is not otherwise available.])
- AC_DEFINE([__error_t_defined], [1], [Define so that glibc/gnulib argp.h
- does not typedef error_t.])],
- [#if defined(HAVE_ARGZ_H)
-# include <argz.h>
-#endif])
-
-ARGZ_H=
-AC_CHECK_FUNCS([argz_add argz_append argz_count argz_create_sep argz_insert \
- argz_next argz_stringify], [], [ARGZ_H=argz.h; AC_LIBOBJ([argz])])
-
-dnl if have system argz functions, allow forced use of
-dnl libltdl-supplied implementation (and default to do so
-dnl on "known bad" systems). Could use a runtime check, but
-dnl (a) detecting malloc issues is notoriously unreliable
-dnl (b) only known system that declares argz functions,
-dnl provides them, yet they are broken, is cygwin
-dnl releases prior to 16-Mar-2007 (1.5.24 and earlier)
-dnl So, it's more straightforward simply to special case
-dnl this for known bad systems.
-AS_IF([test -z "$ARGZ_H"],
- [AC_CACHE_CHECK(
- [if argz actually works],
- [lt_cv_sys_argz_works],
- [[case $host_os in #(
- *cygwin*)
- lt_cv_sys_argz_works=no
- if test "$cross_compiling" != no; then
- lt_cv_sys_argz_works="guessing no"
- else
- lt_sed_extract_leading_digits='s/^\([0-9\.]*\).*/\1/'
- save_IFS=$IFS
- IFS=-.
- set x `uname -r | sed -e "$lt_sed_extract_leading_digits"`
- IFS=$save_IFS
- lt_os_major=${2-0}
- lt_os_minor=${3-0}
- lt_os_micro=${4-0}
- if test "$lt_os_major" -gt 1 \
- || { test "$lt_os_major" -eq 1 \
- && { test "$lt_os_minor" -gt 5 \
- || { test "$lt_os_minor" -eq 5 \
- && test "$lt_os_micro" -gt 24; }; }; }; then
- lt_cv_sys_argz_works=yes
- fi
- fi
- ;; #(
- *) lt_cv_sys_argz_works=yes ;;
- esac]])
- AS_IF([test $lt_cv_sys_argz_works = yes],
- [AC_DEFINE([HAVE_WORKING_ARGZ], 1,
- [This value is set to 1 to indicate that the system argz facility works])],
- [ARGZ_H=argz.h
- AC_LIBOBJ([argz])])])
-
-AC_SUBST([ARGZ_H])
-])
-m4trace:/usr/share/aclocal/argz.m4:79: -1- AC_DEFUN([gl_PREREQ_ARGZ], [:])
-m4trace:/usr/share/aclocal/libtool.m4:67: -1- AC_DEFUN([LT_INIT], [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
-AC_BEFORE([$0], [LT_LANG])dnl
-AC_BEFORE([$0], [LT_OUTPUT])dnl
-AC_BEFORE([$0], [LTDL_INIT])dnl
-m4_require([_LT_CHECK_BUILDDIR])dnl
-
-dnl Autoconf doesn't catch unexpanded LT_ macros by default:
-m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
-m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
-dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
-dnl unless we require an AC_DEFUNed macro:
-AC_REQUIRE([LTOPTIONS_VERSION])dnl
-AC_REQUIRE([LTSUGAR_VERSION])dnl
-AC_REQUIRE([LTVERSION_VERSION])dnl
-AC_REQUIRE([LTOBSOLETE_VERSION])dnl
-m4_require([_LT_PROG_LTMAIN])dnl
-
-dnl Parse OPTIONS
-_LT_SET_OPTIONS([$0], [$1])
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-AC_SUBST(LIBTOOL)dnl
-
-_LT_SETUP
-
-# Only expand once:
-m4_define([LT_INIT])
-])
-m4trace:/usr/share/aclocal/libtool.m4:102: -1- AU_DEFUN([AC_PROG_LIBTOOL], [m4_if($#, 0, [LT_INIT], [LT_INIT($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:102: -1- AC_DEFUN([AC_PROG_LIBTOOL], [AC_DIAGNOSE([obsolete], [The macro `AC_PROG_LIBTOOL' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_INIT], [LT_INIT($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:103: -1- AU_DEFUN([AM_PROG_LIBTOOL], [m4_if($#, 0, [LT_INIT], [LT_INIT($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:103: -1- AC_DEFUN([AM_PROG_LIBTOOL], [AC_DIAGNOSE([obsolete], [The macro `AM_PROG_LIBTOOL' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_INIT], [LT_INIT($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:562: -1- AC_DEFUN([LT_OUTPUT], [: ${CONFIG_LT=./config.lt}
-AC_MSG_NOTICE([creating $CONFIG_LT])
-cat >"$CONFIG_LT" <<_LTEOF
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate a libtool stub with the current configuration.
-
-lt_cl_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AS_SHELL_SANITIZE
-_AS_PREPARE
-
-exec AS_MESSAGE_FD>&1
-exec AS_MESSAGE_LOG_FD>>config.log
-{
- echo
- AS_BOX([Running $as_me.])
-} >&AS_MESSAGE_LOG_FD
-
-lt_cl_help="\
-\`$as_me' creates a local libtool stub from the current configuration,
-for use in further configure time tests before the real libtool is
-generated.
-
-Usage: $[0] [[OPTIONS]]
-
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -q, --quiet do not print progress messages
- -d, --debug don't remove temporary files
-
-Report bugs to <bug-libtool at gnu.org>."
-
-lt_cl_version="\
-m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
-m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
-configured by $[0], generated by m4_PACKAGE_STRING.
-
-Copyright (C) 2008 Free Software Foundation, Inc.
-This config.lt script is free software; the Free Software Foundation
-gives unlimited permision to copy, distribute and modify it."
-
-while test $[#] != 0
-do
- case $[1] in
- --version | --v* | -V )
- echo "$lt_cl_version"; exit 0 ;;
- --help | --h* | -h )
- echo "$lt_cl_help"; exit 0 ;;
- --debug | --d* | -d )
- debug=: ;;
- --quiet | --q* | --silent | --s* | -q )
- lt_cl_silent=: ;;
-
- -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try \`$[0] --help' for more information.]) ;;
-
- *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try \`$[0] --help' for more information.]) ;;
- esac
- shift
-done
-
-if $lt_cl_silent; then
- exec AS_MESSAGE_FD>/dev/null
-fi
-_LTEOF
-
-cat >>"$CONFIG_LT" <<_LTEOF
-_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AC_MSG_NOTICE([creating $ofile])
-_LT_OUTPUT_LIBTOOL_COMMANDS
-AS_EXIT(0)
-_LTEOF
-chmod +x "$CONFIG_LT"
-
-# configure is writing to config.log, but config.lt does its own redirection,
-# appending to config.log, which fails on DOS, as config.log is still kept
-# open by configure. Here we exec the FD to /dev/null, effectively closing
-# config.log, so it can be properly (re)opened and appended to by config.lt.
-if test "$no_create" != yes; then
- lt_cl_success=:
- test "$silent" = yes &&
- lt_config_lt_args="$lt_config_lt_args --quiet"
- exec AS_MESSAGE_LOG_FD>/dev/null
- $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
- exec AS_MESSAGE_LOG_FD>>config.log
- $lt_cl_success || AS_EXIT(1)
-fi
-])
-m4trace:/usr/share/aclocal/libtool.m4:757: -1- AC_DEFUN([LT_SUPPORTED_TAG], [])
-m4trace:/usr/share/aclocal/libtool.m4:768: -1- AC_DEFUN([LT_LANG], [AC_BEFORE([$0], [LT_OUTPUT])dnl
-m4_case([$1],
- [C], [_LT_LANG(C)],
- [C++], [_LT_LANG(CXX)],
- [Java], [_LT_LANG(GCJ)],
- [Fortran 77], [_LT_LANG(F77)],
- [Fortran], [_LT_LANG(FC)],
- [Windows Resource], [_LT_LANG(RC)],
- [m4_ifdef([_LT_LANG_]$1[_CONFIG],
- [_LT_LANG($1)],
- [m4_fatal([$0: unsupported language: "$1"])])])dnl
-])
-m4trace:/usr/share/aclocal/libtool.m4:830: -1- AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
-m4trace:/usr/share/aclocal/libtool.m4:830: -1- AC_DEFUN([AC_LIBTOOL_CXX], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_CXX' is obsolete.
-You should run autoupdate.])dnl
-LT_LANG(C++)])
-m4trace:/usr/share/aclocal/libtool.m4:831: -1- AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
-m4trace:/usr/share/aclocal/libtool.m4:831: -1- AC_DEFUN([AC_LIBTOOL_F77], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_F77' is obsolete.
-You should run autoupdate.])dnl
-LT_LANG(Fortran 77)])
-m4trace:/usr/share/aclocal/libtool.m4:832: -1- AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
-m4trace:/usr/share/aclocal/libtool.m4:832: -1- AC_DEFUN([AC_LIBTOOL_FC], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_FC' is obsolete.
-You should run autoupdate.])dnl
-LT_LANG(Fortran)])
-m4trace:/usr/share/aclocal/libtool.m4:833: -1- AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
-m4trace:/usr/share/aclocal/libtool.m4:833: -1- AC_DEFUN([AC_LIBTOOL_GCJ], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_GCJ' is obsolete.
-You should run autoupdate.])dnl
-LT_LANG(Java)])
-m4trace:/usr/share/aclocal/libtool.m4:1402: -1- AC_DEFUN([_LT_COMPILER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
- [$2=no
- m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$3"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&AS_MESSAGE_LOG_FD
- echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- $2=yes
- fi
- fi
- $RM conftest*
-])
-
-if test x"[$]$2" = xyes; then
- m4_if([$5], , :, [$5])
-else
- m4_if([$6], , :, [$6])
-fi
-])
-m4trace:/usr/share/aclocal/libtool.m4:1444: -1- AU_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [m4_if($#, 0, [_LT_COMPILER_OPTION], [_LT_COMPILER_OPTION($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:1444: -1- AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_COMPILER_OPTION' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [_LT_COMPILER_OPTION], [_LT_COMPILER_OPTION($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:1453: -1- AC_DEFUN([_LT_LINKER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
- [$2=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $3"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&AS_MESSAGE_LOG_FD
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- $2=yes
- fi
- else
- $2=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-])
-
-if test x"[$]$2" = xyes; then
- m4_if([$4], , :, [$4])
-else
- m4_if([$5], , :, [$5])
-fi
-])
-m4trace:/usr/share/aclocal/libtool.m4:1488: -1- AU_DEFUN([AC_LIBTOOL_LINKER_OPTION], [m4_if($#, 0, [_LT_LINKER_OPTION], [_LT_LINKER_OPTION($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:1488: -1- AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_LINKER_OPTION' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [_LT_LINKER_OPTION], [_LT_LINKER_OPTION($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:1495: -1- AC_DEFUN([LT_CMD_MAX_LEN], [AC_REQUIRE([AC_CANONICAL_HOST])dnl
-# find the maximum length of command line arguments
-AC_MSG_CHECKING([the maximum length of command line arguments])
-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
- i=0
- teststring="ABCD"
-
- case $build_os in
- msdosdjgpp*)
- # On DJGPP, this test can blow up pretty badly due to problems in libc
- # (any single argument exceeding 2000 bytes causes a buffer overrun
- # during glob expansion). Even if it were fixed, the result of this
- # check would be larger than it should be.
- lt_cv_sys_max_cmd_len=12288; # 12K is about right
- ;;
-
- gnu*)
- # Under GNU Hurd, this test is not required because there is
- # no limit to the length of command line arguments.
- # Libtool will interpret -1 as no limit whatsoever
- lt_cv_sys_max_cmd_len=-1;
- ;;
-
- cygwin* | mingw* | cegcc*)
- # On Win9x/ME, this test blows up -- it succeeds, but takes
- # about 5 minutes as the teststring grows exponentially.
- # Worse, since 9x/ME are not pre-emptively multitasking,
- # you end up with a "frozen" computer, even though with patience
- # the test eventually succeeds (with a max line length of 256k).
- # Instead, let's just punt: use the minimum linelength reported by
- # all of the supported platforms: 8192 (on NT/2K/XP).
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- amigaos*)
- # On AmigaOS with pdksh, this test takes hours, literally.
- # So we just punt and use a minimum line length of 8192.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
- # This has been around since 386BSD, at least. Likely further.
- if test -x /sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
- elif test -x /usr/sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
- else
- lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
- fi
- # And add a safety zone
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- ;;
-
- interix*)
- # We know the value 262144 and hardcode it with a safety zone (like BSD)
- lt_cv_sys_max_cmd_len=196608
- ;;
-
- osf*)
- # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
- # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
- # nice to cause kernel panics so lets avoid the loop below.
- # First set a reasonable default.
- lt_cv_sys_max_cmd_len=16384
- #
- if test -x /sbin/sysconfig; then
- case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
- *1*) lt_cv_sys_max_cmd_len=-1 ;;
- esac
- fi
- ;;
- sco3.2v5*)
- lt_cv_sys_max_cmd_len=102400
- ;;
- sysv5* | sco5v6* | sysv4.2uw2*)
- kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
- if test -n "$kargmax"; then
- lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
- else
- lt_cv_sys_max_cmd_len=32768
- fi
- ;;
- *)
- lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
- if test -n "$lt_cv_sys_max_cmd_len"; then
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- else
- # Make teststring a little bigger before we do anything with it.
- # a 1K string should be a reasonable start.
- for i in 1 2 3 4 5 6 7 8 ; do
- teststring=$teststring$teststring
- done
- SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
- # If test is not a shell built-in, we'll probably end up computing a
- # maximum length that is only half of the actual maximum length, but
- # we can't tell.
- while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
- = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
- test $i != 17 # 1/2 MB should be enough
- do
- i=`expr $i + 1`
- teststring=$teststring$teststring
- done
- # Only check the string length outside the loop.
- lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
- teststring=
- # Add a significant safety factor because C++ compilers can tack on
- # massive amounts of additional arguments before passing them to the
- # linker. It appears as though 1/2 is a usable value.
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
- fi
- ;;
- esac
-])
-if test -n $lt_cv_sys_max_cmd_len ; then
- AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
-else
- AC_MSG_RESULT(none)
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-_LT_DECL([], [max_cmd_len], [0],
- [What is the maximum length of a command?])
-])
-m4trace:/usr/share/aclocal/libtool.m4:1623: -1- AU_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [m4_if($#, 0, [LT_CMD_MAX_LEN], [LT_CMD_MAX_LEN($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:1623: -1- AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_SYS_MAX_CMD_LEN' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_CMD_MAX_LEN], [LT_CMD_MAX_LEN($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:1724: -1- AC_DEFUN([LT_SYS_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl
-if test "x$enable_dlopen" != xyes; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
- lt_cv_dlopen=no
- lt_cv_dlopen_libs=
-
- case $host_os in
- beos*)
- lt_cv_dlopen="load_add_on"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
- mingw* | pw32* | cegcc*)
- lt_cv_dlopen="LoadLibrary"
- lt_cv_dlopen_libs=
- ;;
-
- cygwin*)
- lt_cv_dlopen="dlopen"
- lt_cv_dlopen_libs=
- ;;
-
- darwin*)
- # if libdl is installed we need to link against it
- AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
- lt_cv_dlopen="dyld"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ])
- ;;
-
- *)
- AC_CHECK_FUNC([shl_load],
- [lt_cv_dlopen="shl_load"],
- [AC_CHECK_LIB([dld], [shl_load],
- [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
- [AC_CHECK_FUNC([dlopen],
- [lt_cv_dlopen="dlopen"],
- [AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
- [AC_CHECK_LIB([svld], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
- [AC_CHECK_LIB([dld], [dld_link],
- [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
- ])
- ])
- ])
- ])
- ])
- ;;
- esac
-
- if test "x$lt_cv_dlopen" != xno; then
- enable_dlopen=yes
- else
- enable_dlopen=no
- fi
-
- case $lt_cv_dlopen in
- dlopen)
- save_CPPFLAGS="$CPPFLAGS"
- test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
- save_LDFLAGS="$LDFLAGS"
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
- save_LIBS="$LIBS"
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- AC_CACHE_CHECK([whether a program can dlopen itself],
- lt_cv_dlopen_self, [dnl
- _LT_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
- lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
- ])
-
- if test "x$lt_cv_dlopen_self" = xyes; then
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
- AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
- lt_cv_dlopen_self_static, [dnl
- _LT_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
- lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
- ])
- fi
-
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
- ;;
- esac
-
- case $lt_cv_dlopen_self in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case $lt_cv_dlopen_self_static in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-_LT_DECL([dlopen_support], [enable_dlopen], [0],
- [Whether dlopen is supported])
-_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
- [Whether dlopen of programs is supported])
-_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
- [Whether dlopen of statically linked programs is supported])
-])
-m4trace:/usr/share/aclocal/libtool.m4:1841: -1- AU_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [m4_if($#, 0, [LT_SYS_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:1841: -1- AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_DLOPEN_SELF' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_SYS_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:2741: -1- AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl
-AC_MSG_CHECKING([for $1])
-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-[case $MAGIC_CMD in
-[[\\/*] | ?:[\\/]*])
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-dnl $ac_dummy forces splitting on constant user-supplied paths.
-dnl POSIX.2 word splitting is done only on the output of word expansions,
-dnl not every word. This closes a longstanding sh security hole.
- ac_dummy="m4_if([$2], , $PATH, [$2])"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$1; then
- lt_cv_path_MAGIC_CMD="$ac_dir/$1"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- AC_MSG_RESULT($MAGIC_CMD)
-else
- AC_MSG_RESULT(no)
-fi
-_LT_DECL([], [MAGIC_CMD], [0],
- [Used to examine libraries when file_magic_cmd begins with "file"])dnl
-])
-m4trace:/usr/share/aclocal/libtool.m4:2803: -1- AU_DEFUN([AC_PATH_TOOL_PREFIX], [m4_if($#, 0, [_LT_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:2803: -1- AC_DEFUN([AC_PATH_TOOL_PREFIX], [AC_DIAGNOSE([obsolete], [The macro `AC_PATH_TOOL_PREFIX' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [_LT_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:2826: -1- AC_DEFUN([LT_PATH_LD], [AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-
-AC_ARG_WITH([gnu-ld],
- [AS_HELP_STRING([--with-gnu-ld],
- [assume the C compiler uses GNU ld @<:@default=no@:>@])],
- [test "$withval" = no || with_gnu_ld=yes],
- [with_gnu_ld=no])dnl
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- AC_MSG_CHECKING([for ld used by $CC])
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [[\\/]]* | ?:[[\\/]]*)
- re_direlt='/[[^/]][[^/]]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- AC_MSG_CHECKING([for GNU ld])
-else
- AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL(lt_cv_path_LD,
-[if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- AC_MSG_RESULT($LD)
-else
- AC_MSG_RESULT(no)
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-_LT_PATH_LD_GNU
-AC_SUBST([LD])
-
-_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
-])
-m4trace:/usr/share/aclocal/libtool.m4:2914: -1- AU_DEFUN([AM_PROG_LD], [m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:2914: -1- AC_DEFUN([AM_PROG_LD], [AC_DIAGNOSE([obsolete], [The macro `AM_PROG_LD' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:2915: -1- AU_DEFUN([AC_PROG_LD], [m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:2915: -1- AC_DEFUN([AC_PROG_LD], [AC_DIAGNOSE([obsolete], [The macro `AC_PROG_LD' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:3179: -1- AC_DEFUN([LT_PATH_NM], [AC_REQUIRE([AC_PROG_CC])dnl
-AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
-[if test -n "$NM"; then
- # Let the user override the test.
- lt_cv_path_NM="$NM"
-else
- lt_nm_to_check="${ac_tool_prefix}nm"
- if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
- lt_nm_to_check="$lt_nm_to_check nm"
- fi
- for lt_tmp_nm in $lt_nm_to_check; do
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/$lt_tmp_nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
- break
- ;;
- *)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- ;;
- esac
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
- done
- : ${lt_cv_path_NM=no}
-fi])
-if test "$lt_cv_path_NM" != "no"; then
- NM="$lt_cv_path_NM"
-else
- # Didn't find any BSD compatible name lister, look for dumpbin.
- AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
- AC_SUBST([DUMPBIN])
- if test "$DUMPBIN" != ":"; then
- NM="$DUMPBIN"
- fi
-fi
-test -z "$NM" && NM=nm
-AC_SUBST([NM])
-_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
-
-AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
- [lt_cv_nm_interface="BSD nm"
- echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$ac_compile" 2>conftest.err)
- cat conftest.err >&AS_MESSAGE_LOG_FD
- (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
- (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
- cat conftest.err >&AS_MESSAGE_LOG_FD
- (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
- cat conftest.out >&AS_MESSAGE_LOG_FD
- if $GREP 'External.*some_variable' conftest.out > /dev/null; then
- lt_cv_nm_interface="MS dumpbin"
- fi
- rm -f conftest*])
-])
-m4trace:/usr/share/aclocal/libtool.m4:3257: -1- AU_DEFUN([AM_PROG_NM], [m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:3257: -1- AC_DEFUN([AM_PROG_NM], [AC_DIAGNOSE([obsolete], [The macro `AM_PROG_NM' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:3258: -1- AU_DEFUN([AC_PROG_NM], [m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:3258: -1- AC_DEFUN([AC_PROG_NM], [AC_DIAGNOSE([obsolete], [The macro `AC_PROG_NM' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:3267: -1- AC_DEFUN([LT_LIB_M], [AC_REQUIRE([AC_CANONICAL_HOST])dnl
-LIBM=
-case $host in
-*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
- # These system don't have libm, or don't need it
- ;;
-*-ncr-sysv4.3*)
- AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
- AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
- ;;
-*)
- AC_CHECK_LIB(m, cos, LIBM="-lm")
- ;;
-esac
-AC_SUBST([LIBM])
-])
-m4trace:/usr/share/aclocal/libtool.m4:3286: -1- AU_DEFUN([AC_CHECK_LIBM], [m4_if($#, 0, [LT_LIB_M], [LT_LIB_M($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:3286: -1- AC_DEFUN([AC_CHECK_LIBM], [AC_DIAGNOSE([obsolete], [The macro `AC_CHECK_LIBM' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_LIB_M], [LT_LIB_M($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:6987: -1- AC_DEFUN([LT_PROG_GCJ], [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
- [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
- [AC_CHECK_TOOL(GCJ, gcj,)
- test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
- AC_SUBST(GCJFLAGS)])])[]dnl
-])
-m4trace:/usr/share/aclocal/libtool.m4:6996: -1- AU_DEFUN([LT_AC_PROG_GCJ], [m4_if($#, 0, [LT_PROG_GCJ], [LT_PROG_GCJ($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:6996: -1- AC_DEFUN([LT_AC_PROG_GCJ], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_GCJ' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_PROG_GCJ], [LT_PROG_GCJ($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:7003: -1- AC_DEFUN([LT_PROG_RC], [AC_CHECK_TOOL(RC, windres,)
-])
-m4trace:/usr/share/aclocal/libtool.m4:7008: -1- AU_DEFUN([LT_AC_PROG_RC], [m4_if($#, 0, [LT_PROG_RC], [LT_PROG_RC($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:7008: -1- AC_DEFUN([LT_AC_PROG_RC], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_RC' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_PROG_RC], [LT_PROG_RC($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:7119: -1- AU_DEFUN([LT_AC_PROG_SED], [m4_if($#, 0, [AC_PROG_SED], [AC_PROG_SED($@)])])
-m4trace:/usr/share/aclocal/libtool.m4:7119: -1- AC_DEFUN([LT_AC_PROG_SED], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_SED' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [AC_PROG_SED], [AC_PROG_SED($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:16: -1- AC_DEFUN([LT_CONFIG_LTDL_DIR], [AC_BEFORE([$0], [LTDL_INIT])
-_$0($*)
-])
-m4trace:/usr/share/aclocal/ltdl.m4:68: -1- AC_DEFUN([LTDL_CONVENIENCE], [AC_BEFORE([$0], [LTDL_INIT])dnl
-dnl Although the argument is deprecated and no longer documented,
-dnl LTDL_CONVENIENCE used to take a DIRECTORY orgument, if we have one
-dnl here make sure it is the same as any other declaration of libltdl's
-dnl location! This also ensures lt_ltdl_dir is set when configure.ac is
-dnl not yet using an explicit LT_CONFIG_LTDL_DIR.
-m4_ifval([$1], [_LT_CONFIG_LTDL_DIR([$1])])dnl
-_$0()
-])
-m4trace:/usr/share/aclocal/ltdl.m4:81: -1- AU_DEFUN([AC_LIBLTDL_CONVENIENCE], [_LT_CONFIG_LTDL_DIR([m4_default([$1], [libltdl])])
-_LTDL_CONVENIENCE])
-m4trace:/usr/share/aclocal/ltdl.m4:81: -1- AC_DEFUN([AC_LIBLTDL_CONVENIENCE], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBLTDL_CONVENIENCE' is obsolete.
-You should run autoupdate.])dnl
-_LT_CONFIG_LTDL_DIR([m4_default([$1], [libltdl])])
-_LTDL_CONVENIENCE])
-m4trace:/usr/share/aclocal/ltdl.m4:124: -1- AC_DEFUN([LTDL_INSTALLABLE], [AC_BEFORE([$0], [LTDL_INIT])dnl
-dnl Although the argument is deprecated and no longer documented,
-dnl LTDL_INSTALLABLE used to take a DIRECTORY orgument, if we have one
-dnl here make sure it is the same as any other declaration of libltdl's
-dnl location! This also ensures lt_ltdl_dir is set when configure.ac is
-dnl not yet using an explicit LT_CONFIG_LTDL_DIR.
-m4_ifval([$1], [_LT_CONFIG_LTDL_DIR([$1])])dnl
-_$0()
-])
-m4trace:/usr/share/aclocal/ltdl.m4:137: -1- AU_DEFUN([AC_LIBLTDL_INSTALLABLE], [_LT_CONFIG_LTDL_DIR([m4_default([$1], [libltdl])])
-_LTDL_INSTALLABLE])
-m4trace:/usr/share/aclocal/ltdl.m4:137: -1- AC_DEFUN([AC_LIBLTDL_INSTALLABLE], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBLTDL_INSTALLABLE' is obsolete.
-You should run autoupdate.])dnl
-_LT_CONFIG_LTDL_DIR([m4_default([$1], [libltdl])])
-_LTDL_INSTALLABLE])
-m4trace:/usr/share/aclocal/ltdl.m4:213: -1- AC_DEFUN([_LT_LIBOBJ], [
- m4_pattern_allow([^_LT_LIBOBJS$])
- _LT_LIBOBJS="$_LT_LIBOBJS $1.$ac_objext"
-])
-m4trace:/usr/share/aclocal/ltdl.m4:226: -1- AC_DEFUN([LTDL_INIT], [dnl Parse OPTIONS
-_LT_SET_OPTIONS([$0], [$1])
-
-dnl We need to keep our own list of libobjs separate from our parent project,
-dnl and the easiest way to do that is redefine the AC_LIBOBJs macro while
-dnl we look for our own LIBOBJs.
-m4_pushdef([AC_LIBOBJ], m4_defn([_LT_LIBOBJ]))
-m4_pushdef([AC_LIBSOURCES])
-
-dnl If not otherwise defined, default to the 1.5.x compatible subproject mode:
-m4_if(_LTDL_MODE, [],
- [m4_define([_LTDL_MODE], m4_default([$2], [subproject]))
- m4_if([-1], [m4_bregexp(_LTDL_MODE, [\(subproject\|\(non\)?recursive\)])],
- [m4_fatal([unknown libltdl mode: ]_LTDL_MODE)])])
-
-AC_ARG_WITH([included_ltdl],
- [AS_HELP_STRING([--with-included-ltdl],
- [use the GNU ltdl sources included here])])
-
-if test "x$with_included_ltdl" != xyes; then
- # We are not being forced to use the included libltdl sources, so
- # decide whether there is a useful installed version we can use.
- AC_CHECK_HEADER([ltdl.h],
- [AC_CHECK_DECL([lt_dlinterface_register],
- [AC_CHECK_LIB([ltdl], [lt_dladvise_preload],
- [with_included_ltdl=no],
- [with_included_ltdl=yes])],
- [with_included_ltdl=yes],
- [AC_INCLUDES_DEFAULT
- #include <ltdl.h>])],
- [with_included_ltdl=yes],
- [AC_INCLUDES_DEFAULT]
- )
-fi
-
-dnl If neither LT_CONFIG_LTDL_DIR, LTDL_CONVENIENCE nor LTDL_INSTALLABLE
-dnl was called yet, then for old times' sake, we assume libltdl is in an
-dnl eponymous directory:
-AC_PROVIDE_IFELSE([LT_CONFIG_LTDL_DIR], [], [_LT_CONFIG_LTDL_DIR([libltdl])])
-
-AC_ARG_WITH([ltdl_include],
- [AS_HELP_STRING([--with-ltdl-include=DIR],
- [use the ltdl headers installed in DIR])])
-
-if test -n "$with_ltdl_include"; then
- if test -f "$with_ltdl_include/ltdl.h"; then :
- else
- AC_MSG_ERROR([invalid ltdl include directory: `$with_ltdl_include'])
- fi
-else
- with_ltdl_include=no
-fi
-
-AC_ARG_WITH([ltdl_lib],
- [AS_HELP_STRING([--with-ltdl-lib=DIR],
- [use the libltdl.la installed in DIR])])
-
-if test -n "$with_ltdl_lib"; then
- if test -f "$with_ltdl_lib/libltdl.la"; then :
- else
- AC_MSG_ERROR([invalid ltdl library directory: `$with_ltdl_lib'])
- fi
-else
- with_ltdl_lib=no
-fi
-
-case ,$with_included_ltdl,$with_ltdl_include,$with_ltdl_lib, in
- ,yes,no,no,)
- m4_case(m4_default(_LTDL_TYPE, [convenience]),
- [convenience], [_LTDL_CONVENIENCE],
- [installable], [_LTDL_INSTALLABLE],
- [m4_fatal([unknown libltdl build type: ]_LTDL_TYPE)])
- ;;
- ,no,no,no,)
- # If the included ltdl is not to be used, then use the
- # preinstalled libltdl we found.
- AC_DEFINE([HAVE_LTDL], [1],
- [Define this if a modern libltdl is already installed])
- LIBLTDL=-lltdl
- LTDLDEPS=
- LTDLINCL=
- ;;
- ,no*,no,*)
- AC_MSG_ERROR([`--with-ltdl-include' and `--with-ltdl-lib' options must be used together])
- ;;
- *) with_included_ltdl=no
- LIBLTDL="-L$with_ltdl_lib -lltdl"
- LTDLDEPS=
- LTDLINCL="-I$with_ltdl_include"
- ;;
-esac
-INCLTDL="$LTDLINCL"
-
-# Report our decision...
-AC_MSG_CHECKING([where to find libltdl headers])
-AC_MSG_RESULT([$LTDLINCL])
-AC_MSG_CHECKING([where to find libltdl library])
-AC_MSG_RESULT([$LIBLTDL])
-
-_LTDL_SETUP
-
-dnl restore autoconf definition.
-m4_popdef([AC_LIBOBJ])
-m4_popdef([AC_LIBSOURCES])
-
-AC_CONFIG_COMMANDS_PRE([
- _ltdl_libobjs=
- _ltdl_ltlibobjs=
- if test -n "$_LT_LIBOBJS"; then
- # Remove the extension.
- _lt_sed_drop_objext='s/\.o$//;s/\.obj$//'
- for i in `for i in $_LT_LIBOBJS; do echo "$i"; done | sed "$_lt_sed_drop_objext" | sort -u`; do
- _ltdl_libobjs="$_ltdl_libobjs $lt_libobj_prefix$i.$ac_objext"
- _ltdl_ltlibobjs="$_ltdl_ltlibobjs $lt_libobj_prefix$i.lo"
- done
- fi
- AC_SUBST([ltdl_LIBOBJS], [$_ltdl_libobjs])
- AC_SUBST([ltdl_LTLIBOBJS], [$_ltdl_ltlibobjs])
-])
-
-# Only expand once:
-m4_define([LTDL_INIT])
-])
-m4trace:/usr/share/aclocal/ltdl.m4:352: -1- AU_DEFUN([AC_LIB_LTDL], [LTDL_INIT($@)])
-m4trace:/usr/share/aclocal/ltdl.m4:352: -1- AC_DEFUN([AC_LIB_LTDL], [AC_DIAGNOSE([obsolete], [The macro `AC_LIB_LTDL' is obsolete.
-You should run autoupdate.])dnl
-LTDL_INIT($@)])
-m4trace:/usr/share/aclocal/ltdl.m4:353: -1- AU_DEFUN([AC_WITH_LTDL], [LTDL_INIT($@)])
-m4trace:/usr/share/aclocal/ltdl.m4:353: -1- AC_DEFUN([AC_WITH_LTDL], [AC_DIAGNOSE([obsolete], [The macro `AC_WITH_LTDL' is obsolete.
-You should run autoupdate.])dnl
-LTDL_INIT($@)])
-m4trace:/usr/share/aclocal/ltdl.m4:354: -1- AU_DEFUN([LT_WITH_LTDL], [LTDL_INIT($@)])
-m4trace:/usr/share/aclocal/ltdl.m4:354: -1- AC_DEFUN([LT_WITH_LTDL], [AC_DIAGNOSE([obsolete], [The macro `LT_WITH_LTDL' is obsolete.
-You should run autoupdate.])dnl
-LTDL_INIT($@)])
-m4trace:/usr/share/aclocal/ltdl.m4:367: -1- AC_DEFUN([_LTDL_SETUP], [AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([LT_SYS_MODULE_EXT])dnl
-AC_REQUIRE([LT_SYS_MODULE_PATH])dnl
-AC_REQUIRE([LT_SYS_DLSEARCH_PATH])dnl
-AC_REQUIRE([LT_LIB_DLLOAD])dnl
-AC_REQUIRE([LT_SYS_SYMBOL_USCORE])dnl
-AC_REQUIRE([LT_FUNC_DLSYM_USCORE])dnl
-AC_REQUIRE([LT_SYS_DLOPEN_DEPLIBS])dnl
-AC_REQUIRE([gl_FUNC_ARGZ])dnl
-
-m4_require([_LT_CHECK_OBJDIR])dnl
-m4_require([_LT_HEADER_DLFCN])dnl
-m4_require([_LT_CHECK_DLPREOPEN])dnl
-m4_require([_LT_DECL_SED])dnl
-
-dnl Don't require this, or it will be expanded earlier than the code
-dnl that sets the variables it relies on:
-_LT_ENABLE_INSTALL
-
-dnl _LTDL_MODE specific code must be called at least once:
-_LTDL_MODE_DISPATCH
-
-# In order that ltdl.c can compile, find out the first AC_CONFIG_HEADERS
-# the user used. This is so that ltdl.h can pick up the parent projects
-# config.h file, The first file in AC_CONFIG_HEADERS must contain the
-# definitions required by ltdl.c.
-# FIXME: Remove use of undocumented AC_LIST_HEADERS (2.59 compatibility).
-AC_CONFIG_COMMANDS_PRE([dnl
-m4_pattern_allow([^LT_CONFIG_H$])dnl
-m4_ifset([AH_HEADER],
- [LT_CONFIG_H=AH_HEADER],
- [m4_ifset([AC_LIST_HEADERS],
- [LT_CONFIG_H=`echo "AC_LIST_HEADERS" | $SED 's,^[[ ]]*,,;s,[[ :]].*$,,'`],
- [])])])
-AC_SUBST([LT_CONFIG_H])
-
-AC_CHECK_HEADERS([unistd.h dl.h sys/dl.h dld.h mach-o/dyld.h dirent.h],
- [], [], [AC_INCLUDES_DEFAULT])
-
-AC_CHECK_FUNCS([closedir opendir readdir], [], [AC_LIBOBJ([lt__dirent])])
-AC_CHECK_FUNCS([strlcat strlcpy], [], [AC_LIBOBJ([lt__strl])])
-
-AC_DEFINE_UNQUOTED([LT_LIBEXT],["$libext"],[The archive extension])
-
-name=ltdl
-LTDLOPEN=`eval "\\$ECHO \"$libname_spec\""`
-AC_SUBST([LTDLOPEN])
-])
-m4trace:/usr/share/aclocal/ltdl.m4:437: -1- AC_DEFUN([LT_SYS_DLOPEN_DEPLIBS], [AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_CACHE_CHECK([whether deplibs are loaded by dlopen],
- [lt_cv_sys_dlopen_deplibs],
- [# PORTME does your system automatically load deplibs for dlopen?
- # or its logical equivalent (e.g. shl_load for HP-UX < 11)
- # For now, we just catch OSes we know something about -- in the
- # future, we'll try test this programmatically.
- lt_cv_sys_dlopen_deplibs=unknown
- case $host_os in
- aix3*|aix4.1.*|aix4.2.*)
- # Unknown whether this is true for these versions of AIX, but
- # we want this `case' here to explicitly catch those versions.
- lt_cv_sys_dlopen_deplibs=unknown
- ;;
- aix[[4-9]]*)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- amigaos*)
- case $host_cpu in
- powerpc)
- lt_cv_sys_dlopen_deplibs=no
- ;;
- esac
- ;;
- darwin*)
- # Assuming the user has installed a libdl from somewhere, this is true
- # If you are looking for one http://www.opendarwin.org/projects/dlcompat
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- freebsd* | dragonfly*)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- gnu* | linux* | k*bsd*-gnu | kopensolaris*-gnu)
- # GNU and its variants, using gnu ld.so (Glibc)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- hpux10*|hpux11*)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- interix*)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- irix[[12345]]*|irix6.[[01]]*)
- # Catch all versions of IRIX before 6.2, and indicate that we don't
- # know how it worked for any of those versions.
- lt_cv_sys_dlopen_deplibs=unknown
- ;;
- irix*)
- # The case above catches anything before 6.2, and it's known that
- # at 6.2 and later dlopen does load deplibs.
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- netbsd* | netbsdelf*-gnu)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- openbsd*)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- osf[[1234]]*)
- # dlopen did load deplibs (at least at 4.x), but until the 5.x series,
- # it did *not* use an RPATH in a shared library to find objects the
- # library depends on, so we explicitly say `no'.
- lt_cv_sys_dlopen_deplibs=no
- ;;
- osf5.0|osf5.0a|osf5.1)
- # dlopen *does* load deplibs and with the right loader patch applied
- # it even uses RPATH in a shared library to search for shared objects
- # that the library depends on, but there's no easy way to know if that
- # patch is installed. Since this is the case, all we can really
- # say is unknown -- it depends on the patch being installed. If
- # it is, this changes to `yes'. Without it, it would be `no'.
- lt_cv_sys_dlopen_deplibs=unknown
- ;;
- osf*)
- # the two cases above should catch all versions of osf <= 5.1. Read
- # the comments above for what we know about them.
- # At > 5.1, deplibs are loaded *and* any RPATH in a shared library
- # is used to find them so we can finally say `yes'.
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- qnx*)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- solaris*)
- lt_cv_sys_dlopen_deplibs=yes
- ;;
- sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- libltdl_cv_sys_dlopen_deplibs=yes
- ;;
- esac
- ])
-if test "$lt_cv_sys_dlopen_deplibs" != yes; then
- AC_DEFINE([LTDL_DLOPEN_DEPLIBS], [1],
- [Define if the OS needs help to load dependent libraries for dlopen().])
-fi
-])
-m4trace:/usr/share/aclocal/ltdl.m4:536: -1- AU_DEFUN([AC_LTDL_SYS_DLOPEN_DEPLIBS], [m4_if($#, 0, [LT_SYS_DLOPEN_DEPLIBS], [LT_SYS_DLOPEN_DEPLIBS($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:536: -1- AC_DEFUN([AC_LTDL_SYS_DLOPEN_DEPLIBS], [AC_DIAGNOSE([obsolete], [The macro `AC_LTDL_SYS_DLOPEN_DEPLIBS' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_SYS_DLOPEN_DEPLIBS], [LT_SYS_DLOPEN_DEPLIBS($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:543: -1- AC_DEFUN([LT_SYS_MODULE_EXT], [m4_require([_LT_SYS_DYNAMIC_LINKER])dnl
-AC_CACHE_CHECK([which extension is used for runtime loadable modules],
- [libltdl_cv_shlibext],
-[
-module=yes
-eval libltdl_cv_shlibext=$shrext_cmds
- ])
-if test -n "$libltdl_cv_shlibext"; then
- m4_pattern_allow([LT_MODULE_EXT])dnl
- AC_DEFINE_UNQUOTED([LT_MODULE_EXT], ["$libltdl_cv_shlibext"],
- [Define to the extension used for runtime loadable modules, say, ".so".])
-fi
-])
-m4trace:/usr/share/aclocal/ltdl.m4:559: -1- AU_DEFUN([AC_LTDL_SHLIBEXT], [m4_if($#, 0, [LT_SYS_MODULE_EXT], [LT_SYS_MODULE_EXT($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:559: -1- AC_DEFUN([AC_LTDL_SHLIBEXT], [AC_DIAGNOSE([obsolete], [The macro `AC_LTDL_SHLIBEXT' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_SYS_MODULE_EXT], [LT_SYS_MODULE_EXT($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:566: -1- AC_DEFUN([LT_SYS_MODULE_PATH], [m4_require([_LT_SYS_DYNAMIC_LINKER])dnl
-AC_CACHE_CHECK([which variable specifies run-time module search path],
- [lt_cv_module_path_var], [lt_cv_module_path_var="$shlibpath_var"])
-if test -n "$lt_cv_module_path_var"; then
- m4_pattern_allow([LT_MODULE_PATH_VAR])dnl
- AC_DEFINE_UNQUOTED([LT_MODULE_PATH_VAR], ["$lt_cv_module_path_var"],
- [Define to the name of the environment variable that determines the run-time module search path.])
-fi
-])
-m4trace:/usr/share/aclocal/ltdl.m4:578: -1- AU_DEFUN([AC_LTDL_SHLIBPATH], [m4_if($#, 0, [LT_SYS_MODULE_PATH], [LT_SYS_MODULE_PATH($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:578: -1- AC_DEFUN([AC_LTDL_SHLIBPATH], [AC_DIAGNOSE([obsolete], [The macro `AC_LTDL_SHLIBPATH' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_SYS_MODULE_PATH], [LT_SYS_MODULE_PATH($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:585: -1- AC_DEFUN([LT_SYS_DLSEARCH_PATH], [m4_require([_LT_SYS_DYNAMIC_LINKER])dnl
-AC_CACHE_CHECK([for the default library search path],
- [lt_cv_sys_dlsearch_path],
- [lt_cv_sys_dlsearch_path="$sys_lib_dlsearch_path_spec"])
-if test -n "$lt_cv_sys_dlsearch_path"; then
- sys_dlsearch_path=
- for dir in $lt_cv_sys_dlsearch_path; do
- if test -z "$sys_dlsearch_path"; then
- sys_dlsearch_path="$dir"
- else
- sys_dlsearch_path="$sys_dlsearch_path$PATH_SEPARATOR$dir"
- fi
- done
- m4_pattern_allow([LT_DLSEARCH_PATH])dnl
- AC_DEFINE_UNQUOTED([LT_DLSEARCH_PATH], ["$sys_dlsearch_path"],
- [Define to the system default library search path.])
-fi
-])
-m4trace:/usr/share/aclocal/ltdl.m4:606: -1- AU_DEFUN([AC_LTDL_SYSSEARCHPATH], [m4_if($#, 0, [LT_SYS_DLSEARCH_PATH], [LT_SYS_DLSEARCH_PATH($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:606: -1- AC_DEFUN([AC_LTDL_SYSSEARCHPATH], [AC_DIAGNOSE([obsolete], [The macro `AC_LTDL_SYSSEARCHPATH' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_SYS_DLSEARCH_PATH], [LT_SYS_DLSEARCH_PATH($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:632: -1- AC_DEFUN([LT_LIB_DLLOAD], [m4_pattern_allow([^LT_DLLOADERS$])
-LT_DLLOADERS=
-AC_SUBST([LT_DLLOADERS])
-
-AC_LANG_PUSH([C])
-
-LIBADD_DLOPEN=
-AC_SEARCH_LIBS([dlopen], [dl],
- [AC_DEFINE([HAVE_LIBDL], [1],
- [Define if you have the libdl library or equivalent.])
- if test "$ac_cv_search_dlopen" != "none required" ; then
- LIBADD_DLOPEN="-ldl"
- fi
- libltdl_cv_lib_dl_dlopen="yes"
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la"],
- [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#if HAVE_DLFCN_H
-# include <dlfcn.h>
-#endif
- ]], [[dlopen(0, 0);]])],
- [AC_DEFINE([HAVE_LIBDL], [1],
- [Define if you have the libdl library or equivalent.])
- libltdl_cv_func_dlopen="yes"
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la"],
- [AC_CHECK_LIB([svld], [dlopen],
- [AC_DEFINE([HAVE_LIBDL], [1],
- [Define if you have the libdl library or equivalent.])
- LIBADD_DLOPEN="-lsvld" libltdl_cv_func_dlopen="yes"
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la"])])])
-if test x"$libltdl_cv_func_dlopen" = xyes || test x"$libltdl_cv_lib_dl_dlopen" = xyes
-then
- lt_save_LIBS="$LIBS"
- LIBS="$LIBS $LIBADD_DLOPEN"
- AC_CHECK_FUNCS([dlerror])
- LIBS="$lt_save_LIBS"
-fi
-AC_SUBST([LIBADD_DLOPEN])
-
-LIBADD_SHL_LOAD=
-AC_CHECK_FUNC([shl_load],
- [AC_DEFINE([HAVE_SHL_LOAD], [1],
- [Define if you have the shl_load function.])
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}shl_load.la"],
- [AC_CHECK_LIB([dld], [shl_load],
- [AC_DEFINE([HAVE_SHL_LOAD], [1],
- [Define if you have the shl_load function.])
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}shl_load.la"
- LIBADD_SHL_LOAD="-ldld"])])
-AC_SUBST([LIBADD_SHL_LOAD])
-
-case $host_os in
-darwin[[1567]].*)
-# We only want this for pre-Mac OS X 10.4.
- AC_CHECK_FUNC([_dyld_func_lookup],
- [AC_DEFINE([HAVE_DYLD], [1],
- [Define if you have the _dyld_func_lookup function.])
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dyld.la"])
- ;;
-beos*)
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}load_add_on.la"
- ;;
-cygwin* | mingw* | os2* | pw32*)
- AC_CHECK_DECLS([cygwin_conv_path], [], [], [[#include <sys/cygwin.h>]])
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}loadlibrary.la"
- ;;
-esac
-
-AC_CHECK_LIB([dld], [dld_link],
- [AC_DEFINE([HAVE_DLD], [1],
- [Define if you have the GNU dld library.])
- LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dld_link.la"])
-AC_SUBST([LIBADD_DLD_LINK])
-
-m4_pattern_allow([^LT_DLPREOPEN$])
-LT_DLPREOPEN=
-if test -n "$LT_DLLOADERS"
-then
- for lt_loader in $LT_DLLOADERS; do
- LT_DLPREOPEN="$LT_DLPREOPEN-dlpreopen $lt_loader "
- done
- AC_DEFINE([HAVE_LIBDLLOADER], [1],
- [Define if libdlloader will be built on this platform])
-fi
-AC_SUBST([LT_DLPREOPEN])
-
-dnl This isn't used anymore, but set it for backwards compatibility
-LIBADD_DL="$LIBADD_DLOPEN $LIBADD_SHL_LOAD"
-AC_SUBST([LIBADD_DL])
-
-AC_LANG_POP
-])
-m4trace:/usr/share/aclocal/ltdl.m4:725: -1- AU_DEFUN([AC_LTDL_DLLIB], [m4_if($#, 0, [LT_LIB_DLLOAD], [LT_LIB_DLLOAD($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:725: -1- AC_DEFUN([AC_LTDL_DLLIB], [AC_DIAGNOSE([obsolete], [The macro `AC_LTDL_DLLIB' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_LIB_DLLOAD], [LT_LIB_DLLOAD($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:733: -1- AC_DEFUN([LT_SYS_SYMBOL_USCORE], [m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-AC_CACHE_CHECK([for _ prefix in compiled symbols],
- [lt_cv_sys_symbol_underscore],
- [lt_cv_sys_symbol_underscore=no
- cat > conftest.$ac_ext <<_LT_EOF
-void nm_test_func(){}
-int main(){nm_test_func;return 0;}
-_LT_EOF
- if AC_TRY_EVAL(ac_compile); then
- # Now try to grab the symbols.
- ac_nlist=conftest.nm
- if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $ac_nlist) && test -s "$ac_nlist"; then
- # See whether the symbols have a leading underscore.
- if grep '^. _nm_test_func' "$ac_nlist" >/dev/null; then
- lt_cv_sys_symbol_underscore=yes
- else
- if grep '^. nm_test_func ' "$ac_nlist" >/dev/null; then
- :
- else
- echo "configure: cannot find nm_test_func in $ac_nlist" >&AS_MESSAGE_LOG_FD
- fi
- fi
- else
- echo "configure: cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "configure: failed program was:" >&AS_MESSAGE_LOG_FD
- cat conftest.c >&AS_MESSAGE_LOG_FD
- fi
- rm -rf conftest*
- ])
- sys_symbol_underscore=$lt_cv_sys_symbol_underscore
- AC_SUBST([sys_symbol_underscore])
-])
-m4trace:/usr/share/aclocal/ltdl.m4:770: -1- AU_DEFUN([AC_LTDL_SYMBOL_USCORE], [m4_if($#, 0, [LT_SYS_SYMBOL_USCORE], [LT_SYS_SYMBOL_USCORE($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:770: -1- AC_DEFUN([AC_LTDL_SYMBOL_USCORE], [AC_DIAGNOSE([obsolete], [The macro `AC_LTDL_SYMBOL_USCORE' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_SYS_SYMBOL_USCORE], [LT_SYS_SYMBOL_USCORE($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:777: -1- AC_DEFUN([LT_FUNC_DLSYM_USCORE], [AC_REQUIRE([LT_SYS_SYMBOL_USCORE])dnl
-if test x"$lt_cv_sys_symbol_underscore" = xyes; then
- if test x"$libltdl_cv_func_dlopen" = xyes ||
- test x"$libltdl_cv_lib_dl_dlopen" = xyes ; then
- AC_CACHE_CHECK([whether we have to add an underscore for dlsym],
- [libltdl_cv_need_uscore],
- [libltdl_cv_need_uscore=unknown
- save_LIBS="$LIBS"
- LIBS="$LIBS $LIBADD_DLOPEN"
- _LT_TRY_DLOPEN_SELF(
- [libltdl_cv_need_uscore=no], [libltdl_cv_need_uscore=yes],
- [], [libltdl_cv_need_uscore=cross])
- LIBS="$save_LIBS"
- ])
- fi
-fi
-
-if test x"$libltdl_cv_need_uscore" = xyes; then
- AC_DEFINE([NEED_USCORE], [1],
- [Define if dlsym() requires a leading underscore in symbol names.])
-fi
-])
-m4trace:/usr/share/aclocal/ltdl.m4:802: -1- AU_DEFUN([AC_LTDL_DLSYM_USCORE], [m4_if($#, 0, [LT_FUNC_DLSYM_USCORE], [LT_FUNC_DLSYM_USCORE($@)])])
-m4trace:/usr/share/aclocal/ltdl.m4:802: -1- AC_DEFUN([AC_LTDL_DLSYM_USCORE], [AC_DIAGNOSE([obsolete], [The macro `AC_LTDL_DLSYM_USCORE' is obsolete.
-You should run autoupdate.])dnl
-m4_if($#, 0, [LT_FUNC_DLSYM_USCORE], [LT_FUNC_DLSYM_USCORE($@)])])
-m4trace:/usr/share/aclocal/ltoptions.m4:13: -1- AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
-m4trace:/usr/share/aclocal/ltoptions.m4:110: -1- AU_DEFUN([AC_LIBTOOL_DLOPEN], [_LT_SET_OPTION([LT_INIT], [dlopen])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:110: -1- AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_DLOPEN' is obsolete.
-You should run autoupdate.])dnl
-_LT_SET_OPTION([LT_INIT], [dlopen])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:145: -1- AU_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_REQUIRE([AC_CANONICAL_HOST])dnl
-_LT_SET_OPTION([LT_INIT], [win32-dll])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:145: -1- AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_WIN32_DLL' is obsolete.
-You should run autoupdate.])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-_LT_SET_OPTION([LT_INIT], [win32-dll])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:194: -1- AC_DEFUN([AC_ENABLE_SHARED], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:198: -1- AC_DEFUN([AC_DISABLE_SHARED], [_LT_SET_OPTION([LT_INIT], [disable-shared])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:202: -1- AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-m4trace:/usr/share/aclocal/ltoptions.m4:202: -1- AC_DEFUN([AM_ENABLE_SHARED], [AC_DIAGNOSE([obsolete], [The macro `AM_ENABLE_SHARED' is obsolete.
-You should run autoupdate.])dnl
-AC_ENABLE_SHARED($@)])
-m4trace:/usr/share/aclocal/ltoptions.m4:203: -1- AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-m4trace:/usr/share/aclocal/ltoptions.m4:203: -1- AC_DEFUN([AM_DISABLE_SHARED], [AC_DIAGNOSE([obsolete], [The macro `AM_DISABLE_SHARED' is obsolete.
-You should run autoupdate.])dnl
-AC_DISABLE_SHARED($@)])
-m4trace:/usr/share/aclocal/ltoptions.m4:248: -1- AC_DEFUN([AC_ENABLE_STATIC], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:252: -1- AC_DEFUN([AC_DISABLE_STATIC], [_LT_SET_OPTION([LT_INIT], [disable-static])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:256: -1- AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-m4trace:/usr/share/aclocal/ltoptions.m4:256: -1- AC_DEFUN([AM_ENABLE_STATIC], [AC_DIAGNOSE([obsolete], [The macro `AM_ENABLE_STATIC' is obsolete.
-You should run autoupdate.])dnl
-AC_ENABLE_STATIC($@)])
-m4trace:/usr/share/aclocal/ltoptions.m4:257: -1- AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-m4trace:/usr/share/aclocal/ltoptions.m4:257: -1- AC_DEFUN([AM_DISABLE_STATIC], [AC_DIAGNOSE([obsolete], [The macro `AM_DISABLE_STATIC' is obsolete.
-You should run autoupdate.])dnl
-AC_DISABLE_STATIC($@)])
-m4trace:/usr/share/aclocal/ltoptions.m4:302: -1- AU_DEFUN([AC_ENABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `fast-install' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:302: -1- AC_DEFUN([AC_ENABLE_FAST_INSTALL], [AC_DIAGNOSE([obsolete], [The macro `AC_ENABLE_FAST_INSTALL' is obsolete.
-You should run autoupdate.])dnl
-_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `fast-install' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:309: -1- AU_DEFUN([AC_DISABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `disable-fast-install' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:309: -1- AC_DEFUN([AC_DISABLE_FAST_INSTALL], [AC_DIAGNOSE([obsolete], [The macro `AC_DISABLE_FAST_INSTALL' is obsolete.
-You should run autoupdate.])dnl
-_LT_SET_OPTION([LT_INIT], [disable-fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `disable-fast-install' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:342: -1- AU_DEFUN([AC_LIBTOOL_PICMODE], [_LT_SET_OPTION([LT_INIT], [pic-only])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `pic-only' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltoptions.m4:342: -1- AC_DEFUN([AC_LIBTOOL_PICMODE], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_PICMODE' is obsolete.
-You should run autoupdate.])dnl
-_LT_SET_OPTION([LT_INIT], [pic-only])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `pic-only' option into LT_INIT's first parameter.])
-])
-m4trace:/usr/share/aclocal/ltsugar.m4:13: -1- AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
-m4trace:/usr/share/aclocal/ltversion.m4:18: -1- AC_DEFUN([LTVERSION_VERSION], [macro_version='2.2.6b'
-macro_revision='1.3017'
-_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
-_LT_DECL(, macro_revision, 0)
-])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:36: -1- AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:40: -1- AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:41: -1- AC_DEFUN([_LT_AC_SHELL_INIT])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:42: -1- AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:44: -1- AC_DEFUN([_LT_AC_TAGVAR])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:45: -1- AC_DEFUN([AC_LTDL_ENABLE_INSTALL])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:46: -1- AC_DEFUN([AC_LTDL_PREOPEN])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:47: -1- AC_DEFUN([_LT_AC_SYS_COMPILER])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:48: -1- AC_DEFUN([_LT_AC_LOCK])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:49: -1- AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:50: -1- AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:51: -1- AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:52: -1- AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:53: -1- AC_DEFUN([AC_LIBTOOL_OBJDIR])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:54: -1- AC_DEFUN([AC_LTDL_OBJDIR])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:55: -1- AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:56: -1- AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:57: -1- AC_DEFUN([AC_PATH_MAGIC])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:58: -1- AC_DEFUN([AC_PROG_LD_GNU])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:59: -1- AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:60: -1- AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:61: -1- AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:62: -1- AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:63: -1- AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:64: -1- AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:65: -1- AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:66: -1- AC_DEFUN([LT_AC_PROG_EGREP])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:71: -1- AC_DEFUN([_AC_PROG_LIBTOOL])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:72: -1- AC_DEFUN([AC_LIBTOOL_SETUP])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:73: -1- AC_DEFUN([_LT_AC_CHECK_DLFCN])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:74: -1- AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:75: -1- AC_DEFUN([_LT_AC_TAGCONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:77: -1- AC_DEFUN([_LT_AC_LANG_CXX])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:78: -1- AC_DEFUN([_LT_AC_LANG_F77])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:79: -1- AC_DEFUN([_LT_AC_LANG_GCJ])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:80: -1- AC_DEFUN([AC_LIBTOOL_RC])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:81: -1- AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:82: -1- AC_DEFUN([_LT_AC_LANG_C_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:83: -1- AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:84: -1- AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:85: -1- AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:86: -1- AC_DEFUN([_LT_AC_LANG_F77_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:87: -1- AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:88: -1- AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:89: -1- AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:90: -1- AC_DEFUN([_LT_AC_LANG_RC_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:91: -1- AC_DEFUN([AC_LIBTOOL_CONFIG])
-m4trace:/usr/share/aclocal/lt~obsolete.m4:92: -1- AC_DEFUN([_LT_AC_FILE_LTDLL_C])
-m4trace:/usr/share/aclocal-1.11/amversion.m4:14: -1- AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.11'
-dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
-dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.11.1], [],
- [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
-])
-m4trace:/usr/share/aclocal-1.11/amversion.m4:33: -1- AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.11.1])dnl
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-m4trace:/usr/share/aclocal-1.11/auxdir.m4:47: -1- AC_DEFUN([AM_AUX_DIR_EXPAND], [dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-])
-m4trace:/usr/share/aclocal-1.11/cond.m4:15: -1- AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ(2.52)dnl
- ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
- [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])dnl
-AC_SUBST([$1_FALSE])dnl
-_AM_SUBST_NOTMAKE([$1_TRUE])dnl
-_AM_SUBST_NOTMAKE([$1_FALSE])dnl
-m4_define([_AM_COND_VALUE_$1], [$2])dnl
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi
-AC_CONFIG_COMMANDS_PRE(
-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
- AC_MSG_ERROR([[conditional "$1" was never defined.
-Usually this means the macro was only invoked conditionally.]])
-fi])])
-m4trace:/usr/share/aclocal-1.11/depend.m4:28: -1- AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
-
-ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
- [$1], CXX, [depcc="$CXX" am_compiler_list=],
- [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
- [$1], UPC, [depcc="$UPC" am_compiler_list=],
- [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
- [depcc="$$1" am_compiler_list=])
-
-AC_CACHE_CHECK([dependency style of $depcc],
- [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_$1_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
- fi
- am__universal=false
- m4_case([$1], [CC],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac],
- [CXX],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac])
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_$1_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_$1_dependencies_compiler_type=none
-fi
-])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
-m4trace:/usr/share/aclocal-1.11/depend.m4:163: -1- AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-m4trace:/usr/share/aclocal-1.11/depend.m4:171: -1- AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE(dependency-tracking,
-[ --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors])
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
-])
-m4trace:/usr/share/aclocal-1.11/depout.m4:14: -1- AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`AS_DIRNAME("$mf")`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`AS_DIRNAME(["$file"])`
- AS_MKDIR_P([$dirpart/$fdir])
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
-])
-m4trace:/usr/share/aclocal-1.11/depout.m4:75: -1- AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles],
- [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
- [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
-m4trace:/usr/share/aclocal-1.11/init.m4:26: -1- AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.62])dnl
-dnl Autoconf wants to disallow AM_ names. We explicitly allow
-dnl the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])dnl
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-AC_SUBST([CYGPATH_W])
-
-# Define the identity of the package.
-dnl Distinguish between old-style and new-style calls.
-m4_ifval([$2],
-[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
- AC_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])dnl
-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
- [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
-
-_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
-
-# Some tools Automake needs.
-AC_REQUIRE([AM_SANITY_CHECK])dnl
-AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
-AM_MISSING_PROG(AUTOCONF, autoconf)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
-AM_MISSING_PROG(AUTOHEADER, autoheader)
-AM_MISSING_PROG(MAKEINFO, makeinfo)
-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AM_PROG_MKDIR_P])dnl
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
- [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
- [_AM_PROG_TAR([v7])])])
-_AM_IF_OPTION([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
- [_AM_DEPENDENCIES(CC)],
- [define([AC_PROG_CC],
- defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [_AM_DEPENDENCIES(CXX)],
- [define([AC_PROG_CXX],
- defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- [_AM_DEPENDENCIES(OBJC)],
- [define([AC_PROG_OBJC],
- defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
-])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
-dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
-AC_CONFIG_COMMANDS_PRE(dnl
-[m4_provide_if([_AM_COMPILER_EXEEXT],
- [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
-m4trace:/usr/share/aclocal-1.11/init.m4:126: -1- AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers.
-_am_arg=$1
-_am_stamp_count=1
-for _am_header in $config_headers :; do
- case $_am_header in
- $_am_arg | $_am_arg:* )
- break ;;
- * )
- _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
-done
-echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-m4trace:/usr/share/aclocal-1.11/install-sh.m4:11: -1- AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-AC_SUBST(install_sh)])
-m4trace:/usr/share/aclocal-1.11/lead-dot.m4:12: -1- AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-m4trace:/usr/share/aclocal-1.11/make.m4:14: -1- AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
-m4trace:/usr/share/aclocal-1.11/missing.m4:14: -1- AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN])
-$1=${$1-"${am_missing_run}$2"}
-AC_SUBST($1)])
-m4trace:/usr/share/aclocal-1.11/missing.m4:24: -1- AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([missing])dnl
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- AC_MSG_WARN([`missing' script is too old or missing])
-fi
-])
-m4trace:/usr/share/aclocal-1.11/mkdirp.m4:11: -1- AC_DEFUN([AM_PROG_MKDIR_P], [AC_PREREQ([2.60])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
-dnl while keeping a definition of mkdir_p for backward compatibility.
-dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
-dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
-dnl Makefile.ins that do not define MKDIR_P, so we do our own
-dnl adjustment using top_builddir (which is defined more often than
-dnl MKDIR_P).
-AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
-case $mkdir_p in
- [[\\/$]]* | ?:[[\\/]]*) ;;
- */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-])
-m4trace:/usr/share/aclocal-1.11/options.m4:13: -1- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
-m4trace:/usr/share/aclocal-1.11/options.m4:19: -1- AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), 1)])
-m4trace:/usr/share/aclocal-1.11/options.m4:25: -1- AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
-m4trace:/usr/share/aclocal-1.11/options.m4:31: -1- AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-m4trace:/usr/share/aclocal-1.11/python.m4:35: -1- AC_DEFUN([AM_PATH_PYTHON], [
- dnl Find a Python interpreter. Python versions prior to 2.0 are not
- dnl supported. (2.0 was released on October 16, 2000).
- m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
- [python python2 python3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 dnl
-python2.1 python2.0])
-
- m4_if([$1],[],[
- dnl No version check is needed.
- # Find any Python interpreter.
- if test -z "$PYTHON"; then
- AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :)
- fi
- am_display_PYTHON=python
- ], [
- dnl A version check is needed.
- if test -n "$PYTHON"; then
- # If the user set $PYTHON, use it and don't search something else.
- AC_MSG_CHECKING([whether $PYTHON version >= $1])
- AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
- [AC_MSG_RESULT(yes)],
- [AC_MSG_ERROR(too old)])
- am_display_PYTHON=$PYTHON
- else
- # Otherwise, try each interpreter until we find one that satisfies
- # VERSION.
- AC_CACHE_CHECK([for a Python interpreter with version >= $1],
- [am_cv_pathless_PYTHON],[
- for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do
- test "$am_cv_pathless_PYTHON" = none && break
- AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break])
- done])
- # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
- if test "$am_cv_pathless_PYTHON" = none; then
- PYTHON=:
- else
- AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON])
- fi
- am_display_PYTHON=$am_cv_pathless_PYTHON
- fi
- ])
-
- if test "$PYTHON" = :; then
- dnl Run any user-specified action, or abort.
- m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
- else
-
- dnl Query Python for its version number. Getting [:3] seems to be
- dnl the best way to do this; it's what "site.py" does in the standard
- dnl library.
-
- AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
- [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
- AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
-
- dnl Use the values of $prefix and $exec_prefix for the corresponding
- dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made
- dnl distinct variables so they can be overridden if need be. However,
- dnl general consensus is that you shouldn't need this ability.
-
- AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
- AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
-
- dnl At times (like when building shared libraries) you may want
- dnl to know which OS platform Python thinks this is.
-
- AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
- [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
- AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
-
-
- dnl Set up 4 directories:
-
- dnl pythondir -- where to install python scripts. This is the
- dnl site-packages directory, not the python standard library
- dnl directory like in previous automake betas. This behavior
- dnl is more consistent with lispdir.m4 for example.
- dnl Query distutils for this directory. distutils does not exist in
- dnl Python 1.5, so we fall back to the hardcoded directory if it
- dnl doesn't work.
- AC_CACHE_CHECK([for $am_display_PYTHON script directory],
- [am_cv_python_pythondir],
- [if test "x$prefix" = xNONE
- then
- am_py_prefix=$ac_default_prefix
- else
- am_py_prefix=$prefix
- fi
- am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null ||
- echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pythondir in
- $am_py_prefix*)
- am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
- am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
- ;;
- *)
- case $am_py_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
- ])
- AC_SUBST([pythondir], [$am_cv_python_pythondir])
-
- dnl pkgpythondir -- $PACKAGE directory under pythondir. Was
- dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is
- dnl more consistent with the rest of automake.
-
- AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
-
- dnl pyexecdir -- directory for installing python extension modules
- dnl (shared libraries)
- dnl Query distutils for this directory. distutils does not exist in
- dnl Python 1.5, so we fall back to the hardcoded directory if it
- dnl doesn't work.
- AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
- [am_cv_python_pyexecdir],
- [if test "x$exec_prefix" = xNONE
- then
- am_py_exec_prefix=$am_py_prefix
- else
- am_py_exec_prefix=$exec_prefix
- fi
- am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null ||
- echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pyexecdir in
- $am_py_exec_prefix*)
- am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
- am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
- ;;
- *)
- case $am_py_exec_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
- ])
- AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
-
- dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
-
- AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
-
- dnl Run any user-specified action.
- $2
- fi
-
-])
-m4trace:/usr/share/aclocal-1.11/python.m4:199: -1- AC_DEFUN([AM_PYTHON_CHECK_VERSION], [prog="import sys
-# split strings by '.' and convert to numeric. Append some zeros
-# because we need at least 4 digits for the hex conversion.
-# map returns an iterator in Python 3.0 and a list in 2.x
-minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]]
-minverhex = 0
-# xrange is not present in Python 3.0 and range returns an iterator
-for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
-sys.exit(sys.hexversion < minverhex)"
- AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
-m4trace:/usr/share/aclocal-1.11/runlog.m4:12: -1- AC_DEFUN([AM_RUN_LOG], [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
- ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
- (exit $ac_status); }])
-m4trace:/usr/share/aclocal-1.11/sanity.m4:14: -1- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[[\\\"\#\$\&\'\`$am_lf]]*)
- AC_MSG_ERROR([unsafe absolute working directory name]);;
-esac
-case $srcdir in
- *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
- AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$[*]" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$[*]" != "X $srcdir/configure conftest.file" \
- && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
- test "$[2]" = conftest.file
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-AC_MSG_RESULT(yes)])
-m4trace:/usr/share/aclocal-1.11/silent.m4:14: -1- AC_DEFUN([AM_SILENT_RULES], [AC_ARG_ENABLE([silent-rules],
-[ --enable-silent-rules less verbose build output (undo: `make V=1')
- --disable-silent-rules verbose build output (undo: `make V=0')])
-case $enable_silent_rules in
-yes) AM_DEFAULT_VERBOSITY=0;;
-no) AM_DEFAULT_VERBOSITY=1;;
-*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
-esac
-AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
-AM_BACKSLASH='\'
-AC_SUBST([AM_BACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
-])
-m4trace:/usr/share/aclocal-1.11/strip.m4:17: -1- AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
-if test "$cross_compiling" != no; then
- AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-m4trace:/usr/share/aclocal-1.11/substnot.m4:14: -1- AC_DEFUN([_AM_SUBST_NOTMAKE])
-m4trace:/usr/share/aclocal-1.11/substnot.m4:19: -1- AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
-m4trace:/usr/share/aclocal-1.11/tar.m4:24: -1- AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
-m4_if([$1], [v7],
- [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
- [m4_case([$1], [ustar],, [pax],,
- [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of `-'.
-for _am_tool in $_am_tools
-do
- case $_am_tool in
- gnutar)
- for _am_tar in tar gnutar gtar;
- do
- AM_RUN_LOG([$_am_tar --version]) && break
- done
- am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
- am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
- am__untar="$_am_tar -xf -"
- ;;
- plaintar)
- # Must skip GNU tar: if it does not support --format= it doesn't create
- # ustar tarball either.
- (tar --version) >/dev/null 2>&1 && continue
- am__tar='tar chf - "$$tardir"'
- am__tar_='tar chf - "$tardir"'
- am__untar='tar xf -'
- ;;
- pax)
- am__tar='pax -L -x $1 -w "$$tardir"'
- am__tar_='pax -L -x $1 -w "$tardir"'
- am__untar='pax -r'
- ;;
- cpio)
- am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
- am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
- am__untar='cpio -i -H $1 -d'
- ;;
- none)
- am__tar=false
- am__tar_=false
- am__untar=false
- ;;
- esac
-
- # If the value was cached, stop now. We just wanted to have am__tar
- # and am__untar set.
- test -n "${am_cv_prog_tar_$1}" && break
-
- # tar/untar a dummy directory, and stop if the command works
- rm -rf conftest.dir
- mkdir conftest.dir
- echo GrepMe > conftest.dir/file
- AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
- rm -rf conftest.dir
- if test -s conftest.tar; then
- AM_RUN_LOG([$am__untar <conftest.tar])
- grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
- fi
-done
-rm -rf conftest.dir
-
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
-AC_SUBST([am__tar])
-AC_SUBST([am__untar])
-])
-m4trace:config/autotroll.m4:70: -1- m4_pattern_forbid([^AT_])
-m4trace:config/autotroll.m4:71: -1- m4_pattern_forbid([^_AT_])
-m4trace:config/autotroll.m4:97: -1- AC_DEFUN([AT_WITH_QT], [ AC_REQUIRE([AC_CANONICAL_HOST])
- AC_REQUIRE([AC_CANONICAL_BUILD])
- AC_REQUIRE([AC_PROG_CXX])
-
- test x"$TROLL" != x && echo 'ViM rox emacs.'
-
-dnl Memo: AC_ARG_WITH(package, help-string, [if-given], [if-not-given])
- AC_ARG_WITH([qt],
- [AS_HELP_STRING([--with-qt],
- [Path to Qt @<:@Look in PATH and /usr/local/Trolltech@:>@])],
- [QT_PATH=$withval], [QT_PATH=])
-
- # Find Qt.
- if test -d /usr/local/Trolltech; then
- # Try to find the latest version.
- tmp_qt_paths=`echo /usr/local/Trolltech/*/bin | tr ' ' '\n' | sort -nr \
- | xargs | sed 's/ */:/g'`
- fi
-
- # Find qmake.
- AC_PATH_PROGS([QMAKE], [qmake-qt4${EXEEXT}], [missing], [$QT_DIR:$QT_PATH:$PATH:$tmp_qt_paths])
- if test x"$QMAKE" = xmissing; then
- AC_PATH_PROGS([QMAKE], [qmake${EXEEXT}], [missing], [$QT_DIR:$QT_PATH:$PATH:$tmp_qt_paths])
- if test x"$QMAKE" = xmissing; then
- AC_MSG_ERROR([Cannot find qmake in your PATH. Try using --with-qt.])
- fi
- fi
-
- # Find moc (Meta Object Compiler).
- AC_PATH_PROGS([MOC], [moc-qt4${EXEEXT}], [missing], [$QT_PATH:$PATH:$tmp_qt_paths])
- if test x"$MOC" = xmissing; then
- AC_PATH_PROGS([MOC], [moc${EXEEXT}], [missing], [$QT_PATH:$PATH:$tmp_qt_paths])
- if test x"$MOC" = xmissing; then
- AC_MSG_ERROR([Cannot find moc (Meta Object Compiler) in your PATH. Try using --with-qt.])
- fi
- fi
-
- # Find uic (User Interface Compiler).
- AC_PATH_PROGS([UIC], [uic-qt4${EXEEXT}], [missing], [$QT_PATH:$PATH:$tmp_qt_paths])
- if test x"$UIC" = xmissing; then
- AC_PATH_PROGS([UIC], [uic${EXEEXT}], [missing], [$QT_PATH:$PATH:$tmp_qt_paths])
- if test x"$UIC" = xmissing; then
- AC_MSG_ERROR([Cannot find uic (User Interface Compiler) in your PATH. Try using --with-qt.])
- fi
- fi
-
- # Find rcc (Qt Resource Compiler).
- AC_PATH_PROGS([RCC], [rcc-qt4${EXEEXT}], [false], [$QT_PATH:$PATH:$tmp_qt_paths])
- if test x"$RCC" = xfalse; then
- AC_PATH_PROGS([RCC], [rcc${EXEEXT}], [false], [$QT_PATH:$PATH:$tmp_qt_paths])
- if test x"$RCC" = xfalse; then
- AC_MSG_WARN([Cannot find rcc (Qt Resource Compiler) in your PATH. Try using --with-qt.])
- fi
- fi
-
- # If we don't know the path to Qt, guess it from the path to qmake.
- if test x"$QT_PATH" = x; then
- QT_PATH=`dirname "$QMAKE"`
- fi
- if test x"$QT_PATH" = x; then
- AC_MSG_ERROR([Cannot find the path to your Qt install. Use --with-qt.])
- fi
- AC_SUBST([QT_PATH])
-
- # Get ready to build a test-app with Qt.
-
- # Look for a writable temporary directory.
- AC_ARG_VAR([TMPDIR], [A temporary directory with write access @<:@/tmp@:>@])
- if test x"$TMPDIR" = x || test ! -d "$TMPDIR" || test ! -w "$TMPDIR"; then
- echo "$as_me:$LINENO: no TMPDIR or bad TMPDIR ($TMPDIR)" \
- >&AS_MESSAGE_LOG_FD
- for i in /tmp /var/tmp; do
- if test -d "$i" && test -w "$i"; then
- TMPDIR=$i
- export TMPDIR
- echo "$as_me:$LINENO: setting TMPDIR=$TMPDIR" >&AS_MESSAGE_LOG_FD
- break
- fi
- done
- fi
-
- # Kludge!! QMake has a very strange behavior. For instance, if you
- # install Qt under your $HOME and run QMake somewhere else under your
- # $HOME, it will try to be clever and produce Makefiles with relative
- # include paths. In order to avoid this, we will test QMake from a
- # temporary directory (usually /tmp). Note that this problem was only
- # observed with Qt 4.
- my_configure_pwd=`pwd`
- my_tmpdir="$TMPDIR/conftest$$.dir"
- test -d "$my_tmpdir" || mkdir "$my_tmpdir"
- if test -w "$my_tmpdir" && cd "$my_tmpdir"
- then
- :
- else
- AC_MSG_ERROR([Cannot cd to or write in $my_tmpdir])
- fi
- cat >conftest.h <<_ASEOF
-#include <QObject>
-
-class Foo: public QObject
-{
- Q_OBJECT;
-public:
- Foo();
- ~Foo() {}
-public slots:
- void setValue(int value);
-signals:
- void valueChanged(int newValue);
-private:
- int value_;
-};
-_ASEOF
-
- cat >conftest.cpp <<_ASEOF
-#include "conftest.h"
-Foo::Foo()
- : value_ (42)
-{
- connect(this, SIGNAL(valueChanged(int)), this, SLOT(setValue(int)));
-}
-
-void Foo::setValue(int value)
-{
- value_ = value;
-}
-
-int main()
-{
- Foo f;
-}
-_ASEOF
- if $QMAKE -project; then :; else
- AC_MSG_ERROR([Calling $QMAKE -project failed.])
- fi
-
- # Find the .pro file generated by qmake.
- pro_file='conftest.dir.pro'
- test -f $pro_file || pro_file=`echo *.pro`
- if test -f "$pro_file"; then :; else
- AC_MSG_ERROR([Can't find the .pro file generated by Qmake.])
- fi
-
-dnl Tweak the value of QT in the .pro if have been the 1st arg.
-m4_ifval([$1], [_AT_TWEAK_PRO_FILE([QT], [$1])])
-
-dnl Tweak the value of CONFIG in the .pro if have been given a 2nd arg.
-m4_ifval([$2], [_AT_TWEAK_PRO_FILE([CONFIG], [$2])])
-
-m4_ifval([$3],
-[ # Add the extra-settings the user wants to set in the .pro
- echo "$3" >>"$pro_file"
-])
-
- echo "$as_me:$LINENO: Invoking $QMAKE on $pro_file" >&AS_MESSAGE_LOG_FD
- sed 's/^/| /' "$pro_file" >&AS_MESSAGE_LOG_FD
-
- if $QMAKE; then :; else
- AC_MSG_ERROR([Calling $QMAKE failed.])
- fi
- # Try to compile a simple Qt app.
- AC_CACHE_CHECK([whether we can build a simple Qt app], [at_cv_qt_build],
- [at_cv_qt_build=ko
- : ${MAKE=make}
-
- if $MAKE >&AS_MESSAGE_LOG_FD 2>&1; then
- at_cv_qt_build='ok, looks like Qt 4'
- else
- echo "$as_me:$LINENO: Build failed, trying to #include <qobject.h> \
-instead" >&AS_MESSAGE_LOG_FD
- sed 's/<QObject>/<qobject.h>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&AS_MESSAGE_LOG_FD 2>&1; then
- at_cv_qt_build='ok, looks like Qt 3'
- else
- # Sometimes (such as on Debian) build will fail because Qt hasn't been
- # installed in debug mode and qmake tries (by default) to build apps in
- # debug mode => Try again in release mode.
- echo "$as_me:$LINENO: Build failed, trying to enforce release mode" \
- >&AS_MESSAGE_LOG_FD
-
- _AT_TWEAK_PRO_FILE([CONFIG], [+release])
-
- sed 's/<qobject.h>/<QObject>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&AS_MESSAGE_LOG_FD 2>&1; then
- at_cv_qt_build='ok, looks like Qt 4, release mode forced'
- else
- echo "$as_me:$LINENO: Build failed, trying to #include <qobject.h> \
-instead" >&AS_MESSAGE_LOG_FD
- sed 's/<QObject>/<qobject.h>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&AS_MESSAGE_LOG_FD 2>&1; then
- at_cv_qt_build='ok, looks like Qt 3, release mode forced'
- else
- at_cv_qt_build=ko
- echo "$as_me:$LINENO: failed program was:" >&AS_MESSAGE_LOG_FD
- sed 's/^/| /' conftest.h >&AS_MESSAGE_LOG_FD
- echo "$as_me:$LINENO: failed program was:" >&AS_MESSAGE_LOG_FD
- sed 's/^/| /' conftest.cpp >&AS_MESSAGE_LOG_FD
- fi # if make with Qt3-style #include and release mode forced.
- fi # if make with Qt4-style #include and release mode forced.
- fi # if make with Qt3-style #include.
- fi # if make with Qt4-style #include.
- ])dnl end: AC_CACHE_CHECK(at_cv_qt_build)
-
- if test x"$at_cv_qt_build" = xko; then
- AC_MSG_ERROR([Cannot build a test Qt program])
- fi
- QT_VERSION_MAJOR=`echo "$at_cv_qt_build" | sed 's/^[^0-9]*//'`
- AC_SUBST([QT_VERSION_MAJOR])
-
- # This sed filter is applied after an expression of the form: /^FOO.*=/!d;
- # It starts by removing the beginning of the line, removing references to
- # SUBLIBS, removing unnecessary whitespaces at the beginning, and prefixes
- # all variable uses by QT_.
- qt_sed_filter='s///;
- s/$(SUBLIBS)//g;
- s/^ *//;
- s/\$(\(@<:@A-Z_@:>@@<:@A-Z_@:>@*\))/$(QT_\1)/g'
-
- # Find the Makefile (qmake happens to generate a fake Makefile which invokes
- # a Makefile.Debug or Makefile.Release). We we have both, we'll pick the
- # Makefile.Release. The reason is that the main difference is that release
- # uses -Os and debug -g. We can override -Os by passing another -O but we
- # usually don't override -g.
- if test -f Makefile.Release; then
- at_mfile='Makefile.Release'
- else
- at_mfile='Makefile'
- fi
- if test -f $at_mfile; then :; else
- cd "$my_configure_pwd"
- AC_MSG_ERROR([Cannot find the Makefile generated by qmake.])
- fi
-
- # Find the DEFINES of Qt (should have been named CPPFLAGS).
- AC_CACHE_CHECK([for the DEFINES to use with Qt], [at_cv_env_QT_DEFINES],
- [at_cv_env_QT_DEFINES=`sed "/^DEFINES@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`])
- AC_SUBST([QT_DEFINES], [$at_cv_env_QT_DEFINES])
-
- # Find the CFLAGS of Qt (We can use Qt in C?!)
- AC_CACHE_CHECK([for the CFLAGS to use with Qt], [at_cv_env_QT_CFLAGS],
- [at_cv_env_QT_CFLAGS=`sed "/^CFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`])
- AC_SUBST([QT_CFLAGS], [$at_cv_env_QT_CFLAGS])
-
- # Find the CXXFLAGS of Qt.
- AC_CACHE_CHECK([for the CXXFLAGS to use with Qt], [at_cv_env_QT_CXXFLAGS],
- [at_cv_env_QT_CXXFLAGS=`sed "/^CXXFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`])
- AC_SUBST([QT_CXXFLAGS], [$at_cv_env_QT_CXXFLAGS])
-
- # Find the INCPATH of Qt.
- AC_CACHE_CHECK([for the INCPATH to use with Qt], [at_cv_env_QT_INCPATH],
- [at_cv_env_QT_INCPATH=`sed "/^INCPATH@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`])
- AC_SUBST([QT_INCPATH], [$at_cv_env_QT_INCPATH])
-
- AC_SUBST([QT_CPPFLAGS], ["$at_cv_env_QT_DEFINES $at_cv_env_QT_INCPATH"])
-
- # Find the LFLAGS of Qt (Should have been named LDFLAGS)
- AC_CACHE_CHECK([for the LDFLAGS to use with Qt], [at_cv_env_QT_LDFLAGS],
- [at_cv_env_QT_LDFLAGS=`sed "/^LDFLAGS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`])
- AC_SUBST([QT_LFLAGS], [$at_cv_env_QT_LDFLAGS])
- AC_SUBST([QT_LDFLAGS], [$at_cv_env_QT_LDFLAGS])
-
- AC_MSG_CHECKING([whether host operating system is Darwin])
- at_darwin="no"
- case $host_os in
- darwin*)
- at_darwin="yes"
- ;;
- esac
- AC_MSG_RESULT([$at_darwin])
-
- # Find the LIBS of Qt.
- AC_CACHE_CHECK([for the LIBS to use with Qt], [at_cv_env_QT_LIBS],
- [at_cv_env_QT_LIBS=`sed "/^LIBS@<:@ @:>@*=/!d;$qt_sed_filter" $at_mfile`
- if test x$at_darwin = xyes; then
- # Fix QT_LIBS: as of today Libtool (GNU Libtool 1.5.23a) doesn't handle
- # -F properly. The "bug" has been fixed on 22 October 2006
- # by Peter O'Gorman but we provide backward compatibility here.
- at_cv_env_QT_LIBS=`echo "$at_cv_env_QT_LIBS" \
- | sed 's/^-F/-Wl,-F/;s/ -F/ -Wl,-F/g'`
- fi
- ])
- AC_SUBST([QT_LIBS], [$at_cv_env_QT_LIBS])
-
- cd "$my_configure_pwd" || echo 'WTF!'
- rm -rf "$my_tmpdir"
-])
-m4trace:config/autotroll.m4:389: -1- AC_DEFUN([AT_REQUIRE_QT_VERSION], [ AC_PREREQ([2.60])
- if test x"$QMAKE" = x; then
- AC_MSG_ERROR([\$QMAKE is empty. \
-Did you invoke AT@&t at _WITH_QT before AT@&t at _REQUIRE_QT_VERSION?])
- fi
- AC_CACHE_CHECK([for Qt's version], [at_cv_QT_VERSION],
- [echo "$as_me:$LINENO: Running $QMAKE --version:" >&AS_MESSAGE_LOG_FD
- $QMAKE --version >&AS_MESSAGE_LOG_FD 2>&1
- qmake_version_sed=['/^.*\([0-9]\.[0-9]\.[0-9]\).*$/!d;s//\1/']
- at_cv_QT_VERSION=`$QMAKE --version 2>&1 | sed "$qmake_version_sed"`])
- if test x"$at_cv_QT_VERSION" = x; then
- AC_MSG_ERROR([Cannot detect Qt's version.])
- fi
- AC_SUBST([QT_VERSION], [$at_cv_QT_VERSION])
- AS_VERSION_COMPARE([$QT_VERSION], [$1],
- [AC_MSG_ERROR([This package requires Qt $1 or above.])])
-])
-m4trace:config/autotroll.m4:416: -1- AC_DEFUN([_AT_TWEAK_PRO_FILE], [ # Tweak the value of $1 in the .pro file for $2.
-
- qt_conf=''
- for at_mod in $2; do
- at_mod=`echo "$at_mod" | sed 's/^-//; tough
- s/^+//; beef
- :ough
- s/^/$1 -= /;n
- :eef
- s/^/$1 += /'`
- qt_conf="$qt_conf
-$at_mod"
- done
- echo "$qt_conf" | sed 1d >>"$pro_file"
-])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^_?A[CHUM]_])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([_AC_])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^AS_FLAGS$])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^_?m4_])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^dnl$])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^_?AS_])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^SHELL$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PATH_SEPARATOR$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^exec_prefix$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^prefix$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^program_transform_name$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^bindir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^sbindir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^libexecdir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^datarootdir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^datadir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^sysconfdir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^sharedstatedir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^localstatedir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^includedir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^oldincludedir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^docdir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^infodir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^htmldir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^dvidir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^pdfdir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^psdir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^libdir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^localedir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^mandir$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^DEFS$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^ECHO_C$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^ECHO_N$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^ECHO_T$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^build_alias$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^host_alias$])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^target_alias$])
-m4trace:configure.ac:4: -1- m4_pattern_allow([^MGL_RELEASE$])
-m4trace:configure.ac:22: -1- m4_pattern_allow([^MGL_CURRENT$])
-m4trace:configure.ac:23: -1- m4_pattern_allow([^MGL_REVISION$])
-m4trace:configure.ac:24: -1- m4_pattern_allow([^MGL_AGE$])
-m4trace:configure.ac:26: -1- AM_INIT_AUTOMAKE
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
-m4trace:configure.ac:26: -1- AM_SET_CURRENT_AUTOMAKE_VERSION
-m4trace:configure.ac:26: -1- AM_AUTOMAKE_VERSION([1.11.1])
-m4trace:configure.ac:26: -1- _AM_AUTOCONF_VERSION([2.67])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^INSTALL_DATA$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^am__isrc$])
-m4trace:configure.ac:26: -1- _AM_SUBST_NOTMAKE([am__isrc])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^CYGPATH_W$])
-m4trace:configure.ac:26: -1- _AM_SET_OPTIONS([])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^PACKAGE$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^VERSION$])
-m4trace:configure.ac:26: -1- _AM_IF_OPTION([no-define], [], [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])
-m4trace:configure.ac:26: -2- _AM_MANGLE_OPTION([no-define])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^PACKAGE$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^VERSION$])
-m4trace:configure.ac:26: -1- AM_SANITY_CHECK
-m4trace:configure.ac:26: -1- AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
-m4trace:configure.ac:26: -1- AM_MISSING_HAS_RUN
-m4trace:configure.ac:26: -1- AM_AUX_DIR_EXPAND
-m4trace:configure.ac:26: -1- m4_pattern_allow([^ACLOCAL$])
-m4trace:configure.ac:26: -1- AM_MISSING_PROG([AUTOCONF], [autoconf])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AUTOCONF$])
-m4trace:configure.ac:26: -1- AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AUTOMAKE$])
-m4trace:configure.ac:26: -1- AM_MISSING_PROG([AUTOHEADER], [autoheader])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AUTOHEADER$])
-m4trace:configure.ac:26: -1- AM_MISSING_PROG([MAKEINFO], [makeinfo])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^MAKEINFO$])
-m4trace:configure.ac:26: -1- AM_PROG_INSTALL_SH
-m4trace:configure.ac:26: -1- m4_pattern_allow([^install_sh$])
-m4trace:configure.ac:26: -1- AM_PROG_INSTALL_STRIP
-m4trace:configure.ac:26: -1- m4_pattern_allow([^STRIP$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^INSTALL_STRIP_PROGRAM$])
-m4trace:configure.ac:26: -1- AM_PROG_MKDIR_P
-m4trace:configure.ac:26: -1- m4_pattern_allow([^MKDIR_P$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^mkdir_p$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AWK$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^SET_MAKE$])
-m4trace:configure.ac:26: -1- AM_SET_LEADING_DOT
-m4trace:configure.ac:26: -1- m4_pattern_allow([^am__leading_dot$])
-m4trace:configure.ac:26: -1- _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
- [_AM_PROG_TAR([v7])])])
-m4trace:configure.ac:26: -2- _AM_MANGLE_OPTION([tar-ustar])
-m4trace:configure.ac:26: -1- _AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])
-m4trace:configure.ac:26: -2- _AM_MANGLE_OPTION([tar-pax])
-m4trace:configure.ac:26: -1- _AM_PROG_TAR([v7])
-m4trace:configure.ac:26: -1- AM_MISSING_PROG([AMTAR], [tar])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AMTAR$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^am__tar$])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^am__untar$])
-m4trace:configure.ac:26: -1- _AM_IF_OPTION([no-dependencies], [], [AC_PROVIDE_IFELSE([AC_PROG_CC],
- [_AM_DEPENDENCIES(CC)],
- [define([AC_PROG_CC],
- defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [_AM_DEPENDENCIES(CXX)],
- [define([AC_PROG_CXX],
- defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- [_AM_DEPENDENCIES(OBJC)],
- [define([AC_PROG_OBJC],
- defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
-])
-m4trace:configure.ac:26: -2- _AM_MANGLE_OPTION([no-dependencies])
-m4trace:configure.ac:26: -1- _AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])
-m4trace:configure.ac:26: -2- _AM_MANGLE_OPTION([silent-rules])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CFLAGS$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^ac_ct_CC$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^EXEEXT$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^OBJEXT$])
-m4trace:configure.ac:28: -1- _AM_DEPENDENCIES([CC])
-m4trace:configure.ac:28: -1- AM_SET_DEPDIR
-m4trace:configure.ac:28: -1- m4_pattern_allow([^DEPDIR$])
-m4trace:configure.ac:28: -1- AM_OUTPUT_DEPENDENCY_COMMANDS
-m4trace:configure.ac:28: -1- AM_MAKE_INCLUDE
-m4trace:configure.ac:28: -1- m4_pattern_allow([^am__include$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^am__quote$])
-m4trace:configure.ac:28: -1- AM_DEP_TRACK
-m4trace:configure.ac:28: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^AMDEP_TRUE$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^AMDEP_FALSE$])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^AMDEPBACKSLASH$])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CCDEPMODE$])
-m4trace:configure.ac:28: -1- AM_CONDITIONAL([am__fastdepCC], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CC_dependencies_compiler_type" = gcc3])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CXX$])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CXXFLAGS$])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CXX$])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^ac_ct_CXX$])
-m4trace:configure.ac:29: -1- _AM_DEPENDENCIES([CXX])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CXXDEPMODE$])
-m4trace:configure.ac:29: -1- AM_CONDITIONAL([am__fastdepCXX], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^am__fastdepCXX_TRUE$])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^am__fastdepCXX_FALSE$])
-m4trace:configure.ac:29: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_TRUE])
-m4trace:configure.ac:29: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_FALSE])
-m4trace:configure.ac:32: -1- AC_LIBTOOL_WIN32_DLL
-m4trace:configure.ac:32: -1- _m4_warn([obsolete], [The macro `AC_LIBTOOL_WIN32_DLL' is obsolete.
-You should run autoupdate.], [/usr/share/aclocal/ltoptions.m4:145: AC_LIBTOOL_WIN32_DLL is expanded from...
-configure.ac:32: the top level])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^build$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^build_cpu$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^build_vendor$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^build_os$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^host$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^host_cpu$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^host_vendor$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^host_os$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^AS$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^DLLTOOL$])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^OBJDUMP$])
-m4trace:configure.ac:32: -1- _m4_warn([obsolete], [AC_LIBTOOL_WIN32_DLL: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.], [/usr/share/aclocal/ltoptions.m4:145: AC_LIBTOOL_WIN32_DLL is expanded from...
-configure.ac:32: the top level])
-m4trace:configure.ac:33: -1- AC_LIBTOOL_DLOPEN
-m4trace:configure.ac:33: -1- _m4_warn([obsolete], [The macro `AC_LIBTOOL_DLOPEN' is obsolete.
-You should run autoupdate.], [/usr/share/aclocal/ltoptions.m4:110: AC_LIBTOOL_DLOPEN is expanded from...
-configure.ac:33: the top level])
-m4trace:configure.ac:33: -1- _m4_warn([obsolete], [AC_LIBTOOL_DLOPEN: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.], [/usr/share/aclocal/ltoptions.m4:110: AC_LIBTOOL_DLOPEN is expanded from...
-configure.ac:33: the top level])
-m4trace:configure.ac:34: -1- AC_PROG_LIBTOOL
-m4trace:configure.ac:34: -1- _m4_warn([obsolete], [The macro `AC_PROG_LIBTOOL' is obsolete.
-You should run autoupdate.], [/usr/share/aclocal/libtool.m4:102: AC_PROG_LIBTOOL is expanded from...
-configure.ac:34: the top level])
-m4trace:configure.ac:34: -1- LT_INIT
-m4trace:configure.ac:34: -1- m4_pattern_forbid([^_?LT_[A-Z_]+$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])
-m4trace:configure.ac:34: -1- LTOPTIONS_VERSION
-m4trace:configure.ac:34: -1- LTSUGAR_VERSION
-m4trace:configure.ac:34: -1- LTVERSION_VERSION
-m4trace:configure.ac:34: -1- LTOBSOLETE_VERSION
-m4trace:configure.ac:34: -1- _LT_PROG_LTMAIN
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LIBTOOL$])
-m4trace:configure.ac:34: -1- LT_PATH_LD
-m4trace:configure.ac:34: -1- m4_pattern_allow([^SED$])
-m4trace:configure.ac:34: -1- AC_PROG_EGREP
-m4trace:configure.ac:34: -1- m4_pattern_allow([^GREP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^EGREP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^FGREP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^GREP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LD$])
-m4trace:configure.ac:34: -1- LT_PATH_NM
-m4trace:configure.ac:34: -1- m4_pattern_allow([^DUMPBIN$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^ac_ct_DUMPBIN$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^DUMPBIN$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^NM$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LN_S$])
-m4trace:configure.ac:34: -1- LT_CMD_MAX_LEN
-m4trace:configure.ac:34: -1- m4_pattern_allow([^OBJDUMP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^OBJDUMP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^AR$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^STRIP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^RANLIB$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([LT_OBJDIR])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LT_OBJDIR$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^lt_ECHO$])
-m4trace:configure.ac:34: -1- _LT_CC_BASENAME([$compiler])
-m4trace:configure.ac:34: -1- _LT_PATH_TOOL_PREFIX([${ac_tool_prefix}file], [/usr/bin$PATH_SEPARATOR$PATH])
-m4trace:configure.ac:34: -1- _LT_PATH_TOOL_PREFIX([file], [/usr/bin$PATH_SEPARATOR$PATH])
-m4trace:configure.ac:34: -1- LT_SUPPORTED_TAG([CC])
-m4trace:configure.ac:34: -1- _LT_COMPILER_BOILERPLATE
-m4trace:configure.ac:34: -1- _LT_LINKER_BOILERPLATE
-m4trace:configure.ac:34: -1- _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], [lt_cv_prog_compiler_rtti_exceptions], [-fno-rtti -fno-exceptions], [], [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, )="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, ) -fno-rtti -fno-exceptions"])
-m4trace:configure.ac:34: -1- _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, ) works], [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, )], [$_LT_TAGVAR(lt_prog_compiler_pic, )@&t at m4_if([],[],[ -DPIC],[m4_if([],[CXX],[ -DPIC],[])])], [], [case $_LT_TAGVAR(lt_prog_compiler_pic, ) in
- "" | " "*) ;;
- *) _LT_TAGVAR(lt_prog_compiler_pic, )=" $_LT_TAGVAR(lt_prog_compiler_pic, )" ;;
- esac], [_LT_TAGVAR(lt_prog_compiler_pic, )=
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, )=no])
-m4trace:configure.ac:34: -1- _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], [lt_cv_prog_compiler_static_works], [$lt_tmp_static_flag], [], [_LT_TAGVAR(lt_prog_compiler_static, )=])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^DSYMUTIL$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^NMEDIT$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LIPO$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^OTOOL$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^OTOOL64$])
-m4trace:configure.ac:34: -1- LT_SYS_DLOPEN_SELF
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^STDC_HEADERS$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^HAVE_DLFCN_H$])
-m4trace:configure.ac:34: -1- LT_LANG([CXX])
-m4trace:configure.ac:34: -1- LT_SUPPORTED_TAG([CXX])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXX$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXXFLAGS$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXX$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^ac_ct_CXX$])
-m4trace:configure.ac:34: -1- _AM_DEPENDENCIES([CXX])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXXDEPMODE$])
-m4trace:configure.ac:34: -1- AM_CONDITIONAL([am__fastdepCXX], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^am__fastdepCXX_TRUE$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^am__fastdepCXX_FALSE$])
-m4trace:configure.ac:34: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_TRUE])
-m4trace:configure.ac:34: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_FALSE])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXXCPP$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXXCPP$])
-m4trace:configure.ac:34: -1- _LT_COMPILER_BOILERPLATE
-m4trace:configure.ac:34: -1- _LT_LINKER_BOILERPLATE
-m4trace:configure.ac:34: -1- _LT_CC_BASENAME([$compiler])
-m4trace:configure.ac:34: -1- LT_PATH_LD
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LD$])
-m4trace:configure.ac:34: -1- _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, CXX) works], [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, CXX)], [$_LT_TAGVAR(lt_prog_compiler_pic, CXX)@&t at m4_if([CXX],[],[ -DPIC],[m4_if([CXX],[CXX],[ -DPIC],[])])], [], [case $_LT_TAGVAR(lt_prog_compiler_pic, CXX) in
- "" | " "*) ;;
- *) _LT_TAGVAR(lt_prog_compiler_pic, CXX)=" $_LT_TAGVAR(lt_prog_compiler_pic, CXX)" ;;
- esac], [_LT_TAGVAR(lt_prog_compiler_pic, CXX)=
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, CXX)=no])
-m4trace:configure.ac:34: -1- _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], [lt_cv_prog_compiler_static_works_CXX], [$lt_tmp_static_flag], [], [_LT_TAGVAR(lt_prog_compiler_static, CXX)=])
-m4trace:configure.ac:45: -1- m4_pattern_allow([^MGL_USE_DOUBLE$])
-m4trace:configure.ac:47: -1- m4_pattern_allow([^MGL_USE_DOUBLE$])
-m4trace:configure.ac:73: -1- m4_pattern_allow([^PTHREAD_FLAGS$])
-m4trace:configure.ac:76: -1- m4_pattern_allow([^PTHREAD_LIBS$])
-m4trace:configure.ac:78: -1- AM_CONDITIONAL([USE_PTHREAD], [test x$pthread = xtrue])
-m4trace:configure.ac:78: -1- m4_pattern_allow([^USE_PTHREAD_TRUE$])
-m4trace:configure.ac:78: -1- m4_pattern_allow([^USE_PTHREAD_FALSE$])
-m4trace:configure.ac:78: -1- _AM_SUBST_NOTMAKE([USE_PTHREAD_TRUE])
-m4trace:configure.ac:78: -1- _AM_SUBST_NOTMAKE([USE_PTHREAD_FALSE])
-m4trace:configure.ac:90: -1- m4_pattern_allow([^GSL_FLAGS$])
-m4trace:configure.ac:91: -1- m4_pattern_allow([^GSL_LIBS$])
-m4trace:configure.ac:101: -1- m4_pattern_allow([^GSL_FLAGS$])
-m4trace:configure.ac:103: -1- AM_CONDITIONAL([USE_GSL], [test x$test_gsl = xtrue])
-m4trace:configure.ac:103: -1- m4_pattern_allow([^USE_GSL_TRUE$])
-m4trace:configure.ac:103: -1- m4_pattern_allow([^USE_GSL_FALSE$])
-m4trace:configure.ac:103: -1- _AM_SUBST_NOTMAKE([USE_GSL_TRUE])
-m4trace:configure.ac:103: -1- _AM_SUBST_NOTMAKE([USE_GSL_FALSE])
-m4trace:configure.ac:108: -1- m4_pattern_allow([^GL_LIBS$])
-m4trace:configure.ac:114: -1- m4_pattern_allow([^GL_LIBS$])
-m4trace:configure.ac:121: -1- m4_pattern_allow([^GL_LIBS$])
-m4trace:configure.ac:126: -1- AM_CONDITIONAL([USE_GLUT], [(test x$all = xtrue || test x$glut = xtrue)])
-m4trace:configure.ac:126: -1- m4_pattern_allow([^USE_GLUT_TRUE$])
-m4trace:configure.ac:126: -1- m4_pattern_allow([^USE_GLUT_FALSE$])
-m4trace:configure.ac:126: -1- _AM_SUBST_NOTMAKE([USE_GLUT_TRUE])
-m4trace:configure.ac:126: -1- _AM_SUBST_NOTMAKE([USE_GLUT_FALSE])
-m4trace:configure.ac:156: -1- m4_pattern_allow([^HDF5_FLAGS$])
-m4trace:configure.ac:158: -1- m4_pattern_allow([^HDF5_LIBS$])
-m4trace:configure.ac:160: -1- AM_CONDITIONAL([USE_HDF5], [(test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue)])
-m4trace:configure.ac:160: -1- m4_pattern_allow([^USE_HDF5_TRUE$])
-m4trace:configure.ac:160: -1- m4_pattern_allow([^USE_HDF5_FALSE$])
-m4trace:configure.ac:160: -1- _AM_SUBST_NOTMAKE([USE_HDF5_TRUE])
-m4trace:configure.ac:160: -1- _AM_SUBST_NOTMAKE([USE_HDF5_FALSE])
-m4trace:configure.ac:172: -1- m4_pattern_allow([^HDF4_FLAGS$])
-m4trace:configure.ac:173: -1- m4_pattern_allow([^HDF4_LIBS$])
-m4trace:configure.ac:175: -1- AM_CONDITIONAL([USE_HDF4], [(test x$all = xtrue || test x$hdf4 = xtrue)])
-m4trace:configure.ac:175: -1- m4_pattern_allow([^USE_HDF4_TRUE$])
-m4trace:configure.ac:175: -1- m4_pattern_allow([^USE_HDF4_FALSE$])
-m4trace:configure.ac:175: -1- _AM_SUBST_NOTMAKE([USE_HDF4_TRUE])
-m4trace:configure.ac:175: -1- _AM_SUBST_NOTMAKE([USE_HDF4_FALSE])
-m4trace:configure.ac:179: -1- m4_pattern_allow([^PNG_LIBS$])
-m4trace:configure.ac:189: -1- m4_pattern_allow([^JPEG_FLAGS$])
-m4trace:configure.ac:192: -1- m4_pattern_allow([^JPEG_LIBS$])
-m4trace:configure.ac:194: -1- AM_CONDITIONAL([USE_JPEG], [(test x$all = xtrue || test x$jpeg = xtrue)])
-m4trace:configure.ac:194: -1- m4_pattern_allow([^USE_JPEG_TRUE$])
-m4trace:configure.ac:194: -1- m4_pattern_allow([^USE_JPEG_FALSE$])
-m4trace:configure.ac:194: -1- _AM_SUBST_NOTMAKE([USE_JPEG_TRUE])
-m4trace:configure.ac:194: -1- _AM_SUBST_NOTMAKE([USE_JPEG_FALSE])
-m4trace:configure.ac:210: -1- m4_pattern_allow([^HAVE_LIBHPDF$])
-m4trace:configure.ac:216: -1- m4_pattern_allow([^HAVE_HPDF_H$])
-m4trace:configure.ac:221: -1- AM_CONDITIONAL([USE_PDF], [test x$pdf = xtrue])
-m4trace:configure.ac:221: -1- m4_pattern_allow([^USE_PDF_TRUE$])
-m4trace:configure.ac:221: -1- m4_pattern_allow([^USE_PDF_FALSE$])
-m4trace:configure.ac:221: -1- _AM_SUBST_NOTMAKE([USE_PDF_TRUE])
-m4trace:configure.ac:221: -1- _AM_SUBST_NOTMAKE([USE_PDF_FALSE])
-m4trace:configure.ac:223: -1- m4_pattern_allow([^U3D_LIBS$])
-m4trace:configure.ac:223: -1- m4_pattern_allow([^HAVE_U3D$])
-m4trace:configure.ac:232: -1- m4_pattern_allow([^HAVE_U3D_SCENECONVERTERLIB_H$])
-m4trace:configure.ac:237: -1- AM_CONDITIONAL([USE_U3D], [test x$u3d = xtrue])
-m4trace:configure.ac:237: -1- m4_pattern_allow([^USE_U3D_TRUE$])
-m4trace:configure.ac:237: -1- m4_pattern_allow([^USE_U3D_FALSE$])
-m4trace:configure.ac:237: -1- _AM_SUBST_NOTMAKE([USE_U3D_TRUE])
-m4trace:configure.ac:237: -1- _AM_SUBST_NOTMAKE([USE_U3D_FALSE])
-m4trace:configure.ac:248: -1- m4_pattern_allow([^FLTK_FLAGS$])
-m4trace:configure.ac:249: -1- m4_pattern_allow([^FLTK_LIBS$])
-m4trace:configure.ac:258: -1- AM_CONDITIONAL([USE_FLTK], [test x$test_fltk = xtrue])
-m4trace:configure.ac:258: -1- m4_pattern_allow([^USE_FLTK_TRUE$])
-m4trace:configure.ac:258: -1- m4_pattern_allow([^USE_FLTK_FALSE$])
-m4trace:configure.ac:258: -1- _AM_SUBST_NOTMAKE([USE_FLTK_TRUE])
-m4trace:configure.ac:258: -1- _AM_SUBST_NOTMAKE([USE_FLTK_FALSE])
-m4trace:configure.ac:268: -1- AT_WITH_QT
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QMAKE$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QMAKE$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^MOC$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^MOC$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^UIC$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^UIC$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^RCC$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^RCC$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_PATH$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^TMPDIR$])
-m4trace:configure.ac:268: -1- _AT_TWEAK_PRO_FILE([CONFIG], [+release])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_VERSION_MAJOR$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_DEFINES$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_CFLAGS$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_CXXFLAGS$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_INCPATH$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_CPPFLAGS$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_LFLAGS$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_LDFLAGS$])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_LIBS$])
-m4trace:configure.ac:269: -1- AT_REQUIRE_QT_VERSION([4.3])
-m4trace:configure.ac:269: -1- m4_pattern_allow([^QT_VERSION$])
-m4trace:configure.ac:272: -1- AM_CONDITIONAL([USE_QT], [test x$test_qt = xtrue])
-m4trace:configure.ac:272: -1- m4_pattern_allow([^USE_QT_TRUE$])
-m4trace:configure.ac:272: -1- m4_pattern_allow([^USE_QT_FALSE$])
-m4trace:configure.ac:272: -1- _AM_SUBST_NOTMAKE([USE_QT_TRUE])
-m4trace:configure.ac:272: -1- _AM_SUBST_NOTMAKE([USE_QT_FALSE])
-m4trace:configure.ac:282: -1- m4_pattern_allow([^PYTHON_HEADERS$])
-m4trace:configure.ac:283: -1- m4_pattern_allow([^HAVE_SWIG$])
-m4trace:configure.ac:286: -1- AM_PATH_PYTHON([])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON$])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON_VERSION$])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON_PREFIX$])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON_EXEC_PREFIX$])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON_PLATFORM$])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^pythondir$])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^pkgpythondir$])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^pyexecdir$])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^pkgpyexecdir$])
-m4trace:configure.ac:292: -1- AM_CONDITIONAL([USE_PYTHON], [test x$test_python = xtrue ])
-m4trace:configure.ac:292: -1- m4_pattern_allow([^USE_PYTHON_TRUE$])
-m4trace:configure.ac:292: -1- m4_pattern_allow([^USE_PYTHON_FALSE$])
-m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([USE_PYTHON_TRUE])
-m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([USE_PYTHON_FALSE])
-m4trace:configure.ac:302: -1- m4_pattern_allow([^OCTAVE$])
-m4trace:configure.ac:308: -1- m4_pattern_allow([^OCTAVE_ARCH$])
-m4trace:configure.ac:309: -1- m4_pattern_allow([^OCTAVE_INCFLAGS$])
-m4trace:configure.ac:312: -1- AM_CONDITIONAL([USE_OCTAVE], [test x$test_octave = xtrue ])
-m4trace:configure.ac:312: -1- m4_pattern_allow([^USE_OCTAVE_TRUE$])
-m4trace:configure.ac:312: -1- m4_pattern_allow([^USE_OCTAVE_FALSE$])
-m4trace:configure.ac:312: -1- _AM_SUBST_NOTMAKE([USE_OCTAVE_TRUE])
-m4trace:configure.ac:312: -1- _AM_SUBST_NOTMAKE([USE_OCTAVE_FALSE])
-m4trace:configure.ac:315: -1- m4_pattern_allow([^AM_CXXFLAGS$])
-m4trace:configure.ac:326: -1- m4_pattern_allow([^LIB@&t at OBJS$])
-m4trace:configure.ac:326: -1- m4_pattern_allow([^LTLIBOBJS$])
-m4trace:configure.ac:326: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])
-m4trace:configure.ac:326: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])
-m4trace:configure.ac:326: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])
-m4trace:configure.ac:326: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])
-m4trace:configure.ac:326: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])
-m4trace:configure.ac:326: -1- _AC_AM_CONFIG_HEADER_HOOK(["$ac_file"])
-m4trace:configure.ac:326: -1- _AM_OUTPUT_DEPENDENCY_COMMANDS
-m4trace:configure.ac:326: -1- _LT_PROG_LTMAIN
diff --git a/autom4te.cache/traces.1 b/autom4te.cache/traces.1
deleted file mode 100644
index 54a752f..0000000
--- a/autom4te.cache/traces.1
+++ /dev/null
@@ -1,899 +0,0 @@
-m4trace:aclocal.m4:9123: -1- m4_include([config/autotroll.m4])
-m4trace:config/autotroll.m4:70: -1- m4_pattern_forbid([^AT_])
-m4trace:config/autotroll.m4:71: -1- m4_pattern_forbid([^_AT_])
-m4trace:configure.ac:1: -1- AC_INIT([mathgl], [2.0], [mathgl.abalakin at gmail.com])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^_?A[CHUM]_])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([_AC_])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^AS_FLAGS$])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^_?m4_])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^dnl$])
-m4trace:configure.ac:1: -1- m4_pattern_forbid([^_?AS_])
-m4trace:configure.ac:1: -1- AC_SUBST([SHELL])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([SHELL])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^SHELL$])
-m4trace:configure.ac:1: -1- AC_SUBST([PATH_SEPARATOR])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([PATH_SEPARATOR])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PATH_SEPARATOR$])
-m4trace:configure.ac:1: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([PACKAGE_NAME])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.ac:1: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([PACKAGE_TARNAME])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.ac:1: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([PACKAGE_VERSION])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.ac:1: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([PACKAGE_STRING])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.ac:1: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.ac:1: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL], ['AC_PACKAGE_URL'])])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([PACKAGE_URL])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.ac:1: -1- AC_SUBST([exec_prefix], [NONE])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([exec_prefix])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^exec_prefix$])
-m4trace:configure.ac:1: -1- AC_SUBST([prefix], [NONE])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([prefix])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^prefix$])
-m4trace:configure.ac:1: -1- AC_SUBST([program_transform_name], [s,x,x,])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([program_transform_name])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^program_transform_name$])
-m4trace:configure.ac:1: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([bindir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^bindir$])
-m4trace:configure.ac:1: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([sbindir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^sbindir$])
-m4trace:configure.ac:1: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([libexecdir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^libexecdir$])
-m4trace:configure.ac:1: -1- AC_SUBST([datarootdir], ['${prefix}/share'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([datarootdir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^datarootdir$])
-m4trace:configure.ac:1: -1- AC_SUBST([datadir], ['${datarootdir}'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([datadir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^datadir$])
-m4trace:configure.ac:1: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([sysconfdir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^sysconfdir$])
-m4trace:configure.ac:1: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([sharedstatedir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^sharedstatedir$])
-m4trace:configure.ac:1: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([localstatedir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^localstatedir$])
-m4trace:configure.ac:1: -1- AC_SUBST([includedir], ['${prefix}/include'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([includedir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^includedir$])
-m4trace:configure.ac:1: -1- AC_SUBST([oldincludedir], ['/usr/include'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([oldincludedir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^oldincludedir$])
-m4trace:configure.ac:1: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME],
- ['${datarootdir}/doc/${PACKAGE_TARNAME}'],
- ['${datarootdir}/doc/${PACKAGE}'])])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([docdir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^docdir$])
-m4trace:configure.ac:1: -1- AC_SUBST([infodir], ['${datarootdir}/info'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([infodir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^infodir$])
-m4trace:configure.ac:1: -1- AC_SUBST([htmldir], ['${docdir}'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([htmldir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^htmldir$])
-m4trace:configure.ac:1: -1- AC_SUBST([dvidir], ['${docdir}'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([dvidir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^dvidir$])
-m4trace:configure.ac:1: -1- AC_SUBST([pdfdir], ['${docdir}'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([pdfdir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^pdfdir$])
-m4trace:configure.ac:1: -1- AC_SUBST([psdir], ['${docdir}'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([psdir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^psdir$])
-m4trace:configure.ac:1: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([libdir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^libdir$])
-m4trace:configure.ac:1: -1- AC_SUBST([localedir], ['${datarootdir}/locale'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([localedir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^localedir$])
-m4trace:configure.ac:1: -1- AC_SUBST([mandir], ['${datarootdir}/man'])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([mandir])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^mandir$])
-m4trace:configure.ac:1: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_NAME$])
-m4trace:configure.ac:1: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
-@%:@undef PACKAGE_NAME])
-m4trace:configure.ac:1: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
-m4trace:configure.ac:1: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
-@%:@undef PACKAGE_TARNAME])
-m4trace:configure.ac:1: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_VERSION$])
-m4trace:configure.ac:1: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
-@%:@undef PACKAGE_VERSION])
-m4trace:configure.ac:1: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_STRING$])
-m4trace:configure.ac:1: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
-@%:@undef PACKAGE_STRING])
-m4trace:configure.ac:1: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
-m4trace:configure.ac:1: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
-@%:@undef PACKAGE_BUGREPORT])
-m4trace:configure.ac:1: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_URL$])
-m4trace:configure.ac:1: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */
-@%:@undef PACKAGE_URL])
-m4trace:configure.ac:1: -1- AC_SUBST([DEFS])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([DEFS])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^DEFS$])
-m4trace:configure.ac:1: -1- AC_SUBST([ECHO_C])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([ECHO_C])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^ECHO_C$])
-m4trace:configure.ac:1: -1- AC_SUBST([ECHO_N])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([ECHO_N])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^ECHO_N$])
-m4trace:configure.ac:1: -1- AC_SUBST([ECHO_T])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([ECHO_T])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^ECHO_T$])
-m4trace:configure.ac:1: -1- AC_SUBST([LIBS])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:1: -1- AC_SUBST([build_alias])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([build_alias])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^build_alias$])
-m4trace:configure.ac:1: -1- AC_SUBST([host_alias])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([host_alias])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^host_alias$])
-m4trace:configure.ac:1: -1- AC_SUBST([target_alias])
-m4trace:configure.ac:1: -1- AC_SUBST_TRACE([target_alias])
-m4trace:configure.ac:1: -1- m4_pattern_allow([^target_alias$])
-m4trace:configure.ac:4: -1- AC_SUBST([MGL_RELEASE])
-m4trace:configure.ac:4: -1- AC_SUBST_TRACE([MGL_RELEASE])
-m4trace:configure.ac:4: -1- m4_pattern_allow([^MGL_RELEASE$])
-m4trace:configure.ac:7: -1- AC_CONFIG_AUX_DIR([config])
-m4trace:configure.ac:9: -1- AC_CONFIG_HEADERS([include/mgl/config.h])
-m4trace:configure.ac:22: -1- AC_SUBST([MGL_CURRENT])
-m4trace:configure.ac:22: -1- AC_SUBST_TRACE([MGL_CURRENT])
-m4trace:configure.ac:22: -1- m4_pattern_allow([^MGL_CURRENT$])
-m4trace:configure.ac:23: -1- AC_SUBST([MGL_REVISION])
-m4trace:configure.ac:23: -1- AC_SUBST_TRACE([MGL_REVISION])
-m4trace:configure.ac:23: -1- m4_pattern_allow([^MGL_REVISION$])
-m4trace:configure.ac:24: -1- AC_SUBST([MGL_AGE])
-m4trace:configure.ac:24: -1- AC_SUBST_TRACE([MGL_AGE])
-m4trace:configure.ac:24: -1- m4_pattern_allow([^MGL_AGE$])
-m4trace:configure.ac:26: -1- AM_INIT_AUTOMAKE
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
-m4trace:configure.ac:26: -1- AM_AUTOMAKE_VERSION([1.11.1])
-m4trace:configure.ac:26: -1- AC_REQUIRE_AUX_FILE([install-sh])
-m4trace:configure.ac:26: -1- AC_SUBST([INSTALL_PROGRAM])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([INSTALL_PROGRAM])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
-m4trace:configure.ac:26: -1- AC_SUBST([INSTALL_SCRIPT])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([INSTALL_SCRIPT])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
-m4trace:configure.ac:26: -1- AC_SUBST([INSTALL_DATA])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([INSTALL_DATA])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^INSTALL_DATA$])
-m4trace:configure.ac:26: -1- AC_SUBST([am__isrc], [' -I$(srcdir)'])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([am__isrc])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^am__isrc$])
-m4trace:configure.ac:26: -1- _AM_SUBST_NOTMAKE([am__isrc])
-m4trace:configure.ac:26: -1- AC_SUBST([CYGPATH_W])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([CYGPATH_W])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^CYGPATH_W$])
-m4trace:configure.ac:26: -1- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([PACKAGE])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^PACKAGE$])
-m4trace:configure.ac:26: -1- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([VERSION])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^VERSION$])
-m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^PACKAGE$])
-m4trace:configure.ac:26: -1- AH_OUTPUT([PACKAGE], [/* Name of package */
-@%:@undef PACKAGE])
-m4trace:configure.ac:26: -1- AC_DEFINE_TRACE_LITERAL([VERSION])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^VERSION$])
-m4trace:configure.ac:26: -1- AH_OUTPUT([VERSION], [/* Version number of package */
-@%:@undef VERSION])
-m4trace:configure.ac:26: -1- AC_REQUIRE_AUX_FILE([missing])
-m4trace:configure.ac:26: -1- AC_SUBST([ACLOCAL])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([ACLOCAL])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^ACLOCAL$])
-m4trace:configure.ac:26: -1- AC_SUBST([AUTOCONF])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([AUTOCONF])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AUTOCONF$])
-m4trace:configure.ac:26: -1- AC_SUBST([AUTOMAKE])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([AUTOMAKE])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AUTOMAKE$])
-m4trace:configure.ac:26: -1- AC_SUBST([AUTOHEADER])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([AUTOHEADER])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AUTOHEADER$])
-m4trace:configure.ac:26: -1- AC_SUBST([MAKEINFO])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([MAKEINFO])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^MAKEINFO$])
-m4trace:configure.ac:26: -1- AC_SUBST([install_sh])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([install_sh])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^install_sh$])
-m4trace:configure.ac:26: -1- AC_SUBST([STRIP])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([STRIP])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^STRIP$])
-m4trace:configure.ac:26: -1- AC_SUBST([INSTALL_STRIP_PROGRAM])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([INSTALL_STRIP_PROGRAM])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^INSTALL_STRIP_PROGRAM$])
-m4trace:configure.ac:26: -1- AC_REQUIRE_AUX_FILE([install-sh])
-m4trace:configure.ac:26: -1- AC_SUBST([MKDIR_P])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([MKDIR_P])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^MKDIR_P$])
-m4trace:configure.ac:26: -1- AC_SUBST([mkdir_p], ["$MKDIR_P"])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([mkdir_p])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^mkdir_p$])
-m4trace:configure.ac:26: -1- AC_SUBST([AWK])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([AWK])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AWK$])
-m4trace:configure.ac:26: -1- AC_SUBST([SET_MAKE])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([SET_MAKE])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^SET_MAKE$])
-m4trace:configure.ac:26: -1- AC_SUBST([am__leading_dot])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([am__leading_dot])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^am__leading_dot$])
-m4trace:configure.ac:26: -1- AC_SUBST([AMTAR])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([AMTAR])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^AMTAR$])
-m4trace:configure.ac:26: -1- AC_SUBST([am__tar])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([am__tar])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^am__tar$])
-m4trace:configure.ac:26: -1- AC_SUBST([am__untar])
-m4trace:configure.ac:26: -1- AC_SUBST_TRACE([am__untar])
-m4trace:configure.ac:26: -1- m4_pattern_allow([^am__untar$])
-m4trace:configure.ac:28: -1- AC_SUBST([CC])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- AC_SUBST([CFLAGS])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([CFLAGS])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CFLAGS$])
-m4trace:configure.ac:28: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.ac:28: -1- AC_SUBST([LIBS])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:28: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:28: -1- AC_SUBST([CC])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- AC_SUBST([CC])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- AC_SUBST([CC])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- AC_SUBST([CC])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([CC])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CC$])
-m4trace:configure.ac:28: -1- AC_SUBST([ac_ct_CC])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([ac_ct_CC])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^ac_ct_CC$])
-m4trace:configure.ac:28: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([EXEEXT])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^EXEEXT$])
-m4trace:configure.ac:28: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([OBJEXT])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^OBJEXT$])
-m4trace:configure.ac:28: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([DEPDIR])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^DEPDIR$])
-m4trace:configure.ac:28: -1- AC_SUBST([am__include])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([am__include])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^am__include$])
-m4trace:configure.ac:28: -1- AC_SUBST([am__quote])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([am__quote])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^am__quote$])
-m4trace:configure.ac:28: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-m4trace:configure.ac:28: -1- AC_SUBST([AMDEP_TRUE])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([AMDEP_TRUE])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^AMDEP_TRUE$])
-m4trace:configure.ac:28: -1- AC_SUBST([AMDEP_FALSE])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([AMDEP_FALSE])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^AMDEP_FALSE$])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])
-m4trace:configure.ac:28: -1- AC_SUBST([AMDEPBACKSLASH])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([AMDEPBACKSLASH])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^AMDEPBACKSLASH$])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])
-m4trace:configure.ac:28: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([CCDEPMODE])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^CCDEPMODE$])
-m4trace:configure.ac:28: -1- AM_CONDITIONAL([am__fastdepCC], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CC_dependencies_compiler_type" = gcc3])
-m4trace:configure.ac:28: -1- AC_SUBST([am__fastdepCC_TRUE])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])
-m4trace:configure.ac:28: -1- AC_SUBST([am__fastdepCC_FALSE])
-m4trace:configure.ac:28: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE])
-m4trace:configure.ac:28: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])
-m4trace:configure.ac:28: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])
-m4trace:configure.ac:29: -1- AC_SUBST([CXX])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([CXX])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CXX$])
-m4trace:configure.ac:29: -1- AC_SUBST([CXXFLAGS])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([CXXFLAGS])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CXXFLAGS$])
-m4trace:configure.ac:29: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.ac:29: -1- AC_SUBST([LIBS])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:29: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:29: -1- AC_SUBST([CXX])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([CXX])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CXX$])
-m4trace:configure.ac:29: -1- AC_SUBST([ac_ct_CXX])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([ac_ct_CXX])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^ac_ct_CXX$])
-m4trace:configure.ac:29: -1- AC_SUBST([CXXDEPMODE], [depmode=$am_cv_CXX_dependencies_compiler_type])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([CXXDEPMODE])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^CXXDEPMODE$])
-m4trace:configure.ac:29: -1- AM_CONDITIONAL([am__fastdepCXX], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3])
-m4trace:configure.ac:29: -1- AC_SUBST([am__fastdepCXX_TRUE])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([am__fastdepCXX_TRUE])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^am__fastdepCXX_TRUE$])
-m4trace:configure.ac:29: -1- AC_SUBST([am__fastdepCXX_FALSE])
-m4trace:configure.ac:29: -1- AC_SUBST_TRACE([am__fastdepCXX_FALSE])
-m4trace:configure.ac:29: -1- m4_pattern_allow([^am__fastdepCXX_FALSE$])
-m4trace:configure.ac:29: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_TRUE])
-m4trace:configure.ac:29: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_FALSE])
-m4trace:configure.ac:32: -1- _m4_warn([obsolete], [The macro `AC_LIBTOOL_WIN32_DLL' is obsolete.
-You should run autoupdate.], [aclocal.m4:7525: AC_LIBTOOL_WIN32_DLL is expanded from...
-configure.ac:32: the top level])
-m4trace:configure.ac:32: -1- AC_CANONICAL_HOST
-m4trace:configure.ac:32: -1- AC_CANONICAL_BUILD
-m4trace:configure.ac:32: -1- AC_REQUIRE_AUX_FILE([config.sub])
-m4trace:configure.ac:32: -1- AC_REQUIRE_AUX_FILE([config.guess])
-m4trace:configure.ac:32: -1- AC_SUBST([build], [$ac_cv_build])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([build])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^build$])
-m4trace:configure.ac:32: -1- AC_SUBST([build_cpu], [$[1]])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([build_cpu])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^build_cpu$])
-m4trace:configure.ac:32: -1- AC_SUBST([build_vendor], [$[2]])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([build_vendor])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^build_vendor$])
-m4trace:configure.ac:32: -1- AC_SUBST([build_os])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([build_os])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^build_os$])
-m4trace:configure.ac:32: -1- AC_SUBST([host], [$ac_cv_host])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([host])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^host$])
-m4trace:configure.ac:32: -1- AC_SUBST([host_cpu], [$[1]])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([host_cpu])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^host_cpu$])
-m4trace:configure.ac:32: -1- AC_SUBST([host_vendor], [$[2]])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([host_vendor])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^host_vendor$])
-m4trace:configure.ac:32: -1- AC_SUBST([host_os])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([host_os])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^host_os$])
-m4trace:configure.ac:32: -1- AC_SUBST([AS])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([AS])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^AS$])
-m4trace:configure.ac:32: -1- AC_SUBST([DLLTOOL])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([DLLTOOL])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^DLLTOOL$])
-m4trace:configure.ac:32: -1- AC_SUBST([OBJDUMP])
-m4trace:configure.ac:32: -1- AC_SUBST_TRACE([OBJDUMP])
-m4trace:configure.ac:32: -1- m4_pattern_allow([^OBJDUMP$])
-m4trace:configure.ac:32: -1- _m4_warn([obsolete], [AC_LIBTOOL_WIN32_DLL: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.], [aclocal.m4:7525: AC_LIBTOOL_WIN32_DLL is expanded from...
-configure.ac:32: the top level])
-m4trace:configure.ac:33: -1- _m4_warn([obsolete], [The macro `AC_LIBTOOL_DLOPEN' is obsolete.
-You should run autoupdate.], [aclocal.m4:7490: AC_LIBTOOL_DLOPEN is expanded from...
-configure.ac:33: the top level])
-m4trace:configure.ac:33: -1- _m4_warn([obsolete], [AC_LIBTOOL_DLOPEN: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.], [aclocal.m4:7490: AC_LIBTOOL_DLOPEN is expanded from...
-configure.ac:33: the top level])
-m4trace:configure.ac:34: -1- AC_PROG_LIBTOOL
-m4trace:configure.ac:34: -1- _m4_warn([obsolete], [The macro `AC_PROG_LIBTOOL' is obsolete.
-You should run autoupdate.], [aclocal.m4:123: AC_PROG_LIBTOOL is expanded from...
-configure.ac:34: the top level])
-m4trace:configure.ac:34: -1- LT_INIT
-m4trace:configure.ac:34: -1- m4_pattern_forbid([^_?LT_[A-Z_]+$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])
-m4trace:configure.ac:34: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])
-m4trace:configure.ac:34: -1- AC_SUBST([LIBTOOL])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([LIBTOOL])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LIBTOOL$])
-m4trace:configure.ac:34: -1- AC_SUBST([SED])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([SED])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^SED$])
-m4trace:configure.ac:34: -1- AC_SUBST([GREP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([GREP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^GREP$])
-m4trace:configure.ac:34: -1- AC_SUBST([EGREP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([EGREP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^EGREP$])
-m4trace:configure.ac:34: -1- AC_SUBST([FGREP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([FGREP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^FGREP$])
-m4trace:configure.ac:34: -1- AC_SUBST([GREP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([GREP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^GREP$])
-m4trace:configure.ac:34: -1- AC_SUBST([LD])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([LD])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LD$])
-m4trace:configure.ac:34: -1- AC_SUBST([DUMPBIN])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([DUMPBIN])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^DUMPBIN$])
-m4trace:configure.ac:34: -1- AC_SUBST([ac_ct_DUMPBIN])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([ac_ct_DUMPBIN])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^ac_ct_DUMPBIN$])
-m4trace:configure.ac:34: -1- AC_SUBST([DUMPBIN])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([DUMPBIN])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^DUMPBIN$])
-m4trace:configure.ac:34: -1- AC_SUBST([NM])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([NM])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^NM$])
-m4trace:configure.ac:34: -1- AC_SUBST([LN_S], [$as_ln_s])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([LN_S])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LN_S$])
-m4trace:configure.ac:34: -1- AC_SUBST([OBJDUMP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([OBJDUMP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^OBJDUMP$])
-m4trace:configure.ac:34: -1- AC_SUBST([OBJDUMP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([OBJDUMP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^OBJDUMP$])
-m4trace:configure.ac:34: -1- AC_SUBST([AR])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([AR])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^AR$])
-m4trace:configure.ac:34: -1- AC_SUBST([STRIP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([STRIP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^STRIP$])
-m4trace:configure.ac:34: -1- AC_SUBST([RANLIB])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([RANLIB])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^RANLIB$])
-m4trace:configure.ac:34: -1- m4_pattern_allow([LT_OBJDIR])
-m4trace:configure.ac:34: -1- AC_DEFINE_TRACE_LITERAL([LT_OBJDIR])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LT_OBJDIR$])
-m4trace:configure.ac:34: -1- AH_OUTPUT([LT_OBJDIR], [/* Define to the sub-directory in which libtool stores uninstalled libraries.
- */
-@%:@undef LT_OBJDIR])
-m4trace:configure.ac:34: -1- AC_SUBST([lt_ECHO])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([lt_ECHO])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^lt_ECHO$])
-m4trace:configure.ac:34: -1- LT_SUPPORTED_TAG([CC])
-m4trace:configure.ac:34: -1- AC_SUBST([DSYMUTIL])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([DSYMUTIL])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^DSYMUTIL$])
-m4trace:configure.ac:34: -1- AC_SUBST([NMEDIT])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([NMEDIT])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^NMEDIT$])
-m4trace:configure.ac:34: -1- AC_SUBST([LIPO])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([LIPO])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LIPO$])
-m4trace:configure.ac:34: -1- AC_SUBST([OTOOL])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([OTOOL])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^OTOOL$])
-m4trace:configure.ac:34: -1- AC_SUBST([OTOOL64])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([OTOOL64])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^OTOOL64$])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
-@%:@undef HAVE_DLFCN_H])
-m4trace:configure.ac:34: -1- AC_SUBST([CPP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CPP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.ac:34: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:34: -1- AC_SUBST([CPP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CPP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPP$])
-m4trace:configure.ac:34: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^STDC_HEADERS$])
-m4trace:configure.ac:34: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */
-@%:@undef STDC_HEADERS])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
-@%:@undef HAVE_SYS_TYPES_H])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
-@%:@undef HAVE_SYS_STAT_H])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
-@%:@undef HAVE_STDLIB_H])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
-@%:@undef HAVE_STRING_H])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
-@%:@undef HAVE_MEMORY_H])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
-@%:@undef HAVE_STRINGS_H])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
-@%:@undef HAVE_INTTYPES_H])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
-@%:@undef HAVE_STDINT_H])
-m4trace:configure.ac:34: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
-@%:@undef HAVE_UNISTD_H])
-m4trace:configure.ac:34: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DLFCN_H])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^HAVE_DLFCN_H$])
-m4trace:configure.ac:34: -1- LT_SUPPORTED_TAG([CXX])
-m4trace:configure.ac:34: -1- AC_SUBST([CXX])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CXX])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXX$])
-m4trace:configure.ac:34: -1- AC_SUBST([CXXFLAGS])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CXXFLAGS])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXXFLAGS$])
-m4trace:configure.ac:34: -1- AC_SUBST([LDFLAGS])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([LDFLAGS])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LDFLAGS$])
-m4trace:configure.ac:34: -1- AC_SUBST([LIBS])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([LIBS])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LIBS$])
-m4trace:configure.ac:34: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:34: -1- AC_SUBST([CXX])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CXX])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXX$])
-m4trace:configure.ac:34: -1- AC_SUBST([ac_ct_CXX])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([ac_ct_CXX])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^ac_ct_CXX$])
-m4trace:configure.ac:34: -1- AC_SUBST([CXXDEPMODE], [depmode=$am_cv_CXX_dependencies_compiler_type])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CXXDEPMODE])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXXDEPMODE$])
-m4trace:configure.ac:34: -1- AM_CONDITIONAL([am__fastdepCXX], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3])
-m4trace:configure.ac:34: -1- AC_SUBST([am__fastdepCXX_TRUE])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([am__fastdepCXX_TRUE])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^am__fastdepCXX_TRUE$])
-m4trace:configure.ac:34: -1- AC_SUBST([am__fastdepCXX_FALSE])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([am__fastdepCXX_FALSE])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^am__fastdepCXX_FALSE$])
-m4trace:configure.ac:34: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_TRUE])
-m4trace:configure.ac:34: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_FALSE])
-m4trace:configure.ac:34: -1- AC_SUBST([CXXCPP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CXXCPP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXXCPP$])
-m4trace:configure.ac:34: -1- AC_SUBST([CPPFLAGS])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CPPFLAGS])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CPPFLAGS$])
-m4trace:configure.ac:34: -1- AC_SUBST([CXXCPP])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([CXXCPP])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^CXXCPP$])
-m4trace:configure.ac:34: -1- AC_SUBST([LD])
-m4trace:configure.ac:34: -1- AC_SUBST_TRACE([LD])
-m4trace:configure.ac:34: -1- m4_pattern_allow([^LD$])
-m4trace:configure.ac:45: -1- AC_DEFINE_TRACE_LITERAL([MGL_USE_DOUBLE])
-m4trace:configure.ac:45: -1- m4_pattern_allow([^MGL_USE_DOUBLE$])
-m4trace:configure.ac:45: -1- AH_OUTPUT([MGL_USE_DOUBLE], [/* This define enables double precision in MathGL */
-@%:@undef MGL_USE_DOUBLE])
-m4trace:configure.ac:47: -1- AC_DEFINE_TRACE_LITERAL([MGL_USE_DOUBLE])
-m4trace:configure.ac:47: -1- m4_pattern_allow([^MGL_USE_DOUBLE$])
-m4trace:configure.ac:47: -1- AH_OUTPUT([MGL_USE_DOUBLE], [/* This define enables double precision in MathGL */
-@%:@undef MGL_USE_DOUBLE])
-m4trace:configure.ac:73: -1- AC_SUBST([PTHREAD_FLAGS])
-m4trace:configure.ac:73: -1- AC_SUBST_TRACE([PTHREAD_FLAGS])
-m4trace:configure.ac:73: -1- m4_pattern_allow([^PTHREAD_FLAGS$])
-m4trace:configure.ac:76: -1- AC_SUBST([PTHREAD_LIBS])
-m4trace:configure.ac:76: -1- AC_SUBST_TRACE([PTHREAD_LIBS])
-m4trace:configure.ac:76: -1- m4_pattern_allow([^PTHREAD_LIBS$])
-m4trace:configure.ac:78: -1- AM_CONDITIONAL([USE_PTHREAD], [test x$pthread = xtrue])
-m4trace:configure.ac:78: -1- AC_SUBST([USE_PTHREAD_TRUE])
-m4trace:configure.ac:78: -1- AC_SUBST_TRACE([USE_PTHREAD_TRUE])
-m4trace:configure.ac:78: -1- m4_pattern_allow([^USE_PTHREAD_TRUE$])
-m4trace:configure.ac:78: -1- AC_SUBST([USE_PTHREAD_FALSE])
-m4trace:configure.ac:78: -1- AC_SUBST_TRACE([USE_PTHREAD_FALSE])
-m4trace:configure.ac:78: -1- m4_pattern_allow([^USE_PTHREAD_FALSE$])
-m4trace:configure.ac:78: -1- _AM_SUBST_NOTMAKE([USE_PTHREAD_TRUE])
-m4trace:configure.ac:78: -1- _AM_SUBST_NOTMAKE([USE_PTHREAD_FALSE])
-m4trace:configure.ac:90: -1- AC_SUBST([GSL_FLAGS])
-m4trace:configure.ac:90: -1- AC_SUBST_TRACE([GSL_FLAGS])
-m4trace:configure.ac:90: -1- m4_pattern_allow([^GSL_FLAGS$])
-m4trace:configure.ac:91: -1- AC_SUBST([GSL_LIBS])
-m4trace:configure.ac:91: -1- AC_SUBST_TRACE([GSL_LIBS])
-m4trace:configure.ac:91: -1- m4_pattern_allow([^GSL_LIBS$])
-m4trace:configure.ac:101: -1- AC_SUBST([GSL_FLAGS])
-m4trace:configure.ac:101: -1- AC_SUBST_TRACE([GSL_FLAGS])
-m4trace:configure.ac:101: -1- m4_pattern_allow([^GSL_FLAGS$])
-m4trace:configure.ac:103: -1- AM_CONDITIONAL([USE_GSL], [test x$test_gsl = xtrue])
-m4trace:configure.ac:103: -1- AC_SUBST([USE_GSL_TRUE])
-m4trace:configure.ac:103: -1- AC_SUBST_TRACE([USE_GSL_TRUE])
-m4trace:configure.ac:103: -1- m4_pattern_allow([^USE_GSL_TRUE$])
-m4trace:configure.ac:103: -1- AC_SUBST([USE_GSL_FALSE])
-m4trace:configure.ac:103: -1- AC_SUBST_TRACE([USE_GSL_FALSE])
-m4trace:configure.ac:103: -1- m4_pattern_allow([^USE_GSL_FALSE$])
-m4trace:configure.ac:103: -1- _AM_SUBST_NOTMAKE([USE_GSL_TRUE])
-m4trace:configure.ac:103: -1- _AM_SUBST_NOTMAKE([USE_GSL_FALSE])
-m4trace:configure.ac:108: -1- AC_SUBST([GL_LIBS])
-m4trace:configure.ac:108: -1- AC_SUBST_TRACE([GL_LIBS])
-m4trace:configure.ac:108: -1- m4_pattern_allow([^GL_LIBS$])
-m4trace:configure.ac:114: -1- AC_SUBST([GL_LIBS])
-m4trace:configure.ac:114: -1- AC_SUBST_TRACE([GL_LIBS])
-m4trace:configure.ac:114: -1- m4_pattern_allow([^GL_LIBS$])
-m4trace:configure.ac:121: -1- AC_SUBST([GL_LIBS])
-m4trace:configure.ac:121: -1- AC_SUBST_TRACE([GL_LIBS])
-m4trace:configure.ac:121: -1- m4_pattern_allow([^GL_LIBS$])
-m4trace:configure.ac:126: -1- AM_CONDITIONAL([USE_GLUT], [(test x$all = xtrue || test x$glut = xtrue)])
-m4trace:configure.ac:126: -1- AC_SUBST([USE_GLUT_TRUE])
-m4trace:configure.ac:126: -1- AC_SUBST_TRACE([USE_GLUT_TRUE])
-m4trace:configure.ac:126: -1- m4_pattern_allow([^USE_GLUT_TRUE$])
-m4trace:configure.ac:126: -1- AC_SUBST([USE_GLUT_FALSE])
-m4trace:configure.ac:126: -1- AC_SUBST_TRACE([USE_GLUT_FALSE])
-m4trace:configure.ac:126: -1- m4_pattern_allow([^USE_GLUT_FALSE$])
-m4trace:configure.ac:126: -1- _AM_SUBST_NOTMAKE([USE_GLUT_TRUE])
-m4trace:configure.ac:126: -1- _AM_SUBST_NOTMAKE([USE_GLUT_FALSE])
-m4trace:configure.ac:156: -1- AC_SUBST([HDF5_FLAGS])
-m4trace:configure.ac:156: -1- AC_SUBST_TRACE([HDF5_FLAGS])
-m4trace:configure.ac:156: -1- m4_pattern_allow([^HDF5_FLAGS$])
-m4trace:configure.ac:158: -1- AC_SUBST([HDF5_LIBS])
-m4trace:configure.ac:158: -1- AC_SUBST_TRACE([HDF5_LIBS])
-m4trace:configure.ac:158: -1- m4_pattern_allow([^HDF5_LIBS$])
-m4trace:configure.ac:160: -1- AM_CONDITIONAL([USE_HDF5], [(test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue)])
-m4trace:configure.ac:160: -1- AC_SUBST([USE_HDF5_TRUE])
-m4trace:configure.ac:160: -1- AC_SUBST_TRACE([USE_HDF5_TRUE])
-m4trace:configure.ac:160: -1- m4_pattern_allow([^USE_HDF5_TRUE$])
-m4trace:configure.ac:160: -1- AC_SUBST([USE_HDF5_FALSE])
-m4trace:configure.ac:160: -1- AC_SUBST_TRACE([USE_HDF5_FALSE])
-m4trace:configure.ac:160: -1- m4_pattern_allow([^USE_HDF5_FALSE$])
-m4trace:configure.ac:160: -1- _AM_SUBST_NOTMAKE([USE_HDF5_TRUE])
-m4trace:configure.ac:160: -1- _AM_SUBST_NOTMAKE([USE_HDF5_FALSE])
-m4trace:configure.ac:172: -1- AC_SUBST([HDF4_FLAGS])
-m4trace:configure.ac:172: -1- AC_SUBST_TRACE([HDF4_FLAGS])
-m4trace:configure.ac:172: -1- m4_pattern_allow([^HDF4_FLAGS$])
-m4trace:configure.ac:173: -1- AC_SUBST([HDF4_LIBS])
-m4trace:configure.ac:173: -1- AC_SUBST_TRACE([HDF4_LIBS])
-m4trace:configure.ac:173: -1- m4_pattern_allow([^HDF4_LIBS$])
-m4trace:configure.ac:175: -1- AM_CONDITIONAL([USE_HDF4], [(test x$all = xtrue || test x$hdf4 = xtrue)])
-m4trace:configure.ac:175: -1- AC_SUBST([USE_HDF4_TRUE])
-m4trace:configure.ac:175: -1- AC_SUBST_TRACE([USE_HDF4_TRUE])
-m4trace:configure.ac:175: -1- m4_pattern_allow([^USE_HDF4_TRUE$])
-m4trace:configure.ac:175: -1- AC_SUBST([USE_HDF4_FALSE])
-m4trace:configure.ac:175: -1- AC_SUBST_TRACE([USE_HDF4_FALSE])
-m4trace:configure.ac:175: -1- m4_pattern_allow([^USE_HDF4_FALSE$])
-m4trace:configure.ac:175: -1- _AM_SUBST_NOTMAKE([USE_HDF4_TRUE])
-m4trace:configure.ac:175: -1- _AM_SUBST_NOTMAKE([USE_HDF4_FALSE])
-m4trace:configure.ac:179: -1- AC_SUBST([PNG_LIBS])
-m4trace:configure.ac:179: -1- AC_SUBST_TRACE([PNG_LIBS])
-m4trace:configure.ac:179: -1- m4_pattern_allow([^PNG_LIBS$])
-m4trace:configure.ac:189: -1- AC_SUBST([JPEG_FLAGS])
-m4trace:configure.ac:189: -1- AC_SUBST_TRACE([JPEG_FLAGS])
-m4trace:configure.ac:189: -1- m4_pattern_allow([^JPEG_FLAGS$])
-m4trace:configure.ac:192: -1- AC_SUBST([JPEG_LIBS])
-m4trace:configure.ac:192: -1- AC_SUBST_TRACE([JPEG_LIBS])
-m4trace:configure.ac:192: -1- m4_pattern_allow([^JPEG_LIBS$])
-m4trace:configure.ac:194: -1- AM_CONDITIONAL([USE_JPEG], [(test x$all = xtrue || test x$jpeg = xtrue)])
-m4trace:configure.ac:194: -1- AC_SUBST([USE_JPEG_TRUE])
-m4trace:configure.ac:194: -1- AC_SUBST_TRACE([USE_JPEG_TRUE])
-m4trace:configure.ac:194: -1- m4_pattern_allow([^USE_JPEG_TRUE$])
-m4trace:configure.ac:194: -1- AC_SUBST([USE_JPEG_FALSE])
-m4trace:configure.ac:194: -1- AC_SUBST_TRACE([USE_JPEG_FALSE])
-m4trace:configure.ac:194: -1- m4_pattern_allow([^USE_JPEG_FALSE$])
-m4trace:configure.ac:194: -1- _AM_SUBST_NOTMAKE([USE_JPEG_TRUE])
-m4trace:configure.ac:194: -1- _AM_SUBST_NOTMAKE([USE_JPEG_FALSE])
-m4trace:configure.ac:210: -1- AH_OUTPUT([HAVE_LIBHPDF], [/* Define to 1 if you have the `hpdf\' library (-lhpdf). */
-@%:@undef HAVE_LIBHPDF])
-m4trace:configure.ac:210: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBHPDF])
-m4trace:configure.ac:210: -1- m4_pattern_allow([^HAVE_LIBHPDF$])
-m4trace:configure.ac:216: -1- AH_OUTPUT([HAVE_HPDF_H], [/* Define to 1 if you have the <hpdf.h> header file. */
-@%:@undef HAVE_HPDF_H])
-m4trace:configure.ac:216: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HPDF_H])
-m4trace:configure.ac:216: -1- m4_pattern_allow([^HAVE_HPDF_H$])
-m4trace:configure.ac:221: -1- AM_CONDITIONAL([USE_PDF], [test x$pdf = xtrue])
-m4trace:configure.ac:221: -1- AC_SUBST([USE_PDF_TRUE])
-m4trace:configure.ac:221: -1- AC_SUBST_TRACE([USE_PDF_TRUE])
-m4trace:configure.ac:221: -1- m4_pattern_allow([^USE_PDF_TRUE$])
-m4trace:configure.ac:221: -1- AC_SUBST([USE_PDF_FALSE])
-m4trace:configure.ac:221: -1- AC_SUBST_TRACE([USE_PDF_FALSE])
-m4trace:configure.ac:221: -1- m4_pattern_allow([^USE_PDF_FALSE$])
-m4trace:configure.ac:221: -1- _AM_SUBST_NOTMAKE([USE_PDF_TRUE])
-m4trace:configure.ac:221: -1- _AM_SUBST_NOTMAKE([USE_PDF_FALSE])
-m4trace:configure.ac:223: -1- AC_SUBST([U3D_LIBS], ["-lIDTF -lm -ldl"])
-m4trace:configure.ac:223: -1- AC_SUBST_TRACE([U3D_LIBS])
-m4trace:configure.ac:223: -1- m4_pattern_allow([^U3D_LIBS$])
-m4trace:configure.ac:223: -1- AC_DEFINE_TRACE_LITERAL([HAVE_U3D])
-m4trace:configure.ac:223: -1- m4_pattern_allow([^HAVE_U3D$])
-m4trace:configure.ac:223: -1- AH_OUTPUT([HAVE_U3D], [/* Define if you have libIDTF */
-@%:@undef HAVE_U3D])
-m4trace:configure.ac:232: -1- AH_OUTPUT([HAVE_U3D_SCENECONVERTERLIB_H], [/* Define to 1 if you have the <u3d/SceneConverterLib.h> header file. */
-@%:@undef HAVE_U3D_SCENECONVERTERLIB_H])
-m4trace:configure.ac:232: -1- AC_DEFINE_TRACE_LITERAL([HAVE_U3D_SCENECONVERTERLIB_H])
-m4trace:configure.ac:232: -1- m4_pattern_allow([^HAVE_U3D_SCENECONVERTERLIB_H$])
-m4trace:configure.ac:237: -1- AM_CONDITIONAL([USE_U3D], [test x$u3d = xtrue])
-m4trace:configure.ac:237: -1- AC_SUBST([USE_U3D_TRUE])
-m4trace:configure.ac:237: -1- AC_SUBST_TRACE([USE_U3D_TRUE])
-m4trace:configure.ac:237: -1- m4_pattern_allow([^USE_U3D_TRUE$])
-m4trace:configure.ac:237: -1- AC_SUBST([USE_U3D_FALSE])
-m4trace:configure.ac:237: -1- AC_SUBST_TRACE([USE_U3D_FALSE])
-m4trace:configure.ac:237: -1- m4_pattern_allow([^USE_U3D_FALSE$])
-m4trace:configure.ac:237: -1- _AM_SUBST_NOTMAKE([USE_U3D_TRUE])
-m4trace:configure.ac:237: -1- _AM_SUBST_NOTMAKE([USE_U3D_FALSE])
-m4trace:configure.ac:248: -1- AC_SUBST([FLTK_FLAGS])
-m4trace:configure.ac:248: -1- AC_SUBST_TRACE([FLTK_FLAGS])
-m4trace:configure.ac:248: -1- m4_pattern_allow([^FLTK_FLAGS$])
-m4trace:configure.ac:249: -1- AC_SUBST([FLTK_LIBS])
-m4trace:configure.ac:249: -1- AC_SUBST_TRACE([FLTK_LIBS])
-m4trace:configure.ac:249: -1- m4_pattern_allow([^FLTK_LIBS$])
-m4trace:configure.ac:258: -1- AM_CONDITIONAL([USE_FLTK], [test x$test_fltk = xtrue])
-m4trace:configure.ac:258: -1- AC_SUBST([USE_FLTK_TRUE])
-m4trace:configure.ac:258: -1- AC_SUBST_TRACE([USE_FLTK_TRUE])
-m4trace:configure.ac:258: -1- m4_pattern_allow([^USE_FLTK_TRUE$])
-m4trace:configure.ac:258: -1- AC_SUBST([USE_FLTK_FALSE])
-m4trace:configure.ac:258: -1- AC_SUBST_TRACE([USE_FLTK_FALSE])
-m4trace:configure.ac:258: -1- m4_pattern_allow([^USE_FLTK_FALSE$])
-m4trace:configure.ac:258: -1- _AM_SUBST_NOTMAKE([USE_FLTK_TRUE])
-m4trace:configure.ac:258: -1- _AM_SUBST_NOTMAKE([USE_FLTK_FALSE])
-m4trace:configure.ac:268: -1- AC_SUBST([QMAKE])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QMAKE])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QMAKE$])
-m4trace:configure.ac:268: -1- AC_SUBST([QMAKE])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QMAKE])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QMAKE$])
-m4trace:configure.ac:268: -1- AC_SUBST([MOC])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([MOC])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^MOC$])
-m4trace:configure.ac:268: -1- AC_SUBST([MOC])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([MOC])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^MOC$])
-m4trace:configure.ac:268: -1- AC_SUBST([UIC])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([UIC])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^UIC$])
-m4trace:configure.ac:268: -1- AC_SUBST([UIC])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([UIC])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^UIC$])
-m4trace:configure.ac:268: -1- AC_SUBST([RCC])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([RCC])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^RCC$])
-m4trace:configure.ac:268: -1- AC_SUBST([RCC])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([RCC])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^RCC$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_PATH])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_PATH])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_PATH$])
-m4trace:configure.ac:268: -1- AC_SUBST([TMPDIR])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([TMPDIR])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^TMPDIR$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_VERSION_MAJOR])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_VERSION_MAJOR])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_VERSION_MAJOR$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_DEFINES], [$at_cv_env_QT_DEFINES])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_DEFINES])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_DEFINES$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_CFLAGS], [$at_cv_env_QT_CFLAGS])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_CFLAGS])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_CFLAGS$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_CXXFLAGS], [$at_cv_env_QT_CXXFLAGS])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_CXXFLAGS])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_CXXFLAGS$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_INCPATH], [$at_cv_env_QT_INCPATH])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_INCPATH])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_INCPATH$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_CPPFLAGS], ["$at_cv_env_QT_DEFINES $at_cv_env_QT_INCPATH"])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_CPPFLAGS])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_CPPFLAGS$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_LFLAGS], [$at_cv_env_QT_LDFLAGS])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_LFLAGS])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_LFLAGS$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_LDFLAGS], [$at_cv_env_QT_LDFLAGS])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_LDFLAGS])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_LDFLAGS$])
-m4trace:configure.ac:268: -1- AC_SUBST([QT_LIBS], [$at_cv_env_QT_LIBS])
-m4trace:configure.ac:268: -1- AC_SUBST_TRACE([QT_LIBS])
-m4trace:configure.ac:268: -1- m4_pattern_allow([^QT_LIBS$])
-m4trace:configure.ac:269: -1- AC_SUBST([QT_VERSION], [$at_cv_QT_VERSION])
-m4trace:configure.ac:269: -1- AC_SUBST_TRACE([QT_VERSION])
-m4trace:configure.ac:269: -1- m4_pattern_allow([^QT_VERSION$])
-m4trace:configure.ac:272: -1- AM_CONDITIONAL([USE_QT], [test x$test_qt = xtrue])
-m4trace:configure.ac:272: -1- AC_SUBST([USE_QT_TRUE])
-m4trace:configure.ac:272: -1- AC_SUBST_TRACE([USE_QT_TRUE])
-m4trace:configure.ac:272: -1- m4_pattern_allow([^USE_QT_TRUE$])
-m4trace:configure.ac:272: -1- AC_SUBST([USE_QT_FALSE])
-m4trace:configure.ac:272: -1- AC_SUBST_TRACE([USE_QT_FALSE])
-m4trace:configure.ac:272: -1- m4_pattern_allow([^USE_QT_FALSE$])
-m4trace:configure.ac:272: -1- _AM_SUBST_NOTMAKE([USE_QT_TRUE])
-m4trace:configure.ac:272: -1- _AM_SUBST_NOTMAKE([USE_QT_FALSE])
-m4trace:configure.ac:282: -1- AC_SUBST([PYTHON_HEADERS])
-m4trace:configure.ac:282: -1- AC_SUBST_TRACE([PYTHON_HEADERS])
-m4trace:configure.ac:282: -1- m4_pattern_allow([^PYTHON_HEADERS$])
-m4trace:configure.ac:283: -1- AC_SUBST([HAVE_SWIG])
-m4trace:configure.ac:283: -1- AC_SUBST_TRACE([HAVE_SWIG])
-m4trace:configure.ac:283: -1- m4_pattern_allow([^HAVE_SWIG$])
-m4trace:configure.ac:286: -1- AC_SUBST([PYTHON])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([PYTHON])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON$])
-m4trace:configure.ac:286: -1- AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([PYTHON_VERSION])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON_VERSION$])
-m4trace:configure.ac:286: -1- AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([PYTHON_PREFIX])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON_PREFIX$])
-m4trace:configure.ac:286: -1- AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([PYTHON_EXEC_PREFIX])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON_EXEC_PREFIX$])
-m4trace:configure.ac:286: -1- AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([PYTHON_PLATFORM])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^PYTHON_PLATFORM$])
-m4trace:configure.ac:286: -1- AC_SUBST([pythondir], [$am_cv_python_pythondir])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([pythondir])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^pythondir$])
-m4trace:configure.ac:286: -1- AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([pkgpythondir])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^pkgpythondir$])
-m4trace:configure.ac:286: -1- AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([pyexecdir])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^pyexecdir$])
-m4trace:configure.ac:286: -1- AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
-m4trace:configure.ac:286: -1- AC_SUBST_TRACE([pkgpyexecdir])
-m4trace:configure.ac:286: -1- m4_pattern_allow([^pkgpyexecdir$])
-m4trace:configure.ac:292: -1- AM_CONDITIONAL([USE_PYTHON], [test x$test_python = xtrue ])
-m4trace:configure.ac:292: -1- AC_SUBST([USE_PYTHON_TRUE])
-m4trace:configure.ac:292: -1- AC_SUBST_TRACE([USE_PYTHON_TRUE])
-m4trace:configure.ac:292: -1- m4_pattern_allow([^USE_PYTHON_TRUE$])
-m4trace:configure.ac:292: -1- AC_SUBST([USE_PYTHON_FALSE])
-m4trace:configure.ac:292: -1- AC_SUBST_TRACE([USE_PYTHON_FALSE])
-m4trace:configure.ac:292: -1- m4_pattern_allow([^USE_PYTHON_FALSE$])
-m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([USE_PYTHON_TRUE])
-m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([USE_PYTHON_FALSE])
-m4trace:configure.ac:302: -1- AC_SUBST([OCTAVE])
-m4trace:configure.ac:302: -1- AC_SUBST_TRACE([OCTAVE])
-m4trace:configure.ac:302: -1- m4_pattern_allow([^OCTAVE$])
-m4trace:configure.ac:308: -1- AC_SUBST([OCTAVE_ARCH], [$OCTAVE_ARCH])
-m4trace:configure.ac:308: -1- AC_SUBST_TRACE([OCTAVE_ARCH])
-m4trace:configure.ac:308: -1- m4_pattern_allow([^OCTAVE_ARCH$])
-m4trace:configure.ac:309: -1- AC_SUBST([OCTAVE_INCFLAGS], [$OCTAVE_INCFLAGS])
-m4trace:configure.ac:309: -1- AC_SUBST_TRACE([OCTAVE_INCFLAGS])
-m4trace:configure.ac:309: -1- m4_pattern_allow([^OCTAVE_INCFLAGS$])
-m4trace:configure.ac:312: -1- AM_CONDITIONAL([USE_OCTAVE], [test x$test_octave = xtrue ])
-m4trace:configure.ac:312: -1- AC_SUBST([USE_OCTAVE_TRUE])
-m4trace:configure.ac:312: -1- AC_SUBST_TRACE([USE_OCTAVE_TRUE])
-m4trace:configure.ac:312: -1- m4_pattern_allow([^USE_OCTAVE_TRUE$])
-m4trace:configure.ac:312: -1- AC_SUBST([USE_OCTAVE_FALSE])
-m4trace:configure.ac:312: -1- AC_SUBST_TRACE([USE_OCTAVE_FALSE])
-m4trace:configure.ac:312: -1- m4_pattern_allow([^USE_OCTAVE_FALSE$])
-m4trace:configure.ac:312: -1- _AM_SUBST_NOTMAKE([USE_OCTAVE_TRUE])
-m4trace:configure.ac:312: -1- _AM_SUBST_NOTMAKE([USE_OCTAVE_FALSE])
-m4trace:configure.ac:315: -1- AC_SUBST([AM_CXXFLAGS])
-m4trace:configure.ac:315: -1- AC_SUBST_TRACE([AM_CXXFLAGS])
-m4trace:configure.ac:315: -1- m4_pattern_allow([^AM_CXXFLAGS$])
-m4trace:configure.ac:317: -1- AC_CONFIG_FILES([
-Makefile
-src/Makefile
-include/Makefile
-widgets/Makefile
-lang/Makefile
-utils/Makefile
-examples/Makefile
-])
-m4trace:configure.ac:326: -1- AC_SUBST([LIB@&t at OBJS], [$ac_libobjs])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([LIB@&t at OBJS])
-m4trace:configure.ac:326: -1- m4_pattern_allow([^LIB@&t at OBJS$])
-m4trace:configure.ac:326: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([LTLIBOBJS])
-m4trace:configure.ac:326: -1- m4_pattern_allow([^LTLIBOBJS$])
-m4trace:configure.ac:326: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])
-m4trace:configure.ac:326: -1- AC_SUBST([am__EXEEXT_TRUE])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE])
-m4trace:configure.ac:326: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])
-m4trace:configure.ac:326: -1- AC_SUBST([am__EXEEXT_FALSE])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE])
-m4trace:configure.ac:326: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])
-m4trace:configure.ac:326: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])
-m4trace:configure.ac:326: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([top_builddir])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([top_build_prefix])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([srcdir])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([abs_srcdir])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([top_srcdir])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([abs_top_srcdir])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([builddir])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([abs_builddir])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([abs_top_builddir])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([INSTALL])
-m4trace:configure.ac:326: -1- AC_SUBST_TRACE([MKDIR_P])
-m4trace:configure.ac:326: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])
diff --git a/clean-svn b/clean-svn
new file mode 100755
index 0000000..f0ba47a
--- /dev/null
+++ b/clean-svn
@@ -0,0 +1,3 @@
+find . -name '.svn' -print0 | xargs -0 rm -rf
+find . -name '*~' -print0 | xargs -0 rm -f
+rm ./clean-svn
diff --git a/config/config.guess b/config/config.guess
deleted file mode 100755
index c2246a4..0000000
--- a/config/config.guess
+++ /dev/null
@@ -1,1502 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-# Free Software Foundation, Inc.
-
-timestamp='2009-12-30'
-
-# This file is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner. Please send patches (context
-# diff format) to <config-patches at gnu.org> and include a ChangeLog
-# entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub. If it succeeds, it prints the system name on stdout, and
-# exits with 0. Otherwise, it exits with 1.
-#
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
-Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help" >&2
- exit 1 ;;
- * )
- break ;;
- esac
-done
-
-if test $# != 0; then
- echo "$me: too many arguments$help" >&2
- exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int x;" > $dummy.c ;
- for c in cc gcc c89 c99 ; do
- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$c"; break ;
- fi ;
- done ;
- if test x"$CC_FOR_BUILD" = x ; then
- CC_FOR_BUILD=no_compiler_found ;
- fi
- ;;
- ,,*) CC_FOR_BUILD=$CC ;;
- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
- *:NetBSD:*:*)
- # NetBSD (nbsd) targets should (where applicable) match one or
- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
- # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
- # switched to ELF, *-*-netbsd* would select the old
- # object file format. This provides both forward
- # compatibility and a consistent mechanism for selecting the
- # object file format.
- #
- # Note: NetBSD doesn't particularly care about the vendor
- # portion of the name. We always set it to "unknown".
- sysctl="sysctl -n hw.machine_arch"
- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
- case "${UNAME_MACHINE_ARCH}" in
- armeb) machine=armeb-unknown ;;
- arm*) machine=arm-unknown ;;
- sh3el) machine=shl-unknown ;;
- sh3eb) machine=sh-unknown ;;
- sh5el) machine=sh5le-unknown ;;
- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
- esac
- # The Operating System including object format, if it has switched
- # to ELF recently, or will in the future.
- case "${UNAME_MACHINE_ARCH}" in
- arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval $set_cc_for_build
- if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ELF__
- then
- # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
- # Return netbsd for either. FIX?
- os=netbsd
- else
- os=netbsdelf
- fi
- ;;
- *)
- os=netbsd
- ;;
- esac
- # The OS release
- # Debian GNU/NetBSD machines have a different userland, and
- # thus, need a distinct triplet. However, they do not need
- # kernel version information, so it can be replaced with a
- # suitable tag, in the style of linux-gnu.
- case "${UNAME_VERSION}" in
- Debian*)
- release='-gnu'
- ;;
- *)
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
- ;;
- esac
- # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
- # contains redundant information, the shorter form:
- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
- exit ;;
- *:OpenBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
- exit ;;
- *:ekkoBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
- exit ;;
- *:SolidBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
- exit ;;
- macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
- *:MirBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
- alpha:OSF1:*:*)
- case $UNAME_RELEASE in
- *4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
- ;;
- *5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
- ;;
- esac
- # According to Compaq, /usr/sbin/psrinfo has been available on
- # OSF/1 and Tru64 systems produced since 1995. I hope that
- # covers most systems running today. This code pipes the CPU
- # types through head -n 1, so we only detect the type of CPU 0.
- ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
- case "$ALPHA_CPU_TYPE" in
- "EV4 (21064)")
- UNAME_MACHINE="alpha" ;;
- "EV4.5 (21064)")
- UNAME_MACHINE="alpha" ;;
- "LCA4 (21066/21068)")
- UNAME_MACHINE="alpha" ;;
- "EV5 (21164)")
- UNAME_MACHINE="alphaev5" ;;
- "EV5.6 (21164A)")
- UNAME_MACHINE="alphaev56" ;;
- "EV5.6 (21164PC)")
- UNAME_MACHINE="alphapca56" ;;
- "EV5.7 (21164PC)")
- UNAME_MACHINE="alphapca57" ;;
- "EV6 (21264)")
- UNAME_MACHINE="alphaev6" ;;
- "EV6.7 (21264A)")
- UNAME_MACHINE="alphaev67" ;;
- "EV6.8CB (21264C)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8AL (21264B)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8CX (21264D)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.9A (21264/EV69A)")
- UNAME_MACHINE="alphaev69" ;;
- "EV7 (21364)")
- UNAME_MACHINE="alphaev7" ;;
- "EV7.9 (21364A)")
- UNAME_MACHINE="alphaev79" ;;
- esac
- # A Pn.n version is a patched version.
- # A Vn.n version is a released version.
- # A Tn.n version is a released field test version.
- # A Xn.n version is an unreleased experimental baselevel.
- # 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- exit ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
- exit ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit ;;
- Amiga*:UNIX_System_V:4.0:*)
- echo m68k-unknown-sysv4
- exit ;;
- *:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
- exit ;;
- *:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
- exit ;;
- *:OS/390:*:*)
- echo i370-ibm-openedition
- exit ;;
- *:z/VM:*:*)
- echo s390-ibm-zvmoe
- exit ;;
- *:OS400:*:*)
- echo powerpc-ibm-os400
- exit ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
- exit ;;
- arm:riscos:*:*|arm:RISCOS:*:*)
- echo arm-unknown-riscos
- exit ;;
- SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
- exit ;;
- Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
- # akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
- echo pyramid-pyramid-sysv3
- else
- echo pyramid-pyramid-bsd
- fi
- exit ;;
- NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
- exit ;;
- DRS?6000:unix:4.0:6*)
- echo sparc-icl-nx6
- exit ;;
- DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
- case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7; exit ;;
- esac ;;
- s390x:SunOS:*:*)
- echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
- echo i386-pc-auroraux${UNAME_RELEASE}
- exit ;;
- i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
- eval $set_cc_for_build
- SUN_ARCH="i386"
- # If there is a compiler, see if it is configured for 64-bit objects.
- # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
- # This test works for both compilers.
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- SUN_ARCH="x86_64"
- fi
- fi
- echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:6*:*)
- # According to config.sub, this is the proper way to canonicalize
- # SunOS6. Hard to guess exactly what SunOS6 will be like, but
- # it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
- Series*|S4*)
- UNAME_RELEASE=`uname -v`
- ;;
- esac
- # Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
- exit ;;
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
- exit ;;
- sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
- case "`/bin/arch`" in
- sun3)
- echo m68k-sun-sunos${UNAME_RELEASE}
- ;;
- sun4)
- echo sparc-sun-sunos${UNAME_RELEASE}
- ;;
- esac
- exit ;;
- aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
- exit ;;
- # The situation for MiNT is a little confusing. The machine name
- # can be virtually everything (everything which is not
- # "atarist" or "atariste" at least should have a processor
- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
- # to the lowercase version "mint" (or "freemint"). Finally
- # the system name "TOS" denotes a system which is actually not
- # MiNT. But MiNT is downward compatible to TOS, so this should
- # be no problem.
- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
- exit ;;
- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
- exit ;;
- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
- exit ;;
- m68k:machten:*:*)
- echo m68k-apple-machten${UNAME_RELEASE}
- exit ;;
- powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
- exit ;;
- RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
- exit ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
- exit ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
- exit ;;
- 2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
- exit ;;
- mips:*:*:UMIPS | mips:*:*:RISCos)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h> /* for printf() prototype */
- int main (int argc, char *argv[]) {
-#else
- int main (argc, argv) int argc; char *argv[]; {
-#endif
- #if defined (host_mips) && defined (MIPSEB)
- #if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
- #endif
- #endif
- exit (-1);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c &&
- dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
- SYSTEM_NAME=`$dummy $dummyarg` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo mips-mips-riscos${UNAME_RELEASE}
- exit ;;
- Motorola:PowerMAX_OS:*:*)
- echo powerpc-motorola-powermax
- exit ;;
- Motorola:*:4.3:PL8-*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
- exit ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
- exit ;;
- m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
- exit ;;
- m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
- exit ;;
- AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
- then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
- then
- echo m88k-dg-dgux${UNAME_RELEASE}
- else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
- fi
- else
- echo i586-dg-dgux${UNAME_RELEASE}
- fi
- exit ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
- exit ;;
- M88*:*:R3*:*)
- # Delta 88k system running SVR3
- echo m88k-motorola-sysv3
- exit ;;
- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
- exit ;;
- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
- exit ;;
- *:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit ;;
- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
- i*86:AIX:*:*)
- echo i386-ibm-aix
- exit ;;
- ia64:AIX:*:*)
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
- exit ;;
- *:AIX:2:3)
- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <sys/systemcfg.h>
-
- main()
- {
- if (!__power_pc())
- exit(1);
- puts("powerpc-ibm-aix3.2.5");
- exit(0);
- }
-EOF
- if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
- then
- echo "$SYSTEM_NAME"
- else
- echo rs6000-ibm-aix3.2.5
- fi
- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
- else
- echo rs6000-ibm-aix3.2
- fi
- exit ;;
- *:AIX:*:[456])
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
- IBM_ARCH=rs6000
- else
- IBM_ARCH=powerpc
- fi
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- exit ;;
- *:AIX:*:*)
- echo rs6000-ibm-aix
- exit ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
- echo romp-ibm-bsd4.4
- exit ;;
- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
- exit ;;
- DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
- exit ;;
- 9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
- exit ;;
- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
- exit ;;
- 9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
- 9000/[678][0-9][0-9])
- if [ -x /usr/bin/getconf ]; then
- sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
- 532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
- esac ;;
- esac
- fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-
- #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
-
- int main ()
- {
- #if defined(_SC_KERNEL_BITS)
- long bits = sysconf(_SC_KERNEL_BITS);
- #endif
- long cpu = sysconf (_SC_CPU_VERSION);
-
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
- case CPU_PA_RISC2_0:
- #if defined(_SC_KERNEL_BITS)
- switch (bits)
- {
- case 64: puts ("hppa2.0w"); break;
- case 32: puts ("hppa2.0n"); break;
- default: puts ("hppa2.0"); break;
- } break;
- #else /* !defined(_SC_KERNEL_BITS) */
- puts ("hppa2.0"); break;
- #endif
- default: puts ("hppa1.0"); break;
- }
- exit (0);
- }
-EOF
- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
- test -z "$HP_ARCH" && HP_ARCH=hppa
- fi ;;
- esac
- if [ ${HP_ARCH} = "hppa2.0w" ]
- then
- eval $set_cc_for_build
-
- # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
- # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
- # generating 64-bit code. GNU and HP use different nomenclature:
- #
- # $ CC_FOR_BUILD=cc ./config.guess
- # => hppa2.0w-hp-hpux11.23
- # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
- # => hppa64-hp-hpux11.23
-
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
- grep -q __LP64__
- then
- HP_ARCH="hppa2.0w"
- else
- HP_ARCH="hppa64"
- fi
- fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- exit ;;
- ia64:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux${HPUX_REV}
- exit ;;
- 3050*:HI-UX:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <unistd.h>
- int
- main ()
- {
- long cpu = sysconf (_SC_CPU_VERSION);
- /* The order matters, because CPU_IS_HP_MC68K erroneously returns
- true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
- results, however. */
- if (CPU_IS_PA_RISC (cpu))
- {
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
- default: puts ("hppa-hitachi-hiuxwe2"); break;
- }
- }
- else if (CPU_IS_HP_MC68K (cpu))
- puts ("m68k-hitachi-hiuxwe2");
- else puts ("unknown-hitachi-hiuxwe2");
- exit (0);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo unknown-hitachi-hiuxwe2
- exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
- echo hppa1.1-hp-bsd
- exit ;;
- 9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
- exit ;;
- *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
- exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
- echo hppa1.1-hp-osf
- exit ;;
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
- exit ;;
- i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
- else
- echo ${UNAME_MACHINE}-unknown-osf1
- fi
- exit ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
- exit ;;
- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
- exit ;;
- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
- exit ;;
- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
- exit ;;
- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
- exit ;;
- CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
- -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*SV1:*:*:*)
- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- *:UNICOS/mp:*:*)
- echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- 5000:UNIX_System_V:4.*:*)
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit ;;
- sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:FreeBSD:*:*)
- case ${UNAME_MACHINE} in
- pc98)
- echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- amd64)
- echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- *)
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- esac
- exit ;;
- i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
- exit ;;
- *:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
- exit ;;
- i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
- exit ;;
- i*:PW*:*)
- echo ${UNAME_MACHINE}-pc-pw32
- exit ;;
- *:Interix*:*)
- case ${UNAME_MACHINE} in
- x86)
- echo i586-pc-interix${UNAME_RELEASE}
- exit ;;
- authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix${UNAME_RELEASE}
- exit ;;
- IA64)
- echo ia64-unknown-interix${UNAME_RELEASE}
- exit ;;
- esac ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
- exit ;;
- 8664:Windows_NT:*)
- echo x86_64-pc-mks
- exit ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
- echo i586-pc-interix
- exit ;;
- i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
- exit ;;
- amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-unknown-cygwin
- exit ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
- exit ;;
- prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- *:GNU:*:*)
- # the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit ;;
- *:GNU/*:*:*)
- # other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
- exit ;;
- i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
- exit ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
- EV5) UNAME_MACHINE=alphaev5 ;;
- EV56) UNAME_MACHINE=alphaev56 ;;
- PCA56) UNAME_MACHINE=alphapca56 ;;
- PCA57) UNAME_MACHINE=alphapca56 ;;
- EV6) UNAME_MACHINE=alphaev6 ;;
- EV67) UNAME_MACHINE=alphaev67 ;;
- EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep -q ld.so.1
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- exit ;;
- arm*:Linux:*:*)
- eval $set_cc_for_build
- if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ARM_EABI__
- then
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- else
- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
- fi
- exit ;;
- avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- cris:Linux:*:*)
- echo cris-axis-linux-gnu
- exit ;;
- crisv32:Linux:*:*)
- echo crisv32-axis-linux-gnu
- exit ;;
- frv:Linux:*:*)
- echo frv-unknown-linux-gnu
- exit ;;
- i*86:Linux:*:*)
- LIBC=gnu
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
- exit ;;
- ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- mips:Linux:*:* | mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef ${UNAME_MACHINE}
- #undef ${UNAME_MACHINE}el
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=${UNAME_MACHINE}el
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=${UNAME_MACHINE}
- #else
- CPU=
- #endif
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
- ;;
- or32:Linux:*:*)
- echo or32-unknown-linux-gnu
- exit ;;
- padre:Linux:*:*)
- echo sparc-unknown-linux-gnu
- exit ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
- exit ;;
- parisc:Linux:*:* | hppa:Linux:*:*)
- # Look for CPU level
- case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
- esac
- exit ;;
- ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
- exit ;;
- ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
- exit ;;
- s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
- exit ;;
- sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-gnu
- exit ;;
- x86_64:Linux:*:*)
- echo x86_64-unknown-linux-gnu
- exit ;;
- xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- i*86:DYNIX/ptx:4*:*)
- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
- # earlier versions are messed up and put the nodename in both
- # sysname and nodename.
- echo i386-sequent-sysv4
- exit ;;
- i*86:UNIX_SV:4.2MP:2.*)
- # Unixware is an offshoot of SVR4, but it has its own version
- # number series starting with 2...
- # I am not positive that other SVR4 systems won't match this,
- # I just have to hope. -- rms.
- # Use sysv4.2uw... so that sysv4* matches it.
- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- exit ;;
- i*86:OS/2:*:*)
- # If we were able to find `uname', then EMX Unix compatibility
- # is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
- exit ;;
- i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
- exit ;;
- i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
- exit ;;
- i*86:syllable:*:*)
- echo ${UNAME_MACHINE}-pc-syllable
- exit ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit ;;
- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
- else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
- fi
- exit ;;
- i*86:*:5:[678]*)
- # UnixWare 7.x, OpenUNIX and OpenServer 6.
- case `/bin/uname -X | grep "^Machine"` in
- *486*) UNAME_MACHINE=i486 ;;
- *Pentium) UNAME_MACHINE=i586 ;;
- *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
- esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
- exit ;;
- i*86:*:3.2:*)
- if test -f /usr/options/cb.name; then
- UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
- elif /bin/uname -X 2>/dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
- (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
- (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- && UNAME_MACHINE=i586
- (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
- && UNAME_MACHINE=i686
- (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
- && UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- else
- echo ${UNAME_MACHINE}-pc-sysv32
- fi
- exit ;;
- pc:*:*:*)
- # Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i586.
- # Note: whatever this is, it MUST be the same as what config.sub
- # prints for the "djgpp" host, or else GDB configury will decide that
- # this is a cross-build.
- echo i586-pc-msdosdjgpp
- exit ;;
- Intel:Mach:3*:*)
- echo i386-pc-mach3
- exit ;;
- paragon:*:*:*)
- echo i860-intel-osf1
- exit ;;
- i860:*:4.*:*) # i860-SVR4
- if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
- else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
- fi
- exit ;;
- mini*:CTIX:SYS*5:*)
- # "miniframe"
- echo m68010-convergent-sysv
- exit ;;
- mc68k:UNIX:SYSTEM5:3.51m)
- echo m68k-convergent-sysv
- exit ;;
- M680?0:D-NIX:5.3:*)
- echo m68k-diab-dnix
- exit ;;
- M68*:*:R3V[5678]*:*)
- test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
- 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
- OS_REL=''
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4; exit; } ;;
- NCR*:*:4.2:* | MPRAS*:*:4.2:*)
- OS_REL='.3'
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
- exit ;;
- TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
- exit ;;
- RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- *:SINIX-*:*:*)
- if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo ${UNAME_MACHINE}-sni-sysv4
- else
- echo ns32k-sni-sysv
- fi
- exit ;;
- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says <Richard.M.Bartel at ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit ;;
- *:UNIX_System_V:4*:FTX*)
- # From Gerald Hewes <hewes at openmarket.com>.
- # How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
- exit ;;
- *:*:*:FTX*)
- # From seanf at swdc.stratus.com.
- echo i860-stratus-sysv4
- exit ;;
- i*86:VOS:*:*)
- # From Paul.Green at stratus.com.
- echo ${UNAME_MACHINE}-stratus-vos
- exit ;;
- *:VOS:*:*)
- # From Paul.Green at stratus.com.
- echo hppa1.1-stratus-vos
- exit ;;
- mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
- exit ;;
- news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
- exit ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
- else
- echo mips-unknown-sysv${UNAME_RELEASE}
- fi
- exit ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
- exit ;;
- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
- exit ;;
- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
- exit ;;
- BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
- echo i586-pc-haiku
- exit ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-7:SUPER-UX:*:*)
- echo sx7-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-8:SUPER-UX:*:*)
- echo sx8-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-8R:SUPER-UX:*:*)
- echo sx8r-nec-superux${UNAME_RELEASE}
- exit ;;
- Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
- exit ;;
- *:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
- exit ;;
- *:Darwin:*:*)
- UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- case $UNAME_PROCESSOR in
- i386)
- eval $set_cc_for_build
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- UNAME_PROCESSOR="x86_64"
- fi
- fi ;;
- unknown) UNAME_PROCESSOR=powerpc ;;
- esac
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit ;;
- *:procnto*:*:* | *:QNX:[0123456789]*:*)
- UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
- UNAME_PROCESSOR=i386
- UNAME_MACHINE=pc
- fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit ;;
- *:QNX:*:4*)
- echo i386-pc-qnx
- exit ;;
- NSE-?:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk${UNAME_RELEASE}
- exit ;;
- NSR-?:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk${UNAME_RELEASE}
- exit ;;
- *:NonStop-UX:*:*)
- echo mips-compaq-nonstopux
- exit ;;
- BS2000:POSIX*:*:*)
- echo bs2000-siemens-sysv
- exit ;;
- DS/*:UNIX_System_V:*:*)
- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
- exit ;;
- *:Plan9:*:*)
- # "uname -m" is not consistent, so use $cputype instead. 386
- # is converted to i386 for consistency with other x86
- # operating systems.
- if test "$cputype" = "386"; then
- UNAME_MACHINE=i386
- else
- UNAME_MACHINE="$cputype"
- fi
- echo ${UNAME_MACHINE}-unknown-plan9
- exit ;;
- *:TOPS-10:*:*)
- echo pdp10-unknown-tops10
- exit ;;
- *:TENEX:*:*)
- echo pdp10-unknown-tenex
- exit ;;
- KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
- echo pdp10-dec-tops20
- exit ;;
- XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
- echo pdp10-xkl-tops20
- exit ;;
- *:TOPS-20:*:*)
- echo pdp10-unknown-tops20
- exit ;;
- *:ITS:*:*)
- echo pdp10-unknown-its
- exit ;;
- SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
- exit ;;
- *:DragonFly:*:*)
- echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit ;;
- *:*VMS:*:*)
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- case "${UNAME_MACHINE}" in
- A*) echo alpha-dec-vms ; exit ;;
- I*) echo ia64-dec-vms ; exit ;;
- V*) echo vax-dec-vms ; exit ;;
- esac ;;
- *:XENIX:*:SysV)
- echo i386-pc-xenix
- exit ;;
- i*86:skyos:*:*)
- echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
- exit ;;
- i*86:rdos:*:*)
- echo ${UNAME_MACHINE}-pc-rdos
- exit ;;
- i*86:AROS:*:*)
- echo ${UNAME_MACHINE}-pc-aros
- exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- c34*)
- echo c34-convex-bsd
- exit ;;
- c38*)
- echo c38-convex-bsd
- exit ;;
- c4*)
- echo c4-convex-bsd
- exit ;;
- esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-and
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches at gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo = `(hostinfo) 2>/dev/null`
-/bin/universe = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/config/config.sub b/config/config.sub
deleted file mode 100755
index c2d1257..0000000
--- a/config/config.sub
+++ /dev/null
@@ -1,1714 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-# Free Software Foundation, Inc.
-
-timestamp='2010-01-22'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <config-patches at gnu.org>. Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support. The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
-Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help"
- exit 1 ;;
-
- *local*)
- # First pass through any local machine types.
- echo $1
- exit ;;
-
- * )
- break ;;
- esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
- exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
- exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
- uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
- kopensolaris*-gnu* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
- else os=; fi
- ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work. We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
- -sun*os*)
- # Prevent following clause from handling this invalid input.
- ;;
- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray | -microblaze)
- os=
- basic_machine=$1
- ;;
- -bluegene*)
- os=-cnk
- ;;
- -sim | -cisco | -oki | -wec | -winbond)
- os=
- basic_machine=$1
- ;;
- -scout)
- ;;
- -wrs)
- os=-vxworks
- basic_machine=$1
- ;;
- -chorusos*)
- os=-chorusos
- basic_machine=$1
- ;;
- -chorusrdb)
- os=-chorusrdb
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
- -sco6)
- os=-sco5v6
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco4)
- os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*)
- os=-lynxos
- ;;
- -ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
- ;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
- ;;
- -psos*)
- os=-psos
- ;;
- -mint | -mint[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
- | bfin \
- | c4x | clipper \
- | d10v | d30v | dlx | dsp16xx \
- | fido | fr30 | frv \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | i370 | i860 | i960 | ia64 \
- | ip2k | iq2000 \
- | lm32 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | mcore | mep | metag \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64octeon | mips64octeonel \
- | mips64orion | mips64orionel \
- | mips64r5900 | mips64r5900el \
- | mips64vr | mips64vrel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | moxie \
- | mt \
- | msp430 \
- | nios | nios2 \
- | ns16k | ns32k \
- | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
- | pyramid \
- | rx \
- | score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu | strongarm \
- | tahoe | thumb | tic4x | tic80 | tron \
- | ubicom32 \
- | v850 | v850e \
- | we32k \
- | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
- | z8k | z80)
- basic_machine=$basic_machine-unknown
- ;;
- m6811 | m68hc11 | m6812 | m68hc12 | picochip)
- # Motorola 68HC11/12.
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
- ;;
- ms1)
- basic_machine=mt-unknown
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
- | clipper-* | craynv-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | i*86-* | i860-* | i960-* | ia64-* \
- | ip2k-* | iq2000-* \
- | lm32-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64octeon-* | mips64octeonel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64r5900-* | mips64r5900el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nios-* | nios2-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
- | pyramid-* \
- | romp-* | rs6000-* | rx-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
- | tahoe-* | thumb-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
- | tile-* | tilegx-* \
- | tron-* \
- | ubicom32-* \
- | v850-* | v850e-* | vax-* \
- | we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-* | z80-*)
- ;;
- # Recognize the basic CPU types without company name, with glob match.
- xtensa*)
- basic_machine=$basic_machine-unknown
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
- 386bsd)
- basic_machine=i386-unknown
- os=-bsd
- ;;
- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
- ;;
- 3b*)
- basic_machine=we32k-att
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=-udi
- ;;
- abacus)
- basic_machine=abacus-unknown
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- am29k)
- basic_machine=a29k-none
- os=-bsd
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amd64-*)
- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=-sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=-bsd
- ;;
- aros)
- basic_machine=i386-pc
- os=-aros
- ;;
- aux)
- basic_machine=m68k-apple
- os=-aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
- os=-linux
- ;;
- blackfin-*)
- basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- bluegene*)
- basic_machine=powerpc-ibm
- os=-cnk
- ;;
- c90)
- basic_machine=c90-cray
- os=-unicos
- ;;
- cegcc)
- basic_machine=arm-unknown
- os=-cegcc
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=-bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=-bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=-bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=-bsd
- ;;
- cray | j90)
- basic_machine=j90-cray
- os=-unicos
- ;;
- craynv)
- basic_machine=craynv-cray
- os=-unicosmp
- ;;
- cr16)
- basic_machine=cr16-unknown
- os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- crisv32 | crisv32-* | etraxfs*)
- basic_machine=crisv32-axis
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- crx)
- basic_machine=crx-unknown
- os=-elf
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
- decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=-tops10
- ;;
- decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=-tops20
- ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
- ;;
- delta88)
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
- dicos)
- basic_machine=i686-pc
- os=-dicos
- ;;
- djgpp)
- basic_machine=i586-pc
- os=-msdosdjgpp
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
- ;;
- dpx2* | dpx2*-bull)
- basic_machine=m68k-bull
- os=-sysv3
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=-ebmon
- ;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=-bsd
- ;;
- encore | umax | mmax)
- basic_machine=ns32k-encore
- ;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=-ose
- ;;
- fx2800)
- basic_machine=i860-alliant
- ;;
- genix)
- basic_machine=ns32k-ns
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=-sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=-go32
- ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=-hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=-xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=-hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=-sysv3
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=-bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=-hpux
- ;;
- hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
- ;;
- hp9k3[2-9][0-9])
- basic_machine=m68k-hp
- ;;
- hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
- ;;
- hp9k78[0-9] | hp78[0-9])
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hppa-next)
- os=-nextstep3
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=-osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=-proelf
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- ;;
-# I'm not sure what "Sysv32" means. Should this be sysv3.2?
- i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
- i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
- i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
- i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- i386mach)
- basic_machine=i386-mach
- os=-mach
- ;;
- i386-vsta | vsta)
- basic_machine=i386-unknown
- os=-vsta
- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
- -irix*)
- ;;
- *)
- os=-irix4
- ;;
- esac
- ;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=-sysv
- ;;
- m68knommu)
- basic_machine=m68k-unknown
- os=-linux
- ;;
- m68knommu-*)
- basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- m88k-omron*)
- basic_machine=m88k-omron
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=-sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=-sysv
- ;;
- microblaze)
- basic_machine=microblaze-xilinx
- ;;
- mingw32)
- basic_machine=i386-pc
- os=-mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
- os=-mingw32ce
- ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- ;;
- monitor)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
- ;;
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=-netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=-linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=-newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=-newsos
- ;;
- news-3600 | risc-news)
- basic_machine=mips-sony
- os=-newsos
- ;;
- necv70)
- basic_machine=v70-nec
- os=-sysv
- ;;
- next | m*-next )
- basic_machine=m68k-next
- case $os in
- -nextstep* )
- ;;
- -ns2*)
- os=-nextstep2
- ;;
- *)
- os=-nextstep3
- ;;
- esac
- ;;
- nh3000)
- basic_machine=m68k-harris
- os=-cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=-cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=-nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=-mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=-nonstopux
- ;;
- np1)
- basic_machine=np1-gould
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
- ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
- openrisc | openrisc-*)
- basic_machine=or32-unknown
- ;;
- os400)
- basic_machine=powerpc-ibm
- os=-os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=-os68k
- ;;
- pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- paragon)
- basic_machine=i860-intel
- os=-osf
- ;;
- parisc)
- basic_machine=hppa-unknown
- os=-linux
- ;;
- parisc-*)
- basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- pbd)
- basic_machine=sparc-tti
- ;;
- pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
- ;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
- power) basic_machine=power-ibm
- ;;
- ppc) basic_machine=powerpc-unknown
- ;;
- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
- ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64) basic_machine=powerpc64-unknown
- ;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
- basic_machine=powerpc64le-unknown
- ;;
- ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ps2)
- basic_machine=i386-ibm
- ;;
- pw32)
- basic_machine=i586-unknown
- os=-pw32
- ;;
- rdos)
- basic_machine=i386-pc
- os=-rdos
- ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- rm[46]00)
- basic_machine=mips-siemens
- ;;
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
- s390 | s390-*)
- basic_machine=s390-ibm
- ;;
- s390x | s390x-*)
- basic_machine=s390x-ibm
- ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
- sb1)
- basic_machine=mipsisa64sb1-unknown
- ;;
- sb1el)
- basic_machine=mipsisa64sb1el-unknown
- ;;
- sde)
- basic_machine=mipsisa32-sde
- os=-elf
- ;;
- sei)
- basic_machine=mips-sei
- os=-seiux
- ;;
- sequent)
- basic_machine=i386-sequent
- ;;
- sh)
- basic_machine=sh-hitachi
- os=-hms
- ;;
- sh5el)
- basic_machine=sh5le-unknown
- ;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
- ;;
- sps7)
- basic_machine=m68k-bull
- os=-sysv2
- ;;
- spur)
- basic_machine=spur-unknown
- ;;
- st2000)
- basic_machine=m68k-tandem
- ;;
- stratus)
- basic_machine=i860-stratus
- os=-sysv4
- ;;
- sun2)
- basic_machine=m68000-sun
- ;;
- sun2os3)
- basic_machine=m68000-sun
- os=-sunos3
- ;;
- sun2os4)
- basic_machine=m68000-sun
- os=-sunos4
- ;;
- sun3os3)
- basic_machine=m68k-sun
- os=-sunos3
- ;;
- sun3os4)
- basic_machine=m68k-sun
- os=-sunos4
- ;;
- sun4os3)
- basic_machine=sparc-sun
- os=-sunos3
- ;;
- sun4os4)
- basic_machine=sparc-sun
- os=-sunos4
- ;;
- sun4sol2)
- basic_machine=sparc-sun
- os=-solaris2
- ;;
- sun3 | sun3-*)
- basic_machine=m68k-sun
- ;;
- sun4)
- basic_machine=sparc-sun
- ;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
- sv1)
- basic_machine=sv1-cray
- os=-unicos
- ;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
- ;;
- t3e)
- basic_machine=alphaev5-cray
- os=-unicos
- ;;
- t90)
- basic_machine=t90-cray
- os=-unicos
- ;;
- tic54x | c54x*)
- basic_machine=tic54x-unknown
- os=-coff
- ;;
- tic55x | c55x*)
- basic_machine=tic55x-unknown
- os=-coff
- ;;
- tic6x | c6x*)
- basic_machine=tic6x-unknown
- os=-coff
- ;;
- # This must be matched before tile*.
- tilegx*)
- basic_machine=tilegx-unknown
- os=-linux-gnu
- ;;
- tile*)
- basic_machine=tile-unknown
- os=-linux-gnu
- ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
- toad1)
- basic_machine=pdp10-xkl
- os=-tops20
- ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
- tpf)
- basic_machine=s390x-ibm
- os=-tpf
- ;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
- ;;
- ultra3)
- basic_machine=a29k-nyu
- os=-sym1
- ;;
- v810 | necv810)
- basic_machine=v810-nec
- os=-none
- ;;
- vaxv)
- basic_machine=vax-dec
- os=-sysv
- ;;
- vms)
- basic_machine=vax-dec
- os=-vms
- ;;
- vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
- ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
- ;;
- vxworks68)
- basic_machine=m68k-wrs
- os=-vxworks
- ;;
- vxworks29k)
- basic_machine=a29k-wrs
- os=-vxworks
- ;;
- w65*)
- basic_machine=w65-wdc
- os=-none
- ;;
- w89k-*)
- basic_machine=hppa1.1-winbond
- os=-proelf
- ;;
- xbox)
- basic_machine=i686-pc
- os=-mingw32
- ;;
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
- ymp)
- basic_machine=ymp-cray
- os=-unicos
- ;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
- ;;
- z80-*-coff)
- basic_machine=z80-unknown
- os=-sim
- ;;
- none)
- basic_machine=none-none
- os=-none
- ;;
-
-# Here we handle the default manufacturer of certain CPU types. It is in
-# some cases the only manufacturer, in others, it is the most popular.
- w89k)
- basic_machine=hppa1.1-winbond
- ;;
- op50n)
- basic_machine=hppa1.1-oki
- ;;
- op60c)
- basic_machine=hppa1.1-oki
- ;;
- romp)
- basic_machine=romp-ibm
- ;;
- mmix)
- basic_machine=mmix-knuth
- ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
- pdp10)
- # there are many clones, so DEC is not a safe bet
- basic_machine=pdp10-unknown
- ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
- sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
- basic_machine=sh-unknown
- ;;
- sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
- basic_machine=sparc-sun
- ;;
- cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
- basic_machine=orion-highlevel
- ;;
- orion105)
- basic_machine=clipper-highlevel
- ;;
- mac | mpw | mac-mpw)
- basic_machine=m68k-apple
- ;;
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
- *-unknown)
- # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
- ;;
- *-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
- ;;
- *)
- ;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
- # -solaris* is a basic system type, with this one exception.
- -auroraux)
- os=-auroraux
- ;;
- -solaris1 | -solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
- ;;
- -solaris)
- os=-solaris2
- ;;
- -svr4*)
- os=-sysv4
- ;;
- -unixware*)
- os=-sysv4.2uw
- ;;
- -gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
- # First accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
- # -sysv* is not here because it comes later, after sysvr4.
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
- | -sym* | -kopensolaris* \
- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* | -aros* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -openbsd* | -solidbsd* \
- | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
- | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* | -cegcc* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
- -qnx*)
- case $basic_machine in
- x86-* | i*86-*)
- ;;
- *)
- os=-nto$os
- ;;
- esac
- ;;
- -nto-qnx*)
- ;;
- -nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
- ;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
- ;;
- -linux-dietlibc)
- os=-linux-dietlibc
- ;;
- -linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
- -sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
- ;;
- -sunos6*)
- os=`echo $os | sed -e 's|sunos6|solaris3|'`
- ;;
- -opened*)
- os=-openedition
- ;;
- -os400*)
- os=-os400
- ;;
- -wince*)
- os=-wince
- ;;
- -osfrose*)
- os=-osfrose
- ;;
- -osf*)
- os=-osf
- ;;
- -utek*)
- os=-bsd
- ;;
- -dynix*)
- os=-bsd
- ;;
- -acis*)
- os=-aos
- ;;
- -atheos*)
- os=-atheos
- ;;
- -syllable*)
- os=-syllable
- ;;
- -386bsd)
- os=-bsd
- ;;
- -ctix* | -uts*)
- os=-sysv
- ;;
- -nova*)
- os=-rtmk-nova
- ;;
- -ns2 )
- os=-nextstep2
- ;;
- -nsk*)
- os=-nsk
- ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
- ;;
- -sinix*)
- os=-sysv4
- ;;
- -tpf*)
- os=-tpf
- ;;
- -triton*)
- os=-sysv3
- ;;
- -oss*)
- os=-sysv3
- ;;
- -svr4)
- os=-sysv4
- ;;
- -svr3)
- os=-sysv3
- ;;
- -sysvr4)
- os=-sysv4
- ;;
- # This must come after -sysvr4.
- -sysv*)
- ;;
- -ose*)
- os=-ose
- ;;
- -es1800*)
- os=-ose
- ;;
- -xenix)
- os=-xenix
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- os=-mint
- ;;
- -aros*)
- os=-aros
- ;;
- -kaos*)
- os=-kaos
- ;;
- -zvmoe)
- os=-zvmoe
- ;;
- -dicos*)
- os=-dicos
- ;;
- -nacl*)
- ;;
- -none)
- ;;
- *)
- # Get rid of the `-' at the beginning of $os.
- os=`echo $os | sed 's/[^-]*-//'`
- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
- exit 1
- ;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system. Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
- score-*)
- os=-elf
- ;;
- spu-*)
- os=-elf
- ;;
- *-acorn)
- os=-riscix1.2
- ;;
- arm*-rebel)
- os=-linux
- ;;
- arm*-semi)
- os=-aout
- ;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
- # This must come before the *-dec entry.
- pdp10-*)
- os=-tops20
- ;;
- pdp11-*)
- os=-none
- ;;
- *-dec | vax-*)
- os=-ultrix4.2
- ;;
- m68*-apollo)
- os=-domain
- ;;
- i386-sun)
- os=-sunos4.0.2
- ;;
- m68000-sun)
- os=-sunos3
- # This also exists in the configure program, but was not the
- # default.
- # os=-sunos4
- ;;
- m68*-cisco)
- os=-aout
- ;;
- mep-*)
- os=-elf
- ;;
- mips*-cisco)
- os=-elf
- ;;
- mips*-*)
- os=-elf
- ;;
- or32-*)
- os=-coff
- ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
- ;;
- sparc-* | *-sun)
- os=-sunos4.1.1
- ;;
- *-be)
- os=-beos
- ;;
- *-haiku)
- os=-haiku
- ;;
- *-ibm)
- os=-aix
- ;;
- *-knuth)
- os=-mmixware
- ;;
- *-wec)
- os=-proelf
- ;;
- *-winbond)
- os=-proelf
- ;;
- *-oki)
- os=-proelf
- ;;
- *-hp)
- os=-hpux
- ;;
- *-hitachi)
- os=-hiux
- ;;
- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=-sysv
- ;;
- *-cbm)
- os=-amigaos
- ;;
- *-dg)
- os=-dgux
- ;;
- *-dolphin)
- os=-sysv3
- ;;
- m68k-ccur)
- os=-rtu
- ;;
- m88k-omron*)
- os=-luna
- ;;
- *-next )
- os=-nextstep
- ;;
- *-sequent)
- os=-ptx
- ;;
- *-crds)
- os=-unos
- ;;
- *-ns)
- os=-genix
- ;;
- i370-*)
- os=-mvs
- ;;
- *-next)
- os=-nextstep3
- ;;
- *-gould)
- os=-sysv
- ;;
- *-highlevel)
- os=-bsd
- ;;
- *-encore)
- os=-bsd
- ;;
- *-sgi)
- os=-irix
- ;;
- *-siemens)
- os=-sysv4
- ;;
- *-masscomp)
- os=-rtu
- ;;
- f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
- ;;
- *-rom68k)
- os=-coff
- ;;
- *-*bug)
- os=-coff
- ;;
- *-apple)
- os=-macos
- ;;
- *-atari*)
- os=-mint
- ;;
- *)
- os=-none
- ;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
- case $os in
- -riscix*)
- vendor=acorn
- ;;
- -sunos*)
- vendor=sun
- ;;
- -cnk*|-aix*)
- vendor=ibm
- ;;
- -beos*)
- vendor=be
- ;;
- -hpux*)
- vendor=hp
- ;;
- -mpeix*)
- vendor=hp
- ;;
- -hiux*)
- vendor=hitachi
- ;;
- -unos*)
- vendor=crds
- ;;
- -dgux*)
- vendor=dg
- ;;
- -luna*)
- vendor=omron
- ;;
- -genix*)
- vendor=ns
- ;;
- -mvs* | -opened*)
- vendor=ibm
- ;;
- -os400*)
- vendor=ibm
- ;;
- -ptx*)
- vendor=sequent
- ;;
- -tpf*)
- vendor=ibm
- ;;
- -vxsim* | -vxworks* | -windiss*)
- vendor=wrs
- ;;
- -aux*)
- vendor=apple
- ;;
- -hms*)
- vendor=hitachi
- ;;
- -mpw* | -macos*)
- vendor=apple
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- vendor=atari
- ;;
- -vos*)
- vendor=stratus
- ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/config/depcomp b/config/depcomp
deleted file mode 100755
index df8eea7..0000000
--- a/config/depcomp
+++ /dev/null
@@ -1,630 +0,0 @@
-#! /bin/sh
-# depcomp - compile a program generating dependencies as side-effects
-
-scriptversion=2009-04-28.21; # UTC
-
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
-# Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Alexandre Oliva <oliva at dcc.unicamp.br>.
-
-case $1 in
- '')
- echo "$0: No command. Try \`$0 --help' for more information." 1>&2
- exit 1;
- ;;
- -h | --h*)
- cat <<\EOF
-Usage: depcomp [--help] [--version] PROGRAM [ARGS]
-
-Run PROGRAMS ARGS to compile a file, generating dependencies
-as side-effects.
-
-Environment variables:
- depmode Dependency tracking mode.
- source Source file read by `PROGRAMS ARGS'.
- object Object file output by `PROGRAMS ARGS'.
- DEPDIR directory where to store dependencies.
- depfile Dependency file to output.
- tmpdepfile Temporary file to use when outputing dependencies.
- libtool Whether libtool is used (yes/no).
-
-Report bugs to <bug-automake at gnu.org>.
-EOF
- exit $?
- ;;
- -v | --v*)
- echo "depcomp $scriptversion"
- exit $?
- ;;
-esac
-
-if test -z "$depmode" || test -z "$source" || test -z "$object"; then
- echo "depcomp: Variables source, object and depmode must be set" 1>&2
- exit 1
-fi
-
-# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
-depfile=${depfile-`echo "$object" |
- sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
-tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
-
-rm -f "$tmpdepfile"
-
-# Some modes work just like other modes, but use different flags. We
-# parameterize here, but still list the modes in the big case below,
-# to make depend.m4 easier to write. Note that we *cannot* use a case
-# here, because this file can only contain one case statement.
-if test "$depmode" = hp; then
- # HP compiler uses -M and no extra arg.
- gccflag=-M
- depmode=gcc
-fi
-
-if test "$depmode" = dashXmstdout; then
- # This is just like dashmstdout with a different argument.
- dashmflag=-xM
- depmode=dashmstdout
-fi
-
-cygpath_u="cygpath -u -f -"
-if test "$depmode" = msvcmsys; then
- # This is just like msvisualcpp but w/o cygpath translation.
- # Just convert the backslash-escaped backslashes to single forward
- # slashes to satisfy depend.m4
- cygpath_u="sed s,\\\\\\\\,/,g"
- depmode=msvisualcpp
-fi
-
-case "$depmode" in
-gcc3)
-## gcc 3 implements dependency tracking that does exactly what
-## we want. Yay! Note: for some reason libtool 1.4 doesn't like
-## it if -MD -MP comes after the -MF stuff. Hmm.
-## Unfortunately, FreeBSD c89 acceptance of flags depends upon
-## the command line argument order; so add the flags where they
-## appear in depend2.am. Note that the slowdown incurred here
-## affects only configure: in makefiles, %FASTDEP% shortcuts this.
- for arg
- do
- case $arg in
- -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
- *) set fnord "$@" "$arg" ;;
- esac
- shift # fnord
- shift # $arg
- done
- "$@"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- mv "$tmpdepfile" "$depfile"
- ;;
-
-gcc)
-## There are various ways to get dependency output from gcc. Here's
-## why we pick this rather obscure method:
-## - Don't want to use -MD because we'd like the dependencies to end
-## up in a subdir. Having to rename by hand is ugly.
-## (We might end up doing this anyway to support other compilers.)
-## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-## -MM, not -M (despite what the docs say).
-## - Using -M directly means running the compiler twice (even worse
-## than renaming).
- if test -z "$gccflag"; then
- gccflag=-MD,
- fi
- "$@" -Wp,"$gccflag$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
- sed -e 's/^[^:]*: / /' \
- -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
-## The problem is that when a header file which appears in a .P file
-## is deleted, the dependency causes make to die (because there is
-## typically no way to rebuild the header). We avoid this by adding
-## dummy dependencies for each header file. Too bad gcc doesn't do
-## this for us directly.
- tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'. On the theory
-## that the space means something, we add a space to the output as
-## well.
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-hp)
- # This case exists only to let depend.m4 do its work. It works by
- # looking at the text of this script. This case will never be run,
- # since it is checked for above.
- exit 1
- ;;
-
-sgi)
- if test "$libtool" = yes; then
- "$@" "-Wp,-MDupdate,$tmpdepfile"
- else
- "$@" -MDupdate "$tmpdepfile"
- fi
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
-
- if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
- echo "$object : \\" > "$depfile"
-
- # Clip off the initial element (the dependent). Don't try to be
- # clever and replace this with sed code, as IRIX sed won't handle
- # lines with more than a fixed number of characters (4096 in
- # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
- # the IRIX cc adds comments like `#:fec' to the end of the
- # dependency line.
- tr ' ' '
-' < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
- tr '
-' ' ' >> "$depfile"
- echo >> "$depfile"
-
- # The second pass generates a dummy entry for each header file.
- tr ' ' '
-' < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
- >> "$depfile"
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-aix)
- # The C for AIX Compiler uses -M and outputs the dependencies
- # in a .u file. In older versions, this file always lives in the
- # current directory. Also, the AIX compiler puts `$object:' at the
- # start of each line; $object doesn't have directory information.
- # Version 6 uses the directory in both cases.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
- if test "$libtool" = yes; then
- tmpdepfile1=$dir$base.u
- tmpdepfile2=$base.u
- tmpdepfile3=$dir.libs/$base.u
- "$@" -Wc,-M
- else
- tmpdepfile1=$dir$base.u
- tmpdepfile2=$dir$base.u
- tmpdepfile3=$dir$base.u
- "$@" -M
- fi
- stat=$?
-
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
- exit $stat
- fi
-
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
- do
- test -f "$tmpdepfile" && break
- done
- if test -f "$tmpdepfile"; then
- # Each line is of the form `foo.o: dependent.h'.
- # Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-icc)
- # Intel's C compiler understands `-MD -MF file'. However on
- # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
- # ICC 7.0 will fill foo.d with something like
- # foo.o: sub/foo.c
- # foo.o: sub/foo.h
- # which is wrong. We want:
- # sub/foo.o: sub/foo.c
- # sub/foo.o: sub/foo.h
- # sub/foo.c:
- # sub/foo.h:
- # ICC 7.1 will output
- # foo.o: sub/foo.c sub/foo.h
- # and will wrap long lines using \ :
- # foo.o: sub/foo.c ... \
- # sub/foo.h ... \
- # ...
-
- "$@" -MD -MF "$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
- # Each line is of the form `foo.o: dependent.h',
- # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
- # Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
- # Some versions of the HPUX 10.20 sed can't process this invocation
- # correctly. Breaking it into two sed invocations is a workaround.
- sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
- sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-hp2)
- # The "hp" stanza above does not work with aCC (C++) and HP's ia64
- # compilers, which have integrated preprocessors. The correct option
- # to use with these is +Maked; it writes dependencies to a file named
- # 'foo.d', which lands next to the object file, wherever that
- # happens to be.
- # Much of this is similar to the tru64 case; see comments there.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
- if test "$libtool" = yes; then
- tmpdepfile1=$dir$base.d
- tmpdepfile2=$dir.libs/$base.d
- "$@" -Wc,+Maked
- else
- tmpdepfile1=$dir$base.d
- tmpdepfile2=$dir$base.d
- "$@" +Maked
- fi
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2"
- exit $stat
- fi
-
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
- do
- test -f "$tmpdepfile" && break
- done
- if test -f "$tmpdepfile"; then
- sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
- # Add `dependent.h:' lines.
- sed -ne '2,${
- s/^ *//
- s/ \\*$//
- s/$/:/
- p
- }' "$tmpdepfile" >> "$depfile"
- else
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile" "$tmpdepfile2"
- ;;
-
-tru64)
- # The Tru64 compiler uses -MD to generate dependencies as a side
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
- # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
- # dependencies in `foo.d' instead, so we check for that too.
- # Subdirectories are respected.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
- if test "$libtool" = yes; then
- # With Tru64 cc, shared objects can also be used to make a
- # static library. This mechanism is used in libtool 1.4 series to
- # handle both shared and static libraries in a single compilation.
- # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
- #
- # With libtool 1.5 this exception was removed, and libtool now
- # generates 2 separate objects for the 2 libraries. These two
- # compilations output dependencies in $dir.libs/$base.o.d and
- # in $dir$base.o.d. We have to check for both files, because
- # one of the two compilations can be disabled. We should prefer
- # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
- # automatically cleaned when .libs/ is deleted, while ignoring
- # the former would cause a distcleancheck panic.
- tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
- tmpdepfile2=$dir$base.o.d # libtool 1.5
- tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
- tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
- "$@" -Wc,-MD
- else
- tmpdepfile1=$dir$base.o.d
- tmpdepfile2=$dir$base.d
- tmpdepfile3=$dir$base.d
- tmpdepfile4=$dir$base.d
- "$@" -MD
- fi
-
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
- exit $stat
- fi
-
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
- do
- test -f "$tmpdepfile" && break
- done
- if test -f "$tmpdepfile"; then
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
- else
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-#nosideeffect)
- # This comment above is used by automake to tell side-effect
- # dependency tracking mechanisms from slower ones.
-
-dashmstdout)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test "X$1" != 'X--mode=compile'; do
- shift
- done
- shift
- fi
-
- # Remove `-o $object'.
- IFS=" "
- for arg
- do
- case $arg in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift # fnord
- shift # $arg
- ;;
- esac
- done
-
- test -z "$dashmflag" && dashmflag=-M
- # Require at least two characters before searching for `:'
- # in the target name. This is to cope with DOS-style filenames:
- # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
- "$@" $dashmflag |
- sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
- rm -f "$depfile"
- cat < "$tmpdepfile" > "$depfile"
- tr ' ' '
-' < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-dashXmstdout)
- # This case only exists to satisfy depend.m4. It is never actually
- # run, as this mode is specially recognized in the preamble.
- exit 1
- ;;
-
-makedepend)
- "$@" || exit $?
- # Remove any Libtool call
- if test "$libtool" = yes; then
- while test "X$1" != 'X--mode=compile'; do
- shift
- done
- shift
- fi
- # X makedepend
- shift
- cleared=no eat=no
- for arg
- do
- case $cleared in
- no)
- set ""; shift
- cleared=yes ;;
- esac
- if test $eat = yes; then
- eat=no
- continue
- fi
- case "$arg" in
- -D*|-I*)
- set fnord "$@" "$arg"; shift ;;
- # Strip any option that makedepend may not understand. Remove
- # the object too, otherwise makedepend will parse it as a source file.
- -arch)
- eat=yes ;;
- -*|$object)
- ;;
- *)
- set fnord "$@" "$arg"; shift ;;
- esac
- done
- obj_suffix=`echo "$object" | sed 's/^.*\././'`
- touch "$tmpdepfile"
- ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
- rm -f "$depfile"
- cat < "$tmpdepfile" > "$depfile"
- sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile" "$tmpdepfile".bak
- ;;
-
-cpp)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test "X$1" != 'X--mode=compile'; do
- shift
- done
- shift
- fi
-
- # Remove `-o $object'.
- IFS=" "
- for arg
- do
- case $arg in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift # fnord
- shift # $arg
- ;;
- esac
- done
-
- "$@" -E |
- sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
- -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
- sed '$ s: \\$::' > "$tmpdepfile"
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- cat < "$tmpdepfile" >> "$depfile"
- sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-msvisualcpp)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test "X$1" != 'X--mode=compile'; do
- shift
- done
- shift
- fi
-
- IFS=" "
- for arg
- do
- case "$arg" in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
- set fnord "$@"
- shift
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift
- shift
- ;;
- esac
- done
- "$@" -E 2>/dev/null |
- sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
- echo " " >> "$depfile"
- sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-msvcmsys)
- # This case exists only to let depend.m4 do its work. It works by
- # looking at the text of this script. This case will never be run,
- # since it is checked for above.
- exit 1
- ;;
-
-none)
- exec "$@"
- ;;
-
-*)
- echo "Unknown depmode $depmode" 1>&2
- exit 1
- ;;
-esac
-
-exit 0
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/config/install-sh b/config/install-sh
deleted file mode 100755
index 6781b98..0000000
--- a/config/install-sh
+++ /dev/null
@@ -1,520 +0,0 @@
-#!/bin/sh
-# install - install a program, script, or datafile
-
-scriptversion=2009-04-28.21; # UTC
-
-# This originates from X11R5 (mit/util/scripts/install.sh), which was
-# later released in X11R6 (xc/config/util/install.sh) with the
-# following copyright and license.
-#
-# Copyright (C) 1994 X Consortium
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Except as contained in this notice, the name of the X Consortium shall not
-# be used in advertising or otherwise to promote the sale, use or other deal-
-# ings in this Software without prior written authorization from the X Consor-
-# tium.
-#
-#
-# FSF changes to this file are in the public domain.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-
-nl='
-'
-IFS=" "" $nl"
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit=${DOITPROG-}
-if test -z "$doit"; then
- doit_exec=exec
-else
- doit_exec=$doit
-fi
-
-# Put in absolute file names if you don't have them in your path;
-# or use environment vars.
-
-chgrpprog=${CHGRPPROG-chgrp}
-chmodprog=${CHMODPROG-chmod}
-chownprog=${CHOWNPROG-chown}
-cmpprog=${CMPPROG-cmp}
-cpprog=${CPPROG-cp}
-mkdirprog=${MKDIRPROG-mkdir}
-mvprog=${MVPROG-mv}
-rmprog=${RMPROG-rm}
-stripprog=${STRIPPROG-strip}
-
-posix_glob='?'
-initialize_posix_glob='
- test "$posix_glob" != "?" || {
- if (set -f) 2>/dev/null; then
- posix_glob=
- else
- posix_glob=:
- fi
- }
-'
-
-posix_mkdir=
-
-# Desired mode of installed file.
-mode=0755
-
-chgrpcmd=
-chmodcmd=$chmodprog
-chowncmd=
-mvcmd=$mvprog
-rmcmd="$rmprog -f"
-stripcmd=
-
-src=
-dst=
-dir_arg=
-dst_arg=
-
-copy_on_change=false
-no_target_directory=
-
-usage="\
-Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
- or: $0 [OPTION]... SRCFILES... DIRECTORY
- or: $0 [OPTION]... -t DIRECTORY SRCFILES...
- or: $0 [OPTION]... -d DIRECTORIES...
-
-In the 1st form, copy SRCFILE to DSTFILE.
-In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
-In the 4th, create DIRECTORIES.
-
-Options:
- --help display this help and exit.
- --version display version info and exit.
-
- -c (ignored)
- -C install only if different (preserve the last data modification time)
- -d create directories instead of installing files.
- -g GROUP $chgrpprog installed files to GROUP.
- -m MODE $chmodprog installed files to MODE.
- -o USER $chownprog installed files to USER.
- -s $stripprog installed files.
- -t DIRECTORY install into DIRECTORY.
- -T report an error if DSTFILE is a directory.
-
-Environment variables override the default commands:
- CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
- RMPROG STRIPPROG
-"
-
-while test $# -ne 0; do
- case $1 in
- -c) ;;
-
- -C) copy_on_change=true;;
-
- -d) dir_arg=true;;
-
- -g) chgrpcmd="$chgrpprog $2"
- shift;;
-
- --help) echo "$usage"; exit $?;;
-
- -m) mode=$2
- case $mode in
- *' '* | *' '* | *'
-'* | *'*'* | *'?'* | *'['*)
- echo "$0: invalid mode: $mode" >&2
- exit 1;;
- esac
- shift;;
-
- -o) chowncmd="$chownprog $2"
- shift;;
-
- -s) stripcmd=$stripprog;;
-
- -t) dst_arg=$2
- shift;;
-
- -T) no_target_directory=true;;
-
- --version) echo "$0 $scriptversion"; exit $?;;
-
- --) shift
- break;;
-
- -*) echo "$0: invalid option: $1" >&2
- exit 1;;
-
- *) break;;
- esac
- shift
-done
-
-if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
- # When -d is used, all remaining arguments are directories to create.
- # When -t is used, the destination is already specified.
- # Otherwise, the last argument is the destination. Remove it from $@.
- for arg
- do
- if test -n "$dst_arg"; then
- # $@ is not empty: it contains at least $arg.
- set fnord "$@" "$dst_arg"
- shift # fnord
- fi
- shift # arg
- dst_arg=$arg
- done
-fi
-
-if test $# -eq 0; then
- if test -z "$dir_arg"; then
- echo "$0: no input file specified." >&2
- exit 1
- fi
- # It's OK to call `install-sh -d' without argument.
- # This can happen when creating conditional directories.
- exit 0
-fi
-
-if test -z "$dir_arg"; then
- trap '(exit $?); exit' 1 2 13 15
-
- # Set umask so as not to create temps with too-generous modes.
- # However, 'strip' requires both read and write access to temps.
- case $mode in
- # Optimize common cases.
- *644) cp_umask=133;;
- *755) cp_umask=22;;
-
- *[0-7])
- if test -z "$stripcmd"; then
- u_plus_rw=
- else
- u_plus_rw='% 200'
- fi
- cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
- *)
- if test -z "$stripcmd"; then
- u_plus_rw=
- else
- u_plus_rw=,u+rw
- fi
- cp_umask=$mode$u_plus_rw;;
- esac
-fi
-
-for src
-do
- # Protect names starting with `-'.
- case $src in
- -*) src=./$src;;
- esac
-
- if test -n "$dir_arg"; then
- dst=$src
- dstdir=$dst
- test -d "$dstdir"
- dstdir_status=$?
- else
-
- # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
- # might cause directories to be created, which would be especially bad
- # if $src (and thus $dsttmp) contains '*'.
- if test ! -f "$src" && test ! -d "$src"; then
- echo "$0: $src does not exist." >&2
- exit 1
- fi
-
- if test -z "$dst_arg"; then
- echo "$0: no destination specified." >&2
- exit 1
- fi
-
- dst=$dst_arg
- # Protect names starting with `-'.
- case $dst in
- -*) dst=./$dst;;
- esac
-
- # If destination is a directory, append the input filename; won't work
- # if double slashes aren't ignored.
- if test -d "$dst"; then
- if test -n "$no_target_directory"; then
- echo "$0: $dst_arg: Is a directory" >&2
- exit 1
- fi
- dstdir=$dst
- dst=$dstdir/`basename "$src"`
- dstdir_status=0
- else
- # Prefer dirname, but fall back on a substitute if dirname fails.
- dstdir=`
- (dirname "$dst") 2>/dev/null ||
- expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$dst" : 'X\(//\)[^/]' \| \
- X"$dst" : 'X\(//\)$' \| \
- X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
- echo X"$dst" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'
- `
-
- test -d "$dstdir"
- dstdir_status=$?
- fi
- fi
-
- obsolete_mkdir_used=false
-
- if test $dstdir_status != 0; then
- case $posix_mkdir in
- '')
- # Create intermediate dirs using mode 755 as modified by the umask.
- # This is like FreeBSD 'install' as of 1997-10-28.
- umask=`umask`
- case $stripcmd.$umask in
- # Optimize common cases.
- *[2367][2367]) mkdir_umask=$umask;;
- .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
- *[0-7])
- mkdir_umask=`expr $umask + 22 \
- - $umask % 100 % 40 + $umask % 20 \
- - $umask % 10 % 4 + $umask % 2
- `;;
- *) mkdir_umask=$umask,go-w;;
- esac
-
- # With -d, create the new directory with the user-specified mode.
- # Otherwise, rely on $mkdir_umask.
- if test -n "$dir_arg"; then
- mkdir_mode=-m$mode
- else
- mkdir_mode=
- fi
-
- posix_mkdir=false
- case $umask in
- *[123567][0-7][0-7])
- # POSIX mkdir -p sets u+wx bits regardless of umask, which
- # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
- ;;
- *)
- tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
- if (umask $mkdir_umask &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
- then
- if test -z "$dir_arg" || {
- # Check for POSIX incompatibilities with -m.
- # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writeable bit of parent directory when it shouldn't.
- # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
- ls_ld_tmpdir=`ls -ld "$tmpdir"`
- case $ls_ld_tmpdir in
- d????-?r-*) different_mode=700;;
- d????-?--*) different_mode=755;;
- *) false;;
- esac &&
- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
- test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
- }
- }
- then posix_mkdir=:
- fi
- rmdir "$tmpdir/d" "$tmpdir"
- else
- # Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
- fi
- trap '' 0;;
- esac;;
- esac
-
- if
- $posix_mkdir && (
- umask $mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
- )
- then :
- else
-
- # The umask is ridiculous, or mkdir does not conform to POSIX,
- # or it failed possibly due to a race condition. Create the
- # directory the slow way, step by step, checking for races as we go.
-
- case $dstdir in
- /*) prefix='/';;
- -*) prefix='./';;
- *) prefix='';;
- esac
-
- eval "$initialize_posix_glob"
-
- oIFS=$IFS
- IFS=/
- $posix_glob set -f
- set fnord $dstdir
- shift
- $posix_glob set +f
- IFS=$oIFS
-
- prefixes=
-
- for d
- do
- test -z "$d" && continue
-
- prefix=$prefix$d
- if test -d "$prefix"; then
- prefixes=
- else
- if $posix_mkdir; then
- (umask=$mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
- # Don't fail if two instances are running concurrently.
- test -d "$prefix" || exit 1
- else
- case $prefix in
- *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
- *) qprefix=$prefix;;
- esac
- prefixes="$prefixes '$qprefix'"
- fi
- fi
- prefix=$prefix/
- done
-
- if test -n "$prefixes"; then
- # Don't fail if two instances are running concurrently.
- (umask $mkdir_umask &&
- eval "\$doit_exec \$mkdirprog $prefixes") ||
- test -d "$dstdir" || exit 1
- obsolete_mkdir_used=true
- fi
- fi
- fi
-
- if test -n "$dir_arg"; then
- { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
- { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
- { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
- test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
- else
-
- # Make a couple of temp file names in the proper directory.
- dsttmp=$dstdir/_inst.$$_
- rmtmp=$dstdir/_rm.$$_
-
- # Trap to clean up those temp files at exit.
- trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-
- # Copy the file name to the temp name.
- (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
-
- # and set any options; do chmod last to preserve setuid bits.
- #
- # If any of these fail, we abort the whole thing. If we want to
- # ignore errors from any of these, just make sure not to ignore
- # errors from the above "$doit $cpprog $src $dsttmp" command.
- #
- { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
- { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
- { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
- { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
- # If -C, don't bother to copy if it wouldn't change the file.
- if $copy_on_change &&
- old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
- new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
-
- eval "$initialize_posix_glob" &&
- $posix_glob set -f &&
- set X $old && old=:$2:$4:$5:$6 &&
- set X $new && new=:$2:$4:$5:$6 &&
- $posix_glob set +f &&
-
- test "$old" = "$new" &&
- $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
- then
- rm -f "$dsttmp"
- else
- # Rename the file to the real destination.
- $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
-
- # The rename failed, perhaps because mv can't rename something else
- # to itself, or perhaps because mv is so ancient that it does not
- # support -f.
- {
- # Now remove or move aside any old file at destination location.
- # We try this two ways since rm can't unlink itself on some
- # systems and the destination file might be busy for other
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
- test ! -f "$dst" ||
- $doit $rmcmd -f "$dst" 2>/dev/null ||
- { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
- { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
- } ||
- { echo "$0: cannot unlink or rename $dst" >&2
- (exit 1); exit 1
- }
- } &&
-
- # Now rename the file to the real destination.
- $doit $mvcmd "$dsttmp" "$dst"
- }
- fi || exit 1
-
- trap '' 0
- fi
-done
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/config/libtool.m4 b/config/libtool.m4
deleted file mode 100644
index a3fee53..0000000
--- a/config/libtool.m4
+++ /dev/null
@@ -1,7377 +0,0 @@
-# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
-#
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gordon Matzigkeit, 1996
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-m4_define([_LT_COPYING], [dnl
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gordon Matzigkeit, 1996
-#
-# This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
-#
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING. If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-])
-
-# serial 56 LT_INIT
-
-
-# LT_PREREQ(VERSION)
-# ------------------
-# Complain and exit if this libtool version is less that VERSION.
-m4_defun([LT_PREREQ],
-[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
- [m4_default([$3],
- [m4_fatal([Libtool version $1 or higher is required],
- 63)])],
- [$2])])
-
-
-# _LT_CHECK_BUILDDIR
-# ------------------
-# Complain if the absolute build directory name contains unusual characters
-m4_defun([_LT_CHECK_BUILDDIR],
-[case `pwd` in
- *\ * | *\ *)
- AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
-esac
-])
-
-
-# LT_INIT([OPTIONS])
-# ------------------
-AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
-AC_BEFORE([$0], [LT_LANG])dnl
-AC_BEFORE([$0], [LT_OUTPUT])dnl
-AC_BEFORE([$0], [LTDL_INIT])dnl
-m4_require([_LT_CHECK_BUILDDIR])dnl
-
-dnl Autoconf doesn't catch unexpanded LT_ macros by default:
-m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
-m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
-dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
-dnl unless we require an AC_DEFUNed macro:
-AC_REQUIRE([LTOPTIONS_VERSION])dnl
-AC_REQUIRE([LTSUGAR_VERSION])dnl
-AC_REQUIRE([LTVERSION_VERSION])dnl
-AC_REQUIRE([LTOBSOLETE_VERSION])dnl
-m4_require([_LT_PROG_LTMAIN])dnl
-
-dnl Parse OPTIONS
-_LT_SET_OPTIONS([$0], [$1])
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-AC_SUBST(LIBTOOL)dnl
-
-_LT_SETUP
-
-# Only expand once:
-m4_define([LT_INIT])
-])# LT_INIT
-
-# Old names:
-AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
-AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
-dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
-
-
-# _LT_CC_BASENAME(CC)
-# -------------------
-# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
-m4_defun([_LT_CC_BASENAME],
-[for cc_temp in $1""; do
- case $cc_temp in
- compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
- distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
- \-*) ;;
- *) break;;
- esac
-done
-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
-])
-
-
-# _LT_FILEUTILS_DEFAULTS
-# ----------------------
-# It is okay to use these file commands and assume they have been set
-# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
-m4_defun([_LT_FILEUTILS_DEFAULTS],
-[: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-])# _LT_FILEUTILS_DEFAULTS
-
-
-# _LT_SETUP
-# ---------
-m4_defun([_LT_SETUP],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-_LT_DECL([], [host_alias], [0], [The host system])dnl
-_LT_DECL([], [host], [0])dnl
-_LT_DECL([], [host_os], [0])dnl
-dnl
-_LT_DECL([], [build_alias], [0], [The build system])dnl
-_LT_DECL([], [build], [0])dnl
-_LT_DECL([], [build_os], [0])dnl
-dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-dnl
-AC_REQUIRE([AC_PROG_LN_S])dnl
-test -z "$LN_S" && LN_S="ln -s"
-_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
-dnl
-AC_REQUIRE([LT_CMD_MAX_LEN])dnl
-_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
-_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
-dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_CHECK_SHELL_FEATURES])dnl
-m4_require([_LT_CMD_RELOAD])dnl
-m4_require([_LT_CHECK_MAGIC_METHOD])dnl
-m4_require([_LT_CMD_OLD_ARCHIVE])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-
-_LT_CONFIG_LIBTOOL_INIT([
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-])
-if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-
-_LT_CHECK_OBJDIR
-
-m4_require([_LT_TAG_COMPILER])dnl
-_LT_PROG_ECHO_BACKSLASH
-
-case $host_os in
-aix3*)
- # AIX sometimes has problems with the GCC collect2 program. For some
- # reason, if we set the COLLECT_NAMES environment variable, the problems
- # vanish in a puff of smoke.
- if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
- fi
- ;;
-esac
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\([["`\\]]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-_LT_CC_BASENAME([$compiler])
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
- if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- _LT_PATH_MAGIC
- fi
- ;;
-esac
-
-# Use C for the default configuration in the libtool script
-LT_SUPPORTED_TAG([CC])
-_LT_LANG_C_CONFIG
-_LT_LANG_DEFAULT_CONFIG
-_LT_CONFIG_COMMANDS
-])# _LT_SETUP
-
-
-# _LT_PROG_LTMAIN
-# ---------------
-# Note that this code is called both from `configure', and `config.status'
-# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
-# `config.status' has no value for ac_aux_dir unless we are using Automake,
-# so we pass a copy along to make sure it has a sensible value anyway.
-m4_defun([_LT_PROG_LTMAIN],
-[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
-_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
-ltmain="$ac_aux_dir/ltmain.sh"
-])# _LT_PROG_LTMAIN
-
-
-## ------------------------------------- ##
-## Accumulate code for creating libtool. ##
-## ------------------------------------- ##
-
-# So that we can recreate a full libtool script including additional
-# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
-# in macros and then make a single call at the end using the `libtool'
-# label.
-
-
-# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
-# ----------------------------------------
-# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL_INIT],
-[m4_ifval([$1],
- [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
- [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_INIT])
-
-
-# _LT_CONFIG_LIBTOOL([COMMANDS])
-# ------------------------------
-# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
-m4_define([_LT_CONFIG_LIBTOOL],
-[m4_ifval([$1],
- [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
- [$1
-])])])
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
-
-
-# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
-# -----------------------------------------------------
-m4_defun([_LT_CONFIG_SAVE_COMMANDS],
-[_LT_CONFIG_LIBTOOL([$1])
-_LT_CONFIG_LIBTOOL_INIT([$2])
-])
-
-
-# _LT_FORMAT_COMMENT([COMMENT])
-# -----------------------------
-# Add leading comment marks to the start of each line, and a trailing
-# full-stop to the whole comment if one is not present already.
-m4_define([_LT_FORMAT_COMMENT],
-[m4_ifval([$1], [
-m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
- [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
-)])
-
-
-
-## ------------------------ ##
-## FIXME: Eliminate VARNAME ##
-## ------------------------ ##
-
-
-# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
-# -------------------------------------------------------------------
-# CONFIGNAME is the name given to the value in the libtool script.
-# VARNAME is the (base) name used in the configure script.
-# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
-# VARNAME. Any other value will be used directly.
-m4_define([_LT_DECL],
-[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
- [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
- [m4_ifval([$1], [$1], [$2])])
- lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
- m4_ifval([$4],
- [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
- lt_dict_add_subkey([lt_decl_dict], [$2],
- [tagged?], [m4_ifval([$5], [yes], [no])])])
-])
-
-
-# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
-# --------------------------------------------------------
-m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
-
-
-# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_tag_varnames],
-[_lt_decl_filter([tagged?], [yes], $@)])
-
-
-# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
-# ---------------------------------------------------------
-m4_define([_lt_decl_filter],
-[m4_case([$#],
- [0], [m4_fatal([$0: too few arguments: $#])],
- [1], [m4_fatal([$0: too few arguments: $#: $1])],
- [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
- [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
- [lt_dict_filter([lt_decl_dict], $@)])[]dnl
-])
-
-
-# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
-# --------------------------------------------------
-m4_define([lt_decl_quote_varnames],
-[_lt_decl_filter([value], [1], $@)])
-
-
-# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_dquote_varnames],
-[_lt_decl_filter([value], [2], $@)])
-
-
-# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
-# ---------------------------------------------------
-m4_define([lt_decl_varnames_tagged],
-[m4_assert([$# <= 2])dnl
-_$0(m4_quote(m4_default([$1], [[, ]])),
- m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
- m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
-m4_define([_lt_decl_varnames_tagged],
-[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
-
-
-# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
-# ------------------------------------------------
-m4_define([lt_decl_all_varnames],
-[_$0(m4_quote(m4_default([$1], [[, ]])),
- m4_if([$2], [],
- m4_quote(lt_decl_varnames),
- m4_quote(m4_shift($@))))[]dnl
-])
-m4_define([_lt_decl_all_varnames],
-[lt_join($@, lt_decl_varnames_tagged([$1],
- lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
-])
-
-
-# _LT_CONFIG_STATUS_DECLARE([VARNAME])
-# ------------------------------------
-# Quote a variable value, and forward it to `config.status' so that its
-# declaration there will have the same value as in `configure'. VARNAME
-# must have a single quote delimited value for this to work.
-m4_define([_LT_CONFIG_STATUS_DECLARE],
-[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
-
-
-# _LT_CONFIG_STATUS_DECLARATIONS
-# ------------------------------
-# We delimit libtool config variables with single quotes, so when
-# we write them to config.status, we have to be sure to quote all
-# embedded single quotes properly. In configure, this macro expands
-# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
-#
-# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
-m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
- [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAGS
-# ----------------
-# Output comment and list of tags supported by the script
-m4_defun([_LT_LIBTOOL_TAGS],
-[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
-available_tags="_LT_TAGS"dnl
-])
-
-
-# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
-# -----------------------------------
-# Extract the dictionary values for VARNAME (optionally with TAG) and
-# expand to a commented shell variable setting:
-#
-# # Some comment about what VAR is for.
-# visible_name=$lt_internal_name
-m4_define([_LT_LIBTOOL_DECLARE],
-[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
- [description])))[]dnl
-m4_pushdef([_libtool_name],
- m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
-m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
- [0], [_libtool_name=[$]$1],
- [1], [_libtool_name=$lt_[]$1],
- [2], [_libtool_name=$lt_[]$1],
- [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
-m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
-])
-
-
-# _LT_LIBTOOL_CONFIG_VARS
-# -----------------------
-# Produce commented declarations of non-tagged libtool config variables
-# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
-# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
-# section) are produced by _LT_LIBTOOL_TAG_VARS.
-m4_defun([_LT_LIBTOOL_CONFIG_VARS],
-[m4_foreach([_lt_var],
- m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
- [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
-
-
-# _LT_LIBTOOL_TAG_VARS(TAG)
-# -------------------------
-m4_define([_LT_LIBTOOL_TAG_VARS],
-[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
- [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
-
-
-# _LT_TAGVAR(VARNAME, [TAGNAME])
-# ------------------------------
-m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
-
-
-# _LT_CONFIG_COMMANDS
-# -------------------
-# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
-# variables for single and double quote escaping we saved from calls
-# to _LT_DECL, we can put quote escaped variables declarations
-# into `config.status', and then the shell code to quote escape them in
-# for loops in `config.status'. Finally, any additional code accumulated
-# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
-m4_defun([_LT_CONFIG_COMMANDS],
-[AC_PROVIDE_IFELSE([LT_OUTPUT],
- dnl If the libtool generation code has been placed in $CONFIG_LT,
- dnl instead of duplicating it all over again into config.status,
- dnl then we will have config.status run $CONFIG_LT later, so it
- dnl needs to know what name is stored there:
- [AC_CONFIG_COMMANDS([libtool],
- [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
- dnl If the libtool generation code is destined for config.status,
- dnl expand the accumulated commands and init code now:
- [AC_CONFIG_COMMANDS([libtool],
- [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
-])#_LT_CONFIG_COMMANDS
-
-
-# Initialize.
-m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
-[
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-sed_quote_subst='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-_LT_CONFIG_STATUS_DECLARATIONS
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# Quote evaled strings.
-for var in lt_decl_all_varnames([[ \
-]], lt_decl_quote_varnames); do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[[\\\\\\\`\\"\\\$]]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Double-quote double-evaled strings.
-for var in lt_decl_all_varnames([[ \
-]], lt_decl_dquote_varnames); do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[[\\\\\\\`\\"\\\$]]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Fix-up fallback echo if it was mangled by the above quoting rules.
-case \$lt_ECHO in
-*'\\\[$]0 --fallback-echo"')dnl "
- lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
- ;;
-esac
-
-_LT_OUTPUT_LIBTOOL_INIT
-])
-
-
-# LT_OUTPUT
-# ---------
-# This macro allows early generation of the libtool script (before
-# AC_OUTPUT is called), incase it is used in configure for compilation
-# tests.
-AC_DEFUN([LT_OUTPUT],
-[: ${CONFIG_LT=./config.lt}
-AC_MSG_NOTICE([creating $CONFIG_LT])
-cat >"$CONFIG_LT" <<_LTEOF
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate a libtool stub with the current configuration.
-
-lt_cl_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AS_SHELL_SANITIZE
-_AS_PREPARE
-
-exec AS_MESSAGE_FD>&1
-exec AS_MESSAGE_LOG_FD>>config.log
-{
- echo
- AS_BOX([Running $as_me.])
-} >&AS_MESSAGE_LOG_FD
-
-lt_cl_help="\
-\`$as_me' creates a local libtool stub from the current configuration,
-for use in further configure time tests before the real libtool is
-generated.
-
-Usage: $[0] [[OPTIONS]]
-
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -q, --quiet do not print progress messages
- -d, --debug don't remove temporary files
-
-Report bugs to <bug-libtool at gnu.org>."
-
-lt_cl_version="\
-m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
-m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
-configured by $[0], generated by m4_PACKAGE_STRING.
-
-Copyright (C) 2008 Free Software Foundation, Inc.
-This config.lt script is free software; the Free Software Foundation
-gives unlimited permision to copy, distribute and modify it."
-
-while test $[#] != 0
-do
- case $[1] in
- --version | --v* | -V )
- echo "$lt_cl_version"; exit 0 ;;
- --help | --h* | -h )
- echo "$lt_cl_help"; exit 0 ;;
- --debug | --d* | -d )
- debug=: ;;
- --quiet | --q* | --silent | --s* | -q )
- lt_cl_silent=: ;;
-
- -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try \`$[0] --help' for more information.]) ;;
-
- *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try \`$[0] --help' for more information.]) ;;
- esac
- shift
-done
-
-if $lt_cl_silent; then
- exec AS_MESSAGE_FD>/dev/null
-fi
-_LTEOF
-
-cat >>"$CONFIG_LT" <<_LTEOF
-_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
-_LTEOF
-
-cat >>"$CONFIG_LT" <<\_LTEOF
-AC_MSG_NOTICE([creating $ofile])
-_LT_OUTPUT_LIBTOOL_COMMANDS
-AS_EXIT(0)
-_LTEOF
-chmod +x "$CONFIG_LT"
-
-# configure is writing to config.log, but config.lt does its own redirection,
-# appending to config.log, which fails on DOS, as config.log is still kept
-# open by configure. Here we exec the FD to /dev/null, effectively closing
-# config.log, so it can be properly (re)opened and appended to by config.lt.
-if test "$no_create" != yes; then
- lt_cl_success=:
- test "$silent" = yes &&
- lt_config_lt_args="$lt_config_lt_args --quiet"
- exec AS_MESSAGE_LOG_FD>/dev/null
- $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
- exec AS_MESSAGE_LOG_FD>>config.log
- $lt_cl_success || AS_EXIT(1)
-fi
-])# LT_OUTPUT
-
-
-# _LT_CONFIG(TAG)
-# ---------------
-# If TAG is the built-in tag, create an initial libtool script with a
-# default configuration from the untagged config vars. Otherwise add code
-# to config.status for appending the configuration named by TAG from the
-# matching tagged config vars.
-m4_defun([_LT_CONFIG],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_CONFIG_SAVE_COMMANDS([
- m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
- m4_if(_LT_TAG, [C], [
- # See if we are running on zsh, and set the options which allow our
- # commands through without removal of \ escapes.
- if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
- fi
-
- cfgfile="${ofile}T"
- trap "$RM \"$cfgfile\"; exit 1" 1 2 15
- $RM "$cfgfile"
-
- cat <<_LT_EOF >> "$cfgfile"
-#! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-#
-_LT_COPYING
-_LT_LIBTOOL_TAGS
-
-# ### BEGIN LIBTOOL CONFIG
-_LT_LIBTOOL_CONFIG_VARS
-_LT_LIBTOOL_TAG_VARS
-# ### END LIBTOOL CONFIG
-
-_LT_EOF
-
- case $host_os in
- aix3*)
- cat <<\_LT_EOF >> "$cfgfile"
-# AIX sometimes has problems with the GCC collect2 program. For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
-fi
-_LT_EOF
- ;;
- esac
-
- _LT_PROG_LTMAIN
-
- # We use sed instead of cat because bash on DJGPP gets confused if
- # if finds mixed CR/LF and LF-only lines. Since sed operates in
- # text mode, it properly converts lines to CR/LF. This bash problem
- # is reportedly fixed, but why not run on old versions too?
- sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- _LT_PROG_XSI_SHELLFNS
-
- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- mv -f "$cfgfile" "$ofile" ||
- (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
- chmod +x "$ofile"
-],
-[cat <<_LT_EOF >> "$ofile"
-
-dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
-dnl in a comment (ie after a #).
-# ### BEGIN LIBTOOL TAG CONFIG: $1
-_LT_LIBTOOL_TAG_VARS(_LT_TAG)
-# ### END LIBTOOL TAG CONFIG: $1
-_LT_EOF
-])dnl /m4_if
-],
-[m4_if([$1], [], [
- PACKAGE='$PACKAGE'
- VERSION='$VERSION'
- TIMESTAMP='$TIMESTAMP'
- RM='$RM'
- ofile='$ofile'], [])
-])dnl /_LT_CONFIG_SAVE_COMMANDS
-])# _LT_CONFIG
-
-
-# LT_SUPPORTED_TAG(TAG)
-# ---------------------
-# Trace this macro to discover what tags are supported by the libtool
-# --tag option, using:
-# autoconf --trace 'LT_SUPPORTED_TAG:$1'
-AC_DEFUN([LT_SUPPORTED_TAG], [])
-
-
-# C support is built-in for now
-m4_define([_LT_LANG_C_enabled], [])
-m4_define([_LT_TAGS], [])
-
-
-# LT_LANG(LANG)
-# -------------
-# Enable libtool support for the given language if not already enabled.
-AC_DEFUN([LT_LANG],
-[AC_BEFORE([$0], [LT_OUTPUT])dnl
-m4_case([$1],
- [C], [_LT_LANG(C)],
- [C++], [_LT_LANG(CXX)],
- [Java], [_LT_LANG(GCJ)],
- [Fortran 77], [_LT_LANG(F77)],
- [Fortran], [_LT_LANG(FC)],
- [Windows Resource], [_LT_LANG(RC)],
- [m4_ifdef([_LT_LANG_]$1[_CONFIG],
- [_LT_LANG($1)],
- [m4_fatal([$0: unsupported language: "$1"])])])dnl
-])# LT_LANG
-
-
-# _LT_LANG(LANGNAME)
-# ------------------
-m4_defun([_LT_LANG],
-[m4_ifdef([_LT_LANG_]$1[_enabled], [],
- [LT_SUPPORTED_TAG([$1])dnl
- m4_append([_LT_TAGS], [$1 ])dnl
- m4_define([_LT_LANG_]$1[_enabled], [])dnl
- _LT_LANG_$1_CONFIG($1)])dnl
-])# _LT_LANG
-
-
-# _LT_LANG_DEFAULT_CONFIG
-# -----------------------
-m4_defun([_LT_LANG_DEFAULT_CONFIG],
-[AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [LT_LANG(CXX)],
- [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_F77],
- [LT_LANG(F77)],
- [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
-
-AC_PROVIDE_IFELSE([AC_PROG_FC],
- [LT_LANG(FC)],
- [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
-
-dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
-dnl pulling things in needlessly.
-AC_PROVIDE_IFELSE([AC_PROG_GCJ],
- [LT_LANG(GCJ)],
- [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
- [LT_LANG(GCJ)],
- [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
- [LT_LANG(GCJ)],
- [m4_ifdef([AC_PROG_GCJ],
- [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
- m4_ifdef([A][M_PROG_GCJ],
- [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
- m4_ifdef([LT_PROG_GCJ],
- [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
-
-AC_PROVIDE_IFELSE([LT_PROG_RC],
- [LT_LANG(RC)],
- [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
-])# _LT_LANG_DEFAULT_CONFIG
-
-# Obsolete macros:
-AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
-AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
-AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
-AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
-dnl AC_DEFUN([AC_LIBTOOL_F77], [])
-dnl AC_DEFUN([AC_LIBTOOL_FC], [])
-dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
-
-
-# _LT_TAG_COMPILER
-# ----------------
-m4_defun([_LT_TAG_COMPILER],
-[AC_REQUIRE([AC_PROG_CC])dnl
-
-_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
-_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
-_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
-_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-])# _LT_TAG_COMPILER
-
-
-# _LT_COMPILER_BOILERPLATE
-# ------------------------
-# Check for compiler boilerplate output or warnings with
-# the simple compiler test code.
-m4_defun([_LT_COMPILER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-])# _LT_COMPILER_BOILERPLATE
-
-
-# _LT_LINKER_BOILERPLATE
-# ----------------------
-# Check for linker boilerplate output or warnings with
-# the simple link test code.
-m4_defun([_LT_LINKER_BOILERPLATE],
-[m4_require([_LT_DECL_SED])dnl
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-])# _LT_LINKER_BOILERPLATE
-
-# _LT_REQUIRED_DARWIN_CHECKS
-# -------------------------
-m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
- case $host_os in
- rhapsody* | darwin*)
- AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
- AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
- AC_CHECK_TOOL([LIPO], [lipo], [:])
- AC_CHECK_TOOL([OTOOL], [otool], [:])
- AC_CHECK_TOOL([OTOOL64], [otool64], [:])
- _LT_DECL([], [DSYMUTIL], [1],
- [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
- _LT_DECL([], [NMEDIT], [1],
- [Tool to change global to local symbols on Mac OS X])
- _LT_DECL([], [LIPO], [1],
- [Tool to manipulate fat objects and archives on Mac OS X])
- _LT_DECL([], [OTOOL], [1],
- [ldd/readelf like tool for Mach-O binaries on Mac OS X])
- _LT_DECL([], [OTOOL64], [1],
- [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
-
- AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
- [lt_cv_apple_cc_single_mod=no
- if test -z "${LT_MULTI_MODULE}"; then
- # By default we will add the -single_module flag. You can override
- # by either setting the environment variable LT_MULTI_MODULE
- # non-empty at configure time, or by adding -multi_module to the
- # link flags.
- rm -rf libconftest.dylib*
- echo "int foo(void){return 1;}" > conftest.c
- echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
- $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
- -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
- _lt_result=$?
- if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
- lt_cv_apple_cc_single_mod=yes
- else
- cat conftest.err >&AS_MESSAGE_LOG_FD
- fi
- rm -rf libconftest.dylib*
- rm -f conftest.*
- fi])
- AC_CACHE_CHECK([for -exported_symbols_list linker flag],
- [lt_cv_ld_exported_symbols_list],
- [lt_cv_ld_exported_symbols_list=no
- save_LDFLAGS=$LDFLAGS
- echo "_main" > conftest.sym
- LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
- AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
- [lt_cv_ld_exported_symbols_list=yes],
- [lt_cv_ld_exported_symbols_list=no])
- LDFLAGS="$save_LDFLAGS"
- ])
- case $host_os in
- rhapsody* | darwin1.[[012]])
- _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
- darwin1.*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- darwin*) # darwin 5.x on
- # if running on 10.5 or later, the deployment target defaults
- # to the OS version, if on x86, and 10.4, the deployment
- # target defaults to 10.4. Don't you love it?
- case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
- 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- 10.[[012]]*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- 10.*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- esac
- ;;
- esac
- if test "$lt_cv_apple_cc_single_mod" = "yes"; then
- _lt_dar_single_mod='$single_module'
- fi
- if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
- _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
- else
- _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
- fi
- if test "$DSYMUTIL" != ":"; then
- _lt_dsymutil='~$DSYMUTIL $lib || :'
- else
- _lt_dsymutil=
- fi
- ;;
- esac
-])
-
-
-# _LT_DARWIN_LINKER_FEATURES
-# --------------------------
-# Checks for linker and compiler features on darwin
-m4_defun([_LT_DARWIN_LINKER_FEATURES],
-[
- m4_require([_LT_REQUIRED_DARWIN_CHECKS])
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_automatic, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- _LT_TAGVAR(whole_archive_flag_spec, $1)=''
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
- case $cc_basename in
- ifort*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test "$_lt_dar_can_shared" = "yes"; then
- output_verbose_link_cmd=echo
- _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
- _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
- _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
- _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
- m4_if([$1], [CXX],
-[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
- _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
- _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
- fi
-],[])
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
-])
-
-# _LT_SYS_MODULE_PATH_AIX
-# -----------------------
-# Links a minimal program and checks the executable
-# for the system default hardcoded library path. In most cases,
-# this is /usr/lib:/lib, but when the MPI compilers are used
-# the location of the communication and MPI libs are included too.
-# If we don't find anything, use the default library path according
-# to the aix ld manual.
-m4_defun([_LT_SYS_MODULE_PATH_AIX],
-[m4_require([_LT_DECL_SED])dnl
-AC_LINK_IFELSE(AC_LANG_PROGRAM,[
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi],[])
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-])# _LT_SYS_MODULE_PATH_AIX
-
-
-# _LT_SHELL_INIT(ARG)
-# -------------------
-m4_define([_LT_SHELL_INIT],
-[ifdef([AC_DIVERSION_NOTICE],
- [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
- [AC_DIVERT_PUSH(NOTICE)])
-$1
-AC_DIVERT_POP
-])# _LT_SHELL_INIT
-
-
-# _LT_PROG_ECHO_BACKSLASH
-# -----------------------
-# Add some code to the start of the generated configure script which
-# will find an echo command which doesn't interpret backslashes.
-m4_defun([_LT_PROG_ECHO_BACKSLASH],
-[_LT_SHELL_INIT([
-# Check that we are running under the correct shell.
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-case X$lt_ECHO in
-X*--fallback-echo)
- # Remove one level of quotation (which was required for Make).
- ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
- ;;
-esac
-
-ECHO=${lt_ECHO-echo}
-if test "X[$]1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X[$]1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
- # Yippee, $ECHO works!
- :
-else
- # Restart under the correct shell.
- exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
-fi
-
-if test "X[$]1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<_LT_EOF
-[$]*
-_LT_EOF
- exit 0
-fi
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test -z "$lt_ECHO"; then
- if test "X${echo_test_string+set}" != Xset; then
- # find a string as large as possible, as long as the shell can cope with it
- for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
- # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
- { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
- then
- break
- fi
- done
- fi
-
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- :
- else
- # The Solaris, AIX, and Digital Unix default echo programs unquote
- # backslashes. This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- #
- # So, first we look for a working echo in the user's PATH.
-
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for dir in $PATH /usr/ucb; do
- IFS="$lt_save_ifs"
- if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
- test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$dir/echo"
- break
- fi
- done
- IFS="$lt_save_ifs"
-
- if test "X$ECHO" = Xecho; then
- # We didn't find a better echo, so look for alternatives.
- if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # This shell has a builtin print -r that does the trick.
- ECHO='print -r'
- elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
- test "X$CONFIG_SHELL" != X/bin/ksh; then
- # If we have ksh, try running configure again with it.
- ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
- export ORIGINAL_CONFIG_SHELL
- CONFIG_SHELL=/bin/ksh
- export CONFIG_SHELL
- exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
- else
- # Try using printf.
- ECHO='printf %s\n'
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # Cool, printf works
- :
- elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
- export CONFIG_SHELL
- SHELL="$CONFIG_SHELL"
- export SHELL
- ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
- elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
- else
- # maybe with a smaller string...
- prev=:
-
- for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
- if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
- then
- break
- fi
- prev="$cmd"
- done
-
- if test "$prev" != 'sed 50q "[$]0"'; then
- echo_test_string=`eval $prev`
- export echo_test_string
- exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
- else
- # Oops. We lost completely, so just stick with echo.
- ECHO=echo
- fi
- fi
- fi
- fi
- fi
-fi
-
-# Copy echo and quote the copy suitably for passing to libtool from
-# the Makefile, instead of quoting the original, which is used later.
-lt_ECHO=$ECHO
-if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
- lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
-fi
-
-AC_SUBST(lt_ECHO)
-])
-_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
-_LT_DECL([], [ECHO], [1],
- [An echo program that does not interpret backslashes])
-])# _LT_PROG_ECHO_BACKSLASH
-
-
-# _LT_ENABLE_LOCK
-# ---------------
-m4_defun([_LT_ENABLE_LOCK],
-[AC_ARG_ENABLE([libtool-lock],
- [AS_HELP_STRING([--disable-libtool-lock],
- [avoid locking (might break parallel builds)])])
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.$ac_objext` in
- *ELF-32*)
- HPUX_IA64_MODE="32"
- ;;
- *ELF-64*)
- HPUX_IA64_MODE="64"
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-*-*-irix6*)
- # Find out which ABI we are using.
- echo '[#]line __oline__ "configure"' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- if test "$lt_cv_prog_gnu_ld" = yes; then
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -melf32bsmip"
- ;;
- *N32*)
- LD="${LD-ld} -melf32bmipn32"
- ;;
- *64-bit*)
- LD="${LD-ld} -melf64bmip"
- ;;
- esac
- else
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -32"
- ;;
- *N32*)
- LD="${LD-ld} -n32"
- ;;
- *64-bit*)
- LD="${LD-ld} -64"
- ;;
- esac
- fi
- fi
- rm -rf conftest*
- ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.o` in
- *32-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_i386_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_i386"
- ;;
- ppc64-*linux*|powerpc64-*linux*)
- LD="${LD-ld} -m elf32ppclinux"
- ;;
- s390x-*linux*)
- LD="${LD-ld} -m elf_s390"
- ;;
- sparc64-*linux*)
- LD="${LD-ld} -m elf32_sparc"
- ;;
- esac
- ;;
- *64-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_x86_64_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_x86_64"
- ;;
- ppc*-*linux*|powerpc*-*linux*)
- LD="${LD-ld} -m elf64ppc"
- ;;
- s390*-*linux*|s390*-*tpf*)
- LD="${LD-ld} -m elf64_s390"
- ;;
- sparc*-*linux*)
- LD="${LD-ld} -m elf64_sparc"
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
-*-*-sco3.2v5*)
- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -belf"
- AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
- [AC_LANG_PUSH(C)
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
- AC_LANG_POP])
- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
- CFLAGS="$SAVE_CFLAGS"
- fi
- ;;
-sparc*-*solaris*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
- case `/usr/bin/file conftest.o` in
- *64-bit*)
- case $lt_cv_prog_gnu_ld in
- yes*) LD="${LD-ld} -m elf64_sparc" ;;
- *)
- if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
- LD="${LD-ld} -64"
- fi
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-esac
-
-need_locks="$enable_libtool_lock"
-])# _LT_ENABLE_LOCK
-
-
-# _LT_CMD_OLD_ARCHIVE
-# -------------------
-m4_defun([_LT_CMD_OLD_ARCHIVE],
-[AC_CHECK_TOOL(AR, ar, false)
-test -z "$AR" && AR=ar
-test -z "$AR_FLAGS" && AR_FLAGS=cru
-_LT_DECL([], [AR], [1], [The archiver])
-_LT_DECL([], [AR_FLAGS], [1])
-
-AC_CHECK_TOOL(STRIP, strip, :)
-test -z "$STRIP" && STRIP=:
-_LT_DECL([], [STRIP], [1], [A symbol stripping program])
-
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-test -z "$RANLIB" && RANLIB=:
-_LT_DECL([], [RANLIB], [1],
- [Commands used to install an old-style archive])
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
- case $host_os in
- openbsd*)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
- ;;
- *)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
- ;;
- esac
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-_LT_DECL([], [old_postinstall_cmds], [2])
-_LT_DECL([], [old_postuninstall_cmds], [2])
-_LT_TAGDECL([], [old_archive_cmds], [2],
- [Commands used to build an old-style archive])
-])# _LT_CMD_OLD_ARCHIVE
-
-
-# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------------------
-# Check whether the given compiler option works
-AC_DEFUN([_LT_COMPILER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
- [$2=no
- m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$3"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&AS_MESSAGE_LOG_FD
- echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- $2=yes
- fi
- fi
- $RM conftest*
-])
-
-if test x"[$]$2" = xyes; then
- m4_if([$5], , :, [$5])
-else
- m4_if([$6], , :, [$6])
-fi
-])# _LT_COMPILER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
-
-
-# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
-# [ACTION-SUCCESS], [ACTION-FAILURE])
-# ----------------------------------------------------
-# Check whether the given linker option works
-AC_DEFUN([_LT_LINKER_OPTION],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_CACHE_CHECK([$1], [$2],
- [$2=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $3"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&AS_MESSAGE_LOG_FD
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- $2=yes
- fi
- else
- $2=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-])
-
-if test x"[$]$2" = xyes; then
- m4_if([$4], , :, [$4])
-else
- m4_if([$5], , :, [$5])
-fi
-])# _LT_LINKER_OPTION
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
-
-
-# LT_CMD_MAX_LEN
-#---------------
-AC_DEFUN([LT_CMD_MAX_LEN],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-# find the maximum length of command line arguments
-AC_MSG_CHECKING([the maximum length of command line arguments])
-AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
- i=0
- teststring="ABCD"
-
- case $build_os in
- msdosdjgpp*)
- # On DJGPP, this test can blow up pretty badly due to problems in libc
- # (any single argument exceeding 2000 bytes causes a buffer overrun
- # during glob expansion). Even if it were fixed, the result of this
- # check would be larger than it should be.
- lt_cv_sys_max_cmd_len=12288; # 12K is about right
- ;;
-
- gnu*)
- # Under GNU Hurd, this test is not required because there is
- # no limit to the length of command line arguments.
- # Libtool will interpret -1 as no limit whatsoever
- lt_cv_sys_max_cmd_len=-1;
- ;;
-
- cygwin* | mingw* | cegcc*)
- # On Win9x/ME, this test blows up -- it succeeds, but takes
- # about 5 minutes as the teststring grows exponentially.
- # Worse, since 9x/ME are not pre-emptively multitasking,
- # you end up with a "frozen" computer, even though with patience
- # the test eventually succeeds (with a max line length of 256k).
- # Instead, let's just punt: use the minimum linelength reported by
- # all of the supported platforms: 8192 (on NT/2K/XP).
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- amigaos*)
- # On AmigaOS with pdksh, this test takes hours, literally.
- # So we just punt and use a minimum line length of 8192.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
- # This has been around since 386BSD, at least. Likely further.
- if test -x /sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
- elif test -x /usr/sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
- else
- lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
- fi
- # And add a safety zone
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- ;;
-
- interix*)
- # We know the value 262144 and hardcode it with a safety zone (like BSD)
- lt_cv_sys_max_cmd_len=196608
- ;;
-
- osf*)
- # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
- # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
- # nice to cause kernel panics so lets avoid the loop below.
- # First set a reasonable default.
- lt_cv_sys_max_cmd_len=16384
- #
- if test -x /sbin/sysconfig; then
- case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
- *1*) lt_cv_sys_max_cmd_len=-1 ;;
- esac
- fi
- ;;
- sco3.2v5*)
- lt_cv_sys_max_cmd_len=102400
- ;;
- sysv5* | sco5v6* | sysv4.2uw2*)
- kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
- if test -n "$kargmax"; then
- lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
- else
- lt_cv_sys_max_cmd_len=32768
- fi
- ;;
- *)
- lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
- if test -n "$lt_cv_sys_max_cmd_len"; then
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- else
- # Make teststring a little bigger before we do anything with it.
- # a 1K string should be a reasonable start.
- for i in 1 2 3 4 5 6 7 8 ; do
- teststring=$teststring$teststring
- done
- SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
- # If test is not a shell built-in, we'll probably end up computing a
- # maximum length that is only half of the actual maximum length, but
- # we can't tell.
- while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
- = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
- test $i != 17 # 1/2 MB should be enough
- do
- i=`expr $i + 1`
- teststring=$teststring$teststring
- done
- # Only check the string length outside the loop.
- lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
- teststring=
- # Add a significant safety factor because C++ compilers can tack on
- # massive amounts of additional arguments before passing them to the
- # linker. It appears as though 1/2 is a usable value.
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
- fi
- ;;
- esac
-])
-if test -n $lt_cv_sys_max_cmd_len ; then
- AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
-else
- AC_MSG_RESULT(none)
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-_LT_DECL([], [max_cmd_len], [0],
- [What is the maximum length of a command?])
-])# LT_CMD_MAX_LEN
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
-
-
-# _LT_HEADER_DLFCN
-# ----------------
-m4_defun([_LT_HEADER_DLFCN],
-[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
-])# _LT_HEADER_DLFCN
-
-
-# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
-# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-# ----------------------------------------------------------------
-m4_defun([_LT_TRY_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test "$cross_compiling" = yes; then :
- [$4]
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-[#line __oline__ "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}]
-_LT_EOF
- if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) $1 ;;
- x$lt_dlneed_uscore) $2 ;;
- x$lt_dlunknown|x*) $3 ;;
- esac
- else :
- # compilation failed
- $3
- fi
-fi
-rm -fr conftest*
-])# _LT_TRY_DLOPEN_SELF
-
-
-# LT_SYS_DLOPEN_SELF
-# ------------------
-AC_DEFUN([LT_SYS_DLOPEN_SELF],
-[m4_require([_LT_HEADER_DLFCN])dnl
-if test "x$enable_dlopen" != xyes; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
- lt_cv_dlopen=no
- lt_cv_dlopen_libs=
-
- case $host_os in
- beos*)
- lt_cv_dlopen="load_add_on"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
- mingw* | pw32* | cegcc*)
- lt_cv_dlopen="LoadLibrary"
- lt_cv_dlopen_libs=
- ;;
-
- cygwin*)
- lt_cv_dlopen="dlopen"
- lt_cv_dlopen_libs=
- ;;
-
- darwin*)
- # if libdl is installed we need to link against it
- AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
- lt_cv_dlopen="dyld"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ])
- ;;
-
- *)
- AC_CHECK_FUNC([shl_load],
- [lt_cv_dlopen="shl_load"],
- [AC_CHECK_LIB([dld], [shl_load],
- [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
- [AC_CHECK_FUNC([dlopen],
- [lt_cv_dlopen="dlopen"],
- [AC_CHECK_LIB([dl], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
- [AC_CHECK_LIB([svld], [dlopen],
- [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
- [AC_CHECK_LIB([dld], [dld_link],
- [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
- ])
- ])
- ])
- ])
- ])
- ;;
- esac
-
- if test "x$lt_cv_dlopen" != xno; then
- enable_dlopen=yes
- else
- enable_dlopen=no
- fi
-
- case $lt_cv_dlopen in
- dlopen)
- save_CPPFLAGS="$CPPFLAGS"
- test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
- save_LDFLAGS="$LDFLAGS"
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
- save_LIBS="$LIBS"
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- AC_CACHE_CHECK([whether a program can dlopen itself],
- lt_cv_dlopen_self, [dnl
- _LT_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
- lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
- ])
-
- if test "x$lt_cv_dlopen_self" = xyes; then
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
- AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
- lt_cv_dlopen_self_static, [dnl
- _LT_TRY_DLOPEN_SELF(
- lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
- lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
- ])
- fi
-
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
- ;;
- esac
-
- case $lt_cv_dlopen_self in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case $lt_cv_dlopen_self_static in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-_LT_DECL([dlopen_support], [enable_dlopen], [0],
- [Whether dlopen is supported])
-_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
- [Whether dlopen of programs is supported])
-_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
- [Whether dlopen of statically linked programs is supported])
-])# LT_SYS_DLOPEN_SELF
-
-# Old name:
-AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
-
-
-# _LT_COMPILER_C_O([TAGNAME])
-# ---------------------------
-# Check to see if options -c and -o are simultaneously supported by compiler.
-# This macro does not hard code the compiler like AC_PROG_CC_C_O.
-m4_defun([_LT_COMPILER_C_O],
-[m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
- [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
- [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&AS_MESSAGE_LOG_FD
- echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
- fi
- fi
- chmod u+w . 2>&AS_MESSAGE_LOG_FD
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-])
-_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
- [Does compiler simultaneously support -c and -o options?])
-])# _LT_COMPILER_C_O
-
-
-# _LT_COMPILER_FILE_LOCKS([TAGNAME])
-# ----------------------------------
-# Check to see if we can do hard links to lock some files if needed
-m4_defun([_LT_COMPILER_FILE_LOCKS],
-[m4_require([_LT_ENABLE_LOCK])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-_LT_COMPILER_C_O([$1])
-
-hard_links="nottested"
-if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- AC_MSG_CHECKING([if we can lock with hard links])
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- AC_MSG_RESULT([$hard_links])
- if test "$hard_links" = no; then
- AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
-])# _LT_COMPILER_FILE_LOCKS
-
-
-# _LT_CHECK_OBJDIR
-# ----------------
-m4_defun([_LT_CHECK_OBJDIR],
-[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
-[rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
- lt_cv_objdir=.libs
-else
- # MS-DOS does not allow filenames that begin with a dot.
- lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null])
-objdir=$lt_cv_objdir
-_LT_DECL([], [objdir], [0],
- [The name of the directory that contains temporary libtool files])dnl
-m4_pattern_allow([LT_OBJDIR])dnl
-AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
- [Define to the sub-directory in which libtool stores uninstalled libraries.])
-])# _LT_CHECK_OBJDIR
-
-
-# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
-# --------------------------------------
-# Check hardcoding attributes.
-m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
-[AC_MSG_CHECKING([how to hardcode library paths into programs])
-_LT_TAGVAR(hardcode_action, $1)=
-if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
- test -n "$_LT_TAGVAR(runpath_var, $1)" ||
- test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
-
- # We can hardcode non-existent directories.
- if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
- test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
- # Linking always hardcodes the temporary library directory.
- _LT_TAGVAR(hardcode_action, $1)=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- _LT_TAGVAR(hardcode_action, $1)=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- _LT_TAGVAR(hardcode_action, $1)=unsupported
-fi
-AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
-
-if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
- test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-_LT_TAGDECL([], [hardcode_action], [0],
- [How to hardcode a shared library path into an executable])
-])# _LT_LINKER_HARDCODE_LIBPATH
-
-
-# _LT_CMD_STRIPLIB
-# ----------------
-m4_defun([_LT_CMD_STRIPLIB],
-[m4_require([_LT_DECL_EGREP])
-striplib=
-old_striplib=
-AC_MSG_CHECKING([whether stripping libraries is possible])
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
- test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
- test -z "$striplib" && striplib="$STRIP --strip-unneeded"
- AC_MSG_RESULT([yes])
-else
-# FIXME - insert some real tests, host_os isn't really good enough
- case $host_os in
- darwin*)
- if test -n "$STRIP" ; then
- striplib="$STRIP -x"
- old_striplib="$STRIP -S"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- ;;
- *)
- AC_MSG_RESULT([no])
- ;;
- esac
-fi
-_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
-_LT_DECL([], [striplib], [1])
-])# _LT_CMD_STRIPLIB
-
-
-# _LT_SYS_DYNAMIC_LINKER([TAG])
-# -----------------------------
-# PORTME Fill in your ld.so characteristics
-m4_defun([_LT_SYS_DYNAMIC_LINKER],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_OBJDUMP])dnl
-m4_require([_LT_DECL_SED])dnl
-AC_MSG_CHECKING([dynamic linker characteristics])
-m4_if([$1],
- [], [
-if test "$GCC" = yes; then
- case $host_os in
- darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
- *) lt_awk_arg="/^libraries:/" ;;
- esac
- lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
- # if the path contains ";" then we assume it to be the separator
- # otherwise default to the standard path separator (i.e. ":") - it is
- # assumed that no part of a normal pathname contains ";" but that should
- # okay in the real world where ";" in dirpaths is itself problematic.
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
- else
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- # Ok, now we have the path, separated by spaces, we can step through it
- # and add multilib dir if necessary.
- lt_tmp_lt_search_path_spec=
- lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
- for lt_sys_path in $lt_search_path_spec; do
- if test -d "$lt_sys_path/$lt_multi_os_dir"; then
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
- else
- test -d "$lt_sys_path" && \
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
- fi
- done
- lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
-BEGIN {RS=" "; FS="/|\n";} {
- lt_foo="";
- lt_count=0;
- for (lt_i = NF; lt_i > 0; lt_i--) {
- if ($lt_i != "" && $lt_i != ".") {
- if ($lt_i == "..") {
- lt_count++;
- } else {
- if (lt_count == 0) {
- lt_foo="/" $lt_i lt_foo;
- } else {
- lt_count--;
- }
- }
- }
- }
- if (lt_foo != "") { lt_freq[[lt_foo]]++; }
- if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
-}'`
- sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
-else
- sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi])
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
-
-aix[[4-9]]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[[01]] | aix4.[[01]].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}${shared_ext}$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='${libname}${shared_ext}'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[[45]]*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=".dll"
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
- # It is most probably a Windows format PATH printed by
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
- # path with ; separators, and with drive letters. We can handle the
- # drive letters (cygwin fileutils understands them), so leave them,
- # especially as we might pass files found there to a mingw objdump,
- # which wouldn't understand a cygwinified path. Ahh.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
- ;;
- esac
- ;;
-
- *)
- library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
- soname_spec='${libname}${release}${major}$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-m4_if([$1], [],[
- sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd* | dragonfly*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[[123]]*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[[01]]* | freebsdelf3.[[01]]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
- freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- fi
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-interix[[3-9]]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" = yes; then
- version_type=linux
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # Some binutils ld are patched to set DT_RUNPATH
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
- LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
- AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
- [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
- [shlibpath_overrides_runpath=yes])])
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsdelf*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='NetBSD ld.elf_so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd*)
- version_type=sunos
- sys_lib_dlsearch_path_spec="/usr/lib"
- need_lib_prefix=no
- # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
- case $host_os in
- openbsd3.3 | openbsd3.3.*) need_version=yes ;;
- *) need_version=no ;;
- esac
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case $host_os in
- openbsd2.[[89]] | openbsd2.[[89]].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- ;;
-
-os2*)
- libname_spec='$name'
- shrext_cmds=".dll"
- need_lib_prefix=no
- library_names_spec='$libname${shared_ext} $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
- soname_spec='$libname${shared_ext}.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=freebsd-elf
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test "$with_gnu_ld" = yes; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-AC_MSG_RESULT([$dynamic_linker])
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
- sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
- sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-_LT_DECL([], [variables_saved_for_relink], [1],
- [Variables whose values should be saved in libtool wrapper scripts and
- restored at link time])
-_LT_DECL([], [need_lib_prefix], [0],
- [Do we need the "lib" prefix for modules?])
-_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
-_LT_DECL([], [version_type], [0], [Library versioning type])
-_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
-_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
-_LT_DECL([], [shlibpath_overrides_runpath], [0],
- [Is shlibpath searched before the hard-coded library search path?])
-_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
-_LT_DECL([], [library_names_spec], [1],
- [[List of archive names. First name is the real one, the rest are links.
- The last name is the one that the linker finds with -lNAME]])
-_LT_DECL([], [soname_spec], [1],
- [[The coded name of the library, if different from the real name]])
-_LT_DECL([], [postinstall_cmds], [2],
- [Command to use after installation of a shared archive])
-_LT_DECL([], [postuninstall_cmds], [2],
- [Command to use after uninstallation of a shared archive])
-_LT_DECL([], [finish_cmds], [2],
- [Commands used to finish a libtool library installation in a directory])
-_LT_DECL([], [finish_eval], [1],
- [[As "finish_cmds", except a single script fragment to be evaled but
- not shown]])
-_LT_DECL([], [hardcode_into_libs], [0],
- [Whether we should hardcode library paths into libraries])
-_LT_DECL([], [sys_lib_search_path_spec], [2],
- [Compile-time system search path for libraries])
-_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
- [Run-time system search path for libraries])
-])# _LT_SYS_DYNAMIC_LINKER
-
-
-# _LT_PATH_TOOL_PREFIX(TOOL)
-# --------------------------
-# find a file program which can recognize shared library
-AC_DEFUN([_LT_PATH_TOOL_PREFIX],
-[m4_require([_LT_DECL_EGREP])dnl
-AC_MSG_CHECKING([for $1])
-AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-[case $MAGIC_CMD in
-[[\\/*] | ?:[\\/]*])
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-dnl $ac_dummy forces splitting on constant user-supplied paths.
-dnl POSIX.2 word splitting is done only on the output of word expansions,
-dnl not every word. This closes a longstanding sh security hole.
- ac_dummy="m4_if([$2], , $PATH, [$2])"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$1; then
- lt_cv_path_MAGIC_CMD="$ac_dir/$1"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- AC_MSG_RESULT($MAGIC_CMD)
-else
- AC_MSG_RESULT(no)
-fi
-_LT_DECL([], [MAGIC_CMD], [0],
- [Used to examine libraries when file_magic_cmd begins with "file"])dnl
-])# _LT_PATH_TOOL_PREFIX
-
-# Old name:
-AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
-
-
-# _LT_PATH_MAGIC
-# --------------
-# find a file program which can recognize a shared library
-m4_defun([_LT_PATH_MAGIC],
-[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
-if test -z "$lt_cv_path_MAGIC_CMD"; then
- if test -n "$ac_tool_prefix"; then
- _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
- else
- MAGIC_CMD=:
- fi
-fi
-])# _LT_PATH_MAGIC
-
-
-# LT_PATH_LD
-# ----------
-# find the pathname to the GNU or non-GNU linker
-AC_DEFUN([LT_PATH_LD],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-
-AC_ARG_WITH([gnu-ld],
- [AS_HELP_STRING([--with-gnu-ld],
- [assume the C compiler uses GNU ld @<:@default=no@:>@])],
- [test "$withval" = no || with_gnu_ld=yes],
- [with_gnu_ld=no])dnl
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- AC_MSG_CHECKING([for ld used by $CC])
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [[\\/]]* | ?:[[\\/]]*)
- re_direlt='/[[^/]][[^/]]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- AC_MSG_CHECKING([for GNU ld])
-else
- AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL(lt_cv_path_LD,
-[if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- AC_MSG_RESULT($LD)
-else
- AC_MSG_RESULT(no)
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-_LT_PATH_LD_GNU
-AC_SUBST([LD])
-
-_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
-])# LT_PATH_LD
-
-# Old names:
-AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
-AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_LD], [])
-dnl AC_DEFUN([AC_PROG_LD], [])
-
-
-# _LT_PATH_LD_GNU
-#- --------------
-m4_defun([_LT_PATH_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac])
-with_gnu_ld=$lt_cv_prog_gnu_ld
-])# _LT_PATH_LD_GNU
-
-
-# _LT_CMD_RELOAD
-# --------------
-# find reload flag for linker
-# -- PORTME Some linkers may need a different reload flag.
-m4_defun([_LT_CMD_RELOAD],
-[AC_CACHE_CHECK([for $LD option to reload object files],
- lt_cv_ld_reload_flag,
- [lt_cv_ld_reload_flag='-r'])
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
- darwin*)
- if test "$GCC" = yes; then
- reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
- else
- reload_cmds='$LD$reload_flag -o $output$reload_objs'
- fi
- ;;
-esac
-_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
-_LT_DECL([], [reload_cmds], [2])dnl
-])# _LT_CMD_RELOAD
-
-
-# _LT_CHECK_MAGIC_METHOD
-# ----------------------
-# how to check for library dependencies
-# -- PORTME fill in with the dynamic library characteristics
-m4_defun([_LT_CHECK_MAGIC_METHOD],
-[m4_require([_LT_DECL_EGREP])
-m4_require([_LT_DECL_OBJDUMP])
-AC_CACHE_CHECK([how to recognize dependent libraries],
-lt_cv_deplibs_check_method,
-[lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[[4-9]]*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-beos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-bsdi[[45]]*)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- lt_cv_file_magic_test_file=/shlib/libc.so
- ;;
-
-cygwin*)
- # func_win32_libid is a shell function defined in ltmain.sh
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- ;;
-
-mingw* | pw32*)
- # Base MSYS/MinGW do not provide the 'file' command needed by
- # func_win32_libid shell function, so use a weaker test based on 'objdump',
- # unless we find 'file', for example because we are cross-compiling.
- if ( file / ) >/dev/null 2>&1; then
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- else
- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- fi
- ;;
-
-cegcc)
- # use the weaker test based on 'objdump'. See mingw*.
- lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- ;;
-
-darwin* | rhapsody*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-freebsd* | dragonfly*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- case $host_cpu in
- i*86 )
- # Not sure whether the presence of OpenBSD here was a mistake.
- # Let's accept both of them until this is cleared up.
- lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
- else
- lt_cv_deplibs_check_method=pass_all
- fi
- ;;
-
-gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-hpux10.20* | hpux11*)
- lt_cv_file_magic_cmd=/usr/bin/file
- case $host_cpu in
- ia64*)
- lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
- lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
- ;;
- hppa*64*)
- [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
- lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
- ;;
- *)
- lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
- lt_cv_file_magic_test_file=/usr/lib/libc.sl
- ;;
- esac
- ;;
-
-interix[[3-9]]*)
- # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
- fi
- ;;
-
-newos6*)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libnls.so
- ;;
-
-*nto* | *qnx*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-openbsd*)
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
- fi
- ;;
-
-osf3* | osf4* | osf5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-rdos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-solaris*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv4 | sysv4.3*)
- case $host_vendor in
- motorola)
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- ncr)
- lt_cv_deplibs_check_method=pass_all
- ;;
- sequent)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
- ;;
- sni)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
- siemens)
- lt_cv_deplibs_check_method=pass_all
- ;;
- pc)
- lt_cv_deplibs_check_method=pass_all
- ;;
- esac
- ;;
-
-tpf*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-esac
-])
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-_LT_DECL([], [deplibs_check_method], [1],
- [Method to check whether dependent libraries are shared objects])
-_LT_DECL([], [file_magic_cmd], [1],
- [Command to use when deplibs_check_method == "file_magic"])
-])# _LT_CHECK_MAGIC_METHOD
-
-
-# LT_PATH_NM
-# ----------
-# find the pathname to a BSD- or MS-compatible name lister
-AC_DEFUN([LT_PATH_NM],
-[AC_REQUIRE([AC_PROG_CC])dnl
-AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
-[if test -n "$NM"; then
- # Let the user override the test.
- lt_cv_path_NM="$NM"
-else
- lt_nm_to_check="${ac_tool_prefix}nm"
- if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
- lt_nm_to_check="$lt_nm_to_check nm"
- fi
- for lt_tmp_nm in $lt_nm_to_check; do
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/$lt_tmp_nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
- break
- ;;
- *)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- ;;
- esac
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
- done
- : ${lt_cv_path_NM=no}
-fi])
-if test "$lt_cv_path_NM" != "no"; then
- NM="$lt_cv_path_NM"
-else
- # Didn't find any BSD compatible name lister, look for dumpbin.
- AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
- AC_SUBST([DUMPBIN])
- if test "$DUMPBIN" != ":"; then
- NM="$DUMPBIN"
- fi
-fi
-test -z "$NM" && NM=nm
-AC_SUBST([NM])
-_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
-
-AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
- [lt_cv_nm_interface="BSD nm"
- echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
- (eval "$ac_compile" 2>conftest.err)
- cat conftest.err >&AS_MESSAGE_LOG_FD
- (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
- (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
- cat conftest.err >&AS_MESSAGE_LOG_FD
- (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
- cat conftest.out >&AS_MESSAGE_LOG_FD
- if $GREP 'External.*some_variable' conftest.out > /dev/null; then
- lt_cv_nm_interface="MS dumpbin"
- fi
- rm -f conftest*])
-])# LT_PATH_NM
-
-# Old names:
-AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
-AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_PROG_NM], [])
-dnl AC_DEFUN([AC_PROG_NM], [])
-
-
-# LT_LIB_M
-# --------
-# check for math library
-AC_DEFUN([LT_LIB_M],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-LIBM=
-case $host in
-*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
- # These system don't have libm, or don't need it
- ;;
-*-ncr-sysv4.3*)
- AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
- AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
- ;;
-*)
- AC_CHECK_LIB(m, cos, LIBM="-lm")
- ;;
-esac
-AC_SUBST([LIBM])
-])# LT_LIB_M
-
-# Old name:
-AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_CHECK_LIBM], [])
-
-
-# _LT_COMPILER_NO_RTTI([TAGNAME])
-# -------------------------------
-m4_defun([_LT_COMPILER_NO_RTTI],
-[m4_require([_LT_TAG_COMPILER])dnl
-
-_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
-
-if test "$GCC" = yes; then
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
-
- _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
- lt_cv_prog_compiler_rtti_exceptions,
- [-fno-rtti -fno-exceptions], [],
- [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
-fi
-_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
- [Compiler flag to turn off builtin functions])
-])# _LT_COMPILER_NO_RTTI
-
-
-# _LT_CMD_GLOBAL_SYMBOLS
-# ----------------------
-m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-AC_REQUIRE([LT_PATH_LD])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-AC_MSG_CHECKING([command to parse $NM output from $compiler object])
-AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
-[
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[[BCDEGRST]]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
- symcode='[[BCDT]]'
- ;;
-cygwin* | mingw* | pw32* | cegcc*)
- symcode='[[ABCDGISTW]]'
- ;;
-hpux*)
- if test "$host_cpu" = ia64; then
- symcode='[[ABCDEGRST]]'
- fi
- ;;
-irix* | nonstopux*)
- symcode='[[BCDEGRST]]'
- ;;
-osf*)
- symcode='[[BCDEGQRST]]'
- ;;
-solaris*)
- symcode='[[BDRT]]'
- ;;
-sco3.2v5*)
- symcode='[[DT]]'
- ;;
-sysv4.2uw2*)
- symcode='[[DT]]'
- ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
- symcode='[[ABDT]]'
- ;;
-sysv4)
- symcode='[[DFNSTU]]'
- ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
- symcode='[[ABCDGIRSTW]]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
- opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
- ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
- # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
- symxfrm="\\1 $ac_symprfx\\2 \\2"
-
- # Write the raw and C identifiers.
- if test "$lt_cv_nm_interface" = "MS dumpbin"; then
- # Fake it for dumpbin and say T for any non-static function
- # and D for any global variable.
- # Also find C++ and __fastcall symbols from MSVC++,
- # which start with @ or ?.
- lt_cv_sys_global_symbol_pipe="$AWK ['"\
-" {last_section=section; section=\$ 3};"\
-" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-" \$ 0!~/External *\|/{next};"\
-" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-" {if(hide[section]) next};"\
-" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-" s[1]~/^[@?]/{print s[1], s[1]; next};"\
-" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-" ' prfx=^$ac_symprfx]"
- else
- lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
- fi
-
- # Check to see that the pipe works correctly.
- pipe_works=no
-
- rm -f conftest*
- cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
- if AC_TRY_EVAL(ac_compile); then
- # Now try to grab the symbols.
- nlist=conftest.nm
- if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
- # Try sorting and uniquifying the output.
- if sort "$nlist" | uniq > "$nlist"T; then
- mv -f "$nlist"T "$nlist"
- else
- rm -f "$nlist"T
- fi
-
- # Make sure that we snagged all the symbols we need.
- if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
- if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
- cat <<_LT_EOF > conftest.$ac_ext
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
- # Now generate the symbol file.
- eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
- cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols. */
-const struct {
- const char *name;
- void *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[[]] =
-{
- { "@PROGRAM@", (void *) 0 },
-_LT_EOF
- $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
- cat <<\_LT_EOF >> conftest.$ac_ext
- {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
- # Now try linking the two files.
- mv conftest.$ac_objext conftstm.$ac_objext
- lt_save_LIBS="$LIBS"
- lt_save_CFLAGS="$CFLAGS"
- LIBS="conftstm.$ac_objext"
- CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
- if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
- pipe_works=yes
- fi
- LIBS="$lt_save_LIBS"
- CFLAGS="$lt_save_CFLAGS"
- else
- echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
- fi
- else
- echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
- cat conftest.$ac_ext >&5
- fi
- rm -rf conftest* conftst*
-
- # Do not use the global_symbol_pipe unless it works.
- if test "$pipe_works" = yes; then
- break
- else
- lt_cv_sys_global_symbol_pipe=
- fi
-done
-])
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
- lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
- AC_MSG_RESULT(failed)
-else
- AC_MSG_RESULT(ok)
-fi
-
-_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
- [Take the output of nm and produce a listing of raw symbols and C names])
-_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
- [Transform the output of nm in a proper C declaration])
-_LT_DECL([global_symbol_to_c_name_address],
- [lt_cv_sys_global_symbol_to_c_name_address], [1],
- [Transform the output of nm in a C name address pair])
-_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
- [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
- [Transform the output of nm in a C name address pair when lib prefix is needed])
-]) # _LT_CMD_GLOBAL_SYMBOLS
-
-
-# _LT_COMPILER_PIC([TAGNAME])
-# ---------------------------
-m4_defun([_LT_COMPILER_PIC],
-[m4_require([_LT_TAG_COMPILER])dnl
-_LT_TAGVAR(lt_prog_compiler_wl, $1)=
-_LT_TAGVAR(lt_prog_compiler_pic, $1)=
-_LT_TAGVAR(lt_prog_compiler_static, $1)=
-
-AC_MSG_CHECKING([for $compiler option to produce PIC])
-m4_if([$1], [CXX], [
- # C++ specific cases for pic, static, wl, etc.
- if test "$GXX" = yes; then
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
- mingw* | cygwin* | os2* | pw32* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- ;;
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
- ;;
- *djgpp*)
- # DJGPP does not support shared libraries at all
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- ;;
- interix[[3-9]]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
- fi
- ;;
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- else
- case $host_os in
- aix[[4-9]]*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- else
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
- chorus*)
- case $cc_basename in
- cxch68*)
- # Green Hills C++ Compiler
- # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
- ;;
- esac
- ;;
- dgux*)
- case $cc_basename in
- ec++*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- freebsd* | dragonfly*)
- # FreeBSD uses GNU C++
- ;;
- hpux9* | hpux10* | hpux11*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
- if test "$host_cpu" != ia64; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- fi
- ;;
- aCC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- ;;
- esac
- ;;
- *)
- ;;
- esac
- ;;
- interix*)
- # This is c89, which is MS Visual C++ (no shared libs)
- # Anyone wants to do a port?
- ;;
- irix5* | irix6* | nonstopux*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- # CC pic flag -KPIC is the default.
- ;;
- *)
- ;;
- esac
- ;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # KAI C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- ecpc* )
- # old Intel C++ for x86_64 which still supported -KPIC.
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- icpc* )
- # Intel C++, used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- cxx*)
- # Compaq C++
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- xlc* | xlC*)
- # IBM XL 8.0 on PPC
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- ;;
- esac
- ;;
- esac
- ;;
- lynxos*)
- ;;
- m88k*)
- ;;
- mvs*)
- case $cc_basename in
- cxx*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
- ;;
- *)
- ;;
- esac
- ;;
- netbsd* | netbsdelf*-gnu)
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
- ;;
- RCC*)
- # Rational C++ 2.4.1
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- cxx*)
- # Digital/Compaq C++
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- *)
- ;;
- esac
- ;;
- psos*)
- ;;
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- ;;
- gcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
- ;;
- *)
- ;;
- esac
- ;;
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- lcc*)
- # Lucid
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- case $cc_basename in
- CC*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- esac
- ;;
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- ;;
- *)
- ;;
- esac
- ;;
- vxworks*)
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
- esac
- fi
-],
-[
- if test "$GCC" = yes; then
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- ;;
-
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
- ;;
-
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- ;;
-
- interix[[3-9]]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
-
- msdosdjgpp*)
- # Just because we use GCC doesn't mean we suddenly get shared libraries
- # on systems that don't support them.
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- enable_shared=no
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
- fi
- ;;
-
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- ;;
- esac
- else
- # PORTME Check for flag to pass linker flags through the system compiler.
- case $host_os in
- aix*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- else
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- m4_if([$1], [GCJ], [],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
- ;;
-
- hpux9* | hpux10* | hpux11*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
- # not for PA HP-UX.
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
- ;;
- esac
- # Is there a better lt_prog_compiler_static that works with the bundled CC?
- _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
- ;;
-
- irix5* | irix6* | nonstopux*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # PIC (with -KPIC) is the default.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- # old Intel for x86_64 which still supported -KPIC.
- ecc*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- # icc used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- icc* | ifort*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
- ;;
- # Lahey Fortran 8.1.
- lf95*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
- ;;
- pgcc* | pgf77* | pgf90* | pgf95*)
- # Portland Group compilers (*not* the Pentium gcc compiler,
- # which looks to be a dead project)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
- ccc*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # All Alpha code is PIC.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
- xl*)
- # IBM XL C 8.0/Fortran 10.1 on PPC
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C 5.9
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- ;;
- *Sun\ F*)
- # Sun Fortran 8.3 passes all unrecognized flags to the linker
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
- ;;
- esac
- ;;
- esac
- ;;
-
- newsos6)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
- ;;
-
- osf3* | osf4* | osf5*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- # All OSF/1 code is PIC.
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- rdos*)
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
- ;;
-
- solaris*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- case $cc_basename in
- f77* | f90* | f95*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
- *)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
- esac
- ;;
-
- sunos4*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- sysv4 | sysv4.2uw2* | sysv4.3*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec ;then
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- fi
- ;;
-
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- unicos*)
- _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
-
- uts4*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
- _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
- ;;
-
- *)
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
- ;;
- esac
- fi
-])
-case $host_os in
- # For platforms which do not support PIC, -DPIC is meaningless:
- *djgpp*)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)=
- ;;
- *)
- _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
- ;;
-esac
-AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
-_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
- [How to pass a linker flag through the compiler])
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
- _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
- [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
- [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t at m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
- [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
- "" | " "*) ;;
- *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
- esac],
- [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
- _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
-fi
-_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
- [Additional compiler flags for building library objects])
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
-_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
- _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
- $lt_tmp_static_flag,
- [],
- [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
-_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
- [Compiler flag to prevent dynamic linking])
-])# _LT_COMPILER_PIC
-
-
-# _LT_LINKER_SHLIBS([TAGNAME])
-# ----------------------------
-# See if the linker supports building shared libraries.
-m4_defun([_LT_LINKER_SHLIBS],
-[AC_REQUIRE([LT_PATH_LD])dnl
-AC_REQUIRE([LT_PATH_NM])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-m4_require([_LT_DECL_SED])dnl
-m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
-m4_require([_LT_TAG_COMPILER])dnl
-AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
-m4_if([$1], [CXX], [
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- case $host_os in
- aix[[4-9]]*)
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- ;;
- pw32*)
- _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
- ;;
- cygwin* | mingw* | cegcc*)
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- linux* | k*bsd*-gnu)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
- *)
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- esac
- _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
-], [
- runpath_var=
- _LT_TAGVAR(allow_undefined_flag, $1)=
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(archive_cmds, $1)=
- _LT_TAGVAR(archive_expsym_cmds, $1)=
- _LT_TAGVAR(compiler_needs_object, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- _LT_TAGVAR(hardcode_automatic, $1)=no
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
- _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- _LT_TAGVAR(hardcode_minus_L, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
- _LT_TAGVAR(inherit_rpath, $1)=no
- _LT_TAGVAR(link_all_deplibs, $1)=unknown
- _LT_TAGVAR(module_cmds, $1)=
- _LT_TAGVAR(module_expsym_cmds, $1)=
- _LT_TAGVAR(old_archive_from_new_cmds, $1)=
- _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
- _LT_TAGVAR(thread_safe_flag_spec, $1)=
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- # include_expsyms should be a list of space-separated symbols to be *always*
- # included in the symbol list
- _LT_TAGVAR(include_expsyms, $1)=
- # exclude_expsyms can be an extended regexp of symbols to exclude
- # it will be wrapped by ` (' and `)$', so one must not match beginning or
- # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
- # as well as any symbol that contains `d'.
- _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
- # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
- # platforms (ab)use it in PIC code, but their linkers get confused if
- # the symbol is explicitly referenced. Since portable code cannot
- # rely on this symbol name, it's probably fine to never include it in
- # preloaded symbol tables.
- # Exclude shared library initialization/finalization symbols.
-dnl Note also adjust exclude_expsyms for C++ above.
- extract_expsyms_cmds=
-
- case $host_os in
- cygwin* | mingw* | pw32* | cegcc*)
- # FIXME: the MSVC++ port hasn't been tested in a loooong time
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- if test "$GCC" != yes; then
- with_gnu_ld=no
- fi
- ;;
- interix*)
- # we just hope/assume this is gcc and not c89 (= MSVC++)
- with_gnu_ld=yes
- ;;
- openbsd*)
- with_gnu_ld=no
- ;;
- linux* | k*bsd*-gnu)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
- esac
-
- _LT_TAGVAR(ld_shlibs, $1)=yes
- if test "$with_gnu_ld" = yes; then
- # If archive_cmds runs LD, not CC, wlarc should be empty
- wlarc='${wl}'
-
- # Set some defaults for GNU ld with shared library support. These
- # are reset later if shared libraries are not supported. Putting them
- # here allows them to be overridden if necessary.
- runpath_var=LD_RUN_PATH
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- # ancient GNU ld didn't support --whole-archive et. al.
- if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- supports_anon_versioning=no
- case `$LD -v 2>&1` in
- *GNU\ gold*) supports_anon_versioning=yes ;;
- *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
- *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
- *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
- *\ 2.11.*) ;; # other 2.11 versions
- *) supports_anon_versioning=yes ;;
- esac
-
- # See if GNU ld supports shared libraries.
- case $host_os in
- aix[[3-9]]*)
- # On AIX/PPC, the GNU linker is very broken
- if test "$host_cpu" != ia64; then
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support. If you
-*** really care for shared libraries, you may want to modify your PATH
-*** so that a non-GNU linker is found, and then restart.
-
-_LT_EOF
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)=''
- ;;
- m68k)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
- # as there is no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- interix[[3-9]]*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
-
- gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
- tmp_diet=no
- if test "$host_os" = linux-dietlibc; then
- case $cc_basename in
- diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
- esac
- fi
- if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
- && test "$tmp_diet" = no
- then
- tmp_addflag=
- tmp_sharedflag='-shared'
- case $cc_basename,$host_cpu in
- pgcc*) # Portland Group C compiler
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag'
- ;;
- pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag -Mnomain' ;;
- ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
- tmp_addflag=' -i_dynamic' ;;
- efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
- tmp_addflag=' -i_dynamic -nofor_main' ;;
- ifc* | ifort*) # Intel Fortran compiler
- tmp_addflag=' -nofor_main' ;;
- lf95*) # Lahey Fortran 8.1
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- tmp_sharedflag='--shared' ;;
- xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
- tmp_sharedflag='-qmkshrobj'
- tmp_addflag= ;;
- esac
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*) # Sun C 5.9
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- _LT_TAGVAR(compiler_needs_object, $1)=yes
- tmp_sharedflag='-G' ;;
- *Sun\ F*) # Sun Fortran 8.3
- tmp_sharedflag='-G' ;;
- esac
- _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
- if test "x$supports_anon_versioning" = xyes; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
-
- case $cc_basename in
- xlf*)
- # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
- _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
- _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
- _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
- fi
- ;;
- esac
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
- wlarc=
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- fi
- ;;
-
- solaris*)
- if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
- case `$LD -v 2>&1` in
- *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
- _LT_TAGVAR(ld_shlibs, $1)=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- ;;
- *)
- # For security reasons, it is highly recommended that you always
- # use absolute paths for naming shared libraries, and exclude the
- # DT_RUNPATH tag from executables and libraries. But doing so
- # requires that you compile everything twice, which is a pain.
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- sunos4*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- wlarc=
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
-
- if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
- runpath_var=
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- else
- # PORTME fill in a description of your system's linker (not GNU ld)
- case $host_os in
- aix3*)
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=yes
- _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
- # Note: this linker hardcodes the directories in LIBPATH if there
- # are no directories specified by -L.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
- # Neither direct hardcoding nor static linking is supported with a
- # broken collect2.
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- fi
- ;;
-
- aix[[4-9]]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
- for ld_flag in $LDFLAGS; do
- if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
- aix_use_runtimelinking=yes
- break
- fi
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- _LT_TAGVAR(archive_cmds, $1)=''
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
-
- if test "$GCC" = yes; then
- case $host_os in aix4.[[012]]|aix4.[[012]].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- fi
- ;;
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- _LT_TAGVAR(link_all_deplibs, $1)=no
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to export.
- _LT_TAGVAR(always_export_symbols, $1)=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
- _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- # This is similar to how AIX traditionally builds its shared libraries.
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)=''
- ;;
- m68k)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- ;;
-
- bsdi[[45]]*)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # Tell ltmain to make .dll files, not .so files.
- shrext_cmds=".dll"
- # FIXME: Setting linknames here is a bad hack.
- _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
- # The linker will automatically build a .lib file if we build a DLL.
- _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
- # FIXME: Should let the user specify the lib program.
- _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
- _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
- ;;
-
- darwin* | rhapsody*)
- _LT_DARWIN_LINKER_FEATURES($1)
- ;;
-
- dgux*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- freebsd1*)
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
- # support. Future versions do this automatically, but an explicit c++rt0.o
- # does not break anything, and helps significantly (at the cost of a little
- # extra space).
- freebsd2.2*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- # Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
- freebsd* | dragonfly*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- hpux9*)
- if test "$GCC" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_direct, $1)=yes
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- ;;
-
- hpux10*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
- fi
- if test "$with_gnu_ld" = no; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- fi
- ;;
-
- hpux11*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- else
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- fi
- if test "$with_gnu_ld" = no; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
- *)
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- ;;
- esac
- fi
- ;;
-
- irix5* | irix6* | nonstopux*)
- if test "$GCC" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- # Try to use the -exported_symbol ld option, if it does not
- # work, assume that -exports_file does not work either and
- # implicitly export all symbols.
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
- AC_LINK_IFELSE(int foo(void) {},
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
- )
- LDFLAGS="$save_LDFLAGS"
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(inherit_rpath, $1)=yes
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- newsos6)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *nto* | *qnx*)
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- else
- case $host_os in
- openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- ;;
- esac
- fi
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- os2*)
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
- _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
- ;;
-
- osf3*)
- if test "$GCC" = yes; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- ;;
-
- osf4* | osf5*) # as osf3* with the addition of -msym flag
- if test "$GCC" = yes; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- else
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
- $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
- # Both c and cxx compiler support -rpath directly
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- fi
- _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- ;;
-
- solaris*)
- _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
- if test "$GCC" = yes; then
- wlarc='${wl}'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- else
- case `$CC -V 2>&1` in
- *"Compilers 5.0"*)
- wlarc=''
- _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
- ;;
- *)
- wlarc='${wl}'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- ;;
- esac
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'. GCC discards it without `$wl',
- # but is careful enough not to reorder.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- if test "$GCC" = yes; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
- fi
- ;;
- esac
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
-
- sunos4*)
- if test "x$host_vendor" = xsequent; then
- # Use $CC to link under sequent, because it throws in some extra .o
- # files that make .init and .fini sections work.
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
- fi
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- sysv4)
- case $host_vendor in
- sni)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
- ;;
- siemens)
- ## LD is ld it makes a PLAMLIB
- ## CC just makes a GrossModule.
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
- _LT_TAGVAR(hardcode_direct, $1)=no
- ;;
- motorola)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
- ;;
- esac
- runpath_var='LD_RUN_PATH'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- sysv4.3*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- _LT_TAGVAR(ld_shlibs, $1)=yes
- fi
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
- _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
- _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- uts4*)
- _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
-
- *)
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
-
- if test x$host_vendor = xsni; then
- case $host in
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
- ;;
- esac
- fi
- fi
-])
-AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
-_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
-
-_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
-_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
-_LT_DECL([], [extract_expsyms_cmds], [2],
- [The commands to extract the exported symbol list from a shared archive])
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
-x|xyes)
- # Assume -lc should be added
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-
- if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $_LT_TAGVAR(archive_cmds, $1) in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- AC_MSG_CHECKING([whether -lc should be explicitly linked in])
- $RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
- pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
- _LT_TAGVAR(allow_undefined_flag, $1)=
- if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
- then
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- else
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- fi
- _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
- ;;
- esac
- fi
- ;;
-esac
-
-_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
- [Whether or not to add -lc for building shared libraries])
-_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
- [enable_shared_with_static_runtimes], [0],
- [Whether or not to disallow shared libs when runtime libs are static])
-_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
- [Compiler flag to allow reflexive dlopens])
-_LT_TAGDECL([], [whole_archive_flag_spec], [1],
- [Compiler flag to generate shared objects directly from archives])
-_LT_TAGDECL([], [compiler_needs_object], [1],
- [Whether the compiler copes with passing no objects directly])
-_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
- [Create an old-style archive from a shared archive])
-_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
- [Create a temporary old-style archive to link instead of a shared archive])
-_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
-_LT_TAGDECL([], [archive_expsym_cmds], [2])
-_LT_TAGDECL([], [module_cmds], [2],
- [Commands used to build a loadable module if different from building
- a shared archive.])
-_LT_TAGDECL([], [module_expsym_cmds], [2])
-_LT_TAGDECL([], [with_gnu_ld], [1],
- [Whether we are building with GNU ld or not])
-_LT_TAGDECL([], [allow_undefined_flag], [1],
- [Flag that allows shared libraries with undefined symbols to be built])
-_LT_TAGDECL([], [no_undefined_flag], [1],
- [Flag that enforces no undefined symbols])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
- [Flag to hardcode $libdir into a binary during linking.
- This must work even if $libdir does not exist])
-_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
- [[If ld is used when linking, flag to hardcode $libdir into a binary
- during linking. This must work even if $libdir does not exist]])
-_LT_TAGDECL([], [hardcode_libdir_separator], [1],
- [Whether we need a single "-rpath" flag with a separated argument])
-_LT_TAGDECL([], [hardcode_direct], [0],
- [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
- DIR into the resulting binary])
-_LT_TAGDECL([], [hardcode_direct_absolute], [0],
- [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
- DIR into the resulting binary and the resulting library dependency is
- "absolute", i.e impossible to change by setting ${shlibpath_var} if the
- library is relocated])
-_LT_TAGDECL([], [hardcode_minus_L], [0],
- [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
- into the resulting binary])
-_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
- [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
- into the resulting binary])
-_LT_TAGDECL([], [hardcode_automatic], [0],
- [Set to "yes" if building a shared library automatically hardcodes DIR
- into the library and all subsequent libraries and executables linked
- against it])
-_LT_TAGDECL([], [inherit_rpath], [0],
- [Set to yes if linker adds runtime paths of dependent libraries
- to runtime path list])
-_LT_TAGDECL([], [link_all_deplibs], [0],
- [Whether libtool must link a program against all its dependency libraries])
-_LT_TAGDECL([], [fix_srcfile_path], [1],
- [Fix the shell variable $srcfile for the compiler])
-_LT_TAGDECL([], [always_export_symbols], [0],
- [Set to "yes" if exported symbols are required])
-_LT_TAGDECL([], [export_symbols_cmds], [2],
- [The commands to list exported symbols])
-_LT_TAGDECL([], [exclude_expsyms], [1],
- [Symbols that should not be listed in the preloaded symbols])
-_LT_TAGDECL([], [include_expsyms], [1],
- [Symbols that must always be exported])
-_LT_TAGDECL([], [prelink_cmds], [2],
- [Commands necessary for linking programs (against libraries) with templates])
-_LT_TAGDECL([], [file_list_spec], [1],
- [Specify filename containing input files])
-dnl FIXME: Not yet implemented
-dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
-dnl [Compiler flag to generate thread safe objects])
-])# _LT_LINKER_SHLIBS
-
-
-# _LT_LANG_C_CONFIG([TAG])
-# ------------------------
-# Ensure that the configuration variables for a C compiler are suitably
-# defined. These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_C_CONFIG],
-[m4_require([_LT_DECL_EGREP])dnl
-lt_save_CC="$CC"
-AC_LANG_PUSH(C)
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-_LT_TAG_COMPILER
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
- _LT_COMPILER_NO_RTTI($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
- LT_SYS_DLOPEN_SELF
- _LT_CMD_STRIPLIB
-
- # Report which library types will actually be built
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
-
- aix[[4-9]]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_CONFIG($1)
-fi
-AC_LANG_POP
-CC="$lt_save_CC"
-])# _LT_LANG_C_CONFIG
-
-
-# _LT_PROG_CXX
-# ------------
-# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
-# compiler, we have our own version here.
-m4_defun([_LT_PROG_CXX],
-[
-pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
-AC_PROG_CXX
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
- ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
- (test "X$CXX" != "Xg++"))) ; then
- AC_PROG_CXXCPP
-else
- _lt_caught_CXX_error=yes
-fi
-popdef([AC_MSG_ERROR])
-])# _LT_PROG_CXX
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([_LT_PROG_CXX], [])
-
-
-# _LT_LANG_CXX_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a C++ compiler are suitably
-# defined. These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_CXX_CONFIG],
-[AC_REQUIRE([_LT_PROG_CXX])dnl
-m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-m4_require([_LT_DECL_EGREP])dnl
-
-AC_LANG_PUSH(C++)
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(compiler_needs_object, $1)=no
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for C++ test sources.
-ac_ext=cpp
-
-# Object file extension for compiled C++ test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the CXX compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="int some_variable = 0;"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC=$CC
- lt_save_LD=$LD
- lt_save_GCC=$GCC
- GCC=$GXX
- lt_save_with_gnu_ld=$with_gnu_ld
- lt_save_path_LD=$lt_cv_path_LD
- if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
- lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
- else
- $as_unset lt_cv_prog_gnu_ld
- fi
- if test -n "${lt_cv_path_LDCXX+set}"; then
- lt_cv_path_LD=$lt_cv_path_LDCXX
- else
- $as_unset lt_cv_path_LD
- fi
- test -z "${LDCXX+set}" || LD=$LDCXX
- CC=${CXX-"c++"}
- compiler=$CC
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
-
- if test -n "$compiler"; then
- # We don't want -fno-exception when compiling C++ code, so set the
- # no_builtin_flag separately
- if test "$GXX" = yes; then
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
- else
- _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
- fi
-
- if test "$GXX" = yes; then
- # Set up default GNU C++ configuration
-
- LT_PATH_LD
-
- # Check if GNU C++ uses GNU ld as the underlying linker, since the
- # archiving commands below assume that GNU ld is being used.
- if test "$with_gnu_ld" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-
- # If archive_cmds runs LD, not CC, wlarc should be empty
- # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
- # investigate it a little bit more. (MM)
- wlarc='${wl}'
-
- # ancient GNU ld didn't support --whole-archive et. al.
- if eval "`$CC -print-prog-name=ld` --help 2>&1" |
- $GREP 'no-whole-archive' > /dev/null; then
- _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- _LT_TAGVAR(whole_archive_flag_spec, $1)=
- fi
- else
- with_gnu_ld=no
- wlarc=
-
- # A generic and very simple default shared library creation
- # command for GNU C++ for the case where it uses the native
- # linker, instead of GNU ld. If possible, this setting should
- # overridden to take advantage of the native linker features on
- # the platform it is being used on.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- fi
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- GXX=no
- with_gnu_ld=no
- wlarc=
- fi
-
- # PORTME: fill in a description of your system's C++ link characteristics
- AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
- _LT_TAGVAR(ld_shlibs, $1)=yes
- case $host_os in
- aix3*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aix[[4-9]]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
- for ld_flag in $LDFLAGS; do
- case $ld_flag in
- *-brtl*)
- aix_use_runtimelinking=yes
- break
- ;;
- esac
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- _LT_TAGVAR(archive_cmds, $1)=''
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
-
- if test "$GXX" = yes; then
- case $host_os in aix4.[[012]]|aix4.[[012]].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- _LT_TAGVAR(hardcode_direct, $1)=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- _LT_TAGVAR(hardcode_minus_L, $1)=yes
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=
- fi
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to
- # export.
- _LT_TAGVAR(always_export_symbols, $1)=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
- # Determine the default libpath from the value encoded in an empty
- # executable.
- _LT_SYS_MODULE_PATH_AIX
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
- _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- _LT_SYS_MODULE_PATH_AIX
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
- # This is similar to how AIX traditionally builds its shared
- # libraries.
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- chorus*)
- case $cc_basename in
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
- # as there is no search path for DLLs.
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
- _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_TAGVAR(always_export_symbols, $1)=no
- _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- darwin* | rhapsody*)
- _LT_DARWIN_LINKER_FEATURES($1)
- ;;
-
- dgux*)
- case $cc_basename in
- ec++*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- freebsd[[12]]*)
- # C++ shared libraries reported to be fairly broken before
- # switch to ELF
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- freebsd-elf*)
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- ;;
-
- freebsd* | dragonfly*)
- # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
- # conventions
- _LT_TAGVAR(ld_shlibs, $1)=yes
- ;;
-
- gnu*)
- ;;
-
- hpux9*)
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
- # but as the default
- # location of the library.
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aCC*)
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- hpux10*|hpux11*)
- if test $with_gnu_ld = no; then
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- ;;
- *)
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- ;;
- esac
- fi
- case $host_cpu in
- hppa*64*|ia64*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- ;;
- *)
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
- # but as the default
- # location of the library.
- ;;
- esac
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- aCC*)
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- if test $with_gnu_ld = no; then
- case $host_cpu in
- hppa*64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- fi
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- interix[[3-9]]*)
- _LT_TAGVAR(hardcode_direct, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
- irix5* | irix6*)
- case $cc_basename in
- CC*)
- # SGI C++
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
-
- # Archives containing C++ object files must be created using
- # "CC -ar", where "CC" is the IRIX C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
- ;;
- *)
- if test "$GXX" = yes; then
- if test "$with_gnu_ld" = no; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
- fi
- fi
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- ;;
- esac
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
- _LT_TAGVAR(inherit_rpath, $1)=yes
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-
- # Archives containing C++ object files must be created using
- # "CC -Bstatic", where "CC" is the KAI C++ compiler.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
- ;;
- icpc* | ecpc* )
- # Intel C++
- with_gnu_ld=yes
- # version 8.0 and above of icpc choke on multiply defined symbols
- # if we add $predep_objects and $postdep_objects, however 7.1 and
- # earlier do not add the objects themselves.
- case `$CC -V 2>&1` in
- *"Version 7."*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- *) # Version 8.0 or newer
- tmp_idyn=
- case $host_cpu in
- ia64*) tmp_idyn=' -i_dynamic';;
- esac
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- esac
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- case `$CC -V` in
- *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
- _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
- compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
- _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
- $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
- $RANLIB $oldlib'
- _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- *) # Version 6 will use weak symbols
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- ;;
- cxx*)
- # Compaq C++
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
-
- runpath_var=LD_RUN_PATH
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- xl*)
- # IBM XL 8.0 on PPC, with GNU ld
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
- _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- _LT_TAGVAR(compiler_needs_object, $1)=yes
-
- # Not sure whether something based on
- # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
- # would be better.
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
- ;;
- esac
- ;;
- esac
- ;;
-
- lynxos*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- m88k*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- mvs*)
- case $cc_basename in
- cxx*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
- wlarc=
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- fi
- # Workaround some broken pre-1.5 toolchains
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
- ;;
-
- *nto* | *qnx*)
- _LT_TAGVAR(ld_shlibs, $1)=yes
- ;;
-
- openbsd2*)
- # C++ shared libraries are fairly broken
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- _LT_TAGVAR(hardcode_direct, $1)=yes
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
- _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- fi
- output_verbose_link_cmd=echo
- else
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
-
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Archives containing C++ object files must be created using
- # the KAI C++ compiler.
- case $host in
- osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
- *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
- esac
- ;;
- RCC*)
- # Rational C++ 2.4.1
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- cxx*)
- case $host in
- osf3*)
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- ;;
- *)
- _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
- echo "-hidden">> $lib.exp~
- $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
- $RM $lib.exp'
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
- case $host in
- osf3*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- esac
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- fi
- ;;
- esac
- ;;
-
- psos*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- lcc*)
- # Lucid
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
- _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
- _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
- ;;
- esac
- _LT_TAGVAR(link_all_deplibs, $1)=yes
-
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
- ;;
- gcx*)
- # Green Hills C++ Compiler
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-
- # The C++ compiler must be used to create the archive.
- _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
- ;;
- *)
- # GNU C++ compiler with Solaris linker
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
- if $CC --version | $GREP -v '^2\.7' > /dev/null; then
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- else
- # g++ 2.7 appears to require `-G' NOT `-shared' on this
- # platform.
- _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- fi
-
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
- case $host_os in
- solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
- *)
- _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- ;;
- esac
- fi
- ;;
- esac
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
- _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
- _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
- _LT_TAGVAR(archive_cmds_need_lc, $1)=no
- _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
- _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
- _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
- _LT_TAGVAR(link_all_deplibs, $1)=yes
- _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
- ;;
-
- vxworks*)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
-
- *)
- # FIXME: insert proper C++ library support
- _LT_TAGVAR(ld_shlibs, $1)=no
- ;;
- esac
-
- AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
- test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
-
- _LT_TAGVAR(GCC, $1)="$GXX"
- _LT_TAGVAR(LD, $1)="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_SYS_HIDDEN_LIBDEPS($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- CC=$lt_save_CC
- LDCXX=$LD
- LD=$lt_save_LD
- GCC=$lt_save_GCC
- with_gnu_ld=$lt_save_with_gnu_ld
- lt_cv_path_LDCXX=$lt_cv_path_LD
- lt_cv_path_LD=$lt_save_path_LD
- lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
- lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
-
-AC_LANG_POP
-])# _LT_LANG_CXX_CONFIG
-
-
-# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
-# ---------------------------------
-# Figure out "hidden" library dependencies from verbose
-# compiler output when linking a shared library.
-# Parse the compiler output and extract the necessary
-# objects, libraries and library flags.
-m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
-[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
-# Dependencies to place before and after the object being linked:
-_LT_TAGVAR(predep_objects, $1)=
-_LT_TAGVAR(postdep_objects, $1)=
-_LT_TAGVAR(predeps, $1)=
-_LT_TAGVAR(postdeps, $1)=
-_LT_TAGVAR(compiler_lib_search_path, $1)=
-
-dnl we can't use the lt_simple_compile_test_code here,
-dnl because it contains code intended for an executable,
-dnl not a library. It's possible we should let each
-dnl tag define a new lt_????_link_test_code variable,
-dnl but it's only used here...
-m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
-int a;
-void foo (void) { a = 0; }
-_LT_EOF
-], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
-class Foo
-{
-public:
- Foo (void) { a = 0; }
-private:
- int a;
-};
-_LT_EOF
-], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
- subroutine foo
- implicit none
- integer*4 a
- a=0
- return
- end
-_LT_EOF
-], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
- subroutine foo
- implicit none
- integer a
- a=0
- return
- end
-_LT_EOF
-], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
-public class foo {
- private int a;
- public void bar (void) {
- a = 0;
- }
-};
-_LT_EOF
-])
-dnl Parse the compiler output and extract the necessary
-dnl objects, libraries and library flags.
-if AC_TRY_EVAL(ac_compile); then
- # Parse the compiler output and extract the necessary
- # objects, libraries and library flags.
-
- # Sentinel used to keep track of whether or not we are before
- # the conftest object file.
- pre_test_object_deps_done=no
-
- for p in `eval "$output_verbose_link_cmd"`; do
- case $p in
-
- -L* | -R* | -l*)
- # Some compilers place space between "-{L,R}" and the path.
- # Remove the space.
- if test $p = "-L" ||
- test $p = "-R"; then
- prev=$p
- continue
- else
- prev=
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- case $p in
- -L* | -R*)
- # Internal compiler library paths should come after those
- # provided the user. The postdeps already come after the
- # user supplied libs so there is no need to process them.
- if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
- _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
- else
- _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
- fi
- ;;
- # The "-l" case would never come before the object being
- # linked, so don't bother handling this case.
- esac
- else
- if test -z "$_LT_TAGVAR(postdeps, $1)"; then
- _LT_TAGVAR(postdeps, $1)="${prev}${p}"
- else
- _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
- fi
- fi
- ;;
-
- *.$objext)
- # This assumes that the test object file only shows up
- # once in the compiler output.
- if test "$p" = "conftest.$objext"; then
- pre_test_object_deps_done=yes
- continue
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
- _LT_TAGVAR(predep_objects, $1)="$p"
- else
- _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
- fi
- else
- if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
- _LT_TAGVAR(postdep_objects, $1)="$p"
- else
- _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
- fi
- fi
- ;;
-
- *) ;; # Ignore the rest.
-
- esac
- done
-
- # Clean up.
- rm -f a.out a.exe
-else
- echo "libtool.m4: error: problem compiling $1 test program"
-fi
-
-$RM -f confest.$objext
-
-# PORTME: override above test on systems where it is broken
-m4_if([$1], [CXX],
-[case $host_os in
-interix[[3-9]]*)
- # Interix 3.5 installs completely hosed .la files for C++, so rather than
- # hack all around it, let's just trust "g++" to DTRT.
- _LT_TAGVAR(predep_objects,$1)=
- _LT_TAGVAR(postdep_objects,$1)=
- _LT_TAGVAR(postdeps,$1)=
- ;;
-
-linux*)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
-
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- if test "$solaris_use_stlport4" != yes; then
- _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-
-solaris*)
- case $cc_basename in
- CC*)
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- # Adding this requires a known-good setup of shared libraries for
- # Sun compiler versions before 5.6, else PIC objects from an old
- # archive will be linked into the output, leading to subtle bugs.
- if test "$solaris_use_stlport4" != yes; then
- _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-esac
-])
-
-case " $_LT_TAGVAR(postdeps, $1) " in
-*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
-esac
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=
-if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
-fi
-_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
- [The directories searched by this compiler when creating a shared library])
-_LT_TAGDECL([], [predep_objects], [1],
- [Dependencies to place before and after the objects being linked to
- create a shared library])
-_LT_TAGDECL([], [postdep_objects], [1])
-_LT_TAGDECL([], [predeps], [1])
-_LT_TAGDECL([], [postdeps], [1])
-_LT_TAGDECL([], [compiler_lib_search_path], [1],
- [The library search path used internally by the compiler when linking
- a shared library])
-])# _LT_SYS_HIDDEN_LIBDEPS
-
-
-# _LT_PROG_F77
-# ------------
-# Since AC_PROG_F77 is broken, in that it returns the empty string
-# if there is no fortran compiler, we have our own version here.
-m4_defun([_LT_PROG_F77],
-[
-pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
-AC_PROG_F77
-if test -z "$F77" || test "X$F77" = "Xno"; then
- _lt_disable_F77=yes
-fi
-popdef([AC_MSG_ERROR])
-])# _LT_PROG_F77
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([_LT_PROG_F77], [])
-
-
-# _LT_LANG_F77_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for a Fortran 77 compiler are
-# suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_F77_CONFIG],
-[AC_REQUIRE([_LT_PROG_F77])dnl
-AC_LANG_PUSH(Fortran 77)
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for f77 test sources.
-ac_ext=f
-
-# Object file extension for compiled f77 test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the F77 compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_F77" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="\
- subroutine t
- return
- end
-"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code="\
- program t
- end
-"
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC="$CC"
- lt_save_GCC=$GCC
- CC=${F77-"f77"}
- compiler=$CC
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
- GCC=$G77
- if test -n "$compiler"; then
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
- aix[[4-9]]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_TAGVAR(GCC, $1)="$G77"
- _LT_TAGVAR(LD, $1)="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- GCC=$lt_save_GCC
- CC="$lt_save_CC"
-fi # test "$_lt_disable_F77" != yes
-
-AC_LANG_POP
-])# _LT_LANG_F77_CONFIG
-
-
-# _LT_PROG_FC
-# -----------
-# Since AC_PROG_FC is broken, in that it returns the empty string
-# if there is no fortran compiler, we have our own version here.
-m4_defun([_LT_PROG_FC],
-[
-pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
-AC_PROG_FC
-if test -z "$FC" || test "X$FC" = "Xno"; then
- _lt_disable_FC=yes
-fi
-popdef([AC_MSG_ERROR])
-])# _LT_PROG_FC
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([_LT_PROG_FC], [])
-
-
-# _LT_LANG_FC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for a Fortran compiler are
-# suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_FC_CONFIG],
-[AC_REQUIRE([_LT_PROG_FC])dnl
-AC_LANG_PUSH(Fortran)
-
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-_LT_TAGVAR(allow_undefined_flag, $1)=
-_LT_TAGVAR(always_export_symbols, $1)=no
-_LT_TAGVAR(archive_expsym_cmds, $1)=
-_LT_TAGVAR(export_dynamic_flag_spec, $1)=
-_LT_TAGVAR(hardcode_direct, $1)=no
-_LT_TAGVAR(hardcode_direct_absolute, $1)=no
-_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
-_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
-_LT_TAGVAR(hardcode_libdir_separator, $1)=
-_LT_TAGVAR(hardcode_minus_L, $1)=no
-_LT_TAGVAR(hardcode_automatic, $1)=no
-_LT_TAGVAR(inherit_rpath, $1)=no
-_LT_TAGVAR(module_cmds, $1)=
-_LT_TAGVAR(module_expsym_cmds, $1)=
-_LT_TAGVAR(link_all_deplibs, $1)=unknown
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-_LT_TAGVAR(no_undefined_flag, $1)=
-_LT_TAGVAR(whole_archive_flag_spec, $1)=
-_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
-
-# Source file extension for fc test sources.
-ac_ext=${ac_fc_srcext-f}
-
-# Object file extension for compiled fc test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# No sense in running all these tests if we already determined that
-# the FC compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_FC" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="\
- subroutine t
- return
- end
-"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code="\
- program t
- end
-"
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
- _LT_TAG_COMPILER
-
- # save warnings/boilerplate of simple test code
- _LT_COMPILER_BOILERPLATE
- _LT_LINKER_BOILERPLATE
-
- # Allow CC to be a program name with arguments.
- lt_save_CC="$CC"
- lt_save_GCC=$GCC
- CC=${FC-"f95"}
- compiler=$CC
- GCC=$ac_cv_fc_compiler_gnu
-
- _LT_TAGVAR(compiler, $1)=$CC
- _LT_CC_BASENAME([$compiler])
-
- if test -n "$compiler"; then
- AC_MSG_CHECKING([if libtool supports shared libraries])
- AC_MSG_RESULT([$can_build_shared])
-
- AC_MSG_CHECKING([whether to build shared libraries])
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
- aix[[4-9]]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- AC_MSG_RESULT([$enable_shared])
-
- AC_MSG_CHECKING([whether to build static libraries])
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- AC_MSG_RESULT([$enable_static])
-
- _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
- _LT_TAGVAR(LD, $1)="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- _LT_SYS_HIDDEN_LIBDEPS($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_SYS_DYNAMIC_LINKER($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
- fi # test -n "$compiler"
-
- GCC=$lt_save_GCC
- CC="$lt_save_CC"
-fi # test "$_lt_disable_FC" != yes
-
-AC_LANG_POP
-])# _LT_LANG_FC_CONFIG
-
-
-# _LT_LANG_GCJ_CONFIG([TAG])
-# --------------------------
-# Ensure that the configuration variables for the GNU Java Compiler compiler
-# are suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_GCJ_CONFIG],
-[AC_REQUIRE([LT_PROG_GCJ])dnl
-AC_LANG_SAVE
-
-# Source file extension for Java test sources.
-ac_ext=java
-
-# Object file extension for compiled Java test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="class foo {}"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC="$CC"
-lt_save_GCC=$GCC
-GCC=yes
-CC=${GCJ-"gcj"}
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)="$LD"
-_LT_CC_BASENAME([$compiler])
-
-# GCJ did not exist at the time GCC didn't implicitly link libc in.
-_LT_TAGVAR(archive_cmds_need_lc, $1)=no
-
-_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
-
-## CAVEAT EMPTOR:
-## There is no encapsulation within the following macros, do not change
-## the running order or otherwise move them around unless you know exactly
-## what you are doing...
-if test -n "$compiler"; then
- _LT_COMPILER_NO_RTTI($1)
- _LT_COMPILER_PIC($1)
- _LT_COMPILER_C_O($1)
- _LT_COMPILER_FILE_LOCKS($1)
- _LT_LINKER_SHLIBS($1)
- _LT_LINKER_HARDCODE_LIBPATH($1)
-
- _LT_CONFIG($1)
-fi
-
-AC_LANG_RESTORE
-
-GCC=$lt_save_GCC
-CC="$lt_save_CC"
-])# _LT_LANG_GCJ_CONFIG
-
-
-# _LT_LANG_RC_CONFIG([TAG])
-# -------------------------
-# Ensure that the configuration variables for the Windows resource compiler
-# are suitably defined. These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
-m4_defun([_LT_LANG_RC_CONFIG],
-[AC_REQUIRE([LT_PROG_RC])dnl
-AC_LANG_SAVE
-
-# Source file extension for RC test sources.
-ac_ext=rc
-
-# Object file extension for compiled RC test sources.
-objext=o
-_LT_TAGVAR(objext, $1)=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
-
-# Code to be used in simple link tests
-lt_simple_link_test_code="$lt_simple_compile_test_code"
-
-# ltmain only uses $CC for tagged configurations so make sure $CC is set.
-_LT_TAG_COMPILER
-
-# save warnings/boilerplate of simple test code
-_LT_COMPILER_BOILERPLATE
-_LT_LINKER_BOILERPLATE
-
-# Allow CC to be a program name with arguments.
-lt_save_CC="$CC"
-lt_save_GCC=$GCC
-GCC=
-CC=${RC-"windres"}
-compiler=$CC
-_LT_TAGVAR(compiler, $1)=$CC
-_LT_CC_BASENAME([$compiler])
-_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
-
-if test -n "$compiler"; then
- :
- _LT_CONFIG($1)
-fi
-
-GCC=$lt_save_GCC
-AC_LANG_RESTORE
-CC="$lt_save_CC"
-])# _LT_LANG_RC_CONFIG
-
-
-# LT_PROG_GCJ
-# -----------
-AC_DEFUN([LT_PROG_GCJ],
-[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
- [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
- [AC_CHECK_TOOL(GCJ, gcj,)
- test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
- AC_SUBST(GCJFLAGS)])])[]dnl
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
-
-
-# LT_PROG_RC
-# ----------
-AC_DEFUN([LT_PROG_RC],
-[AC_CHECK_TOOL(RC, windres,)
-])
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_RC], [])
-
-
-# _LT_DECL_EGREP
-# --------------
-# If we don't have a new enough Autoconf to choose the best grep
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_EGREP],
-[AC_REQUIRE([AC_PROG_EGREP])dnl
-AC_REQUIRE([AC_PROG_FGREP])dnl
-test -z "$GREP" && GREP=grep
-_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
-_LT_DECL([], [EGREP], [1], [An ERE matcher])
-_LT_DECL([], [FGREP], [1], [A literal string matcher])
-dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
-AC_SUBST([GREP])
-])
-
-
-# _LT_DECL_OBJDUMP
-# --------------
-# If we don't have a new enough Autoconf to choose the best objdump
-# available, choose the one first in the user's PATH.
-m4_defun([_LT_DECL_OBJDUMP],
-[AC_CHECK_TOOL(OBJDUMP, objdump, false)
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
-AC_SUBST([OBJDUMP])
-])
-
-
-# _LT_DECL_SED
-# ------------
-# Check for a fully-functional sed program, that truncates
-# as few characters as possible. Prefer GNU sed if found.
-m4_defun([_LT_DECL_SED],
-[AC_PROG_SED
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
-_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
- [Sed that helps us avoid accidentally triggering echo(1) options like -n])
-])# _LT_DECL_SED
-
-m4_ifndef([AC_PROG_SED], [
-############################################################
-# NOTE: This macro has been submitted for inclusion into #
-# GNU Autoconf as AC_PROG_SED. When it is available in #
-# a released version of Autoconf we should remove this #
-# macro and use it instead. #
-############################################################
-
-m4_defun([AC_PROG_SED],
-[AC_MSG_CHECKING([for a sed that does not truncate output])
-AC_CACHE_VAL(lt_cv_path_SED,
-[# Loop through the user's path and test for sed and gsed.
-# Then use that list of sed's as ones to test for truncation.
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for lt_ac_prog in sed gsed; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
- lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
- fi
- done
- done
-done
-IFS=$as_save_IFS
-lt_ac_max=0
-lt_ac_count=0
-# Add /usr/xpg4/bin/sed as it is typically found on Solaris
-# along with /bin/sed that truncates output.
-for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
- test ! -f $lt_ac_sed && continue
- cat /dev/null > conftest.in
- lt_ac_count=0
- echo $ECHO_N "0123456789$ECHO_C" >conftest.in
- # Check for GNU sed and select it if it is found.
- if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
- lt_cv_path_SED=$lt_ac_sed
- break
- fi
- while true; do
- cat conftest.in conftest.in >conftest.tmp
- mv conftest.tmp conftest.in
- cp conftest.in conftest.nl
- echo >>conftest.nl
- $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
- cmp -s conftest.out conftest.nl || break
- # 10000 chars as input seems more than enough
- test $lt_ac_count -gt 10 && break
- lt_ac_count=`expr $lt_ac_count + 1`
- if test $lt_ac_count -gt $lt_ac_max; then
- lt_ac_max=$lt_ac_count
- lt_cv_path_SED=$lt_ac_sed
- fi
- done
-done
-])
-SED=$lt_cv_path_SED
-AC_SUBST([SED])
-AC_MSG_RESULT([$SED])
-])#AC_PROG_SED
-])#m4_ifndef
-
-# Old name:
-AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([LT_AC_PROG_SED], [])
-
-
-# _LT_CHECK_SHELL_FEATURES
-# ------------------------
-# Find out whether the shell is Bourne or XSI compatible,
-# or has some other useful features.
-m4_defun([_LT_CHECK_SHELL_FEATURES],
-[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
- test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
- = c,a/b,, \
- && eval 'test $(( 1 + 1 )) -eq 2 \
- && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
- && xsi_shell=yes
-AC_MSG_RESULT([$xsi_shell])
-_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
-
-AC_MSG_CHECKING([whether the shell understands "+="])
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
- >/dev/null 2>&1 \
- && lt_shell_append=yes
-AC_MSG_RESULT([$lt_shell_append])
-_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- lt_unset=unset
-else
- lt_unset=false
-fi
-_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
- # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
- lt_SP2NL='tr \040 \012'
- lt_NL2SP='tr \015\012 \040\040'
- ;;
- *) # EBCDIC based system
- lt_SP2NL='tr \100 \n'
- lt_NL2SP='tr \r\n \100\100'
- ;;
-esac
-_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
-_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
-])# _LT_CHECK_SHELL_FEATURES
-
-
-# _LT_PROG_XSI_SHELLFNS
-# ---------------------
-# Bourne and XSI compatible variants of some useful shell functions.
-m4_defun([_LT_PROG_XSI_SHELLFNS],
-[case $xsi_shell in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result="${1##*/}"
-}
-
-# func_dirname_and_basename file append nondir_replacement
-# perform func_basename and func_dirname in a single function
-# call:
-# dirname: Compute the dirname of FILE. If nonempty,
-# add APPEND to the result, otherwise set result
-# to NONDIR_REPLACEMENT.
-# value returned in "$func_dirname_result"
-# basename: Compute filename of FILE.
-# value retuned in "$func_basename_result"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
- func_basename_result="${1##*/}"
-}
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-func_stripname ()
-{
- # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
- # positional parameters, so assign one to ordinary parameter first.
- func_stripname_result=${3}
- func_stripname_result=${func_stripname_result#"${1}"}
- func_stripname_result=${func_stripname_result%"${2}"}
-}
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=${1%%=*}
- func_opt_split_arg=${1#*=}
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- case ${1} in
- *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
- *) func_lo2o_result=${1} ;;
- esac
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=${1%.*}.lo
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=$(( $[*] ))
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=${#1}
-}
-
-_LT_EOF
- ;;
- *) # Bourne compatible functions.
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- # Extract subdirectory from the argument.
- func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
- if test "X$func_dirname_result" = "X${1}"; then
- func_dirname_result="${3}"
- else
- func_dirname_result="$func_dirname_result${2}"
- fi
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
-}
-
-dnl func_dirname_and_basename
-dnl A portable version of this function is already defined in general.m4sh
-dnl so there is no need for it here.
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-# func_strip_suffix prefix name
-func_stripname ()
-{
- case ${2} in
- .*) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
- *) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
- esac
-}
-
-# sed scripts:
-my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
-my_sed_long_arg='1s/^-[[^=]]*=//'
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
- func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=`expr "$[@]"`
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
-}
-
-_LT_EOF
-esac
-
-case $lt_shell_append in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$[1]+=\$[2]"
-}
-_LT_EOF
- ;;
- *)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$[1]=\$$[1]\$[2]"
-}
-
-_LT_EOF
- ;;
- esac
-])
diff --git a/config/ltmain.sh b/config/ltmain.sh
deleted file mode 100755
index fa4b1e1..0000000
--- a/config/ltmain.sh
+++ /dev/null
@@ -1,8413 +0,0 @@
-# Generated from ltmain.m4sh.
-
-# ltmain.sh (GNU libtool) 2.2.6b
-# Written by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 Free Software Foundation, Inc.
-# This is free software; see the source for copying conditions. There is NO
-# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-# GNU Libtool is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
-#
-# GNU Libtool is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING. If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html,
-# or obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-# Usage: $progname [OPTION]... [MODE-ARG]...
-#
-# Provide generalized library-building support services.
-#
-# --config show all configuration variables
-# --debug enable verbose shell tracing
-# -n, --dry-run display commands without modifying any files
-# --features display basic configuration information and exit
-# --mode=MODE use operation mode MODE
-# --preserve-dup-deps don't remove duplicate dependency libraries
-# --quiet, --silent don't print informational messages
-# --tag=TAG use configuration variables from tag TAG
-# -v, --verbose print informational messages (default)
-# --version print version information
-# -h, --help print short or long help message
-#
-# MODE must be one of the following:
-#
-# clean remove files from the build directory
-# compile compile a source file into a libtool object
-# execute automatically set library path, then run a program
-# finish complete the installation of libtool libraries
-# install install libraries or executables
-# link create a library or an executable
-# uninstall remove libraries from an installed directory
-#
-# MODE-ARGS vary depending on the MODE.
-# Try `$progname --help --mode=MODE' for a more detailed description of MODE.
-#
-# When reporting a bug, please describe a test case to reproduce it and
-# include the following information:
-#
-# host-triplet: $host
-# shell: $SHELL
-# compiler: $LTCC
-# compiler flags: $LTCFLAGS
-# linker: $LD (gnu? $with_gnu_ld)
-# $progname: (GNU libtool) 2.2.6b Debian-2.2.6b-2ubuntu3
-# automake: $automake_version
-# autoconf: $autoconf_version
-#
-# Report bugs to <bug-libtool at gnu.org>.
-
-PROGRAM=ltmain.sh
-PACKAGE=libtool
-VERSION="2.2.6b Debian-2.2.6b-2ubuntu3"
-TIMESTAMP=""
-package_revision=1.3017
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
-fi
-BIN_SH=xpg4; export BIN_SH # for Tru64
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# NLS nuisances: We save the old values to restore during execute mode.
-# Only set LANG and LC_ALL to C if already set.
-# These must not be set unconditionally because not all systems understand
-# e.g. LANG=C (notably SCO).
-lt_user_locale=
-lt_safe_locale=
-for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
-do
- eval "if test \"\${$lt_var+set}\" = set; then
- save_$lt_var=\$$lt_var
- $lt_var=C
- export $lt_var
- lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
- lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
- fi"
-done
-
-$lt_unset CDPATH
-
-
-
-
-
-: ${CP="cp -f"}
-: ${ECHO="echo"}
-: ${EGREP="/bin/grep -E"}
-: ${FGREP="/bin/grep -F"}
-: ${GREP="/bin/grep"}
-: ${LN_S="ln -s"}
-: ${MAKE="make"}
-: ${MKDIR="mkdir"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-: ${SED="/bin/sed"}
-: ${SHELL="${CONFIG_SHELL-/bin/sh}"}
-: ${Xsed="$SED -e 1s/^X//"}
-
-# Global variables:
-EXIT_SUCCESS=0
-EXIT_FAILURE=1
-EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing.
-EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake.
-
-exit_status=$EXIT_SUCCESS
-
-# Make sure IFS has a sensible default
-lt_nl='
-'
-IFS=" $lt_nl"
-
-dirname="s,/[^/]*$,,"
-basename="s,^.*/,,"
-
-# func_dirname_and_basename file append nondir_replacement
-# perform func_basename and func_dirname in a single function
-# call:
-# dirname: Compute the dirname of FILE. If nonempty,
-# add APPEND to the result, otherwise set result
-# to NONDIR_REPLACEMENT.
-# value returned in "$func_dirname_result"
-# basename: Compute filename of FILE.
-# value retuned in "$func_basename_result"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
- # Extract subdirectory from the argument.
- func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
- if test "X$func_dirname_result" = "X${1}"; then
- func_dirname_result="${3}"
- else
- func_dirname_result="$func_dirname_result${2}"
- fi
- func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
-}
-
-# Generated shell functions inserted here.
-
-# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
-# is ksh but when the shell is invoked as "sh" and the current value of
-# the _XPG environment variable is not equal to 1 (one), the special
-# positional parameter $0, within a function call, is the name of the
-# function.
-progpath="$0"
-
-# The name of this program:
-# In the unlikely event $progname began with a '-', it would play havoc with
-# func_echo (imagine progname=-n), so we prepend ./ in that case:
-func_dirname_and_basename "$progpath"
-progname=$func_basename_result
-case $progname in
- -*) progname=./$progname ;;
-esac
-
-# Make sure we have an absolute path for reexecution:
-case $progpath in
- [\\/]*|[A-Za-z]:\\*) ;;
- *[\\/]*)
- progdir=$func_dirname_result
- progdir=`cd "$progdir" && pwd`
- progpath="$progdir/$progname"
- ;;
- *)
- save_IFS="$IFS"
- IFS=:
- for progdir in $PATH; do
- IFS="$save_IFS"
- test -x "$progdir/$progname" && break
- done
- IFS="$save_IFS"
- test -n "$progdir" || progdir=`pwd`
- progpath="$progdir/$progname"
- ;;
-esac
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed="${SED}"' -e 1s/^X//'
-sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\(["`\\]\)/\\\1/g'
-
-# Re-`\' parameter expansions in output of double_quote_subst that were
-# `\'-ed in input to the same. If an odd number of `\' preceded a '$'
-# in input to double_quote_subst, that '$' was protected from expansion.
-# Since each input `\' is now two `\'s, look for any number of runs of
-# four `\'s followed by two `\'s and then a '$'. `\' that '$'.
-bs='\\'
-bs2='\\\\'
-bs4='\\\\\\\\'
-dollar='\$'
-sed_double_backslash="\
- s/$bs4/&\\
-/g
- s/^$bs2$dollar/$bs&/
- s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g
- s/\n//g"
-
-# Standard options:
-opt_dry_run=false
-opt_help=false
-opt_quiet=false
-opt_verbose=false
-opt_warning=:
-
-# func_echo arg...
-# Echo program name prefixed message, along with the current mode
-# name if it has been set yet.
-func_echo ()
-{
- $ECHO "$progname${mode+: }$mode: $*"
-}
-
-# func_verbose arg...
-# Echo program name prefixed message in verbose mode only.
-func_verbose ()
-{
- $opt_verbose && func_echo ${1+"$@"}
-
- # A bug in bash halts the script if the last line of a function
- # fails when set -e is in force, so we need another command to
- # work around that:
- :
-}
-
-# func_error arg...
-# Echo program name prefixed message to standard error.
-func_error ()
-{
- $ECHO "$progname${mode+: }$mode: "${1+"$@"} 1>&2
-}
-
-# func_warning arg...
-# Echo program name prefixed warning message to standard error.
-func_warning ()
-{
- $opt_warning && $ECHO "$progname${mode+: }$mode: warning: "${1+"$@"} 1>&2
-
- # bash bug again:
- :
-}
-
-# func_fatal_error arg...
-# Echo program name prefixed message to standard error, and exit.
-func_fatal_error ()
-{
- func_error ${1+"$@"}
- exit $EXIT_FAILURE
-}
-
-# func_fatal_help arg...
-# Echo program name prefixed message to standard error, followed by
-# a help hint, and exit.
-func_fatal_help ()
-{
- func_error ${1+"$@"}
- func_fatal_error "$help"
-}
-help="Try \`$progname --help' for more information." ## default
-
-
-# func_grep expression filename
-# Check whether EXPRESSION matches any line of FILENAME, without output.
-func_grep ()
-{
- $GREP "$1" "$2" >/dev/null 2>&1
-}
-
-
-# func_mkdir_p directory-path
-# Make sure the entire path to DIRECTORY-PATH is available.
-func_mkdir_p ()
-{
- my_directory_path="$1"
- my_dir_list=
-
- if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then
-
- # Protect directory names starting with `-'
- case $my_directory_path in
- -*) my_directory_path="./$my_directory_path" ;;
- esac
-
- # While some portion of DIR does not yet exist...
- while test ! -d "$my_directory_path"; do
- # ...make a list in topmost first order. Use a colon delimited
- # list incase some portion of path contains whitespace.
- my_dir_list="$my_directory_path:$my_dir_list"
-
- # If the last portion added has no slash in it, the list is done
- case $my_directory_path in */*) ;; *) break ;; esac
-
- # ...otherwise throw away the child directory and loop
- my_directory_path=`$ECHO "X$my_directory_path" | $Xsed -e "$dirname"`
- done
- my_dir_list=`$ECHO "X$my_dir_list" | $Xsed -e 's,:*$,,'`
-
- save_mkdir_p_IFS="$IFS"; IFS=':'
- for my_dir in $my_dir_list; do
- IFS="$save_mkdir_p_IFS"
- # mkdir can fail with a `File exist' error if two processes
- # try to create one of the directories concurrently. Don't
- # stop in that case!
- $MKDIR "$my_dir" 2>/dev/null || :
- done
- IFS="$save_mkdir_p_IFS"
-
- # Bail out if we (or some other process) failed to create a directory.
- test -d "$my_directory_path" || \
- func_fatal_error "Failed to create \`$1'"
- fi
-}
-
-
-# func_mktempdir [string]
-# Make a temporary directory that won't clash with other running
-# libtool processes, and avoids race conditions if possible. If
-# given, STRING is the basename for that directory.
-func_mktempdir ()
-{
- my_template="${TMPDIR-/tmp}/${1-$progname}"
-
- if test "$opt_dry_run" = ":"; then
- # Return a directory name, but don't create it in dry-run mode
- my_tmpdir="${my_template}-$$"
- else
-
- # If mktemp works, use that first and foremost
- my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
-
- if test ! -d "$my_tmpdir"; then
- # Failing that, at least try and use $RANDOM to avoid a race
- my_tmpdir="${my_template}-${RANDOM-0}$$"
-
- save_mktempdir_umask=`umask`
- umask 0077
- $MKDIR "$my_tmpdir"
- umask $save_mktempdir_umask
- fi
-
- # If we're not in dry-run mode, bomb out on failure
- test -d "$my_tmpdir" || \
- func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
- fi
-
- $ECHO "X$my_tmpdir" | $Xsed
-}
-
-
-# func_quote_for_eval arg
-# Aesthetically quote ARG to be evaled later.
-# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT
-# is double-quoted, suitable for a subsequent eval, whereas
-# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters
-# which are still active within double quotes backslashified.
-func_quote_for_eval ()
-{
- case $1 in
- *[\\\`\"\$]*)
- func_quote_for_eval_unquoted_result=`$ECHO "X$1" | $Xsed -e "$sed_quote_subst"` ;;
- *)
- func_quote_for_eval_unquoted_result="$1" ;;
- esac
-
- case $func_quote_for_eval_unquoted_result in
- # Double-quote args containing shell metacharacters to delay
- # word splitting, command substitution and and variable
- # expansion for a subsequent eval.
- # Many Bourne shells cannot handle close brackets correctly
- # in scan sets, so we specify it separately.
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\""
- ;;
- *)
- func_quote_for_eval_result="$func_quote_for_eval_unquoted_result"
- esac
-}
-
-
-# func_quote_for_expand arg
-# Aesthetically quote ARG to be evaled later; same as above,
-# but do not quote variable references.
-func_quote_for_expand ()
-{
- case $1 in
- *[\\\`\"]*)
- my_arg=`$ECHO "X$1" | $Xsed \
- -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
- *)
- my_arg="$1" ;;
- esac
-
- case $my_arg in
- # Double-quote args containing shell metacharacters to delay
- # word splitting and command substitution for a subsequent eval.
- # Many Bourne shells cannot handle close brackets correctly
- # in scan sets, so we specify it separately.
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- my_arg="\"$my_arg\""
- ;;
- esac
-
- func_quote_for_expand_result="$my_arg"
-}
-
-
-# func_show_eval cmd [fail_exp]
-# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is
-# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP
-# is given, then evaluate it.
-func_show_eval ()
-{
- my_cmd="$1"
- my_fail_exp="${2-:}"
-
- ${opt_silent-false} || {
- func_quote_for_expand "$my_cmd"
- eval "func_echo $func_quote_for_expand_result"
- }
-
- if ${opt_dry_run-false}; then :; else
- eval "$my_cmd"
- my_status=$?
- if test "$my_status" -eq 0; then :; else
- eval "(exit $my_status); $my_fail_exp"
- fi
- fi
-}
-
-
-# func_show_eval_locale cmd [fail_exp]
-# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is
-# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP
-# is given, then evaluate it. Use the saved locale for evaluation.
-func_show_eval_locale ()
-{
- my_cmd="$1"
- my_fail_exp="${2-:}"
-
- ${opt_silent-false} || {
- func_quote_for_expand "$my_cmd"
- eval "func_echo $func_quote_for_expand_result"
- }
-
- if ${opt_dry_run-false}; then :; else
- eval "$lt_user_locale
- $my_cmd"
- my_status=$?
- eval "$lt_safe_locale"
- if test "$my_status" -eq 0; then :; else
- eval "(exit $my_status); $my_fail_exp"
- fi
- fi
-}
-
-
-
-
-
-# func_version
-# Echo version message to standard output and exit.
-func_version ()
-{
- $SED -n '/^# '$PROGRAM' (GNU /,/# warranty; / {
- s/^# //
- s/^# *$//
- s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
- p
- }' < "$progpath"
- exit $?
-}
-
-# func_usage
-# Echo short help message to standard output and exit.
-func_usage ()
-{
- $SED -n '/^# Usage:/,/# -h/ {
- s/^# //
- s/^# *$//
- s/\$progname/'$progname'/
- p
- }' < "$progpath"
- $ECHO
- $ECHO "run \`$progname --help | more' for full usage"
- exit $?
-}
-
-# func_help
-# Echo long help message to standard output and exit.
-func_help ()
-{
- $SED -n '/^# Usage:/,/# Report bugs to/ {
- s/^# //
- s/^# *$//
- s*\$progname*'$progname'*
- s*\$host*'"$host"'*
- s*\$SHELL*'"$SHELL"'*
- s*\$LTCC*'"$LTCC"'*
- s*\$LTCFLAGS*'"$LTCFLAGS"'*
- s*\$LD*'"$LD"'*
- s/\$with_gnu_ld/'"$with_gnu_ld"'/
- s/\$automake_version/'"`(automake --version) 2>/dev/null |$SED 1q`"'/
- s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/
- p
- }' < "$progpath"
- exit $?
-}
-
-# func_missing_arg argname
-# Echo program name prefixed message to standard error and set global
-# exit_cmd.
-func_missing_arg ()
-{
- func_error "missing argument for $1"
- exit_cmd=exit
-}
-
-exit_cmd=:
-
-
-
-
-
-# Check that we have a working $ECHO.
-if test "X$1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X$1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then
- # Yippee, $ECHO works!
- :
-else
- # Restart under the correct shell, and then maybe $ECHO will work.
- exec $SHELL "$progpath" --no-reexec ${1+"$@"}
-fi
-
-if test "X$1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<EOF
-$*
-EOF
- exit $EXIT_SUCCESS
-fi
-
-magic="%%%MAGIC variable%%%"
-magic_exe="%%%MAGIC EXE variable%%%"
-
-# Global variables.
-# $mode is unset
-nonopt=
-execute_dlfiles=
-preserve_args=
-lo2o="s/\\.lo\$/.${objext}/"
-o2lo="s/\\.${objext}\$/.lo/"
-extracted_archives=
-extracted_serial=0
-
-opt_dry_run=false
-opt_duplicate_deps=false
-opt_silent=false
-opt_debug=:
-
-# If this variable is set in any of the actions, the command in it
-# will be execed at the end. This prevents here-documents from being
-# left over by shells.
-exec_cmd=
-
-# func_fatal_configuration arg...
-# Echo program name prefixed message to standard error, followed by
-# a configuration failure hint, and exit.
-func_fatal_configuration ()
-{
- func_error ${1+"$@"}
- func_error "See the $PACKAGE documentation for more information."
- func_fatal_error "Fatal configuration error."
-}
-
-
-# func_config
-# Display the configuration for all the tags in this script.
-func_config ()
-{
- re_begincf='^# ### BEGIN LIBTOOL'
- re_endcf='^# ### END LIBTOOL'
-
- # Default configuration.
- $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath"
-
- # Now print the configurations for the tags.
- for tagname in $taglist; do
- $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath"
- done
-
- exit $?
-}
-
-# func_features
-# Display the features supported by this script.
-func_features ()
-{
- $ECHO "host: $host"
- if test "$build_libtool_libs" = yes; then
- $ECHO "enable shared libraries"
- else
- $ECHO "disable shared libraries"
- fi
- if test "$build_old_libs" = yes; then
- $ECHO "enable static libraries"
- else
- $ECHO "disable static libraries"
- fi
-
- exit $?
-}
-
-# func_enable_tag tagname
-# Verify that TAGNAME is valid, and either flag an error and exit, or
-# enable the TAGNAME tag. We also add TAGNAME to the global $taglist
-# variable here.
-func_enable_tag ()
-{
- # Global variable:
- tagname="$1"
-
- re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
- re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
- sed_extractcf="/$re_begincf/,/$re_endcf/p"
-
- # Validate tagname.
- case $tagname in
- *[!-_A-Za-z0-9,/]*)
- func_fatal_error "invalid tag name: $tagname"
- ;;
- esac
-
- # Don't test for the "default" C tag, as we know it's
- # there but not specially marked.
- case $tagname in
- CC) ;;
- *)
- if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
- taglist="$taglist $tagname"
-
- # Evaluate the configuration. Be careful to quote the path
- # and the sed script, to avoid splitting on whitespace, but
- # also don't use non-portable quotes within backquotes within
- # quotes we have to do it in 2 steps:
- extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
- eval "$extractedcf"
- else
- func_error "ignoring unknown tag $tagname"
- fi
- ;;
- esac
-}
-
-# Parse options once, thoroughly. This comes as soon as possible in
-# the script to make things like `libtool --version' happen quickly.
-{
-
- # Shorthand for --mode=foo, only valid as the first argument
- case $1 in
- clean|clea|cle|cl)
- shift; set dummy --mode clean ${1+"$@"}; shift
- ;;
- compile|compil|compi|comp|com|co|c)
- shift; set dummy --mode compile ${1+"$@"}; shift
- ;;
- execute|execut|execu|exec|exe|ex|e)
- shift; set dummy --mode execute ${1+"$@"}; shift
- ;;
- finish|finis|fini|fin|fi|f)
- shift; set dummy --mode finish ${1+"$@"}; shift
- ;;
- install|instal|insta|inst|ins|in|i)
- shift; set dummy --mode install ${1+"$@"}; shift
- ;;
- link|lin|li|l)
- shift; set dummy --mode link ${1+"$@"}; shift
- ;;
- uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
- shift; set dummy --mode uninstall ${1+"$@"}; shift
- ;;
- esac
-
- # Parse non-mode specific arguments:
- while test "$#" -gt 0; do
- opt="$1"
- shift
-
- case $opt in
- --config) func_config ;;
-
- --debug) preserve_args="$preserve_args $opt"
- func_echo "enabling shell trace mode"
- opt_debug='set -x'
- $opt_debug
- ;;
-
- -dlopen) test "$#" -eq 0 && func_missing_arg "$opt" && break
- execute_dlfiles="$execute_dlfiles $1"
- shift
- ;;
-
- --dry-run | -n) opt_dry_run=: ;;
- --features) func_features ;;
- --finish) mode="finish" ;;
-
- --mode) test "$#" -eq 0 && func_missing_arg "$opt" && break
- case $1 in
- # Valid mode arguments:
- clean) ;;
- compile) ;;
- execute) ;;
- finish) ;;
- install) ;;
- link) ;;
- relink) ;;
- uninstall) ;;
-
- # Catch anything else as an error
- *) func_error "invalid argument for $opt"
- exit_cmd=exit
- break
- ;;
- esac
-
- mode="$1"
- shift
- ;;
-
- --preserve-dup-deps)
- opt_duplicate_deps=: ;;
-
- --quiet|--silent) preserve_args="$preserve_args $opt"
- opt_silent=:
- ;;
-
- --verbose| -v) preserve_args="$preserve_args $opt"
- opt_silent=false
- ;;
-
- --tag) test "$#" -eq 0 && func_missing_arg "$opt" && break
- preserve_args="$preserve_args $opt $1"
- func_enable_tag "$1" # tagname is set here
- shift
- ;;
-
- # Separate optargs to long options:
- -dlopen=*|--mode=*|--tag=*)
- func_opt_split "$opt"
- set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"}
- shift
- ;;
-
- -\?|-h) func_usage ;;
- --help) opt_help=: ;;
- --version) func_version ;;
-
- -*) func_fatal_help "unrecognized option \`$opt'" ;;
-
- *) nonopt="$opt"
- break
- ;;
- esac
- done
-
-
- case $host in
- *cygwin* | *mingw* | *pw32* | *cegcc*)
- # don't eliminate duplications in $postdeps and $predeps
- opt_duplicate_compiler_generated_deps=:
- ;;
- *)
- opt_duplicate_compiler_generated_deps=$opt_duplicate_deps
- ;;
- esac
-
- # Having warned about all mis-specified options, bail out if
- # anything was wrong.
- $exit_cmd $EXIT_FAILURE
-}
-
-# func_check_version_match
-# Ensure that we are using m4 macros, and libtool script from the same
-# release of libtool.
-func_check_version_match ()
-{
- if test "$package_revision" != "$macro_revision"; then
- if test "$VERSION" != "$macro_version"; then
- if test -z "$macro_version"; then
- cat >&2 <<_LT_EOF
-$progname: Version mismatch error. This is $PACKAGE $VERSION, but the
-$progname: definition of this LT_INIT comes from an older release.
-$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
-$progname: and run autoconf again.
-_LT_EOF
- else
- cat >&2 <<_LT_EOF
-$progname: Version mismatch error. This is $PACKAGE $VERSION, but the
-$progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
-$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
-$progname: and run autoconf again.
-_LT_EOF
- fi
- else
- cat >&2 <<_LT_EOF
-$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision,
-$progname: but the definition of this LT_INIT comes from revision $macro_revision.
-$progname: You should recreate aclocal.m4 with macros from revision $package_revision
-$progname: of $PACKAGE $VERSION and run autoconf again.
-_LT_EOF
- fi
-
- exit $EXIT_MISMATCH
- fi
-}
-
-
-## ----------- ##
-## Main. ##
-## ----------- ##
-
-$opt_help || {
- # Sanity checks first:
- func_check_version_match
-
- if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
- func_fatal_configuration "not configured to build any kind of library"
- fi
-
- test -z "$mode" && func_fatal_error "error: you must specify a MODE."
-
-
- # Darwin sucks
- eval std_shrext=\"$shrext_cmds\"
-
-
- # Only execute mode is allowed to have -dlopen flags.
- if test -n "$execute_dlfiles" && test "$mode" != execute; then
- func_error "unrecognized option \`-dlopen'"
- $ECHO "$help" 1>&2
- exit $EXIT_FAILURE
- fi
-
- # Change the help message to a mode-specific one.
- generic_help="$help"
- help="Try \`$progname --help --mode=$mode' for more information."
-}
-
-
-# func_lalib_p file
-# True iff FILE is a libtool `.la' library or `.lo' object file.
-# This function is only a basic sanity check; it will hardly flush out
-# determined imposters.
-func_lalib_p ()
-{
- test -f "$1" &&
- $SED -e 4q "$1" 2>/dev/null \
- | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
-}
-
-# func_lalib_unsafe_p file
-# True iff FILE is a libtool `.la' library or `.lo' object file.
-# This function implements the same check as func_lalib_p without
-# resorting to external programs. To this end, it redirects stdin and
-# closes it afterwards, without saving the original file descriptor.
-# As a safety measure, use it only where a negative result would be
-# fatal anyway. Works if `file' does not exist.
-func_lalib_unsafe_p ()
-{
- lalib_p=no
- if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then
- for lalib_p_l in 1 2 3 4
- do
- read lalib_p_line
- case "$lalib_p_line" in
- \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
- esac
- done
- exec 0<&5 5<&-
- fi
- test "$lalib_p" = yes
-}
-
-# func_ltwrapper_script_p file
-# True iff FILE is a libtool wrapper script
-# This function is only a basic sanity check; it will hardly flush out
-# determined imposters.
-func_ltwrapper_script_p ()
-{
- func_lalib_p "$1"
-}
-
-# func_ltwrapper_executable_p file
-# True iff FILE is a libtool wrapper executable
-# This function is only a basic sanity check; it will hardly flush out
-# determined imposters.
-func_ltwrapper_executable_p ()
-{
- func_ltwrapper_exec_suffix=
- case $1 in
- *.exe) ;;
- *) func_ltwrapper_exec_suffix=.exe ;;
- esac
- $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1
-}
-
-# func_ltwrapper_scriptname file
-# Assumes file is an ltwrapper_executable
-# uses $file to determine the appropriate filename for a
-# temporary ltwrapper_script.
-func_ltwrapper_scriptname ()
-{
- func_ltwrapper_scriptname_result=""
- if func_ltwrapper_executable_p "$1"; then
- func_dirname_and_basename "$1" "" "."
- func_stripname '' '.exe' "$func_basename_result"
- func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper"
- fi
-}
-
-# func_ltwrapper_p file
-# True iff FILE is a libtool wrapper script or wrapper executable
-# This function is only a basic sanity check; it will hardly flush out
-# determined imposters.
-func_ltwrapper_p ()
-{
- func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1"
-}
-
-
-# func_execute_cmds commands fail_cmd
-# Execute tilde-delimited COMMANDS.
-# If FAIL_CMD is given, eval that upon failure.
-# FAIL_CMD may read-access the current command in variable CMD!
-func_execute_cmds ()
-{
- $opt_debug
- save_ifs=$IFS; IFS='~'
- for cmd in $1; do
- IFS=$save_ifs
- eval cmd=\"$cmd\"
- func_show_eval "$cmd" "${2-:}"
- done
- IFS=$save_ifs
-}
-
-
-# func_source file
-# Source FILE, adding directory component if necessary.
-# Note that it is not necessary on cygwin/mingw to append a dot to
-# FILE even if both FILE and FILE.exe exist: automatic-append-.exe
-# behavior happens only for exec(3), not for open(2)! Also, sourcing
-# `FILE.' does not work on cygwin managed mounts.
-func_source ()
-{
- $opt_debug
- case $1 in
- */* | *\\*) . "$1" ;;
- *) . "./$1" ;;
- esac
-}
-
-
-# func_infer_tag arg
-# Infer tagged configuration to use if any are available and
-# if one wasn't chosen via the "--tag" command line option.
-# Only attempt this if the compiler in the base compile
-# command doesn't match the default compiler.
-# arg is usually of the form 'gcc ...'
-func_infer_tag ()
-{
- $opt_debug
- if test -n "$available_tags" && test -z "$tagname"; then
- CC_quoted=
- for arg in $CC; do
- func_quote_for_eval "$arg"
- CC_quoted="$CC_quoted $func_quote_for_eval_result"
- done
- case $@ in
- # Blanks in the command may have been stripped by the calling shell,
- # but not from the CC environment variable when configure was run.
- " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) ;;
- # Blanks at the start of $base_compile will cause this to fail
- # if we don't check for them as well.
- *)
- for z in $available_tags; do
- if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
- # Evaluate the configuration.
- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
- CC_quoted=
- for arg in $CC; do
- # Double-quote args containing other shell metacharacters.
- func_quote_for_eval "$arg"
- CC_quoted="$CC_quoted $func_quote_for_eval_result"
- done
- case "$@ " in
- " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*)
- # The compiler in the base compile command matches
- # the one in the tagged configuration.
- # Assume this is the tagged configuration we want.
- tagname=$z
- break
- ;;
- esac
- fi
- done
- # If $tagname still isn't set, then no tagged configuration
- # was found and let the user know that the "--tag" command
- # line option must be used.
- if test -z "$tagname"; then
- func_echo "unable to infer tagged configuration"
- func_fatal_error "specify a tag with \`--tag'"
-# else
-# func_verbose "using $tagname tagged configuration"
- fi
- ;;
- esac
- fi
-}
-
-
-
-# func_write_libtool_object output_name pic_name nonpic_name
-# Create a libtool object file (analogous to a ".la" file),
-# but don't create it if we're doing a dry run.
-func_write_libtool_object ()
-{
- write_libobj=${1}
- if test "$build_libtool_libs" = yes; then
- write_lobj=\'${2}\'
- else
- write_lobj=none
- fi
-
- if test "$build_old_libs" = yes; then
- write_oldobj=\'${3}\'
- else
- write_oldobj=none
- fi
-
- $opt_dry_run || {
- cat >${write_libobj}T <<EOF
-# $write_libobj - a libtool object file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-#
-# Please DO NOT delete this file!
-# It is necessary for linking the library.
-
-# Name of the PIC object.
-pic_object=$write_lobj
-
-# Name of the non-PIC object
-non_pic_object=$write_oldobj
-
-EOF
- $MV "${write_libobj}T" "${write_libobj}"
- }
-}
-
-# func_mode_compile arg...
-func_mode_compile ()
-{
- $opt_debug
- # Get the compilation command and the source file.
- base_compile=
- srcfile="$nonopt" # always keep a non-empty value in "srcfile"
- suppress_opt=yes
- suppress_output=
- arg_mode=normal
- libobj=
- later=
- pie_flag=
-
- for arg
- do
- case $arg_mode in
- arg )
- # do not "continue". Instead, add this to base_compile
- lastarg="$arg"
- arg_mode=normal
- ;;
-
- target )
- libobj="$arg"
- arg_mode=normal
- continue
- ;;
-
- normal )
- # Accept any command-line options.
- case $arg in
- -o)
- test -n "$libobj" && \
- func_fatal_error "you cannot specify \`-o' more than once"
- arg_mode=target
- continue
- ;;
-
- -pie | -fpie | -fPIE)
- pie_flag="$pie_flag $arg"
- continue
- ;;
-
- -shared | -static | -prefer-pic | -prefer-non-pic)
- later="$later $arg"
- continue
- ;;
-
- -no-suppress)
- suppress_opt=no
- continue
- ;;
-
- -Xcompiler)
- arg_mode=arg # the next one goes into the "base_compile" arg list
- continue # The current "srcfile" will either be retained or
- ;; # replaced later. I would guess that would be a bug.
-
- -Wc,*)
- func_stripname '-Wc,' '' "$arg"
- args=$func_stripname_result
- lastarg=
- save_ifs="$IFS"; IFS=','
- for arg in $args; do
- IFS="$save_ifs"
- func_quote_for_eval "$arg"
- lastarg="$lastarg $func_quote_for_eval_result"
- done
- IFS="$save_ifs"
- func_stripname ' ' '' "$lastarg"
- lastarg=$func_stripname_result
-
- # Add the arguments to base_compile.
- base_compile="$base_compile $lastarg"
- continue
- ;;
-
- *)
- # Accept the current argument as the source file.
- # The previous "srcfile" becomes the current argument.
- #
- lastarg="$srcfile"
- srcfile="$arg"
- ;;
- esac # case $arg
- ;;
- esac # case $arg_mode
-
- # Aesthetically quote the previous argument.
- func_quote_for_eval "$lastarg"
- base_compile="$base_compile $func_quote_for_eval_result"
- done # for arg
-
- case $arg_mode in
- arg)
- func_fatal_error "you must specify an argument for -Xcompile"
- ;;
- target)
- func_fatal_error "you must specify a target with \`-o'"
- ;;
- *)
- # Get the name of the library object.
- test -z "$libobj" && {
- func_basename "$srcfile"
- libobj="$func_basename_result"
- }
- ;;
- esac
-
- # Recognize several different file suffixes.
- # If the user specifies -o file.o, it is replaced with file.lo
- case $libobj in
- *.[cCFSifmso] | \
- *.ada | *.adb | *.ads | *.asm | \
- *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
- *.[fF][09]? | *.for | *.java | *.obj | *.sx)
- func_xform "$libobj"
- libobj=$func_xform_result
- ;;
- esac
-
- case $libobj in
- *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
- *)
- func_fatal_error "cannot determine name of library object from \`$libobj'"
- ;;
- esac
-
- func_infer_tag $base_compile
-
- for arg in $later; do
- case $arg in
- -shared)
- test "$build_libtool_libs" != yes && \
- func_fatal_configuration "can not build a shared library"
- build_old_libs=no
- continue
- ;;
-
- -static)
- build_libtool_libs=no
- build_old_libs=yes
- continue
- ;;
-
- -prefer-pic)
- pic_mode=yes
- continue
- ;;
-
- -prefer-non-pic)
- pic_mode=no
- continue
- ;;
- esac
- done
-
- func_quote_for_eval "$libobj"
- test "X$libobj" != "X$func_quote_for_eval_result" \
- && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \
- && func_warning "libobj name \`$libobj' may not contain shell special characters."
- func_dirname_and_basename "$obj" "/" ""
- objname="$func_basename_result"
- xdir="$func_dirname_result"
- lobj=${xdir}$objdir/$objname
-
- test -z "$base_compile" && \
- func_fatal_help "you must specify a compilation command"
-
- # Delete any leftover library objects.
- if test "$build_old_libs" = yes; then
- removelist="$obj $lobj $libobj ${libobj}T"
- else
- removelist="$lobj $libobj ${libobj}T"
- fi
-
- # On Cygwin there's no "real" PIC flag so we must build both object types
- case $host_os in
- cygwin* | mingw* | pw32* | os2* | cegcc*)
- pic_mode=default
- ;;
- esac
- if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
- # non-PIC code in shared libraries is not supported
- pic_mode=default
- fi
-
- # Calculate the filename of the output object if compiler does
- # not support -o with -c
- if test "$compiler_c_o" = no; then
- output_obj=`$ECHO "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
- lockfile="$output_obj.lock"
- else
- output_obj=
- need_locks=no
- lockfile=
- fi
-
- # Lock this critical section if it is needed
- # We use this script file to make the link, it avoids creating a new file
- if test "$need_locks" = yes; then
- until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
- func_echo "Waiting for $lockfile to be removed"
- sleep 2
- done
- elif test "$need_locks" = warn; then
- if test -f "$lockfile"; then
- $ECHO "\
-*** ERROR, $lockfile exists and contains:
-`cat $lockfile 2>/dev/null`
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $opt_dry_run || $RM $removelist
- exit $EXIT_FAILURE
- fi
- removelist="$removelist $output_obj"
- $ECHO "$srcfile" > "$lockfile"
- fi
-
- $opt_dry_run || $RM $removelist
- removelist="$removelist $lockfile"
- trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15
-
- if test -n "$fix_srcfile_path"; then
- eval srcfile=\"$fix_srcfile_path\"
- fi
- func_quote_for_eval "$srcfile"
- qsrcfile=$func_quote_for_eval_result
-
- # Only build a PIC object if we are building libtool libraries.
- if test "$build_libtool_libs" = yes; then
- # Without this assignment, base_compile gets emptied.
- fbsd_hideous_sh_bug=$base_compile
-
- if test "$pic_mode" != no; then
- command="$base_compile $qsrcfile $pic_flag"
- else
- # Don't build PIC code
- command="$base_compile $qsrcfile"
- fi
-
- func_mkdir_p "$xdir$objdir"
-
- if test -z "$output_obj"; then
- # Place PIC objects in $objdir
- command="$command -o $lobj"
- fi
-
- func_show_eval_locale "$command" \
- 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
-
- if test "$need_locks" = warn &&
- test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
- $ECHO "\
-*** ERROR, $lockfile contains:
-`cat $lockfile 2>/dev/null`
-
-but it should contain:
-$srcfile
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $opt_dry_run || $RM $removelist
- exit $EXIT_FAILURE
- fi
-
- # Just move the object if needed, then go on to compile the next one
- if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
- func_show_eval '$MV "$output_obj" "$lobj"' \
- 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
- fi
-
- # Allow error messages only from the first compilation.
- if test "$suppress_opt" = yes; then
- suppress_output=' >/dev/null 2>&1'
- fi
- fi
-
- # Only build a position-dependent object if we build old libraries.
- if test "$build_old_libs" = yes; then
- if test "$pic_mode" != yes; then
- # Don't build PIC code
- command="$base_compile $qsrcfile$pie_flag"
- else
- command="$base_compile $qsrcfile $pic_flag"
- fi
- if test "$compiler_c_o" = yes; then
- command="$command -o $obj"
- fi
-
- # Suppress compiler output if we already did a PIC compilation.
- command="$command$suppress_output"
- func_show_eval_locale "$command" \
- '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
-
- if test "$need_locks" = warn &&
- test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
- $ECHO "\
-*** ERROR, $lockfile contains:
-`cat $lockfile 2>/dev/null`
-
-but it should contain:
-$srcfile
-
-This indicates that another process is trying to use the same
-temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together. If you
-repeat this compilation, it may succeed, by chance, but you had better
-avoid parallel builds (make -j) in this platform, or get a better
-compiler."
-
- $opt_dry_run || $RM $removelist
- exit $EXIT_FAILURE
- fi
-
- # Just move the object if needed
- if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
- func_show_eval '$MV "$output_obj" "$obj"' \
- 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
- fi
- fi
-
- $opt_dry_run || {
- func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
-
- # Unlock the critical section if it was locked
- if test "$need_locks" != no; then
- removelist=$lockfile
- $RM "$lockfile"
- fi
- }
-
- exit $EXIT_SUCCESS
-}
-
-$opt_help || {
-test "$mode" = compile && func_mode_compile ${1+"$@"}
-}
-
-func_mode_help ()
-{
- # We need to display help for each of the modes.
- case $mode in
- "")
- # Generic help is extracted from the usage comments
- # at the start of this file.
- func_help
- ;;
-
- clean)
- $ECHO \
-"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
-
-Remove files from the build directory.
-
-RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-to RM.
-
-If FILE is a libtool library, object or program, all the files associated
-with it are deleted. Otherwise, only FILE itself is deleted using RM."
- ;;
-
- compile)
- $ECHO \
-"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
-
-Compile a source file into a libtool library object.
-
-This mode accepts the following additional options:
-
- -o OUTPUT-FILE set the output file name to OUTPUT-FILE
- -no-suppress do not suppress compiler output for multiple passes
- -prefer-pic try to building PIC objects only
- -prefer-non-pic try to building non-PIC objects only
- -shared do not build a \`.o' file suitable for static linking
- -static only build a \`.o' file suitable for static linking
-
-COMPILE-COMMAND is a command to be used in creating a \`standard' object file
-from the given SOURCEFILE.
-
-The output file name is determined by removing the directory component from
-SOURCEFILE, then substituting the C source code suffix \`.c' with the
-library object suffix, \`.lo'."
- ;;
-
- execute)
- $ECHO \
-"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
-
-Automatically set library path, then run a program.
-
-This mode accepts the following additional options:
-
- -dlopen FILE add the directory containing FILE to the library path
-
-This mode sets the library path environment variable according to \`-dlopen'
-flags.
-
-If any of the ARGS are libtool executable wrappers, then they are translated
-into their corresponding uninstalled binary, and any of their required library
-directories are added to the library path.
-
-Then, COMMAND is executed, with ARGS as arguments."
- ;;
-
- finish)
- $ECHO \
-"Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
-
-Complete the installation of libtool libraries.
-
-Each LIBDIR is a directory that contains libtool libraries.
-
-The commands that this mode executes may require superuser privileges. Use
-the \`--dry-run' option if you just want to see what would be executed."
- ;;
-
- install)
- $ECHO \
-"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
-
-Install executables or libraries.
-
-INSTALL-COMMAND is the installation command. The first component should be
-either the \`install' or \`cp' program.
-
-The following components of INSTALL-COMMAND are treated specially:
-
- -inst-prefix PREFIX-DIR Use PREFIX-DIR as a staging area for installation
-
-The rest of the components are interpreted as arguments to that command (only
-BSD-compatible install options are recognized)."
- ;;
-
- link)
- $ECHO \
-"Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
-
-Link object files or libraries together to form another library, or to
-create an executable program.
-
-LINK-COMMAND is a command using the C compiler that you would use to create
-a program from several object files.
-
-The following components of LINK-COMMAND are treated specially:
-
- -all-static do not do any dynamic linking at all
- -avoid-version do not add a version suffix if possible
- -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
- -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
- -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
- -export-symbols SYMFILE
- try to export only the symbols listed in SYMFILE
- -export-symbols-regex REGEX
- try to export only the symbols matching REGEX
- -LLIBDIR search LIBDIR for required installed libraries
- -lNAME OUTPUT-FILE requires the installed library libNAME
- -module build a library that can dlopened
- -no-fast-install disable the fast-install mode
- -no-install link a not-installable executable
- -no-undefined declare that a library does not refer to external symbols
- -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
- -objectlist FILE Use a list of object files found in FILE to specify objects
- -precious-files-regex REGEX
- don't remove output files matching REGEX
- -release RELEASE specify package release information
- -rpath LIBDIR the created library will eventually be installed in LIBDIR
- -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
- -shared only do dynamic linking of libtool libraries
- -shrext SUFFIX override the standard shared library file extension
- -static do not do any dynamic linking of uninstalled libtool libraries
- -static-libtool-libs
- do not do any dynamic linking of libtool libraries
- -version-info CURRENT[:REVISION[:AGE]]
- specify library version info [each variable defaults to 0]
- -weak LIBNAME declare that the target provides the LIBNAME interface
-
-All other options (arguments beginning with \`-') are ignored.
-
-Every other argument is treated as a filename. Files ending in \`.la' are
-treated as uninstalled libtool libraries, other files are standard or library
-object files.
-
-If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
-only library objects (\`.lo' files) may be specified, and \`-rpath' is
-required, except when creating a convenience library.
-
-If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
-using \`ar' and \`ranlib', or on Windows using \`lib'.
-
-If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
-is created, otherwise an executable program is created."
- ;;
-
- uninstall)
- $ECHO \
-"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
-
-Remove libraries from an installation directory.
-
-RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-to RM.
-
-If FILE is a libtool library, all the files associated with it are deleted.
-Otherwise, only FILE itself is deleted using RM."
- ;;
-
- *)
- func_fatal_help "invalid operation mode \`$mode'"
- ;;
- esac
-
- $ECHO
- $ECHO "Try \`$progname --help' for more information about other modes."
-
- exit $?
-}
-
- # Now that we've collected a possible --mode arg, show help if necessary
- $opt_help && func_mode_help
-
-
-# func_mode_execute arg...
-func_mode_execute ()
-{
- $opt_debug
- # The first argument is the command name.
- cmd="$nonopt"
- test -z "$cmd" && \
- func_fatal_help "you must specify a COMMAND"
-
- # Handle -dlopen flags immediately.
- for file in $execute_dlfiles; do
- test -f "$file" \
- || func_fatal_help "\`$file' is not a file"
-
- dir=
- case $file in
- *.la)
- # Check to see that this really is a libtool archive.
- func_lalib_unsafe_p "$file" \
- || func_fatal_help "\`$lib' is not a valid libtool archive"
-
- # Read the libtool library.
- dlname=
- library_names=
- func_source "$file"
-
- # Skip this library if it cannot be dlopened.
- if test -z "$dlname"; then
- # Warn if it was a shared library.
- test -n "$library_names" && \
- func_warning "\`$file' was not linked with \`-export-dynamic'"
- continue
- fi
-
- func_dirname "$file" "" "."
- dir="$func_dirname_result"
-
- if test -f "$dir/$objdir/$dlname"; then
- dir="$dir/$objdir"
- else
- if test ! -f "$dir/$dlname"; then
- func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'"
- fi
- fi
- ;;
-
- *.lo)
- # Just add the directory containing the .lo file.
- func_dirname "$file" "" "."
- dir="$func_dirname_result"
- ;;
-
- *)
- func_warning "\`-dlopen' is ignored for non-libtool libraries and objects"
- continue
- ;;
- esac
-
- # Get the absolute pathname.
- absdir=`cd "$dir" && pwd`
- test -n "$absdir" && dir="$absdir"
-
- # Now add the directory to shlibpath_var.
- if eval "test -z \"\$$shlibpath_var\""; then
- eval "$shlibpath_var=\"\$dir\""
- else
- eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
- fi
- done
-
- # This variable tells wrapper scripts just to set shlibpath_var
- # rather than running their programs.
- libtool_execute_magic="$magic"
-
- # Check if any of the arguments is a wrapper script.
- args=
- for file
- do
- case $file in
- -*) ;;
- *)
- # Do a test to see if this is really a libtool program.
- if func_ltwrapper_script_p "$file"; then
- func_source "$file"
- # Transform arg to wrapped name.
- file="$progdir/$program"
- elif func_ltwrapper_executable_p "$file"; then
- func_ltwrapper_scriptname "$file"
- func_source "$func_ltwrapper_scriptname_result"
- # Transform arg to wrapped name.
- file="$progdir/$program"
- fi
- ;;
- esac
- # Quote arguments (to preserve shell metacharacters).
- func_quote_for_eval "$file"
- args="$args $func_quote_for_eval_result"
- done
-
- if test "X$opt_dry_run" = Xfalse; then
- if test -n "$shlibpath_var"; then
- # Export the shlibpath_var.
- eval "export $shlibpath_var"
- fi
-
- # Restore saved environment variables
- for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
- do
- eval "if test \"\${save_$lt_var+set}\" = set; then
- $lt_var=\$save_$lt_var; export $lt_var
- else
- $lt_unset $lt_var
- fi"
- done
-
- # Now prepare to actually exec the command.
- exec_cmd="\$cmd$args"
- else
- # Display what would be done.
- if test -n "$shlibpath_var"; then
- eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
- $ECHO "export $shlibpath_var"
- fi
- $ECHO "$cmd$args"
- exit $EXIT_SUCCESS
- fi
-}
-
-test "$mode" = execute && func_mode_execute ${1+"$@"}
-
-
-# func_mode_finish arg...
-func_mode_finish ()
-{
- $opt_debug
- libdirs="$nonopt"
- admincmds=
-
- if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
- for dir
- do
- libdirs="$libdirs $dir"
- done
-
- for libdir in $libdirs; do
- if test -n "$finish_cmds"; then
- # Do each command in the finish commands.
- func_execute_cmds "$finish_cmds" 'admincmds="$admincmds
-'"$cmd"'"'
- fi
- if test -n "$finish_eval"; then
- # Do the single finish_eval.
- eval cmds=\"$finish_eval\"
- $opt_dry_run || eval "$cmds" || admincmds="$admincmds
- $cmds"
- fi
- done
- fi
-
- # Exit here if they wanted silent mode.
- $opt_silent && exit $EXIT_SUCCESS
-
- $ECHO "X----------------------------------------------------------------------" | $Xsed
- $ECHO "Libraries have been installed in:"
- for libdir in $libdirs; do
- $ECHO " $libdir"
- done
- $ECHO
- $ECHO "If you ever happen to want to link against installed libraries"
- $ECHO "in a given directory, LIBDIR, you must either use libtool, and"
- $ECHO "specify the full pathname of the library, or use the \`-LLIBDIR'"
- $ECHO "flag during linking and do at least one of the following:"
- if test -n "$shlibpath_var"; then
- $ECHO " - add LIBDIR to the \`$shlibpath_var' environment variable"
- $ECHO " during execution"
- fi
- if test -n "$runpath_var"; then
- $ECHO " - add LIBDIR to the \`$runpath_var' environment variable"
- $ECHO " during linking"
- fi
- if test -n "$hardcode_libdir_flag_spec"; then
- libdir=LIBDIR
- eval flag=\"$hardcode_libdir_flag_spec\"
-
- $ECHO " - use the \`$flag' linker flag"
- fi
- if test -n "$admincmds"; then
- $ECHO " - have your system administrator run these commands:$admincmds"
- fi
- if test -f /etc/ld.so.conf; then
- $ECHO " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
- fi
- $ECHO
-
- $ECHO "See any operating system documentation about shared libraries for"
- case $host in
- solaris2.[6789]|solaris2.1[0-9])
- $ECHO "more information, such as the ld(1), crle(1) and ld.so(8) manual"
- $ECHO "pages."
- ;;
- *)
- $ECHO "more information, such as the ld(1) and ld.so(8) manual pages."
- ;;
- esac
- $ECHO "X----------------------------------------------------------------------" | $Xsed
- exit $EXIT_SUCCESS
-}
-
-test "$mode" = finish && func_mode_finish ${1+"$@"}
-
-
-# func_mode_install arg...
-func_mode_install ()
-{
- $opt_debug
- # There may be an optional sh(1) argument at the beginning of
- # install_prog (especially on Windows NT).
- if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
- # Allow the use of GNU shtool's install command.
- $ECHO "X$nonopt" | $GREP shtool >/dev/null; then
- # Aesthetically quote it.
- func_quote_for_eval "$nonopt"
- install_prog="$func_quote_for_eval_result "
- arg=$1
- shift
- else
- install_prog=
- arg=$nonopt
- fi
-
- # The real first argument should be the name of the installation program.
- # Aesthetically quote it.
- func_quote_for_eval "$arg"
- install_prog="$install_prog$func_quote_for_eval_result"
-
- # We need to accept at least all the BSD install flags.
- dest=
- files=
- opts=
- prev=
- install_type=
- isdir=no
- stripme=
- for arg
- do
- if test -n "$dest"; then
- files="$files $dest"
- dest=$arg
- continue
- fi
-
- case $arg in
- -d) isdir=yes ;;
- -f)
- case " $install_prog " in
- *[\\\ /]cp\ *) ;;
- *) prev=$arg ;;
- esac
- ;;
- -g | -m | -o)
- prev=$arg
- ;;
- -s)
- stripme=" -s"
- continue
- ;;
- -*)
- ;;
- *)
- # If the previous option needed an argument, then skip it.
- if test -n "$prev"; then
- prev=
- else
- dest=$arg
- continue
- fi
- ;;
- esac
-
- # Aesthetically quote the argument.
- func_quote_for_eval "$arg"
- install_prog="$install_prog $func_quote_for_eval_result"
- done
-
- test -z "$install_prog" && \
- func_fatal_help "you must specify an install program"
-
- test -n "$prev" && \
- func_fatal_help "the \`$prev' option requires an argument"
-
- if test -z "$files"; then
- if test -z "$dest"; then
- func_fatal_help "no file or destination specified"
- else
- func_fatal_help "you must specify a destination"
- fi
- fi
-
- # Strip any trailing slash from the destination.
- func_stripname '' '/' "$dest"
- dest=$func_stripname_result
-
- # Check to see that the destination is a directory.
- test -d "$dest" && isdir=yes
- if test "$isdir" = yes; then
- destdir="$dest"
- destname=
- else
- func_dirname_and_basename "$dest" "" "."
- destdir="$func_dirname_result"
- destname="$func_basename_result"
-
- # Not a directory, so check to see that there is only one file specified.
- set dummy $files; shift
- test "$#" -gt 1 && \
- func_fatal_help "\`$dest' is not a directory"
- fi
- case $destdir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- for file in $files; do
- case $file in
- *.lo) ;;
- *)
- func_fatal_help "\`$destdir' must be an absolute directory name"
- ;;
- esac
- done
- ;;
- esac
-
- # This variable tells wrapper scripts just to set variables rather
- # than running their programs.
- libtool_install_magic="$magic"
-
- staticlibs=
- future_libdirs=
- current_libdirs=
- for file in $files; do
-
- # Do each installation.
- case $file in
- *.$libext)
- # Do the static libraries later.
- staticlibs="$staticlibs $file"
- ;;
-
- *.la)
- # Check to see that this really is a libtool archive.
- func_lalib_unsafe_p "$file" \
- || func_fatal_help "\`$file' is not a valid libtool archive"
-
- library_names=
- old_library=
- relink_command=
- func_source "$file"
-
- # Add the libdir to current_libdirs if it is the destination.
- if test "X$destdir" = "X$libdir"; then
- case "$current_libdirs " in
- *" $libdir "*) ;;
- *) current_libdirs="$current_libdirs $libdir" ;;
- esac
- else
- # Note the libdir as a future libdir.
- case "$future_libdirs " in
- *" $libdir "*) ;;
- *) future_libdirs="$future_libdirs $libdir" ;;
- esac
- fi
-
- func_dirname "$file" "/" ""
- dir="$func_dirname_result"
- dir="$dir$objdir"
-
- if test -n "$relink_command"; then
- # Determine the prefix the user has applied to our future dir.
- inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -e "s%$libdir\$%%"`
-
- # Don't allow the user to place us outside of our expected
- # location b/c this prevents finding dependent libraries that
- # are installed to the same prefix.
- # At present, this check doesn't affect windows .dll's that
- # are installed into $libdir/../bin (currently, that works fine)
- # but it's something to keep an eye on.
- test "$inst_prefix_dir" = "$destdir" && \
- func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir"
-
- if test -n "$inst_prefix_dir"; then
- # Stick the inst_prefix_dir data into the link command.
- relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
- else
- relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%%"`
- fi
-
- func_warning "relinking \`$file'"
- func_show_eval "$relink_command" \
- 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"'
- fi
-
- # See the names of the shared library.
- set dummy $library_names; shift
- if test -n "$1"; then
- realname="$1"
- shift
-
- srcname="$realname"
- test -n "$relink_command" && srcname="$realname"T
-
- # Install the shared library and build the symlinks.
- func_show_eval "$install_prog $dir/$srcname $destdir/$realname" \
- 'exit $?'
- tstripme="$stripme"
- case $host_os in
- cygwin* | mingw* | pw32* | cegcc*)
- case $realname in
- *.dll.a)
- tstripme=""
- ;;
- esac
- ;;
- esac
- if test -n "$tstripme" && test -n "$striplib"; then
- func_show_eval "$striplib $destdir/$realname" 'exit $?'
- fi
-
- if test "$#" -gt 0; then
- # Delete the old symlinks, and create new ones.
- # Try `ln -sf' first, because the `ln' binary might depend on
- # the symlink we replace! Solaris /bin/ln does not understand -f,
- # so we also need to try rm && ln -s.
- for linkname
- do
- test "$linkname" != "$realname" \
- && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })"
- done
- fi
-
- # Do each command in the postinstall commands.
- lib="$destdir/$realname"
- func_execute_cmds "$postinstall_cmds" 'exit $?'
- fi
-
- # Install the pseudo-library for information purposes.
- func_basename "$file"
- name="$func_basename_result"
- instname="$dir/$name"i
- func_show_eval "$install_prog $instname $destdir/$name" 'exit $?'
-
- # Maybe install the static library, too.
- test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
- ;;
-
- *.lo)
- # Install (i.e. copy) a libtool object.
-
- # Figure out destination file name, if it wasn't already specified.
- if test -n "$destname"; then
- destfile="$destdir/$destname"
- else
- func_basename "$file"
- destfile="$func_basename_result"
- destfile="$destdir/$destfile"
- fi
-
- # Deduce the name of the destination old-style object file.
- case $destfile in
- *.lo)
- func_lo2o "$destfile"
- staticdest=$func_lo2o_result
- ;;
- *.$objext)
- staticdest="$destfile"
- destfile=
- ;;
- *)
- func_fatal_help "cannot copy a libtool object to \`$destfile'"
- ;;
- esac
-
- # Install the libtool object if requested.
- test -n "$destfile" && \
- func_show_eval "$install_prog $file $destfile" 'exit $?'
-
- # Install the old object if enabled.
- if test "$build_old_libs" = yes; then
- # Deduce the name of the old-style object file.
- func_lo2o "$file"
- staticobj=$func_lo2o_result
- func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?'
- fi
- exit $EXIT_SUCCESS
- ;;
-
- *)
- # Figure out destination file name, if it wasn't already specified.
- if test -n "$destname"; then
- destfile="$destdir/$destname"
- else
- func_basename "$file"
- destfile="$func_basename_result"
- destfile="$destdir/$destfile"
- fi
-
- # If the file is missing, and there is a .exe on the end, strip it
- # because it is most likely a libtool script we actually want to
- # install
- stripped_ext=""
- case $file in
- *.exe)
- if test ! -f "$file"; then
- func_stripname '' '.exe' "$file"
- file=$func_stripname_result
- stripped_ext=".exe"
- fi
- ;;
- esac
-
- # Do a test to see if this is really a libtool program.
- case $host in
- *cygwin* | *mingw*)
- if func_ltwrapper_executable_p "$file"; then
- func_ltwrapper_scriptname "$file"
- wrapper=$func_ltwrapper_scriptname_result
- else
- func_stripname '' '.exe' "$file"
- wrapper=$func_stripname_result
- fi
- ;;
- *)
- wrapper=$file
- ;;
- esac
- if func_ltwrapper_script_p "$wrapper"; then
- notinst_deplibs=
- relink_command=
-
- func_source "$wrapper"
-
- # Check the variables that should have been set.
- test -z "$generated_by_libtool_version" && \
- func_fatal_error "invalid libtool wrapper script \`$wrapper'"
-
- finalize=yes
- for lib in $notinst_deplibs; do
- # Check to see that each library is installed.
- libdir=
- if test -f "$lib"; then
- func_source "$lib"
- fi
- libfile="$libdir/"`$ECHO "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
- if test -n "$libdir" && test ! -f "$libfile"; then
- func_warning "\`$lib' has not been installed in \`$libdir'"
- finalize=no
- fi
- done
-
- relink_command=
- func_source "$wrapper"
-
- outputname=
- if test "$fast_install" = no && test -n "$relink_command"; then
- $opt_dry_run || {
- if test "$finalize" = yes; then
- tmpdir=`func_mktempdir`
- func_basename "$file$stripped_ext"
- file="$func_basename_result"
- outputname="$tmpdir/$file"
- # Replace the output file specification.
- relink_command=`$ECHO "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
-
- $opt_silent || {
- func_quote_for_expand "$relink_command"
- eval "func_echo $func_quote_for_expand_result"
- }
- if eval "$relink_command"; then :
- else
- func_error "error: relink \`$file' with the above command before installing it"
- $opt_dry_run || ${RM}r "$tmpdir"
- continue
- fi
- file="$outputname"
- else
- func_warning "cannot relink \`$file'"
- fi
- }
- else
- # Install the binary that we compiled earlier.
- file=`$ECHO "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
- fi
- fi
-
- # remove .exe since cygwin /usr/bin/install will append another
- # one anyway
- case $install_prog,$host in
- */usr/bin/install*,*cygwin*)
- case $file:$destfile in
- *.exe:*.exe)
- # this is ok
- ;;
- *.exe:*)
- destfile=$destfile.exe
- ;;
- *:*.exe)
- func_stripname '' '.exe' "$destfile"
- destfile=$func_stripname_result
- ;;
- esac
- ;;
- esac
- func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?'
- $opt_dry_run || if test -n "$outputname"; then
- ${RM}r "$tmpdir"
- fi
- ;;
- esac
- done
-
- for file in $staticlibs; do
- func_basename "$file"
- name="$func_basename_result"
-
- # Set up the ranlib parameters.
- oldlib="$destdir/$name"
-
- func_show_eval "$install_prog \$file \$oldlib" 'exit $?'
-
- if test -n "$stripme" && test -n "$old_striplib"; then
- func_show_eval "$old_striplib $oldlib" 'exit $?'
- fi
-
- # Do each command in the postinstall commands.
- func_execute_cmds "$old_postinstall_cmds" 'exit $?'
- done
-
- test -n "$future_libdirs" && \
- func_warning "remember to run \`$progname --finish$future_libdirs'"
-
- if test -n "$current_libdirs"; then
- # Maybe just do a dry run.
- $opt_dry_run && current_libdirs=" -n$current_libdirs"
- exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
- else
- exit $EXIT_SUCCESS
- fi
-}
-
-test "$mode" = install && func_mode_install ${1+"$@"}
-
-
-# func_generate_dlsyms outputname originator pic_p
-# Extract symbols from dlprefiles and create ${outputname}S.o with
-# a dlpreopen symbol table.
-func_generate_dlsyms ()
-{
- $opt_debug
- my_outputname="$1"
- my_originator="$2"
- my_pic_p="${3-no}"
- my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
- my_dlsyms=
-
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- if test -n "$NM" && test -n "$global_symbol_pipe"; then
- my_dlsyms="${my_outputname}S.c"
- else
- func_error "not configured to extract global symbols from dlpreopened files"
- fi
- fi
-
- if test -n "$my_dlsyms"; then
- case $my_dlsyms in
- "") ;;
- *.c)
- # Discover the nlist of each of the dlfiles.
- nlist="$output_objdir/${my_outputname}.nm"
-
- func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
-
- # Parse the name list into a source file.
- func_verbose "creating $output_objdir/$my_dlsyms"
-
- $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
-/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */
-/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */
-
-#ifdef __cplusplus
-extern \"C\" {
-#endif
-
-/* External symbol declarations for the compiler. */\
-"
-
- if test "$dlself" = yes; then
- func_verbose "generating symbol list for \`$output'"
-
- $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
-
- # Add our own program objects to the symbol list.
- progfiles=`$ECHO "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- for progfile in $progfiles; do
- func_verbose "extracting global C symbols from \`$progfile'"
- $opt_dry_run || eval "$NM $progfile | $global_symbol_pipe >> '$nlist'"
- done
-
- if test -n "$exclude_expsyms"; then
- $opt_dry_run || {
- eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
- eval '$MV "$nlist"T "$nlist"'
- }
- fi
-
- if test -n "$export_symbols_regex"; then
- $opt_dry_run || {
- eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
- eval '$MV "$nlist"T "$nlist"'
- }
- fi
-
- # Prepare the list of exported symbols
- if test -z "$export_symbols"; then
- export_symbols="$output_objdir/$outputname.exp"
- $opt_dry_run || {
- $RM $export_symbols
- eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
- case $host in
- *cygwin* | *mingw* | *cegcc* )
- eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
- eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
- ;;
- esac
- }
- else
- $opt_dry_run || {
- eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
- eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
- eval '$MV "$nlist"T "$nlist"'
- case $host in
- *cygwin | *mingw* | *cegcc* )
- eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
- eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
- ;;
- esac
- }
- fi
- fi
-
- for dlprefile in $dlprefiles; do
- func_verbose "extracting global C symbols from \`$dlprefile'"
- func_basename "$dlprefile"
- name="$func_basename_result"
- $opt_dry_run || {
- eval '$ECHO ": $name " >> "$nlist"'
- eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'"
- }
- done
-
- $opt_dry_run || {
- # Make sure we have at least an empty file.
- test -f "$nlist" || : > "$nlist"
-
- if test -n "$exclude_expsyms"; then
- $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
- $MV "$nlist"T "$nlist"
- fi
-
- # Try sorting and uniquifying the output.
- if $GREP -v "^: " < "$nlist" |
- if sort -k 3 </dev/null >/dev/null 2>&1; then
- sort -k 3
- else
- sort +2
- fi |
- uniq > "$nlist"S; then
- :
- else
- $GREP -v "^: " < "$nlist" > "$nlist"S
- fi
-
- if test -f "$nlist"S; then
- eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
- else
- $ECHO '/* NONE */' >> "$output_objdir/$my_dlsyms"
- fi
-
- $ECHO >> "$output_objdir/$my_dlsyms" "\
-
-/* The mapping between symbol names and symbols. */
-typedef struct {
- const char *name;
- void *address;
-} lt_dlsymlist;
-"
- case $host in
- *cygwin* | *mingw* | *cegcc* )
- $ECHO >> "$output_objdir/$my_dlsyms" "\
-/* DATA imports from DLLs on WIN32 con't be const, because
- runtime relocations are performed -- see ld's documentation
- on pseudo-relocs. */"
- lt_dlsym_const= ;;
- *osf5*)
- echo >> "$output_objdir/$my_dlsyms" "\
-/* This system does not cope well with relocations in const data */"
- lt_dlsym_const= ;;
- *)
- lt_dlsym_const=const ;;
- esac
-
- $ECHO >> "$output_objdir/$my_dlsyms" "\
-extern $lt_dlsym_const lt_dlsymlist
-lt_${my_prefix}_LTX_preloaded_symbols[];
-$lt_dlsym_const lt_dlsymlist
-lt_${my_prefix}_LTX_preloaded_symbols[] =
-{\
- { \"$my_originator\", (void *) 0 },"
-
- case $need_lib_prefix in
- no)
- eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
- ;;
- *)
- eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
- ;;
- esac
- $ECHO >> "$output_objdir/$my_dlsyms" "\
- {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt_${my_prefix}_LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif\
-"
- } # !$opt_dry_run
-
- pic_flag_for_symtable=
- case "$compile_command " in
- *" -static "*) ;;
- *)
- case $host in
- # compiling the symbol table file with pic_flag works around
- # a FreeBSD bug that causes programs to crash when -lm is
- # linked before any other PIC object. But we must not use
- # pic_flag when linking with -static. The problem exists in
- # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
- *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
- pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
- *-*-hpux*)
- pic_flag_for_symtable=" $pic_flag" ;;
- *)
- if test "X$my_pic_p" != Xno; then
- pic_flag_for_symtable=" $pic_flag"
- fi
- ;;
- esac
- ;;
- esac
- symtab_cflags=
- for arg in $LTCFLAGS; do
- case $arg in
- -pie | -fpie | -fPIE) ;;
- *) symtab_cflags="$symtab_cflags $arg" ;;
- esac
- done
-
- # Now compile the dynamic symbol file.
- func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
-
- # Clean up the generated files.
- func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"'
-
- # Transform the symbol file into the correct name.
- symfileobj="$output_objdir/${my_outputname}S.$objext"
- case $host in
- *cygwin* | *mingw* | *cegcc* )
- if test -f "$output_objdir/$my_outputname.def"; then
- compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
- finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
- else
- compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
- finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
- fi
- ;;
- *)
- compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
- finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`
- ;;
- esac
- ;;
- *)
- func_fatal_error "unknown suffix for \`$my_dlsyms'"
- ;;
- esac
- else
- # We keep going just in case the user didn't refer to
- # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
- # really was required.
-
- # Nullify the symbol file.
- compile_command=`$ECHO "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
- finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
- fi
-}
-
-# func_win32_libid arg
-# return the library type of file 'arg'
-#
-# Need a lot of goo to handle *both* DLLs and import libs
-# Has to be a shell function in order to 'eat' the argument
-# that is supplied when $file_magic_command is called.
-func_win32_libid ()
-{
- $opt_debug
- win32_libid_type="unknown"
- win32_fileres=`file -L $1 2>/dev/null`
- case $win32_fileres in
- *ar\ archive\ import\ library*) # definitely import
- win32_libid_type="x86 archive import"
- ;;
- *ar\ archive*) # could be an import, or static
- if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
- $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
- win32_nmres=`eval $NM -f posix -A $1 |
- $SED -n -e '
- 1,100{
- / I /{
- s,.*,import,
- p
- q
- }
- }'`
- case $win32_nmres in
- import*) win32_libid_type="x86 archive import";;
- *) win32_libid_type="x86 archive static";;
- esac
- fi
- ;;
- *DLL*)
- win32_libid_type="x86 DLL"
- ;;
- *executable*) # but shell scripts are "executable" too...
- case $win32_fileres in
- *MS\ Windows\ PE\ Intel*)
- win32_libid_type="x86 DLL"
- ;;
- esac
- ;;
- esac
- $ECHO "$win32_libid_type"
-}
-
-
-
-# func_extract_an_archive dir oldlib
-func_extract_an_archive ()
-{
- $opt_debug
- f_ex_an_ar_dir="$1"; shift
- f_ex_an_ar_oldlib="$1"
- func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" 'exit $?'
- if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
- :
- else
- func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib"
- fi
-}
-
-
-# func_extract_archives gentop oldlib ...
-func_extract_archives ()
-{
- $opt_debug
- my_gentop="$1"; shift
- my_oldlibs=${1+"$@"}
- my_oldobjs=""
- my_xlib=""
- my_xabs=""
- my_xdir=""
-
- for my_xlib in $my_oldlibs; do
- # Extract the objects.
- case $my_xlib in
- [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
- *) my_xabs=`pwd`"/$my_xlib" ;;
- esac
- func_basename "$my_xlib"
- my_xlib="$func_basename_result"
- my_xlib_u=$my_xlib
- while :; do
- case " $extracted_archives " in
- *" $my_xlib_u "*)
- func_arith $extracted_serial + 1
- extracted_serial=$func_arith_result
- my_xlib_u=lt$extracted_serial-$my_xlib ;;
- *) break ;;
- esac
- done
- extracted_archives="$extracted_archives $my_xlib_u"
- my_xdir="$my_gentop/$my_xlib_u"
-
- func_mkdir_p "$my_xdir"
-
- case $host in
- *-darwin*)
- func_verbose "Extracting $my_xabs"
- # Do not bother doing anything if just a dry run
- $opt_dry_run || {
- darwin_orig_dir=`pwd`
- cd $my_xdir || exit $?
- darwin_archive=$my_xabs
- darwin_curdir=`pwd`
- darwin_base_archive=`basename "$darwin_archive"`
- darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
- if test -n "$darwin_arches"; then
- darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
- darwin_arch=
- func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
- for darwin_arch in $darwin_arches ; do
- func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
- $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
- cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
- func_extract_an_archive "`pwd`" "${darwin_base_archive}"
- cd "$darwin_curdir"
- $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
- done # $darwin_arches
- ## Okay now we've a bunch of thin objects, gotta fatten them up :)
- darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u`
- darwin_file=
- darwin_files=
- for darwin_file in $darwin_filelist; do
- darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`
- $LIPO -create -output "$darwin_file" $darwin_files
- done # $darwin_filelist
- $RM -rf unfat-$$
- cd "$darwin_orig_dir"
- else
- cd $darwin_orig_dir
- func_extract_an_archive "$my_xdir" "$my_xabs"
- fi # $darwin_arches
- } # !$opt_dry_run
- ;;
- *)
- func_extract_an_archive "$my_xdir" "$my_xabs"
- ;;
- esac
- my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
- done
-
- func_extract_archives_result="$my_oldobjs"
-}
-
-
-
-# func_emit_wrapper_part1 [arg=no]
-#
-# Emit the first part of a libtool wrapper script on stdout.
-# For more information, see the description associated with
-# func_emit_wrapper(), below.
-func_emit_wrapper_part1 ()
-{
- func_emit_wrapper_part1_arg1=no
- if test -n "$1" ; then
- func_emit_wrapper_part1_arg1=$1
- fi
-
- $ECHO "\
-#! $SHELL
-
-# $output - temporary wrapper script for $objdir/$outputname
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-#
-# The $output program cannot be directly executed until all the libtool
-# libraries that it depends on are installed.
-#
-# This wrapper script should never be moved out of the build directory.
-# If it is, it will not operate correctly.
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed='${SED} -e 1s/^X//'
-sed_quote_subst='$sed_quote_subst'
-
-# Be Bourne compatible
-if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '\${1+\"\$@\"}'='\"\$@\"'
- setopt NO_GLOB_SUBST
-else
- case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
-fi
-BIN_SH=xpg4; export BIN_SH # for Tru64
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-relink_command=\"$relink_command\"
-
-# This environment variable determines our operation mode.
-if test \"\$libtool_install_magic\" = \"$magic\"; then
- # install mode needs the following variables:
- generated_by_libtool_version='$macro_version'
- notinst_deplibs='$notinst_deplibs'
-else
- # When we are sourced in execute mode, \$file and \$ECHO are already set.
- if test \"\$libtool_execute_magic\" != \"$magic\"; then
- ECHO=\"$qecho\"
- file=\"\$0\"
- # Make sure echo works.
- if test \"X\$1\" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
- elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; then
- # Yippee, \$ECHO works!
- :
- else
- # Restart under the correct shell, and then maybe \$ECHO will work.
- exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
- fi
- fi\
-"
- $ECHO "\
-
- # Find the directory that this script lives in.
- thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
- test \"x\$thisdir\" = \"x\$file\" && thisdir=.
-
- # Follow symbolic links until we get to the real thisdir.
- file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
- while test -n \"\$file\"; do
- destdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
-
- # If there was a directory component, then change thisdir.
- if test \"x\$destdir\" != \"x\$file\"; then
- case \"\$destdir\" in
- [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
- *) thisdir=\"\$thisdir/\$destdir\" ;;
- esac
- fi
-
- file=\`\$ECHO \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
- file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
- done
-"
-}
-# end: func_emit_wrapper_part1
-
-# func_emit_wrapper_part2 [arg=no]
-#
-# Emit the second part of a libtool wrapper script on stdout.
-# For more information, see the description associated with
-# func_emit_wrapper(), below.
-func_emit_wrapper_part2 ()
-{
- func_emit_wrapper_part2_arg1=no
- if test -n "$1" ; then
- func_emit_wrapper_part2_arg1=$1
- fi
-
- $ECHO "\
-
- # Usually 'no', except on cygwin/mingw when embedded into
- # the cwrapper.
- WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_part2_arg1
- if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then
- # special case for '.'
- if test \"\$thisdir\" = \".\"; then
- thisdir=\`pwd\`
- fi
- # remove .libs from thisdir
- case \"\$thisdir\" in
- *[\\\\/]$objdir ) thisdir=\`\$ECHO \"X\$thisdir\" | \$Xsed -e 's%[\\\\/][^\\\\/]*$%%'\` ;;
- $objdir ) thisdir=. ;;
- esac
- fi
-
- # Try to get the absolute directory name.
- absdir=\`cd \"\$thisdir\" && pwd\`
- test -n \"\$absdir\" && thisdir=\"\$absdir\"
-"
-
- if test "$fast_install" = yes; then
- $ECHO "\
- program=lt-'$outputname'$exeext
- progdir=\"\$thisdir/$objdir\"
-
- if test ! -f \"\$progdir/\$program\" ||
- { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
- test \"X\$file\" != \"X\$progdir/\$program\"; }; then
-
- file=\"\$\$-\$program\"
-
- if test ! -d \"\$progdir\"; then
- $MKDIR \"\$progdir\"
- else
- $RM \"\$progdir/\$file\"
- fi"
-
- $ECHO "\
-
- # relink executable if necessary
- if test -n \"\$relink_command\"; then
- if relink_command_output=\`eval \$relink_command 2>&1\`; then :
- else
- $ECHO \"\$relink_command_output\" >&2
- $RM \"\$progdir/\$file\"
- exit 1
- fi
- fi
-
- $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
- { $RM \"\$progdir/\$program\";
- $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; }
- $RM \"\$progdir/\$file\"
- fi"
- else
- $ECHO "\
- program='$outputname'
- progdir=\"\$thisdir/$objdir\"
-"
- fi
-
- $ECHO "\
-
- if test -f \"\$progdir/\$program\"; then"
-
- # Export our shlibpath_var if we have one.
- if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
- $ECHO "\
- # Add our own library path to $shlibpath_var
- $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
-
- # Some systems cannot cope with colon-terminated $shlibpath_var
- # The second colon is a workaround for a bug in BeOS R4 sed
- $shlibpath_var=\`\$ECHO \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
-
- export $shlibpath_var
-"
- fi
-
- # fixup the dll searchpath if we need to.
- if test -n "$dllsearchpath"; then
- $ECHO "\
- # Add the dll search path components to the executable PATH
- PATH=$dllsearchpath:\$PATH
-"
- fi
-
- $ECHO "\
- if test \"\$libtool_execute_magic\" != \"$magic\"; then
- # Run the actual program with our arguments.
-"
- case $host in
- # Backslashes separate directories on plain windows
- *-*-mingw | *-*-os2* | *-cegcc*)
- $ECHO "\
- exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
-"
- ;;
-
- *)
- $ECHO "\
- exec \"\$progdir/\$program\" \${1+\"\$@\"}
-"
- ;;
- esac
- $ECHO "\
- \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2
- exit 1
- fi
- else
- # The program doesn't exist.
- \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
- \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
- $ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
- exit 1
- fi
-fi\
-"
-}
-# end: func_emit_wrapper_part2
-
-
-# func_emit_wrapper [arg=no]
-#
-# Emit a libtool wrapper script on stdout.
-# Don't directly open a file because we may want to
-# incorporate the script contents within a cygwin/mingw
-# wrapper executable. Must ONLY be called from within
-# func_mode_link because it depends on a number of variables
-# set therein.
-#
-# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
-# variable will take. If 'yes', then the emitted script
-# will assume that the directory in which it is stored is
-# the $objdir directory. This is a cygwin/mingw-specific
-# behavior.
-func_emit_wrapper ()
-{
- func_emit_wrapper_arg1=no
- if test -n "$1" ; then
- func_emit_wrapper_arg1=$1
- fi
-
- # split this up so that func_emit_cwrapperexe_src
- # can call each part independently.
- func_emit_wrapper_part1 "${func_emit_wrapper_arg1}"
- func_emit_wrapper_part2 "${func_emit_wrapper_arg1}"
-}
-
-
-# func_to_host_path arg
-#
-# Convert paths to host format when used with build tools.
-# Intended for use with "native" mingw (where libtool itself
-# is running under the msys shell), or in the following cross-
-# build environments:
-# $build $host
-# mingw (msys) mingw [e.g. native]
-# cygwin mingw
-# *nix + wine mingw
-# where wine is equipped with the `winepath' executable.
-# In the native mingw case, the (msys) shell automatically
-# converts paths for any non-msys applications it launches,
-# but that facility isn't available from inside the cwrapper.
-# Similar accommodations are necessary for $host mingw and
-# $build cygwin. Calling this function does no harm for other
-# $host/$build combinations not listed above.
-#
-# ARG is the path (on $build) that should be converted to
-# the proper representation for $host. The result is stored
-# in $func_to_host_path_result.
-func_to_host_path ()
-{
- func_to_host_path_result="$1"
- if test -n "$1" ; then
- case $host in
- *mingw* )
- lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
- case $build in
- *mingw* ) # actually, msys
- # awkward: cmd appends spaces to result
- lt_sed_strip_trailing_spaces="s/[ ]*\$//"
- func_to_host_path_tmp1=`( cmd //c echo "$1" |\
- $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`
- func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
- $SED -e "$lt_sed_naive_backslashify"`
- ;;
- *cygwin* )
- func_to_host_path_tmp1=`cygpath -w "$1"`
- func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
- $SED -e "$lt_sed_naive_backslashify"`
- ;;
- * )
- # Unfortunately, winepath does not exit with a non-zero
- # error code, so we are forced to check the contents of
- # stdout. On the other hand, if the command is not
- # found, the shell will set an exit code of 127 and print
- # *an error message* to stdout. So we must check for both
- # error code of zero AND non-empty stdout, which explains
- # the odd construction:
- func_to_host_path_tmp1=`winepath -w "$1" 2>/dev/null`
- if test "$?" -eq 0 && test -n "${func_to_host_path_tmp1}"; then
- func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\
- $SED -e "$lt_sed_naive_backslashify"`
- else
- # Allow warning below.
- func_to_host_path_result=""
- fi
- ;;
- esac
- if test -z "$func_to_host_path_result" ; then
- func_error "Could not determine host path corresponding to"
- func_error " '$1'"
- func_error "Continuing, but uninstalled executables may not work."
- # Fallback:
- func_to_host_path_result="$1"
- fi
- ;;
- esac
- fi
-}
-# end: func_to_host_path
-
-# func_to_host_pathlist arg
-#
-# Convert pathlists to host format when used with build tools.
-# See func_to_host_path(), above. This function supports the
-# following $build/$host combinations (but does no harm for
-# combinations not listed here):
-# $build $host
-# mingw (msys) mingw [e.g. native]
-# cygwin mingw
-# *nix + wine mingw
-#
-# Path separators are also converted from $build format to
-# $host format. If ARG begins or ends with a path separator
-# character, it is preserved (but converted to $host format)
-# on output.
-#
-# ARG is a pathlist (on $build) that should be converted to
-# the proper representation on $host. The result is stored
-# in $func_to_host_pathlist_result.
-func_to_host_pathlist ()
-{
- func_to_host_pathlist_result="$1"
- if test -n "$1" ; then
- case $host in
- *mingw* )
- lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
- # Remove leading and trailing path separator characters from
- # ARG. msys behavior is inconsistent here, cygpath turns them
- # into '.;' and ';.', and winepath ignores them completely.
- func_to_host_pathlist_tmp2="$1"
- # Once set for this call, this variable should not be
- # reassigned. It is used in tha fallback case.
- func_to_host_pathlist_tmp1=`echo "$func_to_host_pathlist_tmp2" |\
- $SED -e 's|^:*||' -e 's|:*$||'`
- case $build in
- *mingw* ) # Actually, msys.
- # Awkward: cmd appends spaces to result.
- lt_sed_strip_trailing_spaces="s/[ ]*\$//"
- func_to_host_pathlist_tmp2=`( cmd //c echo "$func_to_host_pathlist_tmp1" |\
- $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`
- func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\
- $SED -e "$lt_sed_naive_backslashify"`
- ;;
- *cygwin* )
- func_to_host_pathlist_tmp2=`cygpath -w -p "$func_to_host_pathlist_tmp1"`
- func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\
- $SED -e "$lt_sed_naive_backslashify"`
- ;;
- * )
- # unfortunately, winepath doesn't convert pathlists
- func_to_host_pathlist_result=""
- func_to_host_pathlist_oldIFS=$IFS
- IFS=:
- for func_to_host_pathlist_f in $func_to_host_pathlist_tmp1 ; do
- IFS=$func_to_host_pathlist_oldIFS
- if test -n "$func_to_host_pathlist_f" ; then
- func_to_host_path "$func_to_host_pathlist_f"
- if test -n "$func_to_host_path_result" ; then
- if test -z "$func_to_host_pathlist_result" ; then
- func_to_host_pathlist_result="$func_to_host_path_result"
- else
- func_to_host_pathlist_result="$func_to_host_pathlist_result;$func_to_host_path_result"
- fi
- fi
- fi
- IFS=:
- done
- IFS=$func_to_host_pathlist_oldIFS
- ;;
- esac
- if test -z "$func_to_host_pathlist_result" ; then
- func_error "Could not determine the host path(s) corresponding to"
- func_error " '$1'"
- func_error "Continuing, but uninstalled executables may not work."
- # Fallback. This may break if $1 contains DOS-style drive
- # specifications. The fix is not to complicate the expression
- # below, but for the user to provide a working wine installation
- # with winepath so that path translation in the cross-to-mingw
- # case works properly.
- lt_replace_pathsep_nix_to_dos="s|:|;|g"
- func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp1" |\
- $SED -e "$lt_replace_pathsep_nix_to_dos"`
- fi
- # Now, add the leading and trailing path separators back
- case "$1" in
- :* ) func_to_host_pathlist_result=";$func_to_host_pathlist_result"
- ;;
- esac
- case "$1" in
- *: ) func_to_host_pathlist_result="$func_to_host_pathlist_result;"
- ;;
- esac
- ;;
- esac
- fi
-}
-# end: func_to_host_pathlist
-
-# func_emit_cwrapperexe_src
-# emit the source code for a wrapper executable on stdout
-# Must ONLY be called from within func_mode_link because
-# it depends on a number of variable set therein.
-func_emit_cwrapperexe_src ()
-{
- cat <<EOF
-
-/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
- Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-
- The $output program cannot be directly executed until all the libtool
- libraries that it depends on are installed.
-
- This wrapper executable should never be moved out of the build directory.
- If it is, it will not operate correctly.
-
- Currently, it simply execs the wrapper *script* "$SHELL $output",
- but could eventually absorb all of the scripts functionality and
- exec $objdir/$outputname directly.
-*/
-EOF
- cat <<"EOF"
-#include <stdio.h>
-#include <stdlib.h>
-#ifdef _MSC_VER
-# include <direct.h>
-# include <process.h>
-# include <io.h>
-# define setmode _setmode
-#else
-# include <unistd.h>
-# include <stdint.h>
-# ifdef __CYGWIN__
-# include <io.h>
-# define HAVE_SETENV
-# ifdef __STRICT_ANSI__
-char *realpath (const char *, char *);
-int putenv (char *);
-int setenv (const char *, const char *, int);
-# endif
-# endif
-#endif
-#include <malloc.h>
-#include <stdarg.h>
-#include <assert.h>
-#include <string.h>
-#include <ctype.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-
-#if defined(PATH_MAX)
-# define LT_PATHMAX PATH_MAX
-#elif defined(MAXPATHLEN)
-# define LT_PATHMAX MAXPATHLEN
-#else
-# define LT_PATHMAX 1024
-#endif
-
-#ifndef S_IXOTH
-# define S_IXOTH 0
-#endif
-#ifndef S_IXGRP
-# define S_IXGRP 0
-#endif
-
-#ifdef _MSC_VER
-# define S_IXUSR _S_IEXEC
-# define stat _stat
-# ifndef _INTPTR_T_DEFINED
-# define intptr_t int
-# endif
-#endif
-
-#ifndef DIR_SEPARATOR
-# define DIR_SEPARATOR '/'
-# define PATH_SEPARATOR ':'
-#endif
-
-#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
- defined (__OS2__)
-# define HAVE_DOS_BASED_FILE_SYSTEM
-# define FOPEN_WB "wb"
-# ifndef DIR_SEPARATOR_2
-# define DIR_SEPARATOR_2 '\\'
-# endif
-# ifndef PATH_SEPARATOR_2
-# define PATH_SEPARATOR_2 ';'
-# endif
-#endif
-
-#ifndef DIR_SEPARATOR_2
-# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
-#else /* DIR_SEPARATOR_2 */
-# define IS_DIR_SEPARATOR(ch) \
- (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
-#endif /* DIR_SEPARATOR_2 */
-
-#ifndef PATH_SEPARATOR_2
-# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
-#else /* PATH_SEPARATOR_2 */
-# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
-#endif /* PATH_SEPARATOR_2 */
-
-#ifdef __CYGWIN__
-# define FOPEN_WB "wb"
-#endif
-
-#ifndef FOPEN_WB
-# define FOPEN_WB "w"
-#endif
-#ifndef _O_BINARY
-# define _O_BINARY 0
-#endif
-
-#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type)))
-#define XFREE(stale) do { \
- if (stale) { free ((void *) stale); stale = 0; } \
-} while (0)
-
-#undef LTWRAPPER_DEBUGPRINTF
-#if defined DEBUGWRAPPER
-# define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args
-static void
-ltwrapper_debugprintf (const char *fmt, ...)
-{
- va_list args;
- va_start (args, fmt);
- (void) vfprintf (stderr, fmt, args);
- va_end (args);
-}
-#else
-# define LTWRAPPER_DEBUGPRINTF(args)
-#endif
-
-const char *program_name = NULL;
-
-void *xmalloc (size_t num);
-char *xstrdup (const char *string);
-const char *base_name (const char *name);
-char *find_executable (const char *wrapper);
-char *chase_symlinks (const char *pathspec);
-int make_executable (const char *path);
-int check_executable (const char *path);
-char *strendzap (char *str, const char *pat);
-void lt_fatal (const char *message, ...);
-void lt_setenv (const char *name, const char *value);
-char *lt_extend_str (const char *orig_value, const char *add, int to_end);
-void lt_opt_process_env_set (const char *arg);
-void lt_opt_process_env_prepend (const char *arg);
-void lt_opt_process_env_append (const char *arg);
-int lt_split_name_value (const char *arg, char** name, char** value);
-void lt_update_exe_path (const char *name, const char *value);
-void lt_update_lib_path (const char *name, const char *value);
-
-static const char *script_text_part1 =
-EOF
-
- func_emit_wrapper_part1 yes |
- $SED -e 's/\([\\"]\)/\\\1/g' \
- -e 's/^/ "/' -e 's/$/\\n"/'
- echo ";"
- cat <<EOF
-
-static const char *script_text_part2 =
-EOF
- func_emit_wrapper_part2 yes |
- $SED -e 's/\([\\"]\)/\\\1/g' \
- -e 's/^/ "/' -e 's/$/\\n"/'
- echo ";"
-
- cat <<EOF
-const char * MAGIC_EXE = "$magic_exe";
-const char * LIB_PATH_VARNAME = "$shlibpath_var";
-EOF
-
- if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
- func_to_host_pathlist "$temp_rpath"
- cat <<EOF
-const char * LIB_PATH_VALUE = "$func_to_host_pathlist_result";
-EOF
- else
- cat <<"EOF"
-const char * LIB_PATH_VALUE = "";
-EOF
- fi
-
- if test -n "$dllsearchpath"; then
- func_to_host_pathlist "$dllsearchpath:"
- cat <<EOF
-const char * EXE_PATH_VARNAME = "PATH";
-const char * EXE_PATH_VALUE = "$func_to_host_pathlist_result";
-EOF
- else
- cat <<"EOF"
-const char * EXE_PATH_VARNAME = "";
-const char * EXE_PATH_VALUE = "";
-EOF
- fi
-
- if test "$fast_install" = yes; then
- cat <<EOF
-const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
-EOF
- else
- cat <<EOF
-const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
-EOF
- fi
-
-
- cat <<"EOF"
-
-#define LTWRAPPER_OPTION_PREFIX "--lt-"
-#define LTWRAPPER_OPTION_PREFIX_LENGTH 5
-
-static const size_t opt_prefix_len = LTWRAPPER_OPTION_PREFIX_LENGTH;
-static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
-
-static const char *dumpscript_opt = LTWRAPPER_OPTION_PREFIX "dump-script";
-
-static const size_t env_set_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 7;
-static const char *env_set_opt = LTWRAPPER_OPTION_PREFIX "env-set";
- /* argument is putenv-style "foo=bar", value of foo is set to bar */
-
-static const size_t env_prepend_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 11;
-static const char *env_prepend_opt = LTWRAPPER_OPTION_PREFIX "env-prepend";
- /* argument is putenv-style "foo=bar", new value of foo is bar${foo} */
-
-static const size_t env_append_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 10;
-static const char *env_append_opt = LTWRAPPER_OPTION_PREFIX "env-append";
- /* argument is putenv-style "foo=bar", new value of foo is ${foo}bar */
-
-int
-main (int argc, char *argv[])
-{
- char **newargz;
- int newargc;
- char *tmp_pathspec;
- char *actual_cwrapper_path;
- char *actual_cwrapper_name;
- char *target_name;
- char *lt_argv_zero;
- intptr_t rval = 127;
-
- int i;
-
- program_name = (char *) xstrdup (base_name (argv[0]));
- LTWRAPPER_DEBUGPRINTF (("(main) argv[0] : %s\n", argv[0]));
- LTWRAPPER_DEBUGPRINTF (("(main) program_name : %s\n", program_name));
-
- /* very simple arg parsing; don't want to rely on getopt */
- for (i = 1; i < argc; i++)
- {
- if (strcmp (argv[i], dumpscript_opt) == 0)
- {
-EOF
- case "$host" in
- *mingw* | *cygwin* )
- # make stdout use "unix" line endings
- echo " setmode(1,_O_BINARY);"
- ;;
- esac
-
- cat <<"EOF"
- printf ("%s", script_text_part1);
- printf ("%s", script_text_part2);
- return 0;
- }
- }
-
- newargz = XMALLOC (char *, argc + 1);
- tmp_pathspec = find_executable (argv[0]);
- if (tmp_pathspec == NULL)
- lt_fatal ("Couldn't find %s", argv[0]);
- LTWRAPPER_DEBUGPRINTF (("(main) found exe (before symlink chase) at : %s\n",
- tmp_pathspec));
-
- actual_cwrapper_path = chase_symlinks (tmp_pathspec);
- LTWRAPPER_DEBUGPRINTF (("(main) found exe (after symlink chase) at : %s\n",
- actual_cwrapper_path));
- XFREE (tmp_pathspec);
-
- actual_cwrapper_name = xstrdup( base_name (actual_cwrapper_path));
- strendzap (actual_cwrapper_path, actual_cwrapper_name);
-
- /* wrapper name transforms */
- strendzap (actual_cwrapper_name, ".exe");
- tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
- XFREE (actual_cwrapper_name);
- actual_cwrapper_name = tmp_pathspec;
- tmp_pathspec = 0;
-
- /* target_name transforms -- use actual target program name; might have lt- prefix */
- target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
- strendzap (target_name, ".exe");
- tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
- XFREE (target_name);
- target_name = tmp_pathspec;
- tmp_pathspec = 0;
-
- LTWRAPPER_DEBUGPRINTF (("(main) libtool target name: %s\n",
- target_name));
-EOF
-
- cat <<EOF
- newargz[0] =
- XMALLOC (char, (strlen (actual_cwrapper_path) +
- strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
- strcpy (newargz[0], actual_cwrapper_path);
- strcat (newargz[0], "$objdir");
- strcat (newargz[0], "/");
-EOF
-
- cat <<"EOF"
- /* stop here, and copy so we don't have to do this twice */
- tmp_pathspec = xstrdup (newargz[0]);
-
- /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
- strcat (newargz[0], actual_cwrapper_name);
-
- /* DO want the lt- prefix here if it exists, so use target_name */
- lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
- XFREE (tmp_pathspec);
- tmp_pathspec = NULL;
-EOF
-
- case $host_os in
- mingw*)
- cat <<"EOF"
- {
- char* p;
- while ((p = strchr (newargz[0], '\\')) != NULL)
- {
- *p = '/';
- }
- while ((p = strchr (lt_argv_zero, '\\')) != NULL)
- {
- *p = '/';
- }
- }
-EOF
- ;;
- esac
-
- cat <<"EOF"
- XFREE (target_name);
- XFREE (actual_cwrapper_path);
- XFREE (actual_cwrapper_name);
-
- lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
- lt_setenv ("DUALCASE", "1"); /* for MSK sh */
- lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
- lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
-
- newargc=0;
- for (i = 1; i < argc; i++)
- {
- if (strncmp (argv[i], env_set_opt, env_set_opt_len) == 0)
- {
- if (argv[i][env_set_opt_len] == '=')
- {
- const char *p = argv[i] + env_set_opt_len + 1;
- lt_opt_process_env_set (p);
- }
- else if (argv[i][env_set_opt_len] == '\0' && i + 1 < argc)
- {
- lt_opt_process_env_set (argv[++i]); /* don't copy */
- }
- else
- lt_fatal ("%s missing required argument", env_set_opt);
- continue;
- }
- if (strncmp (argv[i], env_prepend_opt, env_prepend_opt_len) == 0)
- {
- if (argv[i][env_prepend_opt_len] == '=')
- {
- const char *p = argv[i] + env_prepend_opt_len + 1;
- lt_opt_process_env_prepend (p);
- }
- else if (argv[i][env_prepend_opt_len] == '\0' && i + 1 < argc)
- {
- lt_opt_process_env_prepend (argv[++i]); /* don't copy */
- }
- else
- lt_fatal ("%s missing required argument", env_prepend_opt);
- continue;
- }
- if (strncmp (argv[i], env_append_opt, env_append_opt_len) == 0)
- {
- if (argv[i][env_append_opt_len] == '=')
- {
- const char *p = argv[i] + env_append_opt_len + 1;
- lt_opt_process_env_append (p);
- }
- else if (argv[i][env_append_opt_len] == '\0' && i + 1 < argc)
- {
- lt_opt_process_env_append (argv[++i]); /* don't copy */
- }
- else
- lt_fatal ("%s missing required argument", env_append_opt);
- continue;
- }
- if (strncmp (argv[i], ltwrapper_option_prefix, opt_prefix_len) == 0)
- {
- /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
- namespace, but it is not one of the ones we know about and
- have already dealt with, above (inluding dump-script), then
- report an error. Otherwise, targets might begin to believe
- they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
- namespace. The first time any user complains about this, we'll
- need to make LTWRAPPER_OPTION_PREFIX a configure-time option
- or a configure.ac-settable value.
- */
- lt_fatal ("Unrecognized option in %s namespace: '%s'",
- ltwrapper_option_prefix, argv[i]);
- }
- /* otherwise ... */
- newargz[++newargc] = xstrdup (argv[i]);
- }
- newargz[++newargc] = NULL;
-
- LTWRAPPER_DEBUGPRINTF (("(main) lt_argv_zero : %s\n", (lt_argv_zero ? lt_argv_zero : "<NULL>")));
- for (i = 0; i < newargc; i++)
- {
- LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d] : %s\n", i, (newargz[i] ? newargz[i] : "<NULL>")));
- }
-
-EOF
-
- case $host_os in
- mingw*)
- cat <<"EOF"
- /* execv doesn't actually work on mingw as expected on unix */
- rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
- if (rval == -1)
- {
- /* failed to start process */
- LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \"%s\": errno = %d\n", lt_argv_zero, errno));
- return 127;
- }
- return rval;
-EOF
- ;;
- *)
- cat <<"EOF"
- execv (lt_argv_zero, newargz);
- return rval; /* =127, but avoids unused variable warning */
-EOF
- ;;
- esac
-
- cat <<"EOF"
-}
-
-void *
-xmalloc (size_t num)
-{
- void *p = (void *) malloc (num);
- if (!p)
- lt_fatal ("Memory exhausted");
-
- return p;
-}
-
-char *
-xstrdup (const char *string)
-{
- return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
- string) : NULL;
-}
-
-const char *
-base_name (const char *name)
-{
- const char *base;
-
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
- /* Skip over the disk name in MSDOS pathnames. */
- if (isalpha ((unsigned char) name[0]) && name[1] == ':')
- name += 2;
-#endif
-
- for (base = name; *name; name++)
- if (IS_DIR_SEPARATOR (*name))
- base = name + 1;
- return base;
-}
-
-int
-check_executable (const char *path)
-{
- struct stat st;
-
- LTWRAPPER_DEBUGPRINTF (("(check_executable) : %s\n",
- path ? (*path ? path : "EMPTY!") : "NULL!"));
- if ((!path) || (!*path))
- return 0;
-
- if ((stat (path, &st) >= 0)
- && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))
- return 1;
- else
- return 0;
-}
-
-int
-make_executable (const char *path)
-{
- int rval = 0;
- struct stat st;
-
- LTWRAPPER_DEBUGPRINTF (("(make_executable) : %s\n",
- path ? (*path ? path : "EMPTY!") : "NULL!"));
- if ((!path) || (!*path))
- return 0;
-
- if (stat (path, &st) >= 0)
- {
- rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR);
- }
- return rval;
-}
-
-/* Searches for the full path of the wrapper. Returns
- newly allocated full path name if found, NULL otherwise
- Does not chase symlinks, even on platforms that support them.
-*/
-char *
-find_executable (const char *wrapper)
-{
- int has_slash = 0;
- const char *p;
- const char *p_next;
- /* static buffer for getcwd */
- char tmp[LT_PATHMAX + 1];
- int tmp_len;
- char *concat_name;
-
- LTWRAPPER_DEBUGPRINTF (("(find_executable) : %s\n",
- wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!"));
-
- if ((wrapper == NULL) || (*wrapper == '\0'))
- return NULL;
-
- /* Absolute path? */
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
- if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
- {
- concat_name = xstrdup (wrapper);
- if (check_executable (concat_name))
- return concat_name;
- XFREE (concat_name);
- }
- else
- {
-#endif
- if (IS_DIR_SEPARATOR (wrapper[0]))
- {
- concat_name = xstrdup (wrapper);
- if (check_executable (concat_name))
- return concat_name;
- XFREE (concat_name);
- }
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
- }
-#endif
-
- for (p = wrapper; *p; p++)
- if (*p == '/')
- {
- has_slash = 1;
- break;
- }
- if (!has_slash)
- {
- /* no slashes; search PATH */
- const char *path = getenv ("PATH");
- if (path != NULL)
- {
- for (p = path; *p; p = p_next)
- {
- const char *q;
- size_t p_len;
- for (q = p; *q; q++)
- if (IS_PATH_SEPARATOR (*q))
- break;
- p_len = q - p;
- p_next = (*q == '\0' ? q : q + 1);
- if (p_len == 0)
- {
- /* empty path: current directory */
- if (getcwd (tmp, LT_PATHMAX) == NULL)
- lt_fatal ("getcwd failed");
- tmp_len = strlen (tmp);
- concat_name =
- XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
- memcpy (concat_name, tmp, tmp_len);
- concat_name[tmp_len] = '/';
- strcpy (concat_name + tmp_len + 1, wrapper);
- }
- else
- {
- concat_name =
- XMALLOC (char, p_len + 1 + strlen (wrapper) + 1);
- memcpy (concat_name, p, p_len);
- concat_name[p_len] = '/';
- strcpy (concat_name + p_len + 1, wrapper);
- }
- if (check_executable (concat_name))
- return concat_name;
- XFREE (concat_name);
- }
- }
- /* not found in PATH; assume curdir */
- }
- /* Relative path | not found in path: prepend cwd */
- if (getcwd (tmp, LT_PATHMAX) == NULL)
- lt_fatal ("getcwd failed");
- tmp_len = strlen (tmp);
- concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
- memcpy (concat_name, tmp, tmp_len);
- concat_name[tmp_len] = '/';
- strcpy (concat_name + tmp_len + 1, wrapper);
-
- if (check_executable (concat_name))
- return concat_name;
- XFREE (concat_name);
- return NULL;
-}
-
-char *
-chase_symlinks (const char *pathspec)
-{
-#ifndef S_ISLNK
- return xstrdup (pathspec);
-#else
- char buf[LT_PATHMAX];
- struct stat s;
- char *tmp_pathspec = xstrdup (pathspec);
- char *p;
- int has_symlinks = 0;
- while (strlen (tmp_pathspec) && !has_symlinks)
- {
- LTWRAPPER_DEBUGPRINTF (("checking path component for symlinks: %s\n",
- tmp_pathspec));
- if (lstat (tmp_pathspec, &s) == 0)
- {
- if (S_ISLNK (s.st_mode) != 0)
- {
- has_symlinks = 1;
- break;
- }
-
- /* search backwards for last DIR_SEPARATOR */
- p = tmp_pathspec + strlen (tmp_pathspec) - 1;
- while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
- p--;
- if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
- {
- /* no more DIR_SEPARATORS left */
- break;
- }
- *p = '\0';
- }
- else
- {
- char *errstr = strerror (errno);
- lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr);
- }
- }
- XFREE (tmp_pathspec);
-
- if (!has_symlinks)
- {
- return xstrdup (pathspec);
- }
-
- tmp_pathspec = realpath (pathspec, buf);
- if (tmp_pathspec == 0)
- {
- lt_fatal ("Could not follow symlinks for %s", pathspec);
- }
- return xstrdup (tmp_pathspec);
-#endif
-}
-
-char *
-strendzap (char *str, const char *pat)
-{
- size_t len, patlen;
-
- assert (str != NULL);
- assert (pat != NULL);
-
- len = strlen (str);
- patlen = strlen (pat);
-
- if (patlen <= len)
- {
- str += len - patlen;
- if (strcmp (str, pat) == 0)
- *str = '\0';
- }
- return str;
-}
-
-static void
-lt_error_core (int exit_status, const char *mode,
- const char *message, va_list ap)
-{
- fprintf (stderr, "%s: %s: ", program_name, mode);
- vfprintf (stderr, message, ap);
- fprintf (stderr, ".\n");
-
- if (exit_status >= 0)
- exit (exit_status);
-}
-
-void
-lt_fatal (const char *message, ...)
-{
- va_list ap;
- va_start (ap, message);
- lt_error_core (EXIT_FAILURE, "FATAL", message, ap);
- va_end (ap);
-}
-
-void
-lt_setenv (const char *name, const char *value)
-{
- LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting '%s' to '%s'\n",
- (name ? name : "<NULL>"),
- (value ? value : "<NULL>")));
- {
-#ifdef HAVE_SETENV
- /* always make a copy, for consistency with !HAVE_SETENV */
- char *str = xstrdup (value);
- setenv (name, str, 1);
-#else
- int len = strlen (name) + 1 + strlen (value) + 1;
- char *str = XMALLOC (char, len);
- sprintf (str, "%s=%s", name, value);
- if (putenv (str) != EXIT_SUCCESS)
- {
- XFREE (str);
- }
-#endif
- }
-}
-
-char *
-lt_extend_str (const char *orig_value, const char *add, int to_end)
-{
- char *new_value;
- if (orig_value && *orig_value)
- {
- int orig_value_len = strlen (orig_value);
- int add_len = strlen (add);
- new_value = XMALLOC (char, add_len + orig_value_len + 1);
- if (to_end)
- {
- strcpy (new_value, orig_value);
- strcpy (new_value + orig_value_len, add);
- }
- else
- {
- strcpy (new_value, add);
- strcpy (new_value + add_len, orig_value);
- }
- }
- else
- {
- new_value = xstrdup (add);
- }
- return new_value;
-}
-
-int
-lt_split_name_value (const char *arg, char** name, char** value)
-{
- const char *p;
- int len;
- if (!arg || !*arg)
- return 1;
-
- p = strchr (arg, (int)'=');
-
- if (!p)
- return 1;
-
- *value = xstrdup (++p);
-
- len = strlen (arg) - strlen (*value);
- *name = XMALLOC (char, len);
- strncpy (*name, arg, len-1);
- (*name)[len - 1] = '\0';
-
- return 0;
-}
-
-void
-lt_opt_process_env_set (const char *arg)
-{
- char *name = NULL;
- char *value = NULL;
-
- if (lt_split_name_value (arg, &name, &value) != 0)
- {
- XFREE (name);
- XFREE (value);
- lt_fatal ("bad argument for %s: '%s'", env_set_opt, arg);
- }
-
- lt_setenv (name, value);
- XFREE (name);
- XFREE (value);
-}
-
-void
-lt_opt_process_env_prepend (const char *arg)
-{
- char *name = NULL;
- char *value = NULL;
- char *new_value = NULL;
-
- if (lt_split_name_value (arg, &name, &value) != 0)
- {
- XFREE (name);
- XFREE (value);
- lt_fatal ("bad argument for %s: '%s'", env_prepend_opt, arg);
- }
-
- new_value = lt_extend_str (getenv (name), value, 0);
- lt_setenv (name, new_value);
- XFREE (new_value);
- XFREE (name);
- XFREE (value);
-}
-
-void
-lt_opt_process_env_append (const char *arg)
-{
- char *name = NULL;
- char *value = NULL;
- char *new_value = NULL;
-
- if (lt_split_name_value (arg, &name, &value) != 0)
- {
- XFREE (name);
- XFREE (value);
- lt_fatal ("bad argument for %s: '%s'", env_append_opt, arg);
- }
-
- new_value = lt_extend_str (getenv (name), value, 1);
- lt_setenv (name, new_value);
- XFREE (new_value);
- XFREE (name);
- XFREE (value);
-}
-
-void
-lt_update_exe_path (const char *name, const char *value)
-{
- LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying '%s' by prepending '%s'\n",
- (name ? name : "<NULL>"),
- (value ? value : "<NULL>")));
-
- if (name && *name && value && *value)
- {
- char *new_value = lt_extend_str (getenv (name), value, 0);
- /* some systems can't cope with a ':'-terminated path #' */
- int len = strlen (new_value);
- while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
- {
- new_value[len-1] = '\0';
- }
- lt_setenv (name, new_value);
- XFREE (new_value);
- }
-}
-
-void
-lt_update_lib_path (const char *name, const char *value)
-{
- LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying '%s' by prepending '%s'\n",
- (name ? name : "<NULL>"),
- (value ? value : "<NULL>")));
-
- if (name && *name && value && *value)
- {
- char *new_value = lt_extend_str (getenv (name), value, 0);
- lt_setenv (name, new_value);
- XFREE (new_value);
- }
-}
-
-
-EOF
-}
-# end: func_emit_cwrapperexe_src
-
-# func_mode_link arg...
-func_mode_link ()
-{
- $opt_debug
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
- # It is impossible to link a dll without this setting, and
- # we shouldn't force the makefile maintainer to figure out
- # which system we are compiling for in order to pass an extra
- # flag for every libtool invocation.
- # allow_undefined=no
-
- # FIXME: Unfortunately, there are problems with the above when trying
- # to make a dll which has undefined symbols, in which case not
- # even a static library is built. For now, we need to specify
- # -no-undefined on the libtool link line when we can be certain
- # that all symbols are satisfied, otherwise we get a static library.
- allow_undefined=yes
- ;;
- *)
- allow_undefined=yes
- ;;
- esac
- libtool_args=$nonopt
- base_compile="$nonopt $@"
- compile_command=$nonopt
- finalize_command=$nonopt
-
- compile_rpath=
- finalize_rpath=
- compile_shlibpath=
- finalize_shlibpath=
- convenience=
- old_convenience=
- deplibs=
- old_deplibs=
- compiler_flags=
- linker_flags=
- dllsearchpath=
- lib_search_path=`pwd`
- inst_prefix_dir=
- new_inherited_linker_flags=
-
- avoid_version=no
- dlfiles=
- dlprefiles=
- dlself=no
- export_dynamic=no
- export_symbols=
- export_symbols_regex=
- generated=
- libobjs=
- ltlibs=
- module=no
- no_install=no
- objs=
- non_pic_objects=
- precious_files_regex=
- prefer_static_libs=no
- preload=no
- prev=
- prevarg=
- release=
- rpath=
- xrpath=
- perm_rpath=
- temp_rpath=
- thread_safe=no
- vinfo=
- vinfo_number=no
- weak_libs=
- single_module="${wl}-single_module"
- func_infer_tag $base_compile
-
- # We need to know -static, to get the right output filenames.
- for arg
- do
- case $arg in
- -shared)
- test "$build_libtool_libs" != yes && \
- func_fatal_configuration "can not build a shared library"
- build_old_libs=no
- break
- ;;
- -all-static | -static | -static-libtool-libs)
- case $arg in
- -all-static)
- if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
- func_warning "complete static linking is impossible in this configuration"
- fi
- if test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- prefer_static_libs=yes
- ;;
- -static)
- if test -z "$pic_flag" && test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- prefer_static_libs=built
- ;;
- -static-libtool-libs)
- if test -z "$pic_flag" && test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
- prefer_static_libs=yes
- ;;
- esac
- build_libtool_libs=no
- build_old_libs=yes
- break
- ;;
- esac
- done
-
- # See if our shared archives depend on static archives.
- test -n "$old_archive_from_new_cmds" && build_old_libs=yes
-
- # Go through the arguments, transforming them on the way.
- while test "$#" -gt 0; do
- arg="$1"
- shift
- func_quote_for_eval "$arg"
- qarg=$func_quote_for_eval_unquoted_result
- func_append libtool_args " $func_quote_for_eval_result"
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
- case $prev in
- output)
- func_append compile_command " @OUTPUT@"
- func_append finalize_command " @OUTPUT@"
- ;;
- esac
-
- case $prev in
- dlfiles|dlprefiles)
- if test "$preload" = no; then
- # Add the symbol object into the linking commands.
- func_append compile_command " @SYMFILE@"
- func_append finalize_command " @SYMFILE@"
- preload=yes
- fi
- case $arg in
- *.la | *.lo) ;; # We handle these cases below.
- force)
- if test "$dlself" = no; then
- dlself=needless
- export_dynamic=yes
- fi
- prev=
- continue
- ;;
- self)
- if test "$prev" = dlprefiles; then
- dlself=yes
- elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
- dlself=yes
- else
- dlself=needless
- export_dynamic=yes
- fi
- prev=
- continue
- ;;
- *)
- if test "$prev" = dlfiles; then
- dlfiles="$dlfiles $arg"
- else
- dlprefiles="$dlprefiles $arg"
- fi
- prev=
- continue
- ;;
- esac
- ;;
- expsyms)
- export_symbols="$arg"
- test -f "$arg" \
- || func_fatal_error "symbol file \`$arg' does not exist"
- prev=
- continue
- ;;
- expsyms_regex)
- export_symbols_regex="$arg"
- prev=
- continue
- ;;
- framework)
- case $host in
- *-*-darwin*)
- case "$deplibs " in
- *" $qarg.ltframework "*) ;;
- *) deplibs="$deplibs $qarg.ltframework" # this is fixed later
- ;;
- esac
- ;;
- esac
- prev=
- continue
- ;;
- inst_prefix)
- inst_prefix_dir="$arg"
- prev=
- continue
- ;;
- objectlist)
- if test -f "$arg"; then
- save_arg=$arg
- moreargs=
- for fil in `cat "$save_arg"`
- do
-# moreargs="$moreargs $fil"
- arg=$fil
- # A libtool-controlled object.
-
- # Check to see that this really is a libtool object.
- if func_lalib_unsafe_p "$arg"; then
- pic_object=
- non_pic_object=
-
- # Read the .lo file
- func_source "$arg"
-
- if test -z "$pic_object" ||
- test -z "$non_pic_object" ||
- test "$pic_object" = none &&
- test "$non_pic_object" = none; then
- func_fatal_error "cannot find name of object for \`$arg'"
- fi
-
- # Extract subdirectory from the argument.
- func_dirname "$arg" "/" ""
- xdir="$func_dirname_result"
-
- if test "$pic_object" != none; then
- # Prepend the subdirectory the object is found in.
- pic_object="$xdir$pic_object"
-
- if test "$prev" = dlfiles; then
- if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
- dlfiles="$dlfiles $pic_object"
- prev=
- continue
- else
- # If libtool objects are unsupported, then we need to preload.
- prev=dlprefiles
- fi
- fi
-
- # CHECK ME: I think I busted this. -Ossama
- if test "$prev" = dlprefiles; then
- # Preload the old-style object.
- dlprefiles="$dlprefiles $pic_object"
- prev=
- fi
-
- # A PIC object.
- func_append libobjs " $pic_object"
- arg="$pic_object"
- fi
-
- # Non-PIC object.
- if test "$non_pic_object" != none; then
- # Prepend the subdirectory the object is found in.
- non_pic_object="$xdir$non_pic_object"
-
- # A standard non-PIC object
- func_append non_pic_objects " $non_pic_object"
- if test -z "$pic_object" || test "$pic_object" = none ; then
- arg="$non_pic_object"
- fi
- else
- # If the PIC object exists, use it instead.
- # $xdir was prepended to $pic_object above.
- non_pic_object="$pic_object"
- func_append non_pic_objects " $non_pic_object"
- fi
- else
- # Only an error if not doing a dry-run.
- if $opt_dry_run; then
- # Extract subdirectory from the argument.
- func_dirname "$arg" "/" ""
- xdir="$func_dirname_result"
-
- func_lo2o "$arg"
- pic_object=$xdir$objdir/$func_lo2o_result
- non_pic_object=$xdir$func_lo2o_result
- func_append libobjs " $pic_object"
- func_append non_pic_objects " $non_pic_object"
- else
- func_fatal_error "\`$arg' is not a valid libtool object"
- fi
- fi
- done
- else
- func_fatal_error "link input file \`$arg' does not exist"
- fi
- arg=$save_arg
- prev=
- continue
- ;;
- precious_regex)
- precious_files_regex="$arg"
- prev=
- continue
- ;;
- release)
- release="-$arg"
- prev=
- continue
- ;;
- rpath | xrpath)
- # We need an absolute path.
- case $arg in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- func_fatal_error "only absolute run-paths are allowed"
- ;;
- esac
- if test "$prev" = rpath; then
- case "$rpath " in
- *" $arg "*) ;;
- *) rpath="$rpath $arg" ;;
- esac
- else
- case "$xrpath " in
- *" $arg "*) ;;
- *) xrpath="$xrpath $arg" ;;
- esac
- fi
- prev=
- continue
- ;;
- shrext)
- shrext_cmds="$arg"
- prev=
- continue
- ;;
- weak)
- weak_libs="$weak_libs $arg"
- prev=
- continue
- ;;
- xcclinker)
- linker_flags="$linker_flags $qarg"
- compiler_flags="$compiler_flags $qarg"
- prev=
- func_append compile_command " $qarg"
- func_append finalize_command " $qarg"
- continue
- ;;
- xcompiler)
- compiler_flags="$compiler_flags $qarg"
- prev=
- func_append compile_command " $qarg"
- func_append finalize_command " $qarg"
- continue
- ;;
- xlinker)
- linker_flags="$linker_flags $qarg"
- compiler_flags="$compiler_flags $wl$qarg"
- prev=
- func_append compile_command " $wl$qarg"
- func_append finalize_command " $wl$qarg"
- continue
- ;;
- *)
- eval "$prev=\"\$arg\""
- prev=
- continue
- ;;
- esac
- fi # test -n "$prev"
-
- prevarg="$arg"
-
- case $arg in
- -all-static)
- if test -n "$link_static_flag"; then
- # See comment for -static flag below, for more details.
- func_append compile_command " $link_static_flag"
- func_append finalize_command " $link_static_flag"
- fi
- continue
- ;;
-
- -allow-undefined)
- # FIXME: remove this flag sometime in the future.
- func_fatal_error "\`-allow-undefined' must not be used because it is the default"
- ;;
-
- -avoid-version)
- avoid_version=yes
- continue
- ;;
-
- -dlopen)
- prev=dlfiles
- continue
- ;;
-
- -dlpreopen)
- prev=dlprefiles
- continue
- ;;
-
- -export-dynamic)
- export_dynamic=yes
- continue
- ;;
-
- -export-symbols | -export-symbols-regex)
- if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
- func_fatal_error "more than one -exported-symbols argument is not allowed"
- fi
- if test "X$arg" = "X-export-symbols"; then
- prev=expsyms
- else
- prev=expsyms_regex
- fi
- continue
- ;;
-
- -framework)
- prev=framework
- continue
- ;;
-
- -inst-prefix-dir)
- prev=inst_prefix
- continue
- ;;
-
- # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
- # so, if we see these flags be careful not to treat them like -L
- -L[A-Z][A-Z]*:*)
- case $with_gcc/$host in
- no/*-*-irix* | /*-*-irix*)
- func_append compile_command " $arg"
- func_append finalize_command " $arg"
- ;;
- esac
- continue
- ;;
-
- -L*)
- func_stripname '-L' '' "$arg"
- dir=$func_stripname_result
- if test -z "$dir"; then
- if test "$#" -gt 0; then
- func_fatal_error "require no space between \`-L' and \`$1'"
- else
- func_fatal_error "need path for \`-L' option"
- fi
- fi
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- absdir=`cd "$dir" && pwd`
- test -z "$absdir" && \
- func_fatal_error "cannot determine absolute directory name of \`$dir'"
- dir="$absdir"
- ;;
- esac
- case "$deplibs " in
- *" -L$dir "*) ;;
- *)
- deplibs="$deplibs -L$dir"
- lib_search_path="$lib_search_path $dir"
- ;;
- esac
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
- testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'`
- case :$dllsearchpath: in
- *":$dir:"*) ;;
- ::) dllsearchpath=$dir;;
- *) dllsearchpath="$dllsearchpath:$dir";;
- esac
- case :$dllsearchpath: in
- *":$testbindir:"*) ;;
- ::) dllsearchpath=$testbindir;;
- *) dllsearchpath="$dllsearchpath:$testbindir";;
- esac
- ;;
- esac
- continue
- ;;
-
- -l*)
- if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc*)
- # These systems don't actually have a C or math library (as such)
- continue
- ;;
- *-*-os2*)
- # These systems don't actually have a C library (as such)
- test "X$arg" = "X-lc" && continue
- ;;
- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc due to us having libc/libc_r.
- test "X$arg" = "X-lc" && continue
- ;;
- *-*-rhapsody* | *-*-darwin1.[012])
- # Rhapsody C and math libraries are in the System framework
- deplibs="$deplibs System.ltframework"
- continue
- ;;
- *-*-sco3.2v5* | *-*-sco5v6*)
- # Causes problems with __ctype
- test "X$arg" = "X-lc" && continue
- ;;
- *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
- # Compiler inserts libc in the correct place for threads to work
- test "X$arg" = "X-lc" && continue
- ;;
- esac
- elif test "X$arg" = "X-lc_r"; then
- case $host in
- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc_r directly, use -pthread flag.
- continue
- ;;
- esac
- fi
- deplibs="$deplibs $arg"
- continue
- ;;
-
- -module)
- module=yes
- continue
- ;;
-
- # Tru64 UNIX uses -model [arg] to determine the layout of C++
- # classes, name mangling, and exception handling.
- # Darwin uses the -arch flag to determine output architecture.
- -model|-arch|-isysroot)
- compiler_flags="$compiler_flags $arg"
- func_append compile_command " $arg"
- func_append finalize_command " $arg"
- prev=xcompiler
- continue
- ;;
-
- -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
- compiler_flags="$compiler_flags $arg"
- func_append compile_command " $arg"
- func_append finalize_command " $arg"
- case "$new_inherited_linker_flags " in
- *" $arg "*) ;;
- * ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;;
- esac
- continue
- ;;
-
- -multi_module)
- single_module="${wl}-multi_module"
- continue
- ;;
-
- -no-fast-install)
- fast_install=no
- continue
- ;;
-
- -no-install)
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
- # The PATH hackery in wrapper scripts is required on Windows
- # and Darwin in order for the loader to find any dlls it needs.
- func_warning "\`-no-install' is ignored for $host"
- func_warning "assuming \`-no-fast-install' instead"
- fast_install=no
- ;;
- *) no_install=yes ;;
- esac
- continue
- ;;
-
- -no-undefined)
- allow_undefined=no
- continue
- ;;
-
- -objectlist)
- prev=objectlist
- continue
- ;;
-
- -o) prev=output ;;
-
- -precious-files-regex)
- prev=precious_regex
- continue
- ;;
-
- -release)
- prev=release
- continue
- ;;
-
- -rpath)
- prev=rpath
- continue
- ;;
-
- -R)
- prev=xrpath
- continue
- ;;
-
- -R*)
- func_stripname '-R' '' "$arg"
- dir=$func_stripname_result
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- func_fatal_error "only absolute run-paths are allowed"
- ;;
- esac
- case "$xrpath " in
- *" $dir "*) ;;
- *) xrpath="$xrpath $dir" ;;
- esac
- continue
- ;;
-
- -shared)
- # The effects of -shared are defined in a previous loop.
- continue
- ;;
-
- -shrext)
- prev=shrext
- continue
- ;;
-
- -static | -static-libtool-libs)
- # The effects of -static are defined in a previous loop.
- # We used to do the same as -all-static on platforms that
- # didn't have a PIC flag, but the assumption that the effects
- # would be equivalent was wrong. It would break on at least
- # Digital Unix and AIX.
- continue
- ;;
-
- -thread-safe)
- thread_safe=yes
- continue
- ;;
-
- -version-info)
- prev=vinfo
- continue
- ;;
-
- -version-number)
- prev=vinfo
- vinfo_number=yes
- continue
- ;;
-
- -weak)
- prev=weak
- continue
- ;;
-
- -Wc,*)
- func_stripname '-Wc,' '' "$arg"
- args=$func_stripname_result
- arg=
- save_ifs="$IFS"; IFS=','
- for flag in $args; do
- IFS="$save_ifs"
- func_quote_for_eval "$flag"
- arg="$arg $wl$func_quote_for_eval_result"
- compiler_flags="$compiler_flags $func_quote_for_eval_result"
- done
- IFS="$save_ifs"
- func_stripname ' ' '' "$arg"
- arg=$func_stripname_result
- ;;
-
- -Wl,*)
- func_stripname '-Wl,' '' "$arg"
- args=$func_stripname_result
- arg=
- save_ifs="$IFS"; IFS=','
- for flag in $args; do
- IFS="$save_ifs"
- func_quote_for_eval "$flag"
- arg="$arg $wl$func_quote_for_eval_result"
- compiler_flags="$compiler_flags $wl$func_quote_for_eval_result"
- linker_flags="$linker_flags $func_quote_for_eval_result"
- done
- IFS="$save_ifs"
- func_stripname ' ' '' "$arg"
- arg=$func_stripname_result
- ;;
-
- -Xcompiler)
- prev=xcompiler
- continue
- ;;
-
- -Xlinker)
- prev=xlinker
- continue
- ;;
-
- -XCClinker)
- prev=xcclinker
- continue
- ;;
-
- # -msg_* for osf cc
- -msg_*)
- func_quote_for_eval "$arg"
- arg="$func_quote_for_eval_result"
- ;;
-
- # -64, -mips[0-9] enable 64-bit mode on the SGI compiler
- # -r[0-9][0-9]* specifies the processor on the SGI compiler
- # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler
- # +DA*, +DD* enable 64-bit mode on the HP compiler
- # -q* pass through compiler args for the IBM compiler
- # -m*, -t[45]*, -txscale* pass through architecture-specific
- # compiler args for GCC
- # -F/path gives path to uninstalled frameworks, gcc on darwin
- # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC
- # @file GCC response files
- -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
- -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*)
- func_quote_for_eval "$arg"
- arg="$func_quote_for_eval_result"
- func_append compile_command " $arg"
- func_append finalize_command " $arg"
- compiler_flags="$compiler_flags $arg"
- continue
- ;;
-
- # Some other compiler flag.
- -* | +*)
- func_quote_for_eval "$arg"
- arg="$func_quote_for_eval_result"
- ;;
-
- *.$objext)
- # A standard object.
- objs="$objs $arg"
- ;;
-
- *.lo)
- # A libtool-controlled object.
-
- # Check to see that this really is a libtool object.
- if func_lalib_unsafe_p "$arg"; then
- pic_object=
- non_pic_object=
-
- # Read the .lo file
- func_source "$arg"
-
- if test -z "$pic_object" ||
- test -z "$non_pic_object" ||
- test "$pic_object" = none &&
- test "$non_pic_object" = none; then
- func_fatal_error "cannot find name of object for \`$arg'"
- fi
-
- # Extract subdirectory from the argument.
- func_dirname "$arg" "/" ""
- xdir="$func_dirname_result"
-
- if test "$pic_object" != none; then
- # Prepend the subdirectory the object is found in.
- pic_object="$xdir$pic_object"
-
- if test "$prev" = dlfiles; then
- if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
- dlfiles="$dlfiles $pic_object"
- prev=
- continue
- else
- # If libtool objects are unsupported, then we need to preload.
- prev=dlprefiles
- fi
- fi
-
- # CHECK ME: I think I busted this. -Ossama
- if test "$prev" = dlprefiles; then
- # Preload the old-style object.
- dlprefiles="$dlprefiles $pic_object"
- prev=
- fi
-
- # A PIC object.
- func_append libobjs " $pic_object"
- arg="$pic_object"
- fi
-
- # Non-PIC object.
- if test "$non_pic_object" != none; then
- # Prepend the subdirectory the object is found in.
- non_pic_object="$xdir$non_pic_object"
-
- # A standard non-PIC object
- func_append non_pic_objects " $non_pic_object"
- if test -z "$pic_object" || test "$pic_object" = none ; then
- arg="$non_pic_object"
- fi
- else
- # If the PIC object exists, use it instead.
- # $xdir was prepended to $pic_object above.
- non_pic_object="$pic_object"
- func_append non_pic_objects " $non_pic_object"
- fi
- else
- # Only an error if not doing a dry-run.
- if $opt_dry_run; then
- # Extract subdirectory from the argument.
- func_dirname "$arg" "/" ""
- xdir="$func_dirname_result"
-
- func_lo2o "$arg"
- pic_object=$xdir$objdir/$func_lo2o_result
- non_pic_object=$xdir$func_lo2o_result
- func_append libobjs " $pic_object"
- func_append non_pic_objects " $non_pic_object"
- else
- func_fatal_error "\`$arg' is not a valid libtool object"
- fi
- fi
- ;;
-
- *.$libext)
- # An archive.
- deplibs="$deplibs $arg"
- old_deplibs="$old_deplibs $arg"
- continue
- ;;
-
- *.la)
- # A libtool-controlled library.
-
- if test "$prev" = dlfiles; then
- # This library was specified with -dlopen.
- dlfiles="$dlfiles $arg"
- prev=
- elif test "$prev" = dlprefiles; then
- # The library was specified with -dlpreopen.
- dlprefiles="$dlprefiles $arg"
- prev=
- else
- deplibs="$deplibs $arg"
- fi
- continue
- ;;
-
- # Some other compiler argument.
- *)
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- func_quote_for_eval "$arg"
- arg="$func_quote_for_eval_result"
- ;;
- esac # arg
-
- # Now actually substitute the argument into the commands.
- if test -n "$arg"; then
- func_append compile_command " $arg"
- func_append finalize_command " $arg"
- fi
- done # argument parsing loop
-
- test -n "$prev" && \
- func_fatal_help "the \`$prevarg' option requires an argument"
-
- if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
- eval arg=\"$export_dynamic_flag_spec\"
- func_append compile_command " $arg"
- func_append finalize_command " $arg"
- fi
-
- oldlibs=
- # calculate the name of the file, without its directory
- func_basename "$output"
- outputname="$func_basename_result"
- libobjs_save="$libobjs"
-
- if test -n "$shlibpath_var"; then
- # get the directories listed in $shlibpath_var
- eval shlib_search_path=\`\$ECHO \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
- else
- shlib_search_path=
- fi
- eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
- eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
-
- func_dirname "$output" "/" ""
- output_objdir="$func_dirname_result$objdir"
- # Create the object directory.
- func_mkdir_p "$output_objdir"
-
- # Determine the type of output
- case $output in
- "")
- func_fatal_help "you must specify an output file"
- ;;
- *.$libext) linkmode=oldlib ;;
- *.lo | *.$objext) linkmode=obj ;;
- *.la) linkmode=lib ;;
- *) linkmode=prog ;; # Anything else should be a program.
- esac
-
- specialdeplibs=
-
- libs=
- # Find all interdependent deplibs by searching for libraries
- # that are linked more than once (e.g. -la -lb -la)
- for deplib in $deplibs; do
- if $opt_duplicate_deps ; then
- case "$libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- libs="$libs $deplib"
- done
-
- if test "$linkmode" = lib; then
- libs="$predeps $libs $compiler_lib_search_path $postdeps"
-
- # Compute libraries that are listed more than once in $predeps
- # $postdeps and mark them as special (i.e., whose duplicates are
- # not to be eliminated).
- pre_post_deps=
- if $opt_duplicate_compiler_generated_deps; then
- for pre_post_dep in $predeps $postdeps; do
- case "$pre_post_deps " in
- *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;;
- esac
- pre_post_deps="$pre_post_deps $pre_post_dep"
- done
- fi
- pre_post_deps=
- fi
-
- deplibs=
- newdependency_libs=
- newlib_search_path=
- need_relink=no # whether we're linking any uninstalled libtool libraries
- notinst_deplibs= # not-installed libtool libraries
- notinst_path= # paths that contain not-installed libtool libraries
-
- case $linkmode in
- lib)
- passes="conv dlpreopen link"
- for file in $dlfiles $dlprefiles; do
- case $file in
- *.la) ;;
- *)
- func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file"
- ;;
- esac
- done
- ;;
- prog)
- compile_deplibs=
- finalize_deplibs=
- alldeplibs=no
- newdlfiles=
- newdlprefiles=
- passes="conv scan dlopen dlpreopen link"
- ;;
- *) passes="conv"
- ;;
- esac
-
- for pass in $passes; do
- # The preopen pass in lib mode reverses $deplibs; put it back here
- # so that -L comes before libs that need it for instance...
- if test "$linkmode,$pass" = "lib,link"; then
- ## FIXME: Find the place where the list is rebuilt in the wrong
- ## order, and fix it there properly
- tmp_deplibs=
- for deplib in $deplibs; do
- tmp_deplibs="$deplib $tmp_deplibs"
- done
- deplibs="$tmp_deplibs"
- fi
-
- if test "$linkmode,$pass" = "lib,link" ||
- test "$linkmode,$pass" = "prog,scan"; then
- libs="$deplibs"
- deplibs=
- fi
- if test "$linkmode" = prog; then
- case $pass in
- dlopen) libs="$dlfiles" ;;
- dlpreopen) libs="$dlprefiles" ;;
- link)
- libs="$deplibs %DEPLIBS%"
- test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
- ;;
- esac
- fi
- if test "$linkmode,$pass" = "lib,dlpreopen"; then
- # Collect and forward deplibs of preopened libtool libs
- for lib in $dlprefiles; do
- # Ignore non-libtool-libs
- dependency_libs=
- case $lib in
- *.la) func_source "$lib" ;;
- esac
-
- # Collect preopened libtool deplibs, except any this library
- # has declared as weak libs
- for deplib in $dependency_libs; do
- deplib_base=`$ECHO "X$deplib" | $Xsed -e "$basename"`
- case " $weak_libs " in
- *" $deplib_base "*) ;;
- *) deplibs="$deplibs $deplib" ;;
- esac
- done
- done
- libs="$dlprefiles"
- fi
- if test "$pass" = dlopen; then
- # Collect dlpreopened libraries
- save_deplibs="$deplibs"
- deplibs=
- fi
-
- for deplib in $libs; do
- lib=
- found=no
- case $deplib in
- -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- compiler_flags="$compiler_flags $deplib"
- if test "$linkmode" = lib ; then
- case "$new_inherited_linker_flags " in
- *" $deplib "*) ;;
- * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;;
- esac
- fi
- fi
- continue
- ;;
- -l*)
- if test "$linkmode" != lib && test "$linkmode" != prog; then
- func_warning "\`-l' is ignored for archives/objects"
- continue
- fi
- func_stripname '-l' '' "$deplib"
- name=$func_stripname_result
- if test "$linkmode" = lib; then
- searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
- else
- searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
- fi
- for searchdir in $searchdirs; do
- for search_ext in .la $std_shrext .so .a; do
- # Search the libtool library
- lib="$searchdir/lib${name}${search_ext}"
- if test -f "$lib"; then
- if test "$search_ext" = ".la"; then
- found=yes
- else
- found=no
- fi
- break 2
- fi
- done
- done
- if test "$found" != yes; then
- # deplib doesn't seem to be a libtool library
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- deplibs="$deplib $deplibs"
- test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
- fi
- continue
- else # deplib is a libtool library
- # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
- # We need to do some special things here, and not later.
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $deplib "*)
- if func_lalib_p "$lib"; then
- library_names=
- old_library=
- func_source "$lib"
- for l in $old_library $library_names; do
- ll="$l"
- done
- if test "X$ll" = "X$old_library" ; then # only static version available
- found=no
- func_dirname "$lib" "" "."
- ladir="$func_dirname_result"
- lib=$ladir/$old_library
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- deplibs="$deplib $deplibs"
- test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
- fi
- continue
- fi
- fi
- ;;
- *) ;;
- esac
- fi
- fi
- ;; # -l
- *.ltframework)
- if test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- deplibs="$deplib $deplibs"
- if test "$linkmode" = lib ; then
- case "$new_inherited_linker_flags " in
- *" $deplib "*) ;;
- * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;;
- esac
- fi
- fi
- continue
- ;;
- -L*)
- case $linkmode in
- lib)
- deplibs="$deplib $deplibs"
- test "$pass" = conv && continue
- newdependency_libs="$deplib $newdependency_libs"
- func_stripname '-L' '' "$deplib"
- newlib_search_path="$newlib_search_path $func_stripname_result"
- ;;
- prog)
- if test "$pass" = conv; then
- deplibs="$deplib $deplibs"
- continue
- fi
- if test "$pass" = scan; then
- deplibs="$deplib $deplibs"
- else
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- fi
- func_stripname '-L' '' "$deplib"
- newlib_search_path="$newlib_search_path $func_stripname_result"
- ;;
- *)
- func_warning "\`-L' is ignored for archives/objects"
- ;;
- esac # linkmode
- continue
- ;; # -L
- -R*)
- if test "$pass" = link; then
- func_stripname '-R' '' "$deplib"
- dir=$func_stripname_result
- # Make sure the xrpath contains only unique directories.
- case "$xrpath " in
- *" $dir "*) ;;
- *) xrpath="$xrpath $dir" ;;
- esac
- fi
- deplibs="$deplib $deplibs"
- continue
- ;;
- *.la) lib="$deplib" ;;
- *.$libext)
- if test "$pass" = conv; then
- deplibs="$deplib $deplibs"
- continue
- fi
- case $linkmode in
- lib)
- # Linking convenience modules into shared libraries is allowed,
- # but linking other static libraries is non-portable.
- case " $dlpreconveniencelibs " in
- *" $deplib "*) ;;
- *)
- valid_a_lib=no
- case $deplibs_check_method in
- match_pattern*)
- set dummy $deplibs_check_method; shift
- match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
- if eval "\$ECHO \"X$deplib\"" 2>/dev/null | $Xsed -e 10q \
- | $EGREP "$match_pattern_regex" > /dev/null; then
- valid_a_lib=yes
- fi
- ;;
- pass_all)
- valid_a_lib=yes
- ;;
- esac
- if test "$valid_a_lib" != yes; then
- $ECHO
- $ECHO "*** Warning: Trying to link with static lib archive $deplib."
- $ECHO "*** I have the capability to make that library automatically link in when"
- $ECHO "*** you link to this library. But I can only do this if you have a"
- $ECHO "*** shared version of the library, which you do not appear to have"
- $ECHO "*** because the file extensions .$libext of this argument makes me believe"
- $ECHO "*** that it is just a static archive that I should not use here."
- else
- $ECHO
- $ECHO "*** Warning: Linking the shared library $output against the"
- $ECHO "*** static library $deplib is not portable!"
- deplibs="$deplib $deplibs"
- fi
- ;;
- esac
- continue
- ;;
- prog)
- if test "$pass" != link; then
- deplibs="$deplib $deplibs"
- else
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- fi
- continue
- ;;
- esac # linkmode
- ;; # *.$libext
- *.lo | *.$objext)
- if test "$pass" = conv; then
- deplibs="$deplib $deplibs"
- elif test "$linkmode" = prog; then
- if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
- # If there is no dlopen support or we're linking statically,
- # we need to preload.
- newdlprefiles="$newdlprefiles $deplib"
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- else
- newdlfiles="$newdlfiles $deplib"
- fi
- fi
- continue
- ;;
- %DEPLIBS%)
- alldeplibs=yes
- continue
- ;;
- esac # case $deplib
-
- if test "$found" = yes || test -f "$lib"; then :
- else
- func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"
- fi
-
- # Check to see that this really is a libtool archive.
- func_lalib_unsafe_p "$lib" \
- || func_fatal_error "\`$lib' is not a valid libtool archive"
-
- func_dirname "$lib" "" "."
- ladir="$func_dirname_result"
-
- dlname=
- dlopen=
- dlpreopen=
- libdir=
- library_names=
- old_library=
- inherited_linker_flags=
- # If the library was installed with an old release of libtool,
- # it will not redefine variables installed, or shouldnotlink
- installed=yes
- shouldnotlink=no
- avoidtemprpath=
-
-
- # Read the .la file
- func_source "$lib"
-
- # Convert "-framework foo" to "foo.ltframework"
- if test -n "$inherited_linker_flags"; then
- tmp_inherited_linker_flags=`$ECHO "X$inherited_linker_flags" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'`
- for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do
- case " $new_inherited_linker_flags " in
- *" $tmp_inherited_linker_flag "*) ;;
- *) new_inherited_linker_flags="$new_inherited_linker_flags $tmp_inherited_linker_flag";;
- esac
- done
- fi
- dependency_libs=`$ECHO "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
- if test "$linkmode,$pass" = "lib,link" ||
- test "$linkmode,$pass" = "prog,scan" ||
- { test "$linkmode" != prog && test "$linkmode" != lib; }; then
- test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
- test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
- fi
-
- if test "$pass" = conv; then
- # Only check for convenience libraries
- deplibs="$lib $deplibs"
- if test -z "$libdir"; then
- if test -z "$old_library"; then
- func_fatal_error "cannot find name of link library for \`$lib'"
- fi
- # It is a libtool convenience library, so add in its objects.
- convenience="$convenience $ladir/$objdir/$old_library"
- old_convenience="$old_convenience $ladir/$objdir/$old_library"
- tmp_libs=
- for deplib in $dependency_libs; do
- deplibs="$deplib $deplibs"
- if $opt_duplicate_deps ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done
- elif test "$linkmode" != prog && test "$linkmode" != lib; then
- func_fatal_error "\`$lib' is not a convenience library"
- fi
- continue
- fi # $pass = conv
-
-
- # Get the name of the library we link against.
- linklib=
- for l in $old_library $library_names; do
- linklib="$l"
- done
- if test -z "$linklib"; then
- func_fatal_error "cannot find name of link library for \`$lib'"
- fi
-
- # This library was specified with -dlopen.
- if test "$pass" = dlopen; then
- if test -z "$libdir"; then
- func_fatal_error "cannot -dlopen a convenience library: \`$lib'"
- fi
- if test -z "$dlname" ||
- test "$dlopen_support" != yes ||
- test "$build_libtool_libs" = no; then
- # If there is no dlname, no dlopen support or we're linking
- # statically, we need to preload. We also need to preload any
- # dependent libraries so libltdl's deplib preloader doesn't
- # bomb out in the load deplibs phase.
- dlprefiles="$dlprefiles $lib $dependency_libs"
- else
- newdlfiles="$newdlfiles $lib"
- fi
- continue
- fi # $pass = dlopen
-
- # We need an absolute path.
- case $ladir in
- [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
- *)
- abs_ladir=`cd "$ladir" && pwd`
- if test -z "$abs_ladir"; then
- func_warning "cannot determine absolute directory name of \`$ladir'"
- func_warning "passing it literally to the linker, although it might fail"
- abs_ladir="$ladir"
- fi
- ;;
- esac
- func_basename "$lib"
- laname="$func_basename_result"
-
- # Find the relevant object directory and library name.
- if test "X$installed" = Xyes; then
- if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
- func_warning "library \`$lib' was moved."
- dir="$ladir"
- absdir="$abs_ladir"
- libdir="$abs_ladir"
- else
- dir="$libdir"
- absdir="$libdir"
- fi
- test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
- else
- if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
- dir="$ladir"
- absdir="$abs_ladir"
- # Remove this search path later
- notinst_path="$notinst_path $abs_ladir"
- else
- dir="$ladir/$objdir"
- absdir="$abs_ladir/$objdir"
- # Remove this search path later
- notinst_path="$notinst_path $abs_ladir"
- fi
- fi # $installed = yes
- func_stripname 'lib' '.la' "$laname"
- name=$func_stripname_result
-
- # This library was specified with -dlpreopen.
- if test "$pass" = dlpreopen; then
- if test -z "$libdir" && test "$linkmode" = prog; then
- func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"
- fi
- # Prefer using a static library (so that no silly _DYNAMIC symbols
- # are required to link).
- if test -n "$old_library"; then
- newdlprefiles="$newdlprefiles $dir/$old_library"
- # Keep a list of preopened convenience libraries to check
- # that they are being used correctly in the link pass.
- test -z "$libdir" && \
- dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library"
- # Otherwise, use the dlname, so that lt_dlopen finds it.
- elif test -n "$dlname"; then
- newdlprefiles="$newdlprefiles $dir/$dlname"
- else
- newdlprefiles="$newdlprefiles $dir/$linklib"
- fi
- fi # $pass = dlpreopen
-
- if test -z "$libdir"; then
- # Link the convenience library
- if test "$linkmode" = lib; then
- deplibs="$dir/$old_library $deplibs"
- elif test "$linkmode,$pass" = "prog,link"; then
- compile_deplibs="$dir/$old_library $compile_deplibs"
- finalize_deplibs="$dir/$old_library $finalize_deplibs"
- else
- deplibs="$lib $deplibs" # used for prog,scan pass
- fi
- continue
- fi
-
-
- if test "$linkmode" = prog && test "$pass" != link; then
- newlib_search_path="$newlib_search_path $ladir"
- deplibs="$lib $deplibs"
-
- linkalldeplibs=no
- if test "$link_all_deplibs" != no || test -z "$library_names" ||
- test "$build_libtool_libs" = no; then
- linkalldeplibs=yes
- fi
-
- tmp_libs=
- for deplib in $dependency_libs; do
- case $deplib in
- -L*) func_stripname '-L' '' "$deplib"
- newlib_search_path="$newlib_search_path $func_stripname_result"
- ;;
- esac
- # Need to link against all dependency_libs?
- if test "$linkalldeplibs" = yes; then
- deplibs="$deplib $deplibs"
- else
- # Need to hardcode shared library paths
- # or/and link against static libraries
- newdependency_libs="$deplib $newdependency_libs"
- fi
- if $opt_duplicate_deps ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done # for deplib
- continue
- fi # $linkmode = prog...
-
- if test "$linkmode,$pass" = "prog,link"; then
- if test -n "$library_names" &&
- { { test "$prefer_static_libs" = no ||
- test "$prefer_static_libs,$installed" = "built,yes"; } ||
- test -z "$old_library"; }; then
- # We need to hardcode the library path
- if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
- # Make sure the rpath contains only unique directories.
- case "$temp_rpath:" in
- *"$absdir:"*) ;;
- *) temp_rpath="$temp_rpath$absdir:" ;;
- esac
- fi
-
- # Hardcode the library path.
- # Skip directories that are in the system default run-time
- # search path.
- case " $sys_lib_dlsearch_path " in
- *" $absdir "*) ;;
- *)
- case "$compile_rpath " in
- *" $absdir "*) ;;
- *) compile_rpath="$compile_rpath $absdir"
- esac
- ;;
- esac
- case " $sys_lib_dlsearch_path " in
- *" $libdir "*) ;;
- *)
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir"
- esac
- ;;
- esac
- fi # $linkmode,$pass = prog,link...
-
- if test "$alldeplibs" = yes &&
- { test "$deplibs_check_method" = pass_all ||
- { test "$build_libtool_libs" = yes &&
- test -n "$library_names"; }; }; then
- # We only need to search for static libraries
- continue
- fi
- fi
-
- link_static=no # Whether the deplib will be linked statically
- use_static_libs=$prefer_static_libs
- if test "$use_static_libs" = built && test "$installed" = yes; then
- use_static_libs=no
- fi
- if test -n "$library_names" &&
- { test "$use_static_libs" = no || test -z "$old_library"; }; then
- case $host in
- *cygwin* | *mingw* | *cegcc*)
- # No point in relinking DLLs because paths are not encoded
- notinst_deplibs="$notinst_deplibs $lib"
- need_relink=no
- ;;
- *)
- if test "$installed" = no; then
- notinst_deplibs="$notinst_deplibs $lib"
- need_relink=yes
- fi
- ;;
- esac
- # This is a shared library
-
- # Warn about portability, can't link against -module's on some
- # systems (darwin). Don't bleat about dlopened modules though!
- dlopenmodule=""
- for dlpremoduletest in $dlprefiles; do
- if test "X$dlpremoduletest" = "X$lib"; then
- dlopenmodule="$dlpremoduletest"
- break
- fi
- done
- if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then
- $ECHO
- if test "$linkmode" = prog; then
- $ECHO "*** Warning: Linking the executable $output against the loadable module"
- else
- $ECHO "*** Warning: Linking the shared library $output against the loadable module"
- fi
- $ECHO "*** $linklib is not portable!"
- fi
- if test "$linkmode" = lib &&
- test "$hardcode_into_libs" = yes; then
- # Hardcode the library path.
- # Skip directories that are in the system default run-time
- # search path.
- case " $sys_lib_dlsearch_path " in
- *" $absdir "*) ;;
- *)
- case "$compile_rpath " in
- *" $absdir "*) ;;
- *) compile_rpath="$compile_rpath $absdir"
- esac
- ;;
- esac
- case " $sys_lib_dlsearch_path " in
- *" $libdir "*) ;;
- *)
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir"
- esac
- ;;
- esac
- fi
-
- if test -n "$old_archive_from_expsyms_cmds"; then
- # figure out the soname
- set dummy $library_names
- shift
- realname="$1"
- shift
- libname=`eval "\\$ECHO \"$libname_spec\""`
- # use dlname if we got it. it's perfectly good, no?
- if test -n "$dlname"; then
- soname="$dlname"
- elif test -n "$soname_spec"; then
- # bleh windows
- case $host in
- *cygwin* | mingw* | *cegcc*)
- func_arith $current - $age
- major=$func_arith_result
- versuffix="-$major"
- ;;
- esac
- eval soname=\"$soname_spec\"
- else
- soname="$realname"
- fi
-
- # Make a new name for the extract_expsyms_cmds to use
- soroot="$soname"
- func_basename "$soroot"
- soname="$func_basename_result"
- func_stripname 'lib' '.dll' "$soname"
- newlib=libimp-$func_stripname_result.a
-
- # If the library has no export list, then create one now
- if test -f "$output_objdir/$soname-def"; then :
- else
- func_verbose "extracting exported symbol list from \`$soname'"
- func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
- fi
-
- # Create $newlib
- if test -f "$output_objdir/$newlib"; then :; else
- func_verbose "generating import library for \`$soname'"
- func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
- fi
- # make sure the library variables are pointing to the new library
- dir=$output_objdir
- linklib=$newlib
- fi # test -n "$old_archive_from_expsyms_cmds"
-
- if test "$linkmode" = prog || test "$mode" != relink; then
- add_shlibpath=
- add_dir=
- add=
- lib_linked=yes
- case $hardcode_action in
- immediate | unsupported)
- if test "$hardcode_direct" = no; then
- add="$dir/$linklib"
- case $host in
- *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
- *-*-sysv4*uw2*) add_dir="-L$dir" ;;
- *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
- *-*-unixware7*) add_dir="-L$dir" ;;
- *-*-darwin* )
- # if the lib is a (non-dlopened) module then we can not
- # link against it, someone is ignoring the earlier warnings
- if /usr/bin/file -L $add 2> /dev/null |
- $GREP ": [^:]* bundle" >/dev/null ; then
- if test "X$dlopenmodule" != "X$lib"; then
- $ECHO "*** Warning: lib $linklib is a module, not a shared library"
- if test -z "$old_library" ; then
- $ECHO
- $ECHO "*** And there doesn't seem to be a static archive available"
- $ECHO "*** The link will probably fail, sorry"
- else
- add="$dir/$old_library"
- fi
- elif test -n "$old_library"; then
- add="$dir/$old_library"
- fi
- fi
- esac
- elif test "$hardcode_minus_L" = no; then
- case $host in
- *-*-sunos*) add_shlibpath="$dir" ;;
- esac
- add_dir="-L$dir"
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = no; then
- add_shlibpath="$dir"
- add="-l$name"
- else
- lib_linked=no
- fi
- ;;
- relink)
- if test "$hardcode_direct" = yes &&
- test "$hardcode_direct_absolute" = no; then
- add="$dir/$linklib"
- elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$dir"
- # Try looking first in the location we're being installed to.
- if test -n "$inst_prefix_dir"; then
- case $libdir in
- [\\/]*)
- add_dir="$add_dir -L$inst_prefix_dir$libdir"
- ;;
- esac
- fi
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = yes; then
- add_shlibpath="$dir"
- add="-l$name"
- else
- lib_linked=no
- fi
- ;;
- *) lib_linked=no ;;
- esac
-
- if test "$lib_linked" != yes; then
- func_fatal_configuration "unsupported hardcode properties"
- fi
-
- if test -n "$add_shlibpath"; then
- case :$compile_shlibpath: in
- *":$add_shlibpath:"*) ;;
- *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
- esac
- fi
- if test "$linkmode" = prog; then
- test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
- test -n "$add" && compile_deplibs="$add $compile_deplibs"
- else
- test -n "$add_dir" && deplibs="$add_dir $deplibs"
- test -n "$add" && deplibs="$add $deplibs"
- if test "$hardcode_direct" != yes &&
- test "$hardcode_minus_L" != yes &&
- test "$hardcode_shlibpath_var" = yes; then
- case :$finalize_shlibpath: in
- *":$libdir:"*) ;;
- *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
- esac
- fi
- fi
- fi
-
- if test "$linkmode" = prog || test "$mode" = relink; then
- add_shlibpath=
- add_dir=
- add=
- # Finalize command for both is simple: just hardcode it.
- if test "$hardcode_direct" = yes &&
- test "$hardcode_direct_absolute" = no; then
- add="$libdir/$linklib"
- elif test "$hardcode_minus_L" = yes; then
- add_dir="-L$libdir"
- add="-l$name"
- elif test "$hardcode_shlibpath_var" = yes; then
- case :$finalize_shlibpath: in
- *":$libdir:"*) ;;
- *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
- esac
- add="-l$name"
- elif test "$hardcode_automatic" = yes; then
- if test -n "$inst_prefix_dir" &&
- test -f "$inst_prefix_dir$libdir/$linklib" ; then
- add="$inst_prefix_dir$libdir/$linklib"
- else
- add="$libdir/$linklib"
- fi
- else
- # We cannot seem to hardcode it, guess we'll fake it.
- add_dir="-L$libdir"
- # Try looking first in the location we're being installed to.
- if test -n "$inst_prefix_dir"; then
- case $libdir in
- [\\/]*)
- add_dir="$add_dir -L$inst_prefix_dir$libdir"
- ;;
- esac
- fi
- add="-l$name"
- fi
-
- if test "$linkmode" = prog; then
- test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
- test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
- else
- test -n "$add_dir" && deplibs="$add_dir $deplibs"
- test -n "$add" && deplibs="$add $deplibs"
- fi
- fi
- elif test "$linkmode" = prog; then
- # Here we assume that one of hardcode_direct or hardcode_minus_L
- # is not unsupported. This is valid on all known static and
- # shared platforms.
- if test "$hardcode_direct" != unsupported; then
- test -n "$old_library" && linklib="$old_library"
- compile_deplibs="$dir/$linklib $compile_deplibs"
- finalize_deplibs="$dir/$linklib $finalize_deplibs"
- else
- compile_deplibs="-l$name -L$dir $compile_deplibs"
- finalize_deplibs="-l$name -L$dir $finalize_deplibs"
- fi
- elif test "$build_libtool_libs" = yes; then
- # Not a shared library
- if test "$deplibs_check_method" != pass_all; then
- # We're trying link a shared library against a static one
- # but the system doesn't support it.
-
- # Just print a warning and add the library to dependency_libs so
- # that the program can be linked against the static library.
- $ECHO
- $ECHO "*** Warning: This system can not link to static lib archive $lib."
- $ECHO "*** I have the capability to make that library automatically link in when"
- $ECHO "*** you link to this library. But I can only do this if you have a"
- $ECHO "*** shared version of the library, which you do not appear to have."
- if test "$module" = yes; then
- $ECHO "*** But as you try to build a module library, libtool will still create "
- $ECHO "*** a static module, that should work as long as the dlopening application"
- $ECHO "*** is linked with the -dlopen flag to resolve symbols at runtime."
- if test -z "$global_symbol_pipe"; then
- $ECHO
- $ECHO "*** However, this would only work if libtool was able to extract symbol"
- $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could"
- $ECHO "*** not find such a program. So, this module is probably useless."
- $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."
- fi
- if test "$build_old_libs" = no; then
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- fi
- else
- deplibs="$dir/$old_library $deplibs"
- link_static=yes
- fi
- fi # link shared/static library?
-
- if test "$linkmode" = lib; then
- if test -n "$dependency_libs" &&
- { test "$hardcode_into_libs" != yes ||
- test "$build_old_libs" = yes ||
- test "$link_static" = yes; }; then
- # Extract -R from dependency_libs
- temp_deplibs=
- for libdir in $dependency_libs; do
- case $libdir in
- -R*) func_stripname '-R' '' "$libdir"
- temp_xrpath=$func_stripname_result
- case " $xrpath " in
- *" $temp_xrpath "*) ;;
- *) xrpath="$xrpath $temp_xrpath";;
- esac;;
- *) temp_deplibs="$temp_deplibs $libdir";;
- esac
- done
- dependency_libs="$temp_deplibs"
- fi
-
- newlib_search_path="$newlib_search_path $absdir"
- # Link against this library
- test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
- # ... and its dependency_libs
- tmp_libs=
- for deplib in $dependency_libs; do
- newdependency_libs="$deplib $newdependency_libs"
- if $opt_duplicate_deps ; then
- case "$tmp_libs " in
- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
- esac
- fi
- tmp_libs="$tmp_libs $deplib"
- done
-
- if test "$link_all_deplibs" != no; then
- # Add the search paths of all dependency libraries
- for deplib in $dependency_libs; do
- path=
- case $deplib in
- -L*) path="$deplib" ;;
- *.la)
- func_dirname "$deplib" "" "."
- dir="$func_dirname_result"
- # We need an absolute path.
- case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
- *)
- absdir=`cd "$dir" && pwd`
- if test -z "$absdir"; then
- func_warning "cannot determine absolute directory name of \`$dir'"
- absdir="$dir"
- fi
- ;;
- esac
- if $GREP "^installed=no" $deplib > /dev/null; then
- case $host in
- *-*-darwin*)
- depdepl=
- eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
- if test -n "$deplibrary_names" ; then
- for tmp in $deplibrary_names ; do
- depdepl=$tmp
- done
- if test -f "$absdir/$objdir/$depdepl" ; then
- depdepl="$absdir/$objdir/$depdepl"
- darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
- if test -z "$darwin_install_name"; then
- darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
- fi
- compiler_flags="$compiler_flags ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}"
- linker_flags="$linker_flags -dylib_file ${darwin_install_name}:${depdepl}"
- path=
- fi
- fi
- ;;
- *)
- path="-L$absdir/$objdir"
- ;;
- esac
- else
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- test -z "$libdir" && \
- func_fatal_error "\`$deplib' is not a valid libtool archive"
- test "$absdir" != "$libdir" && \
- func_warning "\`$deplib' seems to be moved"
-
- path="-L$absdir"
- fi
- ;;
- esac
- case " $deplibs " in
- *" $path "*) ;;
- *) deplibs="$path $deplibs" ;;
- esac
- done
- fi # link_all_deplibs != no
- fi # linkmode = lib
- done # for deplib in $libs
- if test "$pass" = link; then
- if test "$linkmode" = "prog"; then
- compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
- finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
- else
- compiler_flags="$compiler_flags "`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
- fi
- fi
- dependency_libs="$newdependency_libs"
- if test "$pass" = dlpreopen; then
- # Link the dlpreopened libraries before other libraries
- for deplib in $save_deplibs; do
- deplibs="$deplib $deplibs"
- done
- fi
- if test "$pass" != dlopen; then
- if test "$pass" != conv; then
- # Make sure lib_search_path contains only unique directories.
- lib_search_path=
- for dir in $newlib_search_path; do
- case "$lib_search_path " in
- *" $dir "*) ;;
- *) lib_search_path="$lib_search_path $dir" ;;
- esac
- done
- newlib_search_path=
- fi
-
- if test "$linkmode,$pass" != "prog,link"; then
- vars="deplibs"
- else
- vars="compile_deplibs finalize_deplibs"
- fi
- for var in $vars dependency_libs; do
- # Add libraries to $var in reverse order
- eval tmp_libs=\"\$$var\"
- new_libs=
- for deplib in $tmp_libs; do
- # FIXME: Pedantically, this is the right thing to do, so
- # that some nasty dependency loop isn't accidentally
- # broken:
- #new_libs="$deplib $new_libs"
- # Pragmatically, this seems to cause very few problems in
- # practice:
- case $deplib in
- -L*) new_libs="$deplib $new_libs" ;;
- -R*) ;;
- *)
- # And here is the reason: when a library appears more
- # than once as an explicit dependence of a library, or
- # is implicitly linked in more than once by the
- # compiler, it is considered special, and multiple
- # occurrences thereof are not removed. Compare this
- # with having the same library being listed as a
- # dependency of multiple other libraries: in this case,
- # we know (pedantically, we assume) the library does not
- # need to be listed more than once, so we keep only the
- # last copy. This is not always right, but it is rare
- # enough that we require users that really mean to play
- # such unportable linking tricks to link the library
- # using -Wl,-lname, so that libtool does not consider it
- # for duplicate removal.
- case " $specialdeplibs " in
- *" $deplib "*) new_libs="$deplib $new_libs" ;;
- *)
- case " $new_libs " in
- *" $deplib "*) ;;
- *) new_libs="$deplib $new_libs" ;;
- esac
- ;;
- esac
- ;;
- esac
- done
- tmp_libs=
- for deplib in $new_libs; do
- case $deplib in
- -L*)
- case " $tmp_libs " in
- *" $deplib "*) ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
- esac
- ;;
- *) tmp_libs="$tmp_libs $deplib" ;;
- esac
- done
- eval $var=\"$tmp_libs\"
- done # for var
- fi
- # Last step: remove runtime libs from dependency_libs
- # (they stay in deplibs)
- tmp_libs=
- for i in $dependency_libs ; do
- case " $predeps $postdeps $compiler_lib_search_path " in
- *" $i "*)
- i=""
- ;;
- esac
- if test -n "$i" ; then
- tmp_libs="$tmp_libs $i"
- fi
- done
- dependency_libs=$tmp_libs
- done # for pass
- if test "$linkmode" = prog; then
- dlfiles="$newdlfiles"
- fi
- if test "$linkmode" = prog || test "$linkmode" = lib; then
- dlprefiles="$newdlprefiles"
- fi
-
- case $linkmode in
- oldlib)
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- func_warning "\`-dlopen' is ignored for archives"
- fi
-
- case " $deplibs" in
- *\ -l* | *\ -L*)
- func_warning "\`-l' and \`-L' are ignored for archives" ;;
- esac
-
- test -n "$rpath" && \
- func_warning "\`-rpath' is ignored for archives"
-
- test -n "$xrpath" && \
- func_warning "\`-R' is ignored for archives"
-
- test -n "$vinfo" && \
- func_warning "\`-version-info/-version-number' is ignored for archives"
-
- test -n "$release" && \
- func_warning "\`-release' is ignored for archives"
-
- test -n "$export_symbols$export_symbols_regex" && \
- func_warning "\`-export-symbols' is ignored for archives"
-
- # Now set the variables for building old libraries.
- build_libtool_libs=no
- oldlibs="$output"
- objs="$objs$old_deplibs"
- ;;
-
- lib)
- # Make sure we only generate libraries of the form `libNAME.la'.
- case $outputname in
- lib*)
- func_stripname 'lib' '.la' "$outputname"
- name=$func_stripname_result
- eval shared_ext=\"$shrext_cmds\"
- eval libname=\"$libname_spec\"
- ;;
- *)
- test "$module" = no && \
- func_fatal_help "libtool library \`$output' must begin with \`lib'"
-
- if test "$need_lib_prefix" != no; then
- # Add the "lib" prefix for modules if required
- func_stripname '' '.la' "$outputname"
- name=$func_stripname_result
- eval shared_ext=\"$shrext_cmds\"
- eval libname=\"$libname_spec\"
- else
- func_stripname '' '.la' "$outputname"
- libname=$func_stripname_result
- fi
- ;;
- esac
-
- if test -n "$objs"; then
- if test "$deplibs_check_method" != pass_all; then
- func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"
- else
- $ECHO
- $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
- $ECHO "*** objects $objs is not portable!"
- libobjs="$libobjs $objs"
- fi
- fi
-
- test "$dlself" != no && \
- func_warning "\`-dlopen self' is ignored for libtool libraries"
-
- set dummy $rpath
- shift
- test "$#" -gt 1 && \
- func_warning "ignoring multiple \`-rpath's for a libtool library"
-
- install_libdir="$1"
-
- oldlibs=
- if test -z "$rpath"; then
- if test "$build_libtool_libs" = yes; then
- # Building a libtool convenience library.
- # Some compilers have problems with a `.al' extension so
- # convenience libraries should have the same extension an
- # archive normally would.
- oldlibs="$output_objdir/$libname.$libext $oldlibs"
- build_libtool_libs=convenience
- build_old_libs=yes
- fi
-
- test -n "$vinfo" && \
- func_warning "\`-version-info/-version-number' is ignored for convenience libraries"
-
- test -n "$release" && \
- func_warning "\`-release' is ignored for convenience libraries"
- else
-
- # Parse the version information argument.
- save_ifs="$IFS"; IFS=':'
- set dummy $vinfo 0 0 0
- shift
- IFS="$save_ifs"
-
- test -n "$7" && \
- func_fatal_help "too many parameters to \`-version-info'"
-
- # convert absolute version numbers to libtool ages
- # this retains compatibility with .la files and attempts
- # to make the code below a bit more comprehensible
-
- case $vinfo_number in
- yes)
- number_major="$1"
- number_minor="$2"
- number_revision="$3"
- #
- # There are really only two kinds -- those that
- # use the current revision as the major version
- # and those that subtract age and use age as
- # a minor version. But, then there is irix
- # which has an extra 1 added just for fun
- #
- case $version_type in
- darwin|linux|osf|windows|none)
- func_arith $number_major + $number_minor
- current=$func_arith_result
- age="$number_minor"
- revision="$number_revision"
- ;;
- freebsd-aout|freebsd-elf|sunos)
- current="$number_major"
- revision="$number_minor"
- age="0"
- ;;
- irix|nonstopux)
- func_arith $number_major + $number_minor
- current=$func_arith_result
- age="$number_minor"
- revision="$number_minor"
- lt_irix_increment=no
- ;;
- *)
- func_fatal_configuration "$modename: unknown library version type \`$version_type'"
- ;;
- esac
- ;;
- no)
- current="$1"
- revision="$2"
- age="$3"
- ;;
- esac
-
- # Check that each of the things are valid numbers.
- case $current in
- 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
- func_error "CURRENT \`$current' must be a nonnegative integer"
- func_fatal_error "\`$vinfo' is not valid version information"
- ;;
- esac
-
- case $revision in
- 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
- func_error "REVISION \`$revision' must be a nonnegative integer"
- func_fatal_error "\`$vinfo' is not valid version information"
- ;;
- esac
-
- case $age in
- 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
- func_error "AGE \`$age' must be a nonnegative integer"
- func_fatal_error "\`$vinfo' is not valid version information"
- ;;
- esac
-
- if test "$age" -gt "$current"; then
- func_error "AGE \`$age' is greater than the current interface number \`$current'"
- func_fatal_error "\`$vinfo' is not valid version information"
- fi
-
- # Calculate the version variables.
- major=
- versuffix=
- verstring=
- case $version_type in
- none) ;;
-
- darwin)
- # Like Linux, but with the current version available in
- # verstring for coding it into the library header
- func_arith $current - $age
- major=.$func_arith_result
- versuffix="$major.$age.$revision"
- # Darwin ld doesn't like 0 for these options...
- func_arith $current + 1
- minor_current=$func_arith_result
- xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
- verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
- ;;
-
- freebsd-aout)
- major=".$current"
- versuffix=".$current.$revision";
- ;;
-
- freebsd-elf)
- major=".$current"
- versuffix=".$current"
- ;;
-
- irix | nonstopux)
- if test "X$lt_irix_increment" = "Xno"; then
- func_arith $current - $age
- else
- func_arith $current - $age + 1
- fi
- major=$func_arith_result
-
- case $version_type in
- nonstopux) verstring_prefix=nonstopux ;;
- *) verstring_prefix=sgi ;;
- esac
- verstring="$verstring_prefix$major.$revision"
-
- # Add in all the interfaces that we are compatible with.
- loop=$revision
- while test "$loop" -ne 0; do
- func_arith $revision - $loop
- iface=$func_arith_result
- func_arith $loop - 1
- loop=$func_arith_result
- verstring="$verstring_prefix$major.$iface:$verstring"
- done
-
- # Before this point, $major must not contain `.'.
- major=.$major
- versuffix="$major.$revision"
- ;;
-
- linux)
- func_arith $current - $age
- major=.$func_arith_result
- versuffix="$major.$age.$revision"
- ;;
-
- osf)
- func_arith $current - $age
- major=.$func_arith_result
- versuffix=".$current.$age.$revision"
- verstring="$current.$age.$revision"
-
- # Add in all the interfaces that we are compatible with.
- loop=$age
- while test "$loop" -ne 0; do
- func_arith $current - $loop
- iface=$func_arith_result
- func_arith $loop - 1
- loop=$func_arith_result
- verstring="$verstring:${iface}.0"
- done
-
- # Make executables depend on our current version.
- verstring="$verstring:${current}.0"
- ;;
-
- qnx)
- major=".$current"
- versuffix=".$current"
- ;;
-
- sunos)
- major=".$current"
- versuffix=".$current.$revision"
- ;;
-
- windows)
- # Use '-' rather than '.', since we only want one
- # extension on DOS 8.3 filesystems.
- func_arith $current - $age
- major=$func_arith_result
- versuffix="-$major"
- ;;
-
- *)
- func_fatal_configuration "unknown library version type \`$version_type'"
- ;;
- esac
-
- # Clear the version info if we defaulted, and they specified a release.
- if test -z "$vinfo" && test -n "$release"; then
- major=
- case $version_type in
- darwin)
- # we can't check for "0.0" in archive_cmds due to quoting
- # problems, so we reset it completely
- verstring=
- ;;
- *)
- verstring="0.0"
- ;;
- esac
- if test "$need_version" = no; then
- versuffix=
- else
- versuffix=".0.0"
- fi
- fi
-
- # Remove version info from name if versioning should be avoided
- if test "$avoid_version" = yes && test "$need_version" = no; then
- major=
- versuffix=
- verstring=""
- fi
-
- # Check to see if the archive will have undefined symbols.
- if test "$allow_undefined" = yes; then
- if test "$allow_undefined_flag" = unsupported; then
- func_warning "undefined symbols not allowed in $host shared libraries"
- build_libtool_libs=no
- build_old_libs=yes
- fi
- else
- # Don't allow undefined symbols.
- allow_undefined_flag="$no_undefined_flag"
- fi
-
- fi
-
- func_generate_dlsyms "$libname" "$libname" "yes"
- libobjs="$libobjs $symfileobj"
- test "X$libobjs" = "X " && libobjs=
-
- if test "$mode" != relink; then
- # Remove our outputs, but don't remove object files since they
- # may have been created when compiling PIC objects.
- removelist=
- tempremovelist=`$ECHO "$output_objdir/*"`
- for p in $tempremovelist; do
- case $p in
- *.$objext | *.gcno)
- ;;
- $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
- if test "X$precious_files_regex" != "X"; then
- if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
- then
- continue
- fi
- fi
- removelist="$removelist $p"
- ;;
- *) ;;
- esac
- done
- test -n "$removelist" && \
- func_show_eval "${RM}r \$removelist"
- fi
-
- # Now set the variables for building old libraries.
- if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
- oldlibs="$oldlibs $output_objdir/$libname.$libext"
-
- # Transform .lo files to .o files.
- oldobjs="$objs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
- fi
-
- # Eliminate all temporary directories.
- #for path in $notinst_path; do
- # lib_search_path=`$ECHO "X$lib_search_path " | $Xsed -e "s% $path % %g"`
- # deplibs=`$ECHO "X$deplibs " | $Xsed -e "s% -L$path % %g"`
- # dependency_libs=`$ECHO "X$dependency_libs " | $Xsed -e "s% -L$path % %g"`
- #done
-
- if test -n "$xrpath"; then
- # If the user specified any rpath flags, then add them.
- temp_xrpath=
- for libdir in $xrpath; do
- temp_xrpath="$temp_xrpath -R$libdir"
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir" ;;
- esac
- done
- if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
- dependency_libs="$temp_xrpath $dependency_libs"
- fi
- fi
-
- # Make sure dlfiles contains only unique files that won't be dlpreopened
- old_dlfiles="$dlfiles"
- dlfiles=
- for lib in $old_dlfiles; do
- case " $dlprefiles $dlfiles " in
- *" $lib "*) ;;
- *) dlfiles="$dlfiles $lib" ;;
- esac
- done
-
- # Make sure dlprefiles contains only unique files
- old_dlprefiles="$dlprefiles"
- dlprefiles=
- for lib in $old_dlprefiles; do
- case "$dlprefiles " in
- *" $lib "*) ;;
- *) dlprefiles="$dlprefiles $lib" ;;
- esac
- done
-
- if test "$build_libtool_libs" = yes; then
- if test -n "$rpath"; then
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc*)
- # these systems don't actually have a c library (as such)!
- ;;
- *-*-rhapsody* | *-*-darwin1.[012])
- # Rhapsody C library is in the System framework
- deplibs="$deplibs System.ltframework"
- ;;
- *-*-netbsd*)
- # Don't link with libc until the a.out ld.so is fixed.
- ;;
- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc due to us having libc/libc_r.
- ;;
- *-*-sco3.2v5* | *-*-sco5v6*)
- # Causes problems with __ctype
- ;;
- *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
- # Compiler inserts libc in the correct place for threads to work
- ;;
- *)
- # Add libc to deplibs on all other systems if necessary.
- if test "$build_libtool_need_lc" = "yes"; then
- deplibs="$deplibs -lc"
- fi
- ;;
- esac
- fi
-
- # Transform deplibs into only deplibs that can be linked in shared.
- name_save=$name
- libname_save=$libname
- release_save=$release
- versuffix_save=$versuffix
- major_save=$major
- # I'm not sure if I'm treating the release correctly. I think
- # release should show up in the -l (ie -lgmp5) so we don't want to
- # add it in twice. Is that correct?
- release=""
- versuffix=""
- major=""
- newdeplibs=
- droppeddeps=no
- case $deplibs_check_method in
- pass_all)
- # Don't check for shared/static. Everything works.
- # This might be a little naive. We might want to check
- # whether the library exists or not. But this is on
- # osf3 & osf4 and I'm not really sure... Just
- # implementing what was already the behavior.
- newdeplibs=$deplibs
- ;;
- test_compile)
- # This code stresses the "libraries are programs" paradigm to its
- # limits. Maybe even breaks it. We compile a program, linking it
- # against the deplibs as a proxy for the library. Then we can check
- # whether they linked in statically or dynamically with ldd.
- $opt_dry_run || $RM conftest.c
- cat > conftest.c <<EOF
- int main() { return 0; }
-EOF
- $opt_dry_run || $RM conftest
- if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
- ldd_output=`ldd conftest`
- for i in $deplibs; do
- case $i in
- -l*)
- func_stripname -l '' "$i"
- name=$func_stripname_result
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $i "*)
- newdeplibs="$newdeplibs $i"
- i=""
- ;;
- esac
- fi
- if test -n "$i" ; then
- libname=`eval "\\$ECHO \"$libname_spec\""`
- deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
- set dummy $deplib_matches; shift
- deplib_match=$1
- if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
- newdeplibs="$newdeplibs $i"
- else
- droppeddeps=yes
- $ECHO
- $ECHO "*** Warning: dynamic linker does not accept needed library $i."
- $ECHO "*** I have the capability to make that library automatically link in when"
- $ECHO "*** you link to this library. But I can only do this if you have a"
- $ECHO "*** shared version of the library, which I believe you do not have"
- $ECHO "*** because a test_compile did reveal that the linker did not use it for"
- $ECHO "*** its dynamic dependency list that programs get resolved with at runtime."
- fi
- fi
- ;;
- *)
- newdeplibs="$newdeplibs $i"
- ;;
- esac
- done
- else
- # Error occurred in the first compile. Let's try to salvage
- # the situation: Compile a separate program for each library.
- for i in $deplibs; do
- case $i in
- -l*)
- func_stripname -l '' "$i"
- name=$func_stripname_result
- $opt_dry_run || $RM conftest
- if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
- ldd_output=`ldd conftest`
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $i "*)
- newdeplibs="$newdeplibs $i"
- i=""
- ;;
- esac
- fi
- if test -n "$i" ; then
- libname=`eval "\\$ECHO \"$libname_spec\""`
- deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
- set dummy $deplib_matches; shift
- deplib_match=$1
- if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
- newdeplibs="$newdeplibs $i"
- else
- droppeddeps=yes
- $ECHO
- $ECHO "*** Warning: dynamic linker does not accept needed library $i."
- $ECHO "*** I have the capability to make that library automatically link in when"
- $ECHO "*** you link to this library. But I can only do this if you have a"
- $ECHO "*** shared version of the library, which you do not appear to have"
- $ECHO "*** because a test_compile did reveal that the linker did not use this one"
- $ECHO "*** as a dynamic dependency that programs can get resolved with at runtime."
- fi
- fi
- else
- droppeddeps=yes
- $ECHO
- $ECHO "*** Warning! Library $i is needed by this library but I was not able to"
- $ECHO "*** make it link in! You will probably need to install it or some"
- $ECHO "*** library that it depends on before this library will be fully"
- $ECHO "*** functional. Installing it before continuing would be even better."
- fi
- ;;
- *)
- newdeplibs="$newdeplibs $i"
- ;;
- esac
- done
- fi
- ;;
- file_magic*)
- set dummy $deplibs_check_method; shift
- file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
- for a_deplib in $deplibs; do
- case $a_deplib in
- -l*)
- func_stripname -l '' "$a_deplib"
- name=$func_stripname_result
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $a_deplib "*)
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- ;;
- esac
- fi
- if test -n "$a_deplib" ; then
- libname=`eval "\\$ECHO \"$libname_spec\""`
- for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
- for potent_lib in $potential_libs; do
- # Follow soft links.
- if ls -lLd "$potent_lib" 2>/dev/null |
- $GREP " -> " >/dev/null; then
- continue
- fi
- # The statement above tries to avoid entering an
- # endless loop below, in case of cyclic links.
- # We might still enter an endless loop, since a link
- # loop can be closed while we follow links,
- # but so what?
- potlib="$potent_lib"
- while test -h "$potlib" 2>/dev/null; do
- potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
- case $potliblink in
- [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
- *) potlib=`$ECHO "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
- esac
- done
- if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
- $SED -e 10q |
- $EGREP "$file_magic_regex" > /dev/null; then
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- break 2
- fi
- done
- done
- fi
- if test -n "$a_deplib" ; then
- droppeddeps=yes
- $ECHO
- $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
- $ECHO "*** I have the capability to make that library automatically link in when"
- $ECHO "*** you link to this library. But I can only do this if you have a"
- $ECHO "*** shared version of the library, which you do not appear to have"
- $ECHO "*** because I did check the linker path looking for a file starting"
- if test -z "$potlib" ; then
- $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
- else
- $ECHO "*** with $libname and none of the candidates passed a file format test"
- $ECHO "*** using a file magic. Last file checked: $potlib"
- fi
- fi
- ;;
- *)
- # Add a -L argument.
- newdeplibs="$newdeplibs $a_deplib"
- ;;
- esac
- done # Gone through all deplibs.
- ;;
- match_pattern*)
- set dummy $deplibs_check_method; shift
- match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
- for a_deplib in $deplibs; do
- case $a_deplib in
- -l*)
- func_stripname -l '' "$a_deplib"
- name=$func_stripname_result
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- case " $predeps $postdeps " in
- *" $a_deplib "*)
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- ;;
- esac
- fi
- if test -n "$a_deplib" ; then
- libname=`eval "\\$ECHO \"$libname_spec\""`
- for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
- for potent_lib in $potential_libs; do
- potlib="$potent_lib" # see symlink-check above in file_magic test
- if eval "\$ECHO \"X$potent_lib\"" 2>/dev/null | $Xsed -e 10q | \
- $EGREP "$match_pattern_regex" > /dev/null; then
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
- break 2
- fi
- done
- done
- fi
- if test -n "$a_deplib" ; then
- droppeddeps=yes
- $ECHO
- $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
- $ECHO "*** I have the capability to make that library automatically link in when"
- $ECHO "*** you link to this library. But I can only do this if you have a"
- $ECHO "*** shared version of the library, which you do not appear to have"
- $ECHO "*** because I did check the linker path looking for a file starting"
- if test -z "$potlib" ; then
- $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
- else
- $ECHO "*** with $libname and none of the candidates passed a file format test"
- $ECHO "*** using a regex pattern. Last file checked: $potlib"
- fi
- fi
- ;;
- *)
- # Add a -L argument.
- newdeplibs="$newdeplibs $a_deplib"
- ;;
- esac
- done # Gone through all deplibs.
- ;;
- none | unknown | *)
- newdeplibs=""
- tmp_deplibs=`$ECHO "X $deplibs" | $Xsed \
- -e 's/ -lc$//' -e 's/ -[LR][^ ]*//g'`
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
- for i in $predeps $postdeps ; do
- # can't use Xsed below, because $i might contain '/'
- tmp_deplibs=`$ECHO "X $tmp_deplibs" | $Xsed -e "s,$i,,"`
- done
- fi
- if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' |
- $GREP . >/dev/null; then
- $ECHO
- if test "X$deplibs_check_method" = "Xnone"; then
- $ECHO "*** Warning: inter-library dependencies are not supported in this platform."
- else
- $ECHO "*** Warning: inter-library dependencies are not known to be supported."
- fi
- $ECHO "*** All declared inter-library dependencies are being dropped."
- droppeddeps=yes
- fi
- ;;
- esac
- versuffix=$versuffix_save
- major=$major_save
- release=$release_save
- libname=$libname_save
- name=$name_save
-
- case $host in
- *-*-rhapsody* | *-*-darwin1.[012])
- # On Rhapsody replace the C library with the System framework
- newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
- ;;
- esac
-
- if test "$droppeddeps" = yes; then
- if test "$module" = yes; then
- $ECHO
- $ECHO "*** Warning: libtool could not satisfy all declared inter-library"
- $ECHO "*** dependencies of module $libname. Therefore, libtool will create"
- $ECHO "*** a static module, that should work as long as the dlopening"
- $ECHO "*** application is linked with the -dlopen flag."
- if test -z "$global_symbol_pipe"; then
- $ECHO
- $ECHO "*** However, this would only work if libtool was able to extract symbol"
- $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could"
- $ECHO "*** not find such a program. So, this module is probably useless."
- $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."
- fi
- if test "$build_old_libs" = no; then
- oldlibs="$output_objdir/$libname.$libext"
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- else
- $ECHO "*** The inter-library dependencies that have been dropped here will be"
- $ECHO "*** automatically added whenever a program is linked with this library"
- $ECHO "*** or is declared to -dlopen it."
-
- if test "$allow_undefined" = no; then
- $ECHO
- $ECHO "*** Since this library must not contain undefined symbols,"
- $ECHO "*** because either the platform does not support them or"
- $ECHO "*** it was explicitly requested with -no-undefined,"
- $ECHO "*** libtool will only create a static version of it."
- if test "$build_old_libs" = no; then
- oldlibs="$output_objdir/$libname.$libext"
- build_libtool_libs=module
- build_old_libs=yes
- else
- build_libtool_libs=no
- fi
- fi
- fi
- fi
- # Done checking deplibs!
- deplibs=$newdeplibs
- fi
- # Time to change all our "foo.ltframework" stuff back to "-framework foo"
- case $host in
- *-*-darwin*)
- newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
- new_inherited_linker_flags=`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
- deplibs=`$ECHO "X $deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
- ;;
- esac
-
- # move library search paths that coincide with paths to not yet
- # installed libraries to the beginning of the library search list
- new_libs=
- for path in $notinst_path; do
- case " $new_libs " in
- *" -L$path/$objdir "*) ;;
- *)
- case " $deplibs " in
- *" -L$path/$objdir "*)
- new_libs="$new_libs -L$path/$objdir" ;;
- esac
- ;;
- esac
- done
- for deplib in $deplibs; do
- case $deplib in
- -L*)
- case " $new_libs " in
- *" $deplib "*) ;;
- *) new_libs="$new_libs $deplib" ;;
- esac
- ;;
- *) new_libs="$new_libs $deplib" ;;
- esac
- done
- deplibs="$new_libs"
-
- # All the library-specific variables (install_libdir is set above).
- library_names=
- old_library=
- dlname=
-
- # Test again, we may have decided not to build it any more
- if test "$build_libtool_libs" = yes; then
- if test "$hardcode_into_libs" = yes; then
- # Hardcode the library paths
- hardcode_libdirs=
- dep_rpath=
- rpath="$finalize_rpath"
- test "$mode" != relink && rpath="$compile_rpath$rpath"
- for libdir in $rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- dep_rpath="$dep_rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$perm_rpath " in
- *" $libdir "*) ;;
- *) perm_rpath="$perm_rpath $libdir" ;;
- esac
- fi
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- if test -n "$hardcode_libdir_flag_spec_ld"; then
- eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
- else
- eval dep_rpath=\"$hardcode_libdir_flag_spec\"
- fi
- fi
- if test -n "$runpath_var" && test -n "$perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $perm_rpath; do
- rpath="$rpath$dir:"
- done
- eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
- fi
- test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
- fi
-
- shlibpath="$finalize_shlibpath"
- test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
- if test -n "$shlibpath"; then
- eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
- fi
-
- # Get the real and link names of the library.
- eval shared_ext=\"$shrext_cmds\"
- eval library_names=\"$library_names_spec\"
- set dummy $library_names
- shift
- realname="$1"
- shift
-
- if test -n "$soname_spec"; then
- eval soname=\"$soname_spec\"
- else
- soname="$realname"
- fi
- if test -z "$dlname"; then
- dlname=$soname
- fi
-
- lib="$output_objdir/$realname"
- linknames=
- for link
- do
- linknames="$linknames $link"
- done
-
- # Use standard objects if they are pic
- test -z "$pic_flag" && libobjs=`$ECHO "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- test "X$libobjs" = "X " && libobjs=
-
- delfiles=
- if test -n "$export_symbols" && test -n "$include_expsyms"; then
- $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp"
- export_symbols="$output_objdir/$libname.uexp"
- delfiles="$delfiles $export_symbols"
- fi
-
- orig_export_symbols=
- case $host_os in
- cygwin* | mingw* | cegcc*)
- if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
- # exporting using user supplied symfile
- if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
- # and it's NOT already a .def file. Must figure out
- # which of the given symbols are data symbols and tag
- # them as such. So, trigger use of export_symbols_cmds.
- # export_symbols gets reassigned inside the "prepare
- # the list of exported symbols" if statement, so the
- # include_expsyms logic still works.
- orig_export_symbols="$export_symbols"
- export_symbols=
- always_export_symbols=yes
- fi
- fi
- ;;
- esac
-
- # Prepare the list of exported symbols
- if test -z "$export_symbols"; then
- if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
- func_verbose "generating symbol list for \`$libname.la'"
- export_symbols="$output_objdir/$libname.exp"
- $opt_dry_run || $RM $export_symbols
- cmds=$export_symbols_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- func_len " $cmd"
- len=$func_len_result
- if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
- func_show_eval "$cmd" 'exit $?'
- skipped_export=false
- else
- # The command line is too long to execute in one step.
- func_verbose "using reloadable object file for export list..."
- skipped_export=:
- # Break out early, otherwise skipped_export may be
- # set to false by a later but shorter cmd.
- break
- fi
- done
- IFS="$save_ifs"
- if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then
- func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
- func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
- fi
- fi
- fi
-
- if test -n "$export_symbols" && test -n "$include_expsyms"; then
- tmp_export_symbols="$export_symbols"
- test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
- $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'
- fi
-
- if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then
- # The given exports_symbols file has to be filtered, so filter it.
- func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
- # FIXME: $output_objdir/$libname.filter potentially contains lots of
- # 's' commands which not all seds can handle. GNU sed should be fine
- # though. Also, the filter scales superlinearly with the number of
- # global variables. join(1) would be nice here, but unfortunately
- # isn't a blessed tool.
- $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
- delfiles="$delfiles $export_symbols $output_objdir/$libname.filter"
- export_symbols=$output_objdir/$libname.def
- $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
- fi
-
- tmp_deplibs=
- for test_deplib in $deplibs; do
- case " $convenience " in
- *" $test_deplib "*) ;;
- *)
- tmp_deplibs="$tmp_deplibs $test_deplib"
- ;;
- esac
- done
- deplibs="$tmp_deplibs"
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec" &&
- test "$compiler_needs_object" = yes &&
- test -z "$libobjs"; then
- # extract the archives, so we have objects to list.
- # TODO: could optimize this to just extract one archive.
- whole_archive_flag_spec=
- fi
- if test -n "$whole_archive_flag_spec"; then
- save_libobjs=$libobjs
- eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
- test "X$libobjs" = "X " && libobjs=
- else
- gentop="$output_objdir/${outputname}x"
- generated="$generated $gentop"
-
- func_extract_archives $gentop $convenience
- libobjs="$libobjs $func_extract_archives_result"
- test "X$libobjs" = "X " && libobjs=
- fi
- fi
-
- if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
- eval flag=\"$thread_safe_flag_spec\"
- linker_flags="$linker_flags $flag"
- fi
-
- # Make a backup of the uninstalled library when relinking
- if test "$mode" = relink; then
- $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
- fi
-
- # Do each of the archive commands.
- if test "$module" = yes && test -n "$module_cmds" ; then
- if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
- eval test_cmds=\"$module_expsym_cmds\"
- cmds=$module_expsym_cmds
- else
- eval test_cmds=\"$module_cmds\"
- cmds=$module_cmds
- fi
- else
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- eval test_cmds=\"$archive_expsym_cmds\"
- cmds=$archive_expsym_cmds
- else
- eval test_cmds=\"$archive_cmds\"
- cmds=$archive_cmds
- fi
- fi
-
- if test "X$skipped_export" != "X:" &&
- func_len " $test_cmds" &&
- len=$func_len_result &&
- test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
- :
- else
- # The command line is too long to link in one step, link piecewise
- # or, if using GNU ld and skipped_export is not :, use a linker
- # script.
-
- # Save the value of $output and $libobjs because we want to
- # use them later. If we have whole_archive_flag_spec, we
- # want to use save_libobjs as it was before
- # whole_archive_flag_spec was expanded, because we can't
- # assume the linker understands whole_archive_flag_spec.
- # This may have to be revisited, in case too many
- # convenience libraries get linked in and end up exceeding
- # the spec.
- if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
- save_libobjs=$libobjs
- fi
- save_output=$output
- output_la=`$ECHO "X$output" | $Xsed -e "$basename"`
-
- # Clear the reloadable object creation command queue and
- # initialize k to one.
- test_cmds=
- concat_cmds=
- objlist=
- last_robj=
- k=1
-
- if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
- output=${output_objdir}/${output_la}.lnkscript
- func_verbose "creating GNU ld script: $output"
- $ECHO 'INPUT (' > $output
- for obj in $save_libobjs
- do
- $ECHO "$obj" >> $output
- done
- $ECHO ')' >> $output
- delfiles="$delfiles $output"
- elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
- output=${output_objdir}/${output_la}.lnk
- func_verbose "creating linker input file list: $output"
- : > $output
- set x $save_libobjs
- shift
- firstobj=
- if test "$compiler_needs_object" = yes; then
- firstobj="$1 "
- shift
- fi
- for obj
- do
- $ECHO "$obj" >> $output
- done
- delfiles="$delfiles $output"
- output=$firstobj\"$file_list_spec$output\"
- else
- if test -n "$save_libobjs"; then
- func_verbose "creating reloadable object files..."
- output=$output_objdir/$output_la-${k}.$objext
- eval test_cmds=\"$reload_cmds\"
- func_len " $test_cmds"
- len0=$func_len_result
- len=$len0
-
- # Loop over the list of objects to be linked.
- for obj in $save_libobjs
- do
- func_len " $obj"
- func_arith $len + $func_len_result
- len=$func_arith_result
- if test "X$objlist" = X ||
- test "$len" -lt "$max_cmd_len"; then
- func_append objlist " $obj"
- else
- # The command $test_cmds is almost too long, add a
- # command to the queue.
- if test "$k" -eq 1 ; then
- # The first file doesn't have a previous command to add.
- eval concat_cmds=\"$reload_cmds $objlist $last_robj\"
- else
- # All subsequent reloadable object files will link in
- # the last one created.
- eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj~\$RM $last_robj\"
- fi
- last_robj=$output_objdir/$output_la-${k}.$objext
- func_arith $k + 1
- k=$func_arith_result
- output=$output_objdir/$output_la-${k}.$objext
- objlist=$obj
- func_len " $last_robj"
- func_arith $len0 + $func_len_result
- len=$func_arith_result
- fi
- done
- # Handle the remaining objects by creating one last
- # reloadable object file. All subsequent reloadable object
- # files will link in the last one created.
- test -z "$concat_cmds" || concat_cmds=$concat_cmds~
- eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\"
- if test -n "$last_robj"; then
- eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"
- fi
- delfiles="$delfiles $output"
-
- else
- output=
- fi
-
- if ${skipped_export-false}; then
- func_verbose "generating symbol list for \`$libname.la'"
- export_symbols="$output_objdir/$libname.exp"
- $opt_dry_run || $RM $export_symbols
- libobjs=$output
- # Append the command to create the export file.
- test -z "$concat_cmds" || concat_cmds=$concat_cmds~
- eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
- if test -n "$last_robj"; then
- eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
- fi
- fi
-
- test -n "$save_libobjs" &&
- func_verbose "creating a temporary reloadable object file: $output"
-
- # Loop through the commands generated above and execute them.
- save_ifs="$IFS"; IFS='~'
- for cmd in $concat_cmds; do
- IFS="$save_ifs"
- $opt_silent || {
- func_quote_for_expand "$cmd"
- eval "func_echo $func_quote_for_expand_result"
- }
- $opt_dry_run || eval "$cmd" || {
- lt_exit=$?
-
- # Restore the uninstalled library and exit
- if test "$mode" = relink; then
- ( cd "$output_objdir" && \
- $RM "${realname}T" && \
- $MV "${realname}U" "$realname" )
- fi
-
- exit $lt_exit
- }
- done
- IFS="$save_ifs"
-
- if test -n "$export_symbols_regex" && ${skipped_export-false}; then
- func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
- func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
- fi
- fi
-
- if ${skipped_export-false}; then
- if test -n "$export_symbols" && test -n "$include_expsyms"; then
- tmp_export_symbols="$export_symbols"
- test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
- $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'
- fi
-
- if test -n "$orig_export_symbols"; then
- # The given exports_symbols file has to be filtered, so filter it.
- func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
- # FIXME: $output_objdir/$libname.filter potentially contains lots of
- # 's' commands which not all seds can handle. GNU sed should be fine
- # though. Also, the filter scales superlinearly with the number of
- # global variables. join(1) would be nice here, but unfortunately
- # isn't a blessed tool.
- $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
- delfiles="$delfiles $export_symbols $output_objdir/$libname.filter"
- export_symbols=$output_objdir/$libname.def
- $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
- fi
- fi
-
- libobjs=$output
- # Restore the value of output.
- output=$save_output
-
- if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then
- eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
- test "X$libobjs" = "X " && libobjs=
- fi
- # Expand the library linking commands again to reset the
- # value of $libobjs for piecewise linking.
-
- # Do each of the archive commands.
- if test "$module" = yes && test -n "$module_cmds" ; then
- if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
- cmds=$module_expsym_cmds
- else
- cmds=$module_cmds
- fi
- else
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- cmds=$archive_expsym_cmds
- else
- cmds=$archive_cmds
- fi
- fi
- fi
-
- if test -n "$delfiles"; then
- # Append the command to remove temporary files to $cmds.
- eval cmds=\"\$cmds~\$RM $delfiles\"
- fi
-
- # Add any objects from preloaded convenience libraries
- if test -n "$dlprefiles"; then
- gentop="$output_objdir/${outputname}x"
- generated="$generated $gentop"
-
- func_extract_archives $gentop $dlprefiles
- libobjs="$libobjs $func_extract_archives_result"
- test "X$libobjs" = "X " && libobjs=
- fi
-
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- eval cmd=\"$cmd\"
- $opt_silent || {
- func_quote_for_expand "$cmd"
- eval "func_echo $func_quote_for_expand_result"
- }
- $opt_dry_run || eval "$cmd" || {
- lt_exit=$?
-
- # Restore the uninstalled library and exit
- if test "$mode" = relink; then
- ( cd "$output_objdir" && \
- $RM "${realname}T" && \
- $MV "${realname}U" "$realname" )
- fi
-
- exit $lt_exit
- }
- done
- IFS="$save_ifs"
-
- # Restore the uninstalled library and exit
- if test "$mode" = relink; then
- $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
-
- if test -n "$convenience"; then
- if test -z "$whole_archive_flag_spec"; then
- func_show_eval '${RM}r "$gentop"'
- fi
- fi
-
- exit $EXIT_SUCCESS
- fi
-
- # Create links to the real library.
- for linkname in $linknames; do
- if test "$realname" != "$linkname"; then
- func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?'
- fi
- done
-
- # If -module or -export-dynamic was specified, set the dlname.
- if test "$module" = yes || test "$export_dynamic" = yes; then
- # On all known operating systems, these are identical.
- dlname="$soname"
- fi
- fi
- ;;
-
- obj)
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- func_warning "\`-dlopen' is ignored for objects"
- fi
-
- case " $deplibs" in
- *\ -l* | *\ -L*)
- func_warning "\`-l' and \`-L' are ignored for objects" ;;
- esac
-
- test -n "$rpath" && \
- func_warning "\`-rpath' is ignored for objects"
-
- test -n "$xrpath" && \
- func_warning "\`-R' is ignored for objects"
-
- test -n "$vinfo" && \
- func_warning "\`-version-info' is ignored for objects"
-
- test -n "$release" && \
- func_warning "\`-release' is ignored for objects"
-
- case $output in
- *.lo)
- test -n "$objs$old_deplibs" && \
- func_fatal_error "cannot build library object \`$output' from non-libtool objects"
-
- libobj=$output
- func_lo2o "$libobj"
- obj=$func_lo2o_result
- ;;
- *)
- libobj=
- obj="$output"
- ;;
- esac
-
- # Delete the old objects.
- $opt_dry_run || $RM $obj $libobj
-
- # Objects from convenience libraries. This assumes
- # single-version convenience libraries. Whenever we create
- # different ones for PIC/non-PIC, this we'll have to duplicate
- # the extraction.
- reload_conv_objs=
- gentop=
- # reload_cmds runs $LD directly, so let us get rid of
- # -Wl from whole_archive_flag_spec and hope we can get by with
- # turning comma into space..
- wl=
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
- eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
- reload_conv_objs=$reload_objs\ `$ECHO "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
- else
- gentop="$output_objdir/${obj}x"
- generated="$generated $gentop"
-
- func_extract_archives $gentop $convenience
- reload_conv_objs="$reload_objs $func_extract_archives_result"
- fi
- fi
-
- # Create the old-style object.
- reload_objs="$objs$old_deplibs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
-
- output="$obj"
- func_execute_cmds "$reload_cmds" 'exit $?'
-
- # Exit if we aren't doing a library object file.
- if test -z "$libobj"; then
- if test -n "$gentop"; then
- func_show_eval '${RM}r "$gentop"'
- fi
-
- exit $EXIT_SUCCESS
- fi
-
- if test "$build_libtool_libs" != yes; then
- if test -n "$gentop"; then
- func_show_eval '${RM}r "$gentop"'
- fi
-
- # Create an invalid libtool object if no PIC, so that we don't
- # accidentally link it into a program.
- # $show "echo timestamp > $libobj"
- # $opt_dry_run || eval "echo timestamp > $libobj" || exit $?
- exit $EXIT_SUCCESS
- fi
-
- if test -n "$pic_flag" || test "$pic_mode" != default; then
- # Only do commands if we really have different PIC objects.
- reload_objs="$libobjs $reload_conv_objs"
- output="$libobj"
- func_execute_cmds "$reload_cmds" 'exit $?'
- fi
-
- if test -n "$gentop"; then
- func_show_eval '${RM}r "$gentop"'
- fi
-
- exit $EXIT_SUCCESS
- ;;
-
- prog)
- case $host in
- *cygwin*) func_stripname '' '.exe' "$output"
- output=$func_stripname_result.exe;;
- esac
- test -n "$vinfo" && \
- func_warning "\`-version-info' is ignored for programs"
-
- test -n "$release" && \
- func_warning "\`-release' is ignored for programs"
-
- test "$preload" = yes \
- && test "$dlopen_support" = unknown \
- && test "$dlopen_self" = unknown \
- && test "$dlopen_self_static" = unknown && \
- func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support."
-
- case $host in
- *-*-rhapsody* | *-*-darwin1.[012])
- # On Rhapsody replace the C library is the System framework
- compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
- finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
- ;;
- esac
-
- case $host in
- *-*-darwin*)
- # Don't allow lazy linking, it breaks C++ global constructors
- # But is supposedly fixed on 10.4 or later (yay!).
- if test "$tagname" = CXX ; then
- case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
- 10.[0123])
- compile_command="$compile_command ${wl}-bind_at_load"
- finalize_command="$finalize_command ${wl}-bind_at_load"
- ;;
- esac
- fi
- # Time to change all our "foo.ltframework" stuff back to "-framework foo"
- compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
- finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
- ;;
- esac
-
-
- # move library search paths that coincide with paths to not yet
- # installed libraries to the beginning of the library search list
- new_libs=
- for path in $notinst_path; do
- case " $new_libs " in
- *" -L$path/$objdir "*) ;;
- *)
- case " $compile_deplibs " in
- *" -L$path/$objdir "*)
- new_libs="$new_libs -L$path/$objdir" ;;
- esac
- ;;
- esac
- done
- for deplib in $compile_deplibs; do
- case $deplib in
- -L*)
- case " $new_libs " in
- *" $deplib "*) ;;
- *) new_libs="$new_libs $deplib" ;;
- esac
- ;;
- *) new_libs="$new_libs $deplib" ;;
- esac
- done
- compile_deplibs="$new_libs"
-
-
- compile_command="$compile_command $compile_deplibs"
- finalize_command="$finalize_command $finalize_deplibs"
-
- if test -n "$rpath$xrpath"; then
- # If the user specified any rpath flags, then add them.
- for libdir in $rpath $xrpath; do
- # This is the magic to use -rpath.
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir" ;;
- esac
- done
- fi
-
- # Now hardcode the library paths
- rpath=
- hardcode_libdirs=
- for libdir in $compile_rpath $finalize_rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- rpath="$rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$perm_rpath " in
- *" $libdir "*) ;;
- *) perm_rpath="$perm_rpath $libdir" ;;
- esac
- fi
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
- testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
- case :$dllsearchpath: in
- *":$libdir:"*) ;;
- ::) dllsearchpath=$libdir;;
- *) dllsearchpath="$dllsearchpath:$libdir";;
- esac
- case :$dllsearchpath: in
- *":$testbindir:"*) ;;
- ::) dllsearchpath=$testbindir;;
- *) dllsearchpath="$dllsearchpath:$testbindir";;
- esac
- ;;
- esac
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- eval rpath=\" $hardcode_libdir_flag_spec\"
- fi
- compile_rpath="$rpath"
-
- rpath=
- hardcode_libdirs=
- for libdir in $finalize_rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
- if test -z "$hardcode_libdirs"; then
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
- case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
- hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
- ;;
- esac
- fi
- else
- eval flag=\"$hardcode_libdir_flag_spec\"
- rpath="$rpath $flag"
- fi
- elif test -n "$runpath_var"; then
- case "$finalize_perm_rpath " in
- *" $libdir "*) ;;
- *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
- esac
- fi
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
- test -n "$hardcode_libdirs"; then
- libdir="$hardcode_libdirs"
- eval rpath=\" $hardcode_libdir_flag_spec\"
- fi
- finalize_rpath="$rpath"
-
- if test -n "$libobjs" && test "$build_old_libs" = yes; then
- # Transform all the library objects into standard objects.
- compile_command=`$ECHO "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- finalize_command=`$ECHO "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- fi
-
- func_generate_dlsyms "$outputname" "@PROGRAM@" "no"
-
- # template prelinking step
- if test -n "$prelink_cmds"; then
- func_execute_cmds "$prelink_cmds" 'exit $?'
- fi
-
- wrappers_required=yes
- case $host in
- *cygwin* | *mingw* )
- if test "$build_libtool_libs" != yes; then
- wrappers_required=no
- fi
- ;;
- *cegcc)
- # Disable wrappers for cegcc, we are cross compiling anyway.
- wrappers_required=no
- ;;
- *)
- if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
- wrappers_required=no
- fi
- ;;
- esac
- if test "$wrappers_required" = no; then
- # Replace the output file specification.
- compile_command=`$ECHO "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
- link_command="$compile_command$compile_rpath"
-
- # We have no uninstalled library dependencies, so finalize right now.
- exit_status=0
- func_show_eval "$link_command" 'exit_status=$?'
-
- # Delete the generated files.
- if test -f "$output_objdir/${outputname}S.${objext}"; then
- func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'
- fi
-
- exit $exit_status
- fi
-
- if test -n "$compile_shlibpath$finalize_shlibpath"; then
- compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
- fi
- if test -n "$finalize_shlibpath"; then
- finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
- fi
-
- compile_var=
- finalize_var=
- if test -n "$runpath_var"; then
- if test -n "$perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $perm_rpath; do
- rpath="$rpath$dir:"
- done
- compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
- fi
- if test -n "$finalize_perm_rpath"; then
- # We should set the runpath_var.
- rpath=
- for dir in $finalize_perm_rpath; do
- rpath="$rpath$dir:"
- done
- finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
- fi
- fi
-
- if test "$no_install" = yes; then
- # We don't need to create a wrapper script.
- link_command="$compile_var$compile_command$compile_rpath"
- # Replace the output file specification.
- link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
- # Delete the old output file.
- $opt_dry_run || $RM $output
- # Link the executable and exit
- func_show_eval "$link_command" 'exit $?'
- exit $EXIT_SUCCESS
- fi
-
- if test "$hardcode_action" = relink; then
- # Fast installation is not supported
- link_command="$compile_var$compile_command$compile_rpath"
- relink_command="$finalize_var$finalize_command$finalize_rpath"
-
- func_warning "this platform does not like uninstalled shared libraries"
- func_warning "\`$output' will be relinked during installation"
- else
- if test "$fast_install" != no; then
- link_command="$finalize_var$compile_command$finalize_rpath"
- if test "$fast_install" = yes; then
- relink_command=`$ECHO "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
- else
- # fast_install is set to needless
- relink_command=
- fi
- else
- link_command="$compile_var$compile_command$compile_rpath"
- relink_command="$finalize_var$finalize_command$finalize_rpath"
- fi
- fi
-
- # Replace the output file specification.
- link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
-
- # Delete the old output files.
- $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname
-
- func_show_eval "$link_command" 'exit $?'
-
- # Now create the wrapper script.
- func_verbose "creating $output"
-
- # Quote the relink command for shipping.
- if test -n "$relink_command"; then
- # Preserve any variables that may affect compiler behavior
- for var in $variables_saved_for_relink; do
- if eval test -z \"\${$var+set}\"; then
- relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
- elif eval var_value=\$$var; test -z "$var_value"; then
- relink_command="$var=; export $var; $relink_command"
- else
- func_quote_for_eval "$var_value"
- relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
- fi
- done
- relink_command="(cd `pwd`; $relink_command)"
- relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`
- fi
-
- # Quote $ECHO for shipping.
- if test "X$ECHO" = "X$SHELL $progpath --fallback-echo"; then
- case $progpath in
- [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";;
- *) qecho="$SHELL `pwd`/$progpath --fallback-echo";;
- esac
- qecho=`$ECHO "X$qecho" | $Xsed -e "$sed_quote_subst"`
- else
- qecho=`$ECHO "X$ECHO" | $Xsed -e "$sed_quote_subst"`
- fi
-
- # Only actually do things if not in dry run mode.
- $opt_dry_run || {
- # win32 will think the script is a binary if it has
- # a .exe suffix, so we strip it off here.
- case $output in
- *.exe) func_stripname '' '.exe' "$output"
- output=$func_stripname_result ;;
- esac
- # test for cygwin because mv fails w/o .exe extensions
- case $host in
- *cygwin*)
- exeext=.exe
- func_stripname '' '.exe' "$outputname"
- outputname=$func_stripname_result ;;
- *) exeext= ;;
- esac
- case $host in
- *cygwin* | *mingw* )
- func_dirname_and_basename "$output" "" "."
- output_name=$func_basename_result
- output_path=$func_dirname_result
- cwrappersource="$output_path/$objdir/lt-$output_name.c"
- cwrapper="$output_path/$output_name.exe"
- $RM $cwrappersource $cwrapper
- trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
-
- func_emit_cwrapperexe_src > $cwrappersource
-
- # The wrapper executable is built using the $host compiler,
- # because it contains $host paths and files. If cross-
- # compiling, it, like the target executable, must be
- # executed on the $host or under an emulation environment.
- $opt_dry_run || {
- $LTCC $LTCFLAGS -o $cwrapper $cwrappersource
- $STRIP $cwrapper
- }
-
- # Now, create the wrapper script for func_source use:
- func_ltwrapper_scriptname $cwrapper
- $RM $func_ltwrapper_scriptname_result
- trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
- $opt_dry_run || {
- # note: this script will not be executed, so do not chmod.
- if test "x$build" = "x$host" ; then
- $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
- else
- func_emit_wrapper no > $func_ltwrapper_scriptname_result
- fi
- }
- ;;
- * )
- $RM $output
- trap "$RM $output; exit $EXIT_FAILURE" 1 2 15
-
- func_emit_wrapper no > $output
- chmod +x $output
- ;;
- esac
- }
- exit $EXIT_SUCCESS
- ;;
- esac
-
- # See if we need to build an old-fashioned archive.
- for oldlib in $oldlibs; do
-
- if test "$build_libtool_libs" = convenience; then
- oldobjs="$libobjs_save $symfileobj"
- addlibs="$convenience"
- build_libtool_libs=no
- else
- if test "$build_libtool_libs" = module; then
- oldobjs="$libobjs_save"
- build_libtool_libs=no
- else
- oldobjs="$old_deplibs $non_pic_objects"
- if test "$preload" = yes && test -f "$symfileobj"; then
- oldobjs="$oldobjs $symfileobj"
- fi
- fi
- addlibs="$old_convenience"
- fi
-
- if test -n "$addlibs"; then
- gentop="$output_objdir/${outputname}x"
- generated="$generated $gentop"
-
- func_extract_archives $gentop $addlibs
- oldobjs="$oldobjs $func_extract_archives_result"
- fi
-
- # Do each command in the archive commands.
- if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
- cmds=$old_archive_from_new_cmds
- else
-
- # Add any objects from preloaded convenience libraries
- if test -n "$dlprefiles"; then
- gentop="$output_objdir/${outputname}x"
- generated="$generated $gentop"
-
- func_extract_archives $gentop $dlprefiles
- oldobjs="$oldobjs $func_extract_archives_result"
- fi
-
- # POSIX demands no paths to be encoded in archives. We have
- # to avoid creating archives with duplicate basenames if we
- # might have to extract them afterwards, e.g., when creating a
- # static archive out of a convenience library, or when linking
- # the entirety of a libtool archive into another (currently
- # not supported by libtool).
- if (for obj in $oldobjs
- do
- func_basename "$obj"
- $ECHO "$func_basename_result"
- done | sort | sort -uc >/dev/null 2>&1); then
- :
- else
- $ECHO "copying selected object files to avoid basename conflicts..."
- gentop="$output_objdir/${outputname}x"
- generated="$generated $gentop"
- func_mkdir_p "$gentop"
- save_oldobjs=$oldobjs
- oldobjs=
- counter=1
- for obj in $save_oldobjs
- do
- func_basename "$obj"
- objbase="$func_basename_result"
- case " $oldobjs " in
- " ") oldobjs=$obj ;;
- *[\ /]"$objbase "*)
- while :; do
- # Make sure we don't pick an alternate name that also
- # overlaps.
- newobj=lt$counter-$objbase
- func_arith $counter + 1
- counter=$func_arith_result
- case " $oldobjs " in
- *[\ /]"$newobj "*) ;;
- *) if test ! -f "$gentop/$newobj"; then break; fi ;;
- esac
- done
- func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
- oldobjs="$oldobjs $gentop/$newobj"
- ;;
- *) oldobjs="$oldobjs $obj" ;;
- esac
- done
- fi
- eval cmds=\"$old_archive_cmds\"
-
- func_len " $cmds"
- len=$func_len_result
- if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
- cmds=$old_archive_cmds
- else
- # the command line is too long to link in one step, link in parts
- func_verbose "using piecewise archive linking..."
- save_RANLIB=$RANLIB
- RANLIB=:
- objlist=
- concat_cmds=
- save_oldobjs=$oldobjs
- oldobjs=
- # Is there a better way of finding the last object in the list?
- for obj in $save_oldobjs
- do
- last_oldobj=$obj
- done
- eval test_cmds=\"$old_archive_cmds\"
- func_len " $test_cmds"
- len0=$func_len_result
- len=$len0
- for obj in $save_oldobjs
- do
- func_len " $obj"
- func_arith $len + $func_len_result
- len=$func_arith_result
- func_append objlist " $obj"
- if test "$len" -lt "$max_cmd_len"; then
- :
- else
- # the above command should be used before it gets too long
- oldobjs=$objlist
- if test "$obj" = "$last_oldobj" ; then
- RANLIB=$save_RANLIB
- fi
- test -z "$concat_cmds" || concat_cmds=$concat_cmds~
- eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
- objlist=
- len=$len0
- fi
- done
- RANLIB=$save_RANLIB
- oldobjs=$objlist
- if test "X$oldobjs" = "X" ; then
- eval cmds=\"\$concat_cmds\"
- else
- eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
- fi
- fi
- fi
- func_execute_cmds "$cmds" 'exit $?'
- done
-
- test -n "$generated" && \
- func_show_eval "${RM}r$generated"
-
- # Now create the libtool archive.
- case $output in
- *.la)
- old_library=
- test "$build_old_libs" = yes && old_library="$libname.$libext"
- func_verbose "creating $output"
-
- # Preserve any variables that may affect compiler behavior
- for var in $variables_saved_for_relink; do
- if eval test -z \"\${$var+set}\"; then
- relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
- elif eval var_value=\$$var; test -z "$var_value"; then
- relink_command="$var=; export $var; $relink_command"
- else
- func_quote_for_eval "$var_value"
- relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
- fi
- done
- # Quote the link command for shipping.
- relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
- relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`
- if test "$hardcode_automatic" = yes ; then
- relink_command=
- fi
-
- # Only create the output if not a dry run.
- $opt_dry_run || {
- for installed in no yes; do
- if test "$installed" = yes; then
- if test -z "$install_libdir"; then
- break
- fi
- output="$output_objdir/$outputname"i
- # Replace all uninstalled libtool libraries with the installed ones
- newdependency_libs=
- for deplib in $dependency_libs; do
- case $deplib in
- *.la)
- func_basename "$deplib"
- name="$func_basename_result"
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- test -z "$libdir" && \
- func_fatal_error "\`$deplib' is not a valid libtool archive"
- newdependency_libs="$newdependency_libs $libdir/$name"
- ;;
- *) newdependency_libs="$newdependency_libs $deplib" ;;
- esac
- done
- dependency_libs="$newdependency_libs"
- newdlfiles=
-
- for lib in $dlfiles; do
- case $lib in
- *.la)
- func_basename "$lib"
- name="$func_basename_result"
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
- test -z "$libdir" && \
- func_fatal_error "\`$lib' is not a valid libtool archive"
- newdlfiles="$newdlfiles $libdir/$name"
- ;;
- *) newdlfiles="$newdlfiles $lib" ;;
- esac
- done
- dlfiles="$newdlfiles"
- newdlprefiles=
- for lib in $dlprefiles; do
- case $lib in
- *.la)
- # Only pass preopened files to the pseudo-archive (for
- # eventual linking with the app. that links it) if we
- # didn't already link the preopened objects directly into
- # the library:
- func_basename "$lib"
- name="$func_basename_result"
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
- test -z "$libdir" && \
- func_fatal_error "\`$lib' is not a valid libtool archive"
- newdlprefiles="$newdlprefiles $libdir/$name"
- ;;
- esac
- done
- dlprefiles="$newdlprefiles"
- else
- newdlfiles=
- for lib in $dlfiles; do
- case $lib in
- [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
- *) abs=`pwd`"/$lib" ;;
- esac
- newdlfiles="$newdlfiles $abs"
- done
- dlfiles="$newdlfiles"
- newdlprefiles=
- for lib in $dlprefiles; do
- case $lib in
- [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
- *) abs=`pwd`"/$lib" ;;
- esac
- newdlprefiles="$newdlprefiles $abs"
- done
- dlprefiles="$newdlprefiles"
- fi
- $RM $output
- # place dlname in correct position for cygwin
- tdlname=$dlname
- case $host,$output,$installed,$module,$dlname in
- *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
- esac
- $ECHO > $output "\
-# $outputname - a libtool library file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
-#
-# Please DO NOT delete this file!
-# It is necessary for linking the library.
-
-# The name that we can dlopen(3).
-dlname='$tdlname'
-
-# Names of this library.
-library_names='$library_names'
-
-# The name of the static archive.
-old_library='$old_library'
-
-# Linker flags that can not go in dependency_libs.
-inherited_linker_flags='$new_inherited_linker_flags'
-
-# Libraries that this one depends upon.
-dependency_libs='$dependency_libs'
-
-# Names of additional weak libraries provided by this library
-weak_library_names='$weak_libs'
-
-# Version information for $libname.
-current=$current
-age=$age
-revision=$revision
-
-# Is this an already installed library?
-installed=$installed
-
-# Should we warn about portability when linking against -modules?
-shouldnotlink=$module
-
-# Files to dlopen/dlpreopen
-dlopen='$dlfiles'
-dlpreopen='$dlprefiles'
-
-# Directory that this library needs to be installed in:
-libdir='$install_libdir'"
- if test "$installed" = no && test "$need_relink" = yes; then
- $ECHO >> $output "\
-relink_command=\"$relink_command\""
- fi
- done
- }
-
- # Do a symbolic link so that the libtool archive can be found in
- # LD_LIBRARY_PATH before the program is installed.
- func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?'
- ;;
- esac
- exit $EXIT_SUCCESS
-}
-
-{ test "$mode" = link || test "$mode" = relink; } &&
- func_mode_link ${1+"$@"}
-
-
-# func_mode_uninstall arg...
-func_mode_uninstall ()
-{
- $opt_debug
- RM="$nonopt"
- files=
- rmforce=
- exit_status=0
-
- # This variable tells wrapper scripts just to set variables rather
- # than running their programs.
- libtool_install_magic="$magic"
-
- for arg
- do
- case $arg in
- -f) RM="$RM $arg"; rmforce=yes ;;
- -*) RM="$RM $arg" ;;
- *) files="$files $arg" ;;
- esac
- done
-
- test -z "$RM" && \
- func_fatal_help "you must specify an RM program"
-
- rmdirs=
-
- origobjdir="$objdir"
- for file in $files; do
- func_dirname "$file" "" "."
- dir="$func_dirname_result"
- if test "X$dir" = X.; then
- objdir="$origobjdir"
- else
- objdir="$dir/$origobjdir"
- fi
- func_basename "$file"
- name="$func_basename_result"
- test "$mode" = uninstall && objdir="$dir"
-
- # Remember objdir for removal later, being careful to avoid duplicates
- if test "$mode" = clean; then
- case " $rmdirs " in
- *" $objdir "*) ;;
- *) rmdirs="$rmdirs $objdir" ;;
- esac
- fi
-
- # Don't error if the file doesn't exist and rm -f was used.
- if { test -L "$file"; } >/dev/null 2>&1 ||
- { test -h "$file"; } >/dev/null 2>&1 ||
- test -f "$file"; then
- :
- elif test -d "$file"; then
- exit_status=1
- continue
- elif test "$rmforce" = yes; then
- continue
- fi
-
- rmfiles="$file"
-
- case $name in
- *.la)
- # Possibly a libtool archive, so verify it.
- if func_lalib_p "$file"; then
- func_source $dir/$name
-
- # Delete the libtool libraries and symlinks.
- for n in $library_names; do
- rmfiles="$rmfiles $objdir/$n"
- done
- test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
-
- case "$mode" in
- clean)
- case " $library_names " in
- # " " in the beginning catches empty $dlname
- *" $dlname "*) ;;
- *) rmfiles="$rmfiles $objdir/$dlname" ;;
- esac
- test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
- ;;
- uninstall)
- if test -n "$library_names"; then
- # Do each command in the postuninstall commands.
- func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
- fi
-
- if test -n "$old_library"; then
- # Do each command in the old_postuninstall commands.
- func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
- fi
- # FIXME: should reinstall the best remaining shared library.
- ;;
- esac
- fi
- ;;
-
- *.lo)
- # Possibly a libtool object, so verify it.
- if func_lalib_p "$file"; then
-
- # Read the .lo file
- func_source $dir/$name
-
- # Add PIC object to the list of files to remove.
- if test -n "$pic_object" &&
- test "$pic_object" != none; then
- rmfiles="$rmfiles $dir/$pic_object"
- fi
-
- # Add non-PIC object to the list of files to remove.
- if test -n "$non_pic_object" &&
- test "$non_pic_object" != none; then
- rmfiles="$rmfiles $dir/$non_pic_object"
- fi
- fi
- ;;
-
- *)
- if test "$mode" = clean ; then
- noexename=$name
- case $file in
- *.exe)
- func_stripname '' '.exe' "$file"
- file=$func_stripname_result
- func_stripname '' '.exe' "$name"
- noexename=$func_stripname_result
- # $file with .exe has already been added to rmfiles,
- # add $file without .exe
- rmfiles="$rmfiles $file"
- ;;
- esac
- # Do a test to see if this is a libtool program.
- if func_ltwrapper_p "$file"; then
- if func_ltwrapper_executable_p "$file"; then
- func_ltwrapper_scriptname "$file"
- relink_command=
- func_source $func_ltwrapper_scriptname_result
- rmfiles="$rmfiles $func_ltwrapper_scriptname_result"
- else
- relink_command=
- func_source $dir/$noexename
- fi
-
- # note $name still contains .exe if it was in $file originally
- # as does the version of $file that was added into $rmfiles
- rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
- if test "$fast_install" = yes && test -n "$relink_command"; then
- rmfiles="$rmfiles $objdir/lt-$name"
- fi
- if test "X$noexename" != "X$name" ; then
- rmfiles="$rmfiles $objdir/lt-${noexename}.c"
- fi
- fi
- fi
- ;;
- esac
- func_show_eval "$RM $rmfiles" 'exit_status=1'
- done
- objdir="$origobjdir"
-
- # Try to remove the ${objdir}s in the directories where we deleted files
- for dir in $rmdirs; do
- if test -d "$dir"; then
- func_show_eval "rmdir $dir >/dev/null 2>&1"
- fi
- done
-
- exit $exit_status
-}
-
-{ test "$mode" = uninstall || test "$mode" = clean; } &&
- func_mode_uninstall ${1+"$@"}
-
-test -z "$mode" && {
- help="$generic_help"
- func_fatal_help "you must specify a MODE"
-}
-
-test -z "$exec_cmd" && \
- func_fatal_help "invalid operation mode \`$mode'"
-
-if test -n "$exec_cmd"; then
- eval exec "$exec_cmd"
- exit $EXIT_FAILURE
-fi
-
-exit $exit_status
-
-
-# The TAGs below are defined such that we never get into a situation
-# in which we disable both kinds of libraries. Given conflicting
-# choices, we go for a static library, that is the most portable,
-# since we can't tell whether shared libraries were disabled because
-# the user asked for that or because the platform doesn't support
-# them. This is particularly important on AIX, because we don't
-# support having both static and shared libraries enabled at the same
-# time on that platform, so we default to a shared-only configuration.
-# If a disable-shared tag is given, we'll fallback to a static-only
-# configuration. But we'll never go from static-only to shared-only.
-
-# ### BEGIN LIBTOOL TAG CONFIG: disable-shared
-build_libtool_libs=no
-build_old_libs=yes
-# ### END LIBTOOL TAG CONFIG: disable-shared
-
-# ### BEGIN LIBTOOL TAG CONFIG: disable-static
-build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
-# ### END LIBTOOL TAG CONFIG: disable-static
-
-# Local Variables:
-# mode:shell-script
-# sh-indentation:2
-# End:
-# vi:sw=2
-
diff --git a/config/ltoptions.m4 b/config/ltoptions.m4
deleted file mode 100644
index 34151a3..0000000
--- a/config/ltoptions.m4
+++ /dev/null
@@ -1,368 +0,0 @@
-# Helper functions for option handling. -*- Autoconf -*-
-#
-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gary V. Vaughan, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 6 ltoptions.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
-
-
-# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
-# ------------------------------------------
-m4_define([_LT_MANGLE_OPTION],
-[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
-
-
-# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
-# ---------------------------------------
-# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
-# matching handler defined, dispatch to it. Other OPTION-NAMEs are
-# saved as a flag.
-m4_define([_LT_SET_OPTION],
-[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
-m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
- _LT_MANGLE_DEFUN([$1], [$2]),
- [m4_warning([Unknown $1 option `$2'])])[]dnl
-])
-
-
-# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
-# ------------------------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-m4_define([_LT_IF_OPTION],
-[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
-
-
-# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
-# -------------------------------------------------------
-# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
-# are set.
-m4_define([_LT_UNLESS_OPTIONS],
-[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
- [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
- [m4_define([$0_found])])])[]dnl
-m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
-])[]dnl
-])
-
-
-# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
-# ----------------------------------------
-# OPTION-LIST is a space-separated list of Libtool options associated
-# with MACRO-NAME. If any OPTION has a matching handler declared with
-# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
-# the unknown option and exit.
-m4_defun([_LT_SET_OPTIONS],
-[# Set options
-m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
- [_LT_SET_OPTION([$1], _LT_Option)])
-
-m4_if([$1],[LT_INIT],[
- dnl
- dnl Simply set some default values (i.e off) if boolean options were not
- dnl specified:
- _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
- ])
- _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
- ])
- dnl
- dnl If no reference was made to various pairs of opposing options, then
- dnl we run the default mode handler for the pair. For example, if neither
- dnl `shared' nor `disable-shared' was passed, we enable building of shared
- dnl archives by default:
- _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
- _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
- _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
- _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
- [_LT_ENABLE_FAST_INSTALL])
- ])
-])# _LT_SET_OPTIONS
-
-
-## --------------------------------- ##
-## Macros to handle LT_INIT options. ##
-## --------------------------------- ##
-
-# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
-# -----------------------------------------
-m4_define([_LT_MANGLE_DEFUN],
-[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
-
-
-# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
-# -----------------------------------------------
-m4_define([LT_OPTION_DEFINE],
-[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
-])# LT_OPTION_DEFINE
-
-
-# dlopen
-# ------
-LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
-])
-
-AU_DEFUN([AC_LIBTOOL_DLOPEN],
-[_LT_SET_OPTION([LT_INIT], [dlopen])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
-
-
-# win32-dll
-# ---------
-# Declare package support for building win32 dll's.
-LT_OPTION_DEFINE([LT_INIT], [win32-dll],
-[enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
- AC_CHECK_TOOL(AS, as, false)
- AC_CHECK_TOOL(DLLTOOL, dlltool, false)
- AC_CHECK_TOOL(OBJDUMP, objdump, false)
- ;;
-esac
-
-test -z "$AS" && AS=as
-_LT_DECL([], [AS], [0], [Assembler program])dnl
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl
-])# win32-dll
-
-AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
-[AC_REQUIRE([AC_CANONICAL_HOST])dnl
-_LT_SET_OPTION([LT_INIT], [win32-dll])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
-
-
-# _LT_ENABLE_SHARED([DEFAULT])
-# ----------------------------
-# implement the --enable-shared flag, and supports the `shared' and
-# `disable-shared' LT_INIT options.
-# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_SHARED],
-[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([shared],
- [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
- [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
- enable_shared=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_shared=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac],
- [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
-
- _LT_DECL([build_libtool_libs], [enable_shared], [0],
- [Whether or not to build shared libraries])
-])# _LT_ENABLE_SHARED
-
-LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
-])
-
-AC_DEFUN([AC_DISABLE_SHARED],
-[_LT_SET_OPTION([LT_INIT], [disable-shared])
-])
-
-AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_SHARED], [])
-dnl AC_DEFUN([AM_DISABLE_SHARED], [])
-
-
-
-# _LT_ENABLE_STATIC([DEFAULT])
-# ----------------------------
-# implement the --enable-static flag, and support the `static' and
-# `disable-static' LT_INIT options.
-# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_STATIC],
-[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([static],
- [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
- [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
- enable_static=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_static=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac],
- [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
-
- _LT_DECL([build_old_libs], [enable_static], [0],
- [Whether or not to build static libraries])
-])# _LT_ENABLE_STATIC
-
-LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
-
-# Old names:
-AC_DEFUN([AC_ENABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
-])
-
-AC_DEFUN([AC_DISABLE_STATIC],
-[_LT_SET_OPTION([LT_INIT], [disable-static])
-])
-
-AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AM_ENABLE_STATIC], [])
-dnl AC_DEFUN([AM_DISABLE_STATIC], [])
-
-
-
-# _LT_ENABLE_FAST_INSTALL([DEFAULT])
-# ----------------------------------
-# implement the --enable-fast-install flag, and support the `fast-install'
-# and `disable-fast-install' LT_INIT options.
-# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
-m4_define([_LT_ENABLE_FAST_INSTALL],
-[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
-AC_ARG_ENABLE([fast-install],
- [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
- [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
- [p=${PACKAGE-default}
- case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
- enable_fast_install=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_fast_install=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac],
- [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
-
-_LT_DECL([fast_install], [enable_fast_install], [0],
- [Whether or not to optimize for fast installation])dnl
-])# _LT_ENABLE_FAST_INSTALL
-
-LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
-LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
-
-# Old names:
-AU_DEFUN([AC_ENABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `fast-install' option into LT_INIT's first parameter.])
-])
-
-AU_DEFUN([AC_DISABLE_FAST_INSTALL],
-[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `disable-fast-install' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
-dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
-
-
-# _LT_WITH_PIC([MODE])
-# --------------------
-# implement the --with-pic flag, and support the `pic-only' and `no-pic'
-# LT_INIT options.
-# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
-m4_define([_LT_WITH_PIC],
-[AC_ARG_WITH([pic],
- [AS_HELP_STRING([--with-pic],
- [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
- [pic_mode="$withval"],
- [pic_mode=default])
-
-test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
-
-_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
-])# _LT_WITH_PIC
-
-LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
-LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
-
-# Old name:
-AU_DEFUN([AC_LIBTOOL_PICMODE],
-[_LT_SET_OPTION([LT_INIT], [pic-only])
-AC_DIAGNOSE([obsolete],
-[$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `pic-only' option into LT_INIT's first parameter.])
-])
-
-dnl aclocal-1.4 backwards compatibility:
-dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
-
-## ----------------- ##
-## LTDL_INIT Options ##
-## ----------------- ##
-
-m4_define([_LTDL_MODE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
- [m4_define([_LTDL_MODE], [nonrecursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [recursive],
- [m4_define([_LTDL_MODE], [recursive])])
-LT_OPTION_DEFINE([LTDL_INIT], [subproject],
- [m4_define([_LTDL_MODE], [subproject])])
-
-m4_define([_LTDL_TYPE], [])
-LT_OPTION_DEFINE([LTDL_INIT], [installable],
- [m4_define([_LTDL_TYPE], [installable])])
-LT_OPTION_DEFINE([LTDL_INIT], [convenience],
- [m4_define([_LTDL_TYPE], [convenience])])
diff --git a/config/ltsugar.m4 b/config/ltsugar.m4
deleted file mode 100644
index 9000a05..0000000
--- a/config/ltsugar.m4
+++ /dev/null
@@ -1,123 +0,0 @@
-# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
-#
-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gary V. Vaughan, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 6 ltsugar.m4
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
-
-
-# lt_join(SEP, ARG1, [ARG2...])
-# -----------------------------
-# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
-# associated separator.
-# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
-# versions in m4sugar had bugs.
-m4_define([lt_join],
-[m4_if([$#], [1], [],
- [$#], [2], [[$2]],
- [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
-m4_define([_lt_join],
-[m4_if([$#$2], [2], [],
- [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
-
-
-# lt_car(LIST)
-# lt_cdr(LIST)
-# ------------
-# Manipulate m4 lists.
-# These macros are necessary as long as will still need to support
-# Autoconf-2.59 which quotes differently.
-m4_define([lt_car], [[$1]])
-m4_define([lt_cdr],
-[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
- [$#], 1, [],
- [m4_dquote(m4_shift($@))])])
-m4_define([lt_unquote], $1)
-
-
-# lt_append(MACRO-NAME, STRING, [SEPARATOR])
-# ------------------------------------------
-# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
-# Note that neither SEPARATOR nor STRING are expanded; they are appended
-# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
-# No SEPARATOR is output if MACRO-NAME was previously undefined (different
-# than defined and empty).
-#
-# This macro is needed until we can rely on Autoconf 2.62, since earlier
-# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
-m4_define([lt_append],
-[m4_define([$1],
- m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
-
-
-
-# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
-# ----------------------------------------------------------
-# Produce a SEP delimited list of all paired combinations of elements of
-# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
-# has the form PREFIXmINFIXSUFFIXn.
-# Needed until we can rely on m4_combine added in Autoconf 2.62.
-m4_define([lt_combine],
-[m4_if(m4_eval([$# > 3]), [1],
- [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
-[[m4_foreach([_Lt_prefix], [$2],
- [m4_foreach([_Lt_suffix],
- ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
- [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
-
-
-# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
-# -----------------------------------------------------------------------
-# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
-# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
-m4_define([lt_if_append_uniq],
-[m4_ifdef([$1],
- [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
- [lt_append([$1], [$2], [$3])$4],
- [$5])],
- [lt_append([$1], [$2], [$3])$4])])
-
-
-# lt_dict_add(DICT, KEY, VALUE)
-# -----------------------------
-m4_define([lt_dict_add],
-[m4_define([$1($2)], [$3])])
-
-
-# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
-# --------------------------------------------
-m4_define([lt_dict_add_subkey],
-[m4_define([$1($2:$3)], [$4])])
-
-
-# lt_dict_fetch(DICT, KEY, [SUBKEY])
-# ----------------------------------
-m4_define([lt_dict_fetch],
-[m4_ifval([$3],
- m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
- m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
-
-
-# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
-# -----------------------------------------------------------------
-m4_define([lt_if_dict_fetch],
-[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
- [$5],
- [$6])])
-
-
-# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
-# --------------------------------------------------------------
-m4_define([lt_dict_filter],
-[m4_if([$5], [], [],
- [lt_join(m4_quote(m4_default([$4], [[, ]])),
- lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
- [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
-])
diff --git a/config/ltversion.m4 b/config/ltversion.m4
deleted file mode 100644
index f3c5309..0000000
--- a/config/ltversion.m4
+++ /dev/null
@@ -1,23 +0,0 @@
-# ltversion.m4 -- version numbers -*- Autoconf -*-
-#
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# Written by Scott James Remnant, 2004
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# Generated from ltversion.in.
-
-# serial 3017 ltversion.m4
-# This file is part of GNU Libtool
-
-m4_define([LT_PACKAGE_VERSION], [2.2.6b])
-m4_define([LT_PACKAGE_REVISION], [1.3017])
-
-AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.2.6b'
-macro_revision='1.3017'
-_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
-_LT_DECL(, macro_revision, 0)
-])
diff --git a/config/lt~obsolete.m4 b/config/lt~obsolete.m4
deleted file mode 100644
index 637bb20..0000000
--- a/config/lt~obsolete.m4
+++ /dev/null
@@ -1,92 +0,0 @@
-# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
-#
-# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
-# Written by Scott James Remnant, 2004.
-#
-# This file is free software; the Free Software Foundation gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-
-# serial 4 lt~obsolete.m4
-
-# These exist entirely to fool aclocal when bootstrapping libtool.
-#
-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
-# which have later been changed to m4_define as they aren't part of the
-# exported API, or moved to Autoconf or Automake where they belong.
-#
-# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
-# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
-# using a macro with the same name in our local m4/libtool.m4 it'll
-# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
-# and doesn't know about Autoconf macros at all.)
-#
-# So we provide this file, which has a silly filename so it's always
-# included after everything else. This provides aclocal with the
-# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
-# because those macros already exist, or will be overwritten later.
-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
-#
-# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
-# Yes, that means every name once taken will need to remain here until
-# we give up compatibility with versions before 1.7, at which point
-# we need to keep only those names which we still refer to.
-
-# This is to help aclocal find these macros, as it can't see m4_define.
-AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
-
-m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
-m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
-m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
-m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
-m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
-m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
-m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
-m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
-m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
-m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
-m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
-m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
-m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
-m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
-m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
-m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
-m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
-m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
-m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
-m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
-m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
-m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
-m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
-m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
-m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
-m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
-m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
-m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
-m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
-m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
-m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
-m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
-m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
-m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
-m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
-m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
-m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
-m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
-m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
-m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
-m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])])
-m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
-m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
-m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
-m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
-m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
-m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
-m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
-m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
-m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
diff --git a/config/missing b/config/missing
deleted file mode 100755
index 28055d2..0000000
--- a/config/missing
+++ /dev/null
@@ -1,376 +0,0 @@
-#! /bin/sh
-# Common stub for a few missing GNU programs while installing.
-
-scriptversion=2009-04-28.21; # UTC
-
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-if test $# -eq 0; then
- echo 1>&2 "Try \`$0 --help' for more information"
- exit 1
-fi
-
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
- configure_ac=configure.ac
-else
- configure_ac=configure.in
-fi
-
-msg="missing on your system"
-
-case $1 in
---run)
- # Try to run requested program, and just exit if it succeeds.
- run=
- shift
- "$@" && exit 0
- # Exit code 63 means version mismatch. This often happens
- # when the user try to use an ancient version of a tool on
- # a file that requires a minimum version. In this case we
- # we should proceed has if the program had been absent, or
- # if --run hadn't been passed.
- if test $? = 63; then
- run=:
- msg="probably too old"
- fi
- ;;
-
- -h|--h|--he|--hel|--help)
- echo "\
-$0 [OPTION]... PROGRAM [ARGUMENT]...
-
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
-
-Options:
- -h, --help display this help and exit
- -v, --version output version information and exit
- --run try to run the given command, and emulate it if it fails
-
-Supported PROGRAM values:
- aclocal touch file \`aclocal.m4'
- autoconf touch file \`configure'
- autoheader touch file \`config.h.in'
- autom4te touch the output file, or create a stub one
- automake touch all \`Makefile.in' files
- bison create \`y.tab.[ch]', if possible, from existing .[ch]
- flex create \`lex.yy.c', if possible, from existing .c
- help2man touch the output file
- lex create \`lex.yy.c', if possible, from existing .c
- makeinfo touch the output file
- tar try tar, gnutar, gtar, then tar without non-portable flags
- yacc create \`y.tab.[ch]', if possible, from existing .[ch]
-
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
-
-Send bug reports to <bug-automake at gnu.org>."
- exit $?
- ;;
-
- -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
- echo "missing $scriptversion (GNU Automake)"
- exit $?
- ;;
-
- -*)
- echo 1>&2 "$0: Unknown \`$1' option"
- echo 1>&2 "Try \`$0 --help' for more information"
- exit 1
- ;;
-
-esac
-
-# normalize program name to check for.
-program=`echo "$1" | sed '
- s/^gnu-//; t
- s/^gnu//; t
- s/^g//; t'`
-
-# Now exit if we have it, but it failed. Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program). This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
- lex*|yacc*)
- # Not GNU programs, they don't have --version.
- ;;
-
- tar*)
- if test -n "$run"; then
- echo 1>&2 "ERROR: \`tar' requires --run"
- exit 1
- elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
- exit 1
- fi
- ;;
-
- *)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
- # Could not run --version or --help. This is probably someone
- # running `$TOOL --version' or `$TOOL --help' to check whether
- # $TOOL exists and not knowing $TOOL uses missing.
- exit 1
- fi
- ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
- aclocal*)
- echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`acinclude.m4' or \`${configure_ac}'. You might want
- to install the \`Automake' and \`Perl' packages. Grab them from
- any GNU archive site."
- touch aclocal.m4
- ;;
-
- autoconf*)
- echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`${configure_ac}'. You might want to install the
- \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
- archive site."
- touch configure
- ;;
-
- autoheader*)
- echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`acconfig.h' or \`${configure_ac}'. You might want
- to install the \`Autoconf' and \`GNU m4' packages. Grab them
- from any GNU archive site."
- files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
- test -z "$files" && files="config.h"
- touch_files=
- for f in $files; do
- case $f in
- *:*) touch_files="$touch_files "`echo "$f" |
- sed -e 's/^[^:]*://' -e 's/:.*//'`;;
- *) touch_files="$touch_files $f.in";;
- esac
- done
- touch $touch_files
- ;;
-
- automake*)
- echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
- You might want to install the \`Automake' and \`Perl' packages.
- Grab them from any GNU archive site."
- find . -type f -name Makefile.am -print |
- sed 's/\.am$/.in/' |
- while read f; do touch "$f"; done
- ;;
-
- autom4te*)
- echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
- You might have modified some files without having the
- proper tools for further handling them.
- You can get \`$1' as part of \`Autoconf' from any GNU
- archive site."
-
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo "#! /bin/sh"
- echo "# Created by GNU Automake missing as a replacement of"
- echo "# $ $@"
- echo "exit 0"
- chmod +x $file
- exit 1
- fi
- ;;
-
- bison*|yacc*)
- echo 1>&2 "\
-WARNING: \`$1' $msg. You should only need it if
- you modified a \`.y' file. You may need the \`Bison' package
- in order for those modifications to take effect. You can get
- \`Bison' from any GNU archive site."
- rm -f y.tab.c y.tab.h
- if test $# -ne 1; then
- eval LASTARG="\${$#}"
- case $LASTARG in
- *.y)
- SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.c
- fi
- SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.h
- fi
- ;;
- esac
- fi
- if test ! -f y.tab.h; then
- echo >y.tab.h
- fi
- if test ! -f y.tab.c; then
- echo 'main() { return 0; }' >y.tab.c
- fi
- ;;
-
- lex*|flex*)
- echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified a \`.l' file. You may need the \`Flex' package
- in order for those modifications to take effect. You can get
- \`Flex' from any GNU archive site."
- rm -f lex.yy.c
- if test $# -ne 1; then
- eval LASTARG="\${$#}"
- case $LASTARG in
- *.l)
- SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" lex.yy.c
- fi
- ;;
- esac
- fi
- if test ! -f lex.yy.c; then
- echo 'main() { return 0; }' >lex.yy.c
- fi
- ;;
-
- help2man*)
- echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified a dependency of a manual page. You may need the
- \`Help2man' package in order for those modifications to take
- effect. You can get \`Help2man' from any GNU archive site."
-
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo ".ab help2man is required to generate this page"
- exit $?
- fi
- ;;
-
- makeinfo*)
- echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified a \`.texi' or \`.texinfo' file, or any other file
- indirectly affecting the aspect of the manual. The spurious
- call might also be the consequence of using a buggy \`make' (AIX,
- DU, IRIX). You might want to install the \`Texinfo' package or
- the \`GNU make' package. Grab either from any GNU archive site."
- # The file to touch is that specified with -o ...
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -z "$file"; then
- # ... or it is the one specified with @setfilename ...
- infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '
- /^@setfilename/{
- s/.* \([^ ]*\) *$/\1/
- p
- q
- }' $infile`
- # ... or it is derived from the source name (dir/f.texi becomes f.info)
- test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
- fi
- # If the file does not exist, the user really needs makeinfo;
- # let's fail without touching anything.
- test -f $file || exit 1
- touch $file
- ;;
-
- tar*)
- shift
-
- # We have already tried tar in the generic part.
- # Look for gnutar/gtar before invocation to avoid ugly error
- # messages.
- if (gnutar --version > /dev/null 2>&1); then
- gnutar "$@" && exit 0
- fi
- if (gtar --version > /dev/null 2>&1); then
- gtar "$@" && exit 0
- fi
- firstarg="$1"
- if shift; then
- case $firstarg in
- *o*)
- firstarg=`echo "$firstarg" | sed s/o//`
- tar "$firstarg" "$@" && exit 0
- ;;
- esac
- case $firstarg in
- *h*)
- firstarg=`echo "$firstarg" | sed s/h//`
- tar "$firstarg" "$@" && exit 0
- ;;
- esac
- fi
-
- echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
- You may want to install GNU tar or Free paxutils, or check the
- command line arguments."
- exit 1
- ;;
-
- *)
- echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
- You might have modified some files without having the
- proper tools for further handling them. Check the \`README' file,
- it often tells you about the needed prerequisites for installing
- this package. You may also peek at any GNU archive site, in case
- some other package would contain this missing \`$1' program."
- exit 1
- ;;
-esac
-
-exit 0
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/config/py-compile b/config/py-compile
deleted file mode 100755
index 3f9d05b..0000000
--- a/config/py-compile
+++ /dev/null
@@ -1,146 +0,0 @@
-#!/bin/sh
-# py-compile - Compile a Python program
-
-scriptversion=2009-04-28.21; # UTC
-
-# Copyright (C) 2000, 2001, 2003, 2004, 2005, 2008, 2009 Free Software
-# Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# This file is maintained in Automake, please report
-# bugs to <bug-automake at gnu.org> or send patches to
-# <automake-patches at gnu.org>.
-
-if [ -z "$PYTHON" ]; then
- PYTHON=python
-fi
-
-basedir=
-destdir=
-files=
-while test $# -ne 0; do
- case "$1" in
- --basedir)
- basedir=$2
- if test -z "$basedir"; then
- echo "$0: Missing argument to --basedir." 1>&2
- exit 1
- fi
- shift
- ;;
- --destdir)
- destdir=$2
- if test -z "$destdir"; then
- echo "$0: Missing argument to --destdir." 1>&2
- exit 1
- fi
- shift
- ;;
- -h|--h*)
- cat <<\EOF
-Usage: py-compile [--help] [--version] [--basedir DIR] [--destdir DIR] FILES..."
-
-Byte compile some python scripts FILES. Use --destdir to specify any
-leading directory path to the FILES that you don't want to include in the
-byte compiled file. Specify --basedir for any additional path information you
-do want to be shown in the byte compiled file.
-
-Example:
- py-compile --destdir /tmp/pkg-root --basedir /usr/share/test test.py test2.py
-
-Report bugs to <bug-automake at gnu.org>.
-EOF
- exit $?
- ;;
- -v|--v*)
- echo "py-compile $scriptversion"
- exit $?
- ;;
- *)
- files="$files $1"
- ;;
- esac
- shift
-done
-
-if test -z "$files"; then
- echo "$0: No files given. Try \`$0 --help' for more information." 1>&2
- exit 1
-fi
-
-# if basedir was given, then it should be prepended to filenames before
-# byte compilation.
-if [ -z "$basedir" ]; then
- pathtrans="path = file"
-else
- pathtrans="path = os.path.join('$basedir', file)"
-fi
-
-# if destdir was given, then it needs to be prepended to the filename to
-# byte compile but not go into the compiled file.
-if [ -z "$destdir" ]; then
- filetrans="filepath = path"
-else
- filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)"
-fi
-
-$PYTHON -c "
-import sys, os, py_compile
-
-files = '''$files'''
-
-sys.stdout.write('Byte-compiling python modules...\n')
-for file in files.split():
- $pathtrans
- $filetrans
- if not os.path.exists(filepath) or not (len(filepath) >= 3
- and filepath[-3:] == '.py'):
- continue
- sys.stdout.write(file)
- sys.stdout.flush()
- py_compile.compile(filepath, filepath + 'c', path)
-sys.stdout.write('\n')" || exit $?
-
-# this will fail for python < 1.5, but that doesn't matter ...
-$PYTHON -O -c "
-import sys, os, py_compile
-
-files = '''$files'''
-sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n')
-for file in files.split():
- $pathtrans
- $filetrans
- if not os.path.exists(filepath) or not (len(filepath) >= 3
- and filepath[-3:] == '.py'):
- continue
- sys.stdout.write(file)
- sys.stdout.flush()
- py_compile.compile(filepath, filepath + 'o', path)
-sys.stdout.write('\n')" 2>/dev/null || :
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/configure b/configure
deleted file mode 100755
index aa6ef33..0000000
--- a/configure
+++ /dev/null
@@ -1,19491 +0,0 @@
-#! /bin/sh
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.67 for mathgl 2.0.
-#
-# Report bugs to <mathgl.abalakin at gmail.com>.
-#
-#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
-#
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-case $0 in #((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '\${1+\"\$@\"}'='\"\$@\"'
- setopt NO_GLOB_SUBST
-else
- case \`(set -o) 2>/dev/null\` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-"
- as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-
-else
- exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1"
- as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
- as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
- eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
- test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
-test \$(( 1 + 1 )) = 2 || exit 1"
- if (eval "$as_required") 2>/dev/null; then :
- as_have_required=yes
-else
- as_have_required=no
-fi
- if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- as_found=:
- case $as_dir in #(
- /*)
- for as_base in sh bash ksh sh5; do
- # Try only shells that exist, to save several forks.
- as_shell=$as_dir/$as_base
- if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
- CONFIG_SHELL=$as_shell as_have_required=yes
- if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
- break 2
-fi
-fi
- done;;
- esac
- as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
- CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
- if test "x$CONFIG_SHELL" != x; then :
- # We cannot yet assume a decent shell, so we have to provide a
- # neutralization value for shells without unset; and this also
- # works around shells that cannot unset nonexistent variables.
- BASH_ENV=/dev/null
- ENV=/dev/null
- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
-fi
-
- if test x$as_have_required = xno; then :
- $as_echo "$0: This script requires a shell more modern than all"
- $as_echo "$0: the shells that I found on your system."
- if test x${ZSH_VERSION+set} = xset ; then
- $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
- $as_echo "$0: be upgraded to zsh 4.3.4 or later."
- else
- $as_echo "$0: Please tell bug-autoconf at gnu.org and
-$0: mathgl.abalakin at gmail.com about your system, including
-$0: any error possibly output before this message. Then
-$0: install a modern shell, or manually run the script
-$0: under such a shell if you do have one."
- fi
- exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-
-# as_fn_mkdir_p
-# -------------
-# Create "$as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} # as_fn_mkdir_p
-# as_fn_append VAR VALUE
-# ----------------------
-# Append the text in VALUE to the end of the definition contained in VAR. Take
-# advantage of any shell optimizations that allow amortized linear growth over
-# repeated appends, instead of the typical quadratic growth present in naive
-# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-# as_fn_arith ARG...
-# ------------------
-# Perform arithmetic evaluation on the ARGs, and store the result in the
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
-# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-# as_fn_error STATUS ERROR [LINENO LOG_FD]
-# ----------------------------------------
-# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-# script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} # as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in #(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -p'
- fi
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-
-# Check that we are running under the correct shell.
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-case X$lt_ECHO in
-X*--fallback-echo)
- # Remove one level of quotation (which was required for Make).
- ECHO=`echo "$lt_ECHO" | sed 's,\\\\\$\\$0,'$0','`
- ;;
-esac
-
-ECHO=${lt_ECHO-echo}
-if test "X$1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
- shift
-elif test "X$1" = X--fallback-echo; then
- # Avoid inline document here, it may be left over
- :
-elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
- # Yippee, $ECHO works!
- :
-else
- # Restart under the correct shell.
- exec $SHELL "$0" --no-reexec ${1+"$@"}
-fi
-
-if test "X$1" = X--fallback-echo; then
- # used as fallback echo
- shift
- cat <<_LT_EOF
-$*
-_LT_EOF
- exit 0
-fi
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-if test -z "$lt_ECHO"; then
- if test "X${echo_test_string+set}" != Xset; then
- # find a string as large as possible, as long as the shell can cope with it
- for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
- # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
- if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
- { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
- then
- break
- fi
- done
- fi
-
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- :
- else
- # The Solaris, AIX, and Digital Unix default echo programs unquote
- # backslashes. This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- #
- # So, first we look for a working echo in the user's PATH.
-
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for dir in $PATH /usr/ucb; do
- IFS="$lt_save_ifs"
- if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
- test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$dir/echo"
- break
- fi
- done
- IFS="$lt_save_ifs"
-
- if test "X$ECHO" = Xecho; then
- # We didn't find a better echo, so look for alternatives.
- if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # This shell has a builtin print -r that does the trick.
- ECHO='print -r'
- elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
- test "X$CONFIG_SHELL" != X/bin/ksh; then
- # If we have ksh, try running configure again with it.
- ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
- export ORIGINAL_CONFIG_SHELL
- CONFIG_SHELL=/bin/ksh
- export CONFIG_SHELL
- exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"}
- else
- # Try using printf.
- ECHO='printf %s\n'
- if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
- echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- # Cool, printf works
- :
- elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
- export CONFIG_SHELL
- SHELL="$CONFIG_SHELL"
- export SHELL
- ECHO="$CONFIG_SHELL $0 --fallback-echo"
- elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
- test "X$echo_testing_string" = 'X\t' &&
- echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
- test "X$echo_testing_string" = "X$echo_test_string"; then
- ECHO="$CONFIG_SHELL $0 --fallback-echo"
- else
- # maybe with a smaller string...
- prev=:
-
- for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
- if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
- then
- break
- fi
- prev="$cmd"
- done
-
- if test "$prev" != 'sed 50q "$0"'; then
- echo_test_string=`eval $prev`
- export echo_test_string
- exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"}
- else
- # Oops. We lost completely, so just stick with echo.
- ECHO=echo
- fi
- fi
- fi
- fi
- fi
-fi
-
-# Copy echo and quote the copy suitably for passing to libtool from
-# the Makefile, instead of quoting the original, which is used later.
-lt_ECHO=$ECHO
-if test "X$lt_ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then
- lt_ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo"
-fi
-
-
-
-as_awk_strverscmp='
- # Use only awk features that work with 7th edition Unix awk (1978).
- # My, what an old awk you have, Mr. Solaris!
- END {
- while (length(v1) && length(v2)) {
- # Set d1 to be the next thing to compare from v1, and likewise for d2.
- # Normally this is a single character, but if v1 and v2 contain digits,
- # compare them as integers and fractions as strverscmp does.
- if (v1 ~ /^[0-9]/ && v2 ~ /^[0-9]/) {
- # Split v1 and v2 into their leading digit string components d1 and d2,
- # and advance v1 and v2 past the leading digit strings.
- for (len1 = 1; substr(v1, len1 + 1) ~ /^[0-9]/; len1++) continue
- for (len2 = 1; substr(v2, len2 + 1) ~ /^[0-9]/; len2++) continue
- d1 = substr(v1, 1, len1); v1 = substr(v1, len1 + 1)
- d2 = substr(v2, 1, len2); v2 = substr(v2, len2 + 1)
- if (d1 ~ /^0/) {
- if (d2 ~ /^0/) {
- # Compare two fractions.
- while (d1 ~ /^0/ && d2 ~ /^0/) {
- d1 = substr(d1, 2); len1--
- d2 = substr(d2, 2); len2--
- }
- if (len1 != len2 && ! (len1 && len2 && substr(d1, 1, 1) == substr(d2, 1, 1))) {
- # The two components differ in length, and the common prefix
- # contains only leading zeros. Consider the longer to be less.
- d1 = -len1
- d2 = -len2
- } else {
- # Otherwise, compare as strings.
- d1 = "x" d1
- d2 = "x" d2
- }
- } else {
- # A fraction is less than an integer.
- exit 1
- }
- } else {
- if (d2 ~ /^0/) {
- # An integer is greater than a fraction.
- exit 2
- } else {
- # Compare two integers.
- d1 += 0
- d2 += 0
- }
- }
- } else {
- # The normal case, without worrying about digits.
- d1 = substr(v1, 1, 1); v1 = substr(v1, 2)
- d2 = substr(v2, 1, 1); v2 = substr(v2, 2)
- }
- if (d1 < d2) exit 1
- if (d1 > d2) exit 2
- }
- # Beware Solaris /usr/xgp4/bin/awk (at least through Solaris 10),
- # which mishandles some comparisons of empty strings to integers.
- if (length(v2)) exit 1
- if (length(v1)) exit 2
- }
-'
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIBOBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='mathgl'
-PACKAGE_TARNAME='mathgl'
-PACKAGE_VERSION='2.0'
-PACKAGE_STRING='mathgl 2.0'
-PACKAGE_BUGREPORT='mathgl.abalakin at gmail.com'
-PACKAGE_URL=''
-
-ac_unique_file="src"
-# Factoring default headers for most tests.
-ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-# endif
-#endif
-#ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-# include <memory.h>
-# endif
-# include <string.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif"
-
-ac_subst_vars='am__EXEEXT_FALSE
-am__EXEEXT_TRUE
-LTLIBOBJS
-LIBOBJS
-AM_CXXFLAGS
-USE_OCTAVE_FALSE
-USE_OCTAVE_TRUE
-OCTAVE_INCFLAGS
-OCTAVE_ARCH
-OCTAVE
-USE_PYTHON_FALSE
-USE_PYTHON_TRUE
-pkgpyexecdir
-pyexecdir
-pkgpythondir
-pythondir
-PYTHON_PLATFORM
-PYTHON_EXEC_PREFIX
-PYTHON_PREFIX
-PYTHON_VERSION
-PYTHON
-HAVE_SWIG
-PYTHON_HEADERS
-USE_QT_FALSE
-USE_QT_TRUE
-QT_VERSION
-QT_LIBS
-QT_LDFLAGS
-QT_LFLAGS
-QT_CPPFLAGS
-QT_INCPATH
-QT_CXXFLAGS
-QT_CFLAGS
-QT_DEFINES
-QT_VERSION_MAJOR
-TMPDIR
-QT_PATH
-RCC
-UIC
-MOC
-QMAKE
-USE_FLTK_FALSE
-USE_FLTK_TRUE
-FLTK_LIBS
-FLTK_FLAGS
-USE_U3D_FALSE
-USE_U3D_TRUE
-U3D_LIBS
-USE_PDF_FALSE
-USE_PDF_TRUE
-USE_JPEG_FALSE
-USE_JPEG_TRUE
-JPEG_LIBS
-JPEG_FLAGS
-PNG_LIBS
-USE_HDF4_FALSE
-USE_HDF4_TRUE
-HDF4_LIBS
-HDF4_FLAGS
-USE_HDF5_FALSE
-USE_HDF5_TRUE
-HDF5_LIBS
-HDF5_FLAGS
-USE_GLUT_FALSE
-USE_GLUT_TRUE
-GL_LIBS
-USE_GSL_FALSE
-USE_GSL_TRUE
-GSL_LIBS
-GSL_FLAGS
-USE_PTHREAD_FALSE
-USE_PTHREAD_TRUE
-PTHREAD_LIBS
-PTHREAD_FLAGS
-CXXCPP
-CPP
-OTOOL64
-OTOOL
-LIPO
-NMEDIT
-DSYMUTIL
-lt_ECHO
-RANLIB
-AR
-LN_S
-NM
-ac_ct_DUMPBIN
-DUMPBIN
-LD
-FGREP
-EGREP
-GREP
-SED
-LIBTOOL
-OBJDUMP
-DLLTOOL
-AS
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-am__fastdepCXX_FALSE
-am__fastdepCXX_TRUE
-CXXDEPMODE
-ac_ct_CXX
-CXXFLAGS
-CXX
-am__fastdepCC_FALSE
-am__fastdepCC_TRUE
-CCDEPMODE
-AMDEPBACKSLASH
-AMDEP_FALSE
-AMDEP_TRUE
-am__quote
-am__include
-DEPDIR
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-am__untar
-am__tar
-AMTAR
-am__leading_dot
-SET_MAKE
-AWK
-mkdir_p
-MKDIR_P
-INSTALL_STRIP_PROGRAM
-STRIP
-install_sh
-MAKEINFO
-AUTOHEADER
-AUTOMAKE
-AUTOCONF
-ACLOCAL
-VERSION
-PACKAGE
-CYGPATH_W
-am__isrc
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-MGL_AGE
-MGL_REVISION
-MGL_CURRENT
-MGL_RELEASE
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-enable_dependency_tracking
-enable_shared
-enable_static
-with_pic
-enable_fast_install
-with_gnu_ld
-enable_libtool_lock
-enable_double
-enable_all
-enable_langall
-enable_pthread
-enable_gsl
-enable_hdf5
-enable_hdf5_18
-enable_hdf4
-enable_jpeg
-enable_u3d
-enable_pdf
-enable_fltk
-enable_qt
-with_qt
-enable_python
-enable_octave
-'
- ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS
-CXX
-CXXFLAGS
-CCC
-CPP
-CXXCPP
-TMPDIR'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval $ac_prev=\$ac_option
- ac_prev=
- continue
- fi
-
- case $ac_option in
- *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
- *=) ac_optarg= ;;
- *) ac_optarg=yes ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_dashdash$ac_option in
- --)
- ac_dashdash=yes ;;
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=*)
- datadir=$ac_optarg ;;
-
- -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
- | --dataroo | --dataro | --datar)
- ac_prev=datarootdir ;;
- -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
- | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
- datarootdir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=no ;;
-
- -docdir | --docdir | --docdi | --doc | --do)
- ac_prev=docdir ;;
- -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
- docdir=$ac_optarg ;;
-
- -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
- ac_prev=dvidir ;;
- -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
- dvidir=$ac_optarg ;;
-
- -enable-* | --enable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=\$ac_optarg ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
- ac_prev=htmldir ;;
- -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
- | --ht=*)
- htmldir=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localedir | --localedir | --localedi | --localed | --locale)
- ac_prev=localedir ;;
- -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
- localedir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst | --locals)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
- ac_prev=pdfdir ;;
- -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
- pdfdir=$ac_optarg ;;
-
- -psdir | --psdir | --psdi | --psd | --ps)
- ac_prev=psdir ;;
- -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
- psdir=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=\$ac_optarg ;;
-
- -without-* | --without-*)
- ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=no ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- case $ac_envvar in #(
- '' | [0-9]* | *[!_$as_cr_alnum]* )
- as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
- esac
- eval $ac_envvar=\$ac_optarg
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
- case $enable_option_checking in
- no) ;;
- fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
- *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
- esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
- datadir sysconfdir sharedstatedir localstatedir includedir \
- oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
-do
- eval ac_val=\$$ac_var
- # Remove trailing slashes.
- case $ac_val in
- */ )
- ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
- eval $ac_var=\$ac_val;;
- esac
- # Be sure to have absolute directory names.
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) continue;;
- NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
- esac
- as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used" >&2
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then the parent directory.
- ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_myself" : 'X\(//\)[^/]' \| \
- X"$as_myself" : 'X\(//\)$' \| \
- X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r "$srcdir/$ac_unique_file"; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
- test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
- pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
- srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
- eval ac_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_env_${ac_var}_value=\$${ac_var}
- eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures mathgl 2.0 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking ...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root [DATAROOTDIR/doc/mathgl]
- --htmldir=DIR html documentation [DOCDIR]
- --dvidir=DIR dvi documentation [DOCDIR]
- --pdfdir=DIR pdf documentation [DOCDIR]
- --psdir=DIR ps documentation [DOCDIR]
-_ACEOF
-
- cat <<\_ACEOF
-
-Program names:
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM run sed PROGRAM on installed program names
-
-System types:
- --build=BUILD configure for building on BUILD [guessed]
- --host=HOST cross-compile to build programs to run on HOST [BUILD]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
- case $ac_init_help in
- short | recursive ) echo "Configuration of mathgl 2.0:";;
- esac
- cat <<\_ACEOF
-
-Optional Features:
- --disable-option-checking ignore unrecognized --enable/--with options
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors
- --enable-shared[=PKGS] build shared libraries [default=yes]
- --enable-static[=PKGS] build static libraries [default=yes]
- --enable-fast-install[=PKGS]
- optimize for fast installation [default=yes]
- --disable-libtool-lock avoid locking (might break parallel builds)
- --enable-double Turn on double precision in MathGL library
- --enable-all Turn on all features
- --enable-langall Turn on all language interfaces
- --enable-pthread Turn on pthread support in MathGL library
- --enable-gsl Turn on gsl functions
- --enable-hdf5 Turn on hdf5
- --enable-hdf5_18 Turn on hdf5 version 1.8
- --enable-hdf4 Turn on hdf4
- --enable-jpeg Turn on jpeg
- --enable-u3d Turn on u3d functions
- --enable-pdf Turn on u3d and pdf functions
- --enable-fltk Turn on fltk
- --enable-qt Turn on Qt
- --enable-python Turn on interface to python
- --enable-octave Turn on interface to octave
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-pic try to use only PIC/non-PIC objects [default=use
- both]
- --with-gnu-ld assume the C compiler uses GNU ld [default=no]
- --with-qt Path to Qt [Look in PATH and /usr/local/Trolltech]
-
-Some influential environment variables:
- CC C compiler command
- CFLAGS C compiler flags
- LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
- nonstandard directory <lib dir>
- LIBS libraries to pass to the linker, e.g. -l<library>
- CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
- you have headers in a nonstandard directory <include dir>
- CXX C++ compiler command
- CXXFLAGS C++ compiler flags
- CPP C preprocessor
- CXXCPP C++ preprocessor
- TMPDIR A temporary directory with write access [/tmp]
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <mathgl.abalakin at gmail.com>.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d "$ac_dir" ||
- { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
- continue
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
- cd "$ac_dir" || { ac_status=$?; continue; }
- # Check for guested configure.
- if test -f "$ac_srcdir/configure.gnu"; then
- echo &&
- $SHELL "$ac_srcdir/configure.gnu" --help=recursive
- elif test -f "$ac_srcdir/configure"; then
- echo &&
- $SHELL "$ac_srcdir/configure" --help=recursive
- else
- $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi || ac_status=$?
- cd "$ac_pwd" || { ac_status=$?; break; }
- done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
- cat <<\_ACEOF
-mathgl configure 2.0
-generated by GNU Autoconf 2.67
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-# ac_fn_c_try_compile LINENO
-# --------------------------
-# Try to compile conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_compile
-
-# ac_fn_cxx_try_compile LINENO
-# ----------------------------
-# Try to compile conftest.$ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} # ac_fn_cxx_try_compile
-
-# ac_fn_c_try_link LINENO
-# -----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_link
-
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} # ac_fn_c_check_header_compile
-
-# ac_fn_c_try_cpp LINENO
-# ----------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_cpp
-
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then :
- ac_retval=0
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=$ac_status
-fi
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
-# ac_fn_c_check_func LINENO FUNC VAR
-# ----------------------------------
-# Tests whether FUNC exists, setting the cache variable VAR accordingly
-ac_fn_c_check_func ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $2 innocuous_$2
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $2 (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $2
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $2 ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$2 || defined __stub___$2
-choke me
-#endif
-
-int
-main ()
-{
-return $2 ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- eval "$3=yes"
-else
- eval "$3=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} # ac_fn_c_check_func
-
-# ac_fn_cxx_try_cpp LINENO
-# ------------------------
-# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_cpp ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if { { ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } > conftest.i && {
- test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} # ac_fn_cxx_try_cpp
-
-# ac_fn_cxx_try_link LINENO
-# -------------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_cxx_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_cxx_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
- as_fn_set_status $ac_retval
-
-} # ac_fn_cxx_try_link
-
-# ac_fn_cxx_check_header_mongrel LINENO HEADER VAR INCLUDES
-# ---------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_cxx_check_header_mongrel ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if eval "test \"\${$3+set}\"" = set; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_header_compiler=yes
-else
- ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <$2>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- ac_header_preproc=yes
-else
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in #((
- yes:no: )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
- ;;
- no:yes:* )
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ---------------------------------------- ##
-## Report this to mathgl.abalakin at gmail.com ##
-## ---------------------------------------- ##"
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval "test \"\${$3+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
- eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
-
-} # ac_fn_cxx_check_header_mongrel
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by mathgl $as_me 2.0, which was
-generated by GNU Autoconf 2.67. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
- done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
- for ac_arg
- do
- case $ac_arg in
- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- continue ;;
- *\'*)
- ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case $ac_pass in
- 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
- 2)
- as_fn_append ac_configure_args1 " '$ac_arg'"
- if test $ac_must_keep_next = true; then
- ac_must_keep_next=false # Got value, back to normal.
- else
- case $ac_arg in
- *=* | --config-cache | -C | -disable-* | --disable-* \
- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
- | -with-* | --with-* | -without-* | --without-* | --x)
- case "$ac_configure_args0 " in
- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
- esac
- ;;
- -* ) ac_must_keep_next=true ;;
- esac
- fi
- as_fn_append ac_configure_args " '$ac_arg'"
- ;;
- esac
- done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
-
- $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
- echo
- # The following way of writing the cache mishandles newlines in values,
-(
- for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
- (set) 2>&1 |
- case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- sed -n \
- "s/'\''/'\''\\\\'\'''\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
- ;; #(
- *)
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-)
- echo
-
- $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
- echo
- for ac_var in $ac_subst_vars
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
-
- if test -n "$ac_subst_files"; then
- $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
- echo
- for ac_var in $ac_subst_files
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
- fi
-
- if test -s confdefs.h; then
- $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
- echo
- cat confdefs.h
- echo
- fi
- test "$ac_signal" != 0 &&
- $as_echo "$as_me: caught signal $ac_signal"
- $as_echo "$as_me: exit $exit_status"
- } >&5
- rm -f core *.core core.conftest.* &&
- rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
- # We do not want a PATH search for config.site.
- case $CONFIG_SITE in #((
- -*) ac_site_file1=./$CONFIG_SITE;;
- */*) ac_site_file1=$CONFIG_SITE;;
- *) ac_site_file1=./$CONFIG_SITE;;
- esac
-elif test "x$prefix" != xNONE; then
- ac_site_file1=$prefix/share/config.site
- ac_site_file2=$prefix/etc/config.site
-else
- ac_site_file1=$ac_default_prefix/share/config.site
- ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
- test "x$ac_site_file" = xNONE && continue
- if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file" \
- || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5 ; }
- fi
-done
-
-if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special files
- # actually), so we avoid doing that. DJGPP emulates it as a regular file.
- if test /dev/null != "$cache_file" && test -f "$cache_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . "$cache_file";;
- *) . "./$cache_file";;
- esac
- fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val=\$ac_cv_env_${ac_var}_value
- eval ac_new_val=\$ac_env_${ac_var}_value
- case $ac_old_set,$ac_new_set in
- set,)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- # differences in whitespace do not lead to failure.
- ac_old_val_w=`echo x $ac_old_val`
- ac_new_val_w=`echo x $ac_new_val`
- if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- ac_cache_corrupted=:
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
- eval $ac_var=\$ac_old_val
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
-$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
-$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) as_fn_append ac_configure_args " '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-MGL_RELEASE=2.0
-
-
-
-ac_aux_dir=
-for ac_dir in config "$srcdir"/config; do
- if test -f "$ac_dir/install-sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f "$ac_dir/install.sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f "$ac_dir/shtool"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- as_fn_error $? "cannot find install-sh, install.sh, or shtool in config \"$srcdir\"/config" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
-
-
-
-ac_config_headers="$ac_config_headers include/mgl/config.h"
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-
-#MGL_RELEASE=1.4
-#AC_SUBST(MGL_RELEASE)
-
-# LT Version numbers, remember to change them just *before* a release.
-# (Interfaces removed: CURRENT++, AGE=0, REVISION=0)
-# (Interfaces added: CURRENT++, AGE++, REVISION=0)
-# (No interfaces changed: REVISION++)
-MGL_CURRENT=6
-MGL_REVISION=0
-MGL_AGE=0
-
-
-
-
-am__api_version='1.11'
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
- ./ | .// | /[cC]/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- rm -rf conftest.one conftest.two conftest.dir
- echo one > conftest.one
- echo two > conftest.two
- mkdir conftest.dir
- if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
- test -s conftest.one && test -s conftest.two &&
- test -s conftest.dir/conftest.one &&
- test -s conftest.dir/conftest.two
- then
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- fi
- done
- done
- ;;
-esac
-
- done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- INSTALL=$ac_install_sh
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[\\\"\#\$\&\'\`$am_lf]*)
- as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5 ;;
-esac
-case $srcdir in
- *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
- as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5 ;;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$*" != "X $srcdir/configure conftest.file" \
- && test "$*" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
-alias in your environment" "$LINENO" 5
- fi
-
- test "$2" = conftest.file
- )
-then
- # Ok.
- :
-else
- as_fn_error $? "newly created file is older than distributed files!
-Check your system clock" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-test "$program_prefix" != NONE &&
- program_transform_name="s&^&$program_prefix&;$program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s&\$&$program_suffix&;$program_transform_name"
-# Double any \ or $.
-# By default was `s,x,x', remove it if useless.
-ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
-fi
-
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
-if test -z "$MKDIR_P"; then
- if test "${ac_cv_path_mkdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in mkdir gmkdir; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
- case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
- 'mkdir (GNU coreutils) '* | \
- 'mkdir (coreutils) '* | \
- 'mkdir (fileutils) '4.1*)
- ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
- break 3;;
- esac
- done
- done
- done
-IFS=$as_save_IFS
-
-fi
-
- test -d ./--version && rmdir ./--version
- if test "${ac_cv_path_mkdir+set}" = set; then
- MKDIR_P="$ac_cv_path_mkdir -p"
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for MKDIR_P within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- MKDIR_P="$ac_install_sh -d"
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
-
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
- [\\/$]* | ?:[\\/]*) ;;
- */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
-for ac_prog in gawk mawk nawk awk
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AWK+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AWK"; then
- ac_cv_prog_AWK="$AWK" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AWK=$ac_cv_prog_AWK
-if test -n "$AWK"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$AWK" && break
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
- @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
- *@@@%%%=?*=@@@%%%*)
- eval ac_cv_prog_make_${ac_make}_set=yes;;
- *)
- eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- SET_MAKE=
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- am__isrc=' -I$(srcdir)'
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-
-
-# Define the identity of the package.
- PACKAGE='mathgl'
- VERSION='2.0'
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
-
-# Some tools Automake needs.
-
-ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
-
-
-AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
-
-
-AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
-
-
-AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
-
-
-MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility.
-
-AMTAR=${AMTAR-"${am_missing_run}tar"}
-
-am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
-
-
-
-
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-else
- CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- fi
-fi
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# != 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
- fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- for ac_prog in cl.exe
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CC" && break
- done
-fi
-if test -z "$CC"; then
- ac_ct_CC=$CC
- for ac_prog in cl.exe
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CC" && break
-done
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- * ) ac_rmfiles="$ac_rmfiles $ac_file";;
- esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link_default") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile. We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
- ;;
- [ab].out )
- # We found the default executable, but exeext='' is most
- # certainly right.
- break;;
- *.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
- then :; else
- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- fi
- # We set ac_cv_exeext here because the later test for it is not
- # safe: cross compilers may not add the suffix if given an `-o'
- # argument, so we may need to know it at that point already.
- # Even if this section looks crufty: it has the advantage of
- # actually working.
- break;;
- * )
- break;;
- esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
- ac_file=''
-fi
-if test -z "$ac_file"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5 ; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- break;;
- * ) break;;
- esac
-done
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
- { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- if { ac_try='./conftest$ac_cv_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5 ; }
- fi
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if test "${ac_cv_objext+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- for ac_file in conftest.o conftest.obj conftest.*; do
- test -f "$ac_file" || continue;
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
- *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
- break;;
- esac
-done
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GCC=yes
-else
- GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_c_werror_flag=$ac_c_werror_flag
- ac_c_werror_flag=yes
- ac_cv_prog_cc_g=no
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-else
- CFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- ac_c_werror_flag=$ac_save_c_werror_flag
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
- CFLAGS="-O2"
- else
- CFLAGS=
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
- char **p;
- int i;
-{
- return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
- char *s;
- va_list v;
- va_start (v,p);
- s = g (p, va_arg (v,int));
- va_end (v);
- return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
- function prototypes and stuff, but not '\xHH' hex character constants.
- These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std is added to get
- proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
- array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std. */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
- inside strings and character constants. */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
- -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
- CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
- test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
- x)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
- xno)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
- *)
- CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-
-fi
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-DEPDIR="${am__leading_dot}deps"
-
-ac_config_commands="$ac_config_commands depfiles"
-
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
-
-# Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
- enableval=$enable_dependency_tracking;
-fi
-
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
-fi
- if test "x$enable_dependency_tracking" != xno; then
- AMDEP_TRUE=
- AMDEP_FALSE='#'
-else
- AMDEP_TRUE='#'
- AMDEP_FALSE=
-fi
-
-
-
-depcc="$CC" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CC_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CC_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CC_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
-CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
- am__fastdepCC_TRUE=
- am__fastdepCC_FALSE='#'
-else
- am__fastdepCC_TRUE='#'
- am__fastdepCC_FALSE=
-fi
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -z "$CXX"; then
- if test -n "$CCC"; then
- CXX=$CCC
- else
- if test -n "$ac_tool_prefix"; then
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CXX"; then
- ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CXX=$ac_cv_prog_CXX
-if test -n "$CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
-$as_echo "$CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CXX" && break
- done
-fi
-if test -z "$CXX"; then
- ac_ct_CXX=$CXX
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CXX"; then
- ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CXX="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
-if test -n "$ac_ct_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
-$as_echo "$ac_ct_CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CXX" && break
-done
-
- if test "x$ac_ct_CXX" = x; then
- CXX="g++"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CXX=$ac_ct_CXX
- fi
-fi
-
- fi
-fi
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
-$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
-$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GXX=yes
-else
- GXX=
-fi
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
-$as_echo_n "checking whether $CXX accepts -g... " >&6; }
-if test "${ac_cv_prog_cxx_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_cxx_werror_flag=$ac_cxx_werror_flag
- ac_cxx_werror_flag=yes
- ac_cv_prog_cxx_g=no
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-else
- CXXFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-
-else
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
-$as_echo "$ac_cv_prog_cxx_g" >&6; }
-if test "$ac_test_CXXFLAGS" = set; then
- CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
- if test "$GXX" = yes; then
- CXXFLAGS="-g -O2"
- else
- CXXFLAGS="-g"
- fi
-else
- if test "$GXX" = yes; then
- CXXFLAGS="-O2"
- else
- CXXFLAGS=
- fi
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-depcc="$CXX" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CXX_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CXX_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CXX_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
-CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
- am__fastdepCXX_TRUE=
- am__fastdepCXX_FALSE='#'
-else
- am__fastdepCXX_TRUE='#'
- am__fastdepCXX_FALSE=
-fi
-
-
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if test "${ac_cv_build+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
- ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
- as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5 ;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if test "${ac_cv_host+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$host_alias" = x; then
- ac_cv_host=$ac_cv_build
-else
- ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5 ;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-enable_win32_dll=yes
-
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AS"; then
- ac_cv_prog_AS="$AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AS="${ac_tool_prefix}as"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AS=$ac_cv_prog_AS
-if test -n "$AS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
-$as_echo "$AS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AS"; then
- ac_ct_AS=$AS
- # Extract the first word of "as", so it can be a program name with args.
-set dummy as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_AS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_AS"; then
- ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_AS="as"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AS=$ac_cv_prog_ac_ct_AS
-if test -n "$ac_ct_AS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
-$as_echo "$ac_ct_AS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_AS" = x; then
- AS="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- AS=$ac_ct_AS
- fi
-else
- AS="$ac_cv_prog_AS"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DLLTOOL"; then
- ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DLLTOOL"; then
- ac_ct_DLLTOOL=$DLLTOOL
- # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DLLTOOL"; then
- ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DLLTOOL="dlltool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_DLLTOOL" = x; then
- DLLTOOL="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DLLTOOL=$ac_ct_DLLTOOL
- fi
-else
- DLLTOOL="$ac_cv_prog_DLLTOOL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OBJDUMP"; then
- ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
- ac_ct_OBJDUMP=$OBJDUMP
- # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OBJDUMP"; then
- ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OBJDUMP="objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OBJDUMP" = x; then
- OBJDUMP="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OBJDUMP=$ac_ct_OBJDUMP
- fi
-else
- OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
- ;;
-esac
-
-test -z "$AS" && AS=as
-
-
-
-
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-
-enable_dlopen=yes
-
-
-
-case `pwd` in
- *\ * | *\ *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
-esac
-
-
-
-macro_version='2.2.6b'
-macro_revision='1.3017'
-
-
-
-
-
-
-
-
-
-
-
-
-
-ltmain="$ac_aux_dir/ltmain.sh"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if test "${ac_cv_path_SED+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
- for ac_i in 1 2 3 4 5 6 7; do
- ac_script="$ac_script$as_nl$ac_script"
- done
- echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
- { ac_script=; unset ac_script;}
- if test -z "$SED"; then
- ac_path_SED_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in sed gsed; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
-# Check for GNU ac_path_SED and select it if it is found.
- # Check for GNU $ac_path_SED
-case `"$ac_path_SED" --version 2>&1` in
-*GNU*)
- ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo '' >> "conftest.nl"
- "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_SED_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_SED="$ac_path_SED"
- ac_path_SED_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_SED_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_SED"; then
- as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
- fi
-else
- ac_cv_path_SED=$SED
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
- SED="$ac_cv_path_SED"
- rm -f conftest.sed
-
-test -z "$SED" && SED=sed
-Xsed="$SED -e 1s/^X//"
-
-
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$GREP"; then
- ac_path_GREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-# Check for GNU ac_path_GREP and select it if it is found.
- # Check for GNU $ac_path_GREP
-case `"$ac_path_GREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'GREP' >> "conftest.nl"
- "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_GREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_GREP="$ac_path_GREP"
- ac_path_GREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_GREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_GREP"; then
- as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_GREP=$GREP
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
- GREP="$ac_cv_path_GREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
- then ac_cv_path_EGREP="$GREP -E"
- else
- if test -z "$EGREP"; then
- ac_path_EGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-# Check for GNU ac_path_EGREP and select it if it is found.
- # Check for GNU $ac_path_EGREP
-case `"$ac_path_EGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'EGREP' >> "conftest.nl"
- "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_EGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_EGREP="$ac_path_EGREP"
- ac_path_EGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_EGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_EGREP"; then
- as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_EGREP=$EGREP
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
- EGREP="$ac_cv_path_EGREP"
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if test "${ac_cv_path_FGREP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
- then ac_cv_path_FGREP="$GREP -F"
- else
- if test -z "$FGREP"; then
- ac_path_FGREP_found=false
- # Loop through the user's path and test for each of PROGNAME-LIST
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in fgrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
-# Check for GNU ac_path_FGREP and select it if it is found.
- # Check for GNU $ac_path_FGREP
-case `"$ac_path_FGREP" --version 2>&1` in
-*GNU*)
- ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
-*)
- ac_count=0
- $as_echo_n 0123456789 >"conftest.in"
- while :
- do
- cat "conftest.in" "conftest.in" >"conftest.tmp"
- mv "conftest.tmp" "conftest.in"
- cp "conftest.in" "conftest.nl"
- $as_echo 'FGREP' >> "conftest.nl"
- "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
- diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- as_fn_arith $ac_count + 1 && ac_count=$as_val
- if test $ac_count -gt ${ac_path_FGREP_max-0}; then
- # Best one so far, save it but keep looking for a better one
- ac_cv_path_FGREP="$ac_path_FGREP"
- ac_path_FGREP_max=$ac_count
- fi
- # 10*(2^10) chars as input seems more than enough
- test $ac_count -gt 10 && break
- done
- rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
-esac
-
- $ac_path_FGREP_found && break 3
- done
- done
- done
-IFS=$as_save_IFS
- if test -z "$ac_cv_path_FGREP"; then
- as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
- fi
-else
- ac_cv_path_FGREP=$FGREP
-fi
-
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
- FGREP="$ac_cv_path_FGREP"
-
-
-test -z "$GREP" && GREP=grep
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
- withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
- with_gnu_ld=no
-fi
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [\\/]* | ?:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if test "${lt_cv_path_LD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if test "${lt_cv_prog_gnu_ld+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if test "${lt_cv_path_NM+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$NM"; then
- # Let the user override the test.
- lt_cv_path_NM="$NM"
-else
- lt_nm_to_check="${ac_tool_prefix}nm"
- if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
- lt_nm_to_check="$lt_nm_to_check nm"
- fi
- for lt_tmp_nm in $lt_nm_to_check; do
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- tmp_nm="$ac_dir/$lt_tmp_nm"
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
- # Tru64's nm complains that /dev/null is an invalid object file
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
- */dev/null* | *'Invalid file or object type'*)
- lt_cv_path_NM="$tmp_nm -B"
- break
- ;;
- *)
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
- */dev/null*)
- lt_cv_path_NM="$tmp_nm -p"
- break
- ;;
- *)
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- ;;
- esac
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
- done
- : ${lt_cv_path_NM=no}
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
-if test "$lt_cv_path_NM" != "no"; then
- NM="$lt_cv_path_NM"
-else
- # Didn't find any BSD compatible name lister, look for dumpbin.
- if test -n "$ac_tool_prefix"; then
- for ac_prog in "dumpbin -symbols" "link -dump -symbols"
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DUMPBIN+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DUMPBIN"; then
- ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DUMPBIN=$ac_cv_prog_DUMPBIN
-if test -n "$DUMPBIN"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$DUMPBIN" && break
- done
-fi
-if test -z "$DUMPBIN"; then
- ac_ct_DUMPBIN=$DUMPBIN
- for ac_prog in "dumpbin -symbols" "link -dump -symbols"
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DUMPBIN"; then
- ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
-if test -n "$ac_ct_DUMPBIN"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_DUMPBIN" && break
-done
-
- if test "x$ac_ct_DUMPBIN" = x; then
- DUMPBIN=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DUMPBIN=$ac_ct_DUMPBIN
- fi
-fi
-
-
- if test "$DUMPBIN" != ":"; then
- NM="$DUMPBIN"
- fi
-fi
-test -z "$NM" && NM=nm
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if test "${lt_cv_nm_interface+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_nm_interface="BSD nm"
- echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:5497: $ac_compile\"" >&5)
- (eval "$ac_compile" 2>conftest.err)
- cat conftest.err >&5
- (eval echo "\"\$as_me:5500: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
- (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
- cat conftest.err >&5
- (eval echo "\"\$as_me:5503: output\"" >&5)
- cat conftest.out >&5
- if $GREP 'External.*some_variable' conftest.out > /dev/null; then
- lt_cv_nm_interface="MS dumpbin"
- fi
- rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
-LN_S=$as_ln_s
-if test "$LN_S" = "ln -s"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
-fi
-
-# find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if test "${lt_cv_sys_max_cmd_len+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- i=0
- teststring="ABCD"
-
- case $build_os in
- msdosdjgpp*)
- # On DJGPP, this test can blow up pretty badly due to problems in libc
- # (any single argument exceeding 2000 bytes causes a buffer overrun
- # during glob expansion). Even if it were fixed, the result of this
- # check would be larger than it should be.
- lt_cv_sys_max_cmd_len=12288; # 12K is about right
- ;;
-
- gnu*)
- # Under GNU Hurd, this test is not required because there is
- # no limit to the length of command line arguments.
- # Libtool will interpret -1 as no limit whatsoever
- lt_cv_sys_max_cmd_len=-1;
- ;;
-
- cygwin* | mingw* | cegcc*)
- # On Win9x/ME, this test blows up -- it succeeds, but takes
- # about 5 minutes as the teststring grows exponentially.
- # Worse, since 9x/ME are not pre-emptively multitasking,
- # you end up with a "frozen" computer, even though with patience
- # the test eventually succeeds (with a max line length of 256k).
- # Instead, let's just punt: use the minimum linelength reported by
- # all of the supported platforms: 8192 (on NT/2K/XP).
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- amigaos*)
- # On AmigaOS with pdksh, this test takes hours, literally.
- # So we just punt and use a minimum line length of 8192.
- lt_cv_sys_max_cmd_len=8192;
- ;;
-
- netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
- # This has been around since 386BSD, at least. Likely further.
- if test -x /sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
- elif test -x /usr/sbin/sysctl; then
- lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
- else
- lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
- fi
- # And add a safety zone
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- ;;
-
- interix*)
- # We know the value 262144 and hardcode it with a safety zone (like BSD)
- lt_cv_sys_max_cmd_len=196608
- ;;
-
- osf*)
- # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
- # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
- # nice to cause kernel panics so lets avoid the loop below.
- # First set a reasonable default.
- lt_cv_sys_max_cmd_len=16384
- #
- if test -x /sbin/sysconfig; then
- case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
- *1*) lt_cv_sys_max_cmd_len=-1 ;;
- esac
- fi
- ;;
- sco3.2v5*)
- lt_cv_sys_max_cmd_len=102400
- ;;
- sysv5* | sco5v6* | sysv4.2uw2*)
- kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
- if test -n "$kargmax"; then
- lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`
- else
- lt_cv_sys_max_cmd_len=32768
- fi
- ;;
- *)
- lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
- if test -n "$lt_cv_sys_max_cmd_len"; then
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
- else
- # Make teststring a little bigger before we do anything with it.
- # a 1K string should be a reasonable start.
- for i in 1 2 3 4 5 6 7 8 ; do
- teststring=$teststring$teststring
- done
- SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
- # If test is not a shell built-in, we'll probably end up computing a
- # maximum length that is only half of the actual maximum length, but
- # we can't tell.
- while { test "X"`$SHELL $0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
- = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
- test $i != 17 # 1/2 MB should be enough
- do
- i=`expr $i + 1`
- teststring=$teststring$teststring
- done
- # Only check the string length outside the loop.
- lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
- teststring=
- # Add a significant safety factor because C++ compilers can tack on
- # massive amounts of additional arguments before passing them to the
- # linker. It appears as though 1/2 is a usable value.
- lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
- fi
- ;;
- esac
-
-fi
-
-if test -n $lt_cv_sys_max_cmd_len ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
-fi
-max_cmd_len=$lt_cv_sys_max_cmd_len
-
-
-
-
-
-
-: ${CP="cp -f"}
-: ${MV="mv -f"}
-: ${RM="rm -f"}
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
-$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
- test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
- = c,a/b,, \
- && eval 'test $(( 1 + 1 )) -eq 2 \
- && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
- && xsi_shell=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
-$as_echo "$xsi_shell" >&6; }
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
-$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
- >/dev/null 2>&1 \
- && lt_shell_append=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
-$as_echo "$lt_shell_append" >&6; }
-
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- lt_unset=unset
-else
- lt_unset=false
-fi
-
-
-
-
-
-# test EBCDIC or ASCII
-case `echo X|tr X '\101'` in
- A) # ASCII based system
- # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
- lt_SP2NL='tr \040 \012'
- lt_NL2SP='tr \015\012 \040\040'
- ;;
- *) # EBCDIC based system
- lt_SP2NL='tr \100 \n'
- lt_NL2SP='tr \r\n \100\100'
- ;;
-esac
-
-
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if test "${lt_cv_ld_reload_flag+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_ld_reload_flag='-r'
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
-reload_flag=$lt_cv_ld_reload_flag
-case $reload_flag in
-"" | " "*) ;;
-*) reload_flag=" $reload_flag" ;;
-esac
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-case $host_os in
- darwin*)
- if test "$GCC" = yes; then
- reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
- else
- reload_cmds='$LD$reload_flag -o $output$reload_objs'
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OBJDUMP"; then
- ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
- ac_ct_OBJDUMP=$OBJDUMP
- # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OBJDUMP"; then
- ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OBJDUMP="objdump"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OBJDUMP" = x; then
- OBJDUMP="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OBJDUMP=$ac_ct_OBJDUMP
- fi
-else
- OBJDUMP="$ac_cv_prog_OBJDUMP"
-fi
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if test "${lt_cv_deplibs_check_method+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_file_magic_cmd='$MAGIC_CMD'
-lt_cv_file_magic_test_file=
-lt_cv_deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-
-case $host_os in
-aix[4-9]*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-beos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-bsdi[45]*)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- lt_cv_file_magic_test_file=/shlib/libc.so
- ;;
-
-cygwin*)
- # func_win32_libid is a shell function defined in ltmain.sh
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- ;;
-
-mingw* | pw32*)
- # Base MSYS/MinGW do not provide the 'file' command needed by
- # func_win32_libid shell function, so use a weaker test based on 'objdump',
- # unless we find 'file', for example because we are cross-compiling.
- if ( file / ) >/dev/null 2>&1; then
- lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
- lt_cv_file_magic_cmd='func_win32_libid'
- else
- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- fi
- ;;
-
-cegcc)
- # use the weaker test based on 'objdump'. See mingw*.
- lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
- lt_cv_file_magic_cmd='$OBJDUMP -f'
- ;;
-
-darwin* | rhapsody*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-freebsd* | dragonfly*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- case $host_cpu in
- i*86 )
- # Not sure whether the presence of OpenBSD here was a mistake.
- # Let's accept both of them until this is cleared up.
- lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
- else
- lt_cv_deplibs_check_method=pass_all
- fi
- ;;
-
-gnu*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-hpux10.20* | hpux11*)
- lt_cv_file_magic_cmd=/usr/bin/file
- case $host_cpu in
- ia64*)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
- lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
- ;;
- hppa*64*)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'
- lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
- ;;
- *)
- lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
- lt_cv_file_magic_test_file=/usr/lib/libc.sl
- ;;
- esac
- ;;
-
-interix[3-9]*)
- # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
- fi
- ;;
-
-newos6*)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
- lt_cv_file_magic_cmd=/usr/bin/file
- lt_cv_file_magic_test_file=/usr/lib/libnls.so
- ;;
-
-*nto* | *qnx*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-openbsd*)
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
- else
- lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
- fi
- ;;
-
-osf3* | osf4* | osf5*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-rdos*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-solaris*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-
-sysv4 | sysv4.3*)
- case $host_vendor in
- motorola)
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
- lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
- ;;
- ncr)
- lt_cv_deplibs_check_method=pass_all
- ;;
- sequent)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
- ;;
- sni)
- lt_cv_file_magic_cmd='/bin/file'
- lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
- lt_cv_file_magic_test_file=/lib/libc.so
- ;;
- siemens)
- lt_cv_deplibs_check_method=pass_all
- ;;
- pc)
- lt_cv_deplibs_check_method=pass_all
- ;;
- esac
- ;;
-
-tpf*)
- lt_cv_deplibs_check_method=pass_all
- ;;
-esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
-file_magic_cmd=$lt_cv_file_magic_cmd
-deplibs_check_method=$lt_cv_deplibs_check_method
-test -z "$deplibs_check_method" && deplibs_check_method=unknown
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AR+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_AR"; then
- ac_ct_AR=$AR
- # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_AR"; then
- ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_AR="ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_AR=$ac_cv_prog_ac_ct_AR
-if test -n "$ac_ct_AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_AR" = x; then
- AR="false"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- AR=$ac_ct_AR
- fi
-else
- AR="$ac_cv_prog_AR"
-fi
-
-test -z "$AR" && AR=ar
-test -z "$AR_FLAGS" && AR_FLAGS=cru
-
-
-
-
-
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-test -z "$STRIP" && STRIP=:
-
-
-
-
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_RANLIB+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
- ac_ct_RANLIB=$RANLIB
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_RANLIB"; then
- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_RANLIB" = x; then
- RANLIB=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- RANLIB=$ac_ct_RANLIB
- fi
-else
- RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-test -z "$RANLIB" && RANLIB=:
-
-
-
-
-
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-if test -n "$RANLIB"; then
- case $host_os in
- openbsd*)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
- ;;
- *)
- old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
- ;;
- esac
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
-
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[BCDEGRST]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-
-# Define system-specific variables.
-case $host_os in
-aix*)
- symcode='[BCDT]'
- ;;
-cygwin* | mingw* | pw32* | cegcc*)
- symcode='[ABCDGISTW]'
- ;;
-hpux*)
- if test "$host_cpu" = ia64; then
- symcode='[ABCDEGRST]'
- fi
- ;;
-irix* | nonstopux*)
- symcode='[BCDEGRST]'
- ;;
-osf*)
- symcode='[BCDEGQRST]'
- ;;
-solaris*)
- symcode='[BDRT]'
- ;;
-sco3.2v5*)
- symcode='[DT]'
- ;;
-sysv4.2uw2*)
- symcode='[DT]'
- ;;
-sysv5* | sco5v6* | unixware* | OpenUNIX*)
- symcode='[ABDT]'
- ;;
-sysv4)
- symcode='[DFNSTU]'
- ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-case `$NM -V 2>&1` in
-*GNU* | *'with BFD'*)
- symcode='[ABCDGIRSTW]' ;;
-esac
-
-# Transform an extracted symbol line into a proper C declaration.
-# Some systems (esp. on ia64) link data and code symbols differently,
-# so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-
-# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
-
-# Handle CRLF in mingw tool chain
-opt_cr=
-case $build_os in
-mingw*)
- opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
- ;;
-esac
-
-# Try without a prefix underscore, then with it.
-for ac_symprfx in "" "_"; do
-
- # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
- symxfrm="\\1 $ac_symprfx\\2 \\2"
-
- # Write the raw and C identifiers.
- if test "$lt_cv_nm_interface" = "MS dumpbin"; then
- # Fake it for dumpbin and say T for any non-static function
- # and D for any global variable.
- # Also find C++ and __fastcall symbols from MSVC++,
- # which start with @ or ?.
- lt_cv_sys_global_symbol_pipe="$AWK '"\
-" {last_section=section; section=\$ 3};"\
-" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
-" \$ 0!~/External *\|/{next};"\
-" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
-" {if(hide[section]) next};"\
-" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-" s[1]~/^[@?]/{print s[1], s[1]; next};"\
-" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
-" ' prfx=^$ac_symprfx"
- else
- lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
- fi
-
- # Check to see that the pipe works correctly.
- pipe_works=no
-
- rm -f conftest*
- cat > conftest.$ac_ext <<_LT_EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(void);
-void nm_test_func(void){}
-#ifdef __cplusplus
-}
-#endif
-int main(){nm_test_var='a';nm_test_func();return(0);}
-_LT_EOF
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- # Now try to grab the symbols.
- nlist=conftest.nm
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\""; } >&5
- (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s "$nlist"; then
- # Try sorting and uniquifying the output.
- if sort "$nlist" | uniq > "$nlist"T; then
- mv -f "$nlist"T "$nlist"
- else
- rm -f "$nlist"T
- fi
-
- # Make sure that we snagged all the symbols we need.
- if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
- if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
- cat <<_LT_EOF > conftest.$ac_ext
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-_LT_EOF
- # Now generate the symbol file.
- eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
-
- cat <<_LT_EOF >> conftest.$ac_ext
-
-/* The mapping between symbol names and symbols. */
-const struct {
- const char *name;
- void *address;
-}
-lt__PROGRAM__LTX_preloaded_symbols[] =
-{
- { "@PROGRAM@", (void *) 0 },
-_LT_EOF
- $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
- cat <<\_LT_EOF >> conftest.$ac_ext
- {0, (void *) 0}
-};
-
-/* This works around a problem in FreeBSD linker */
-#ifdef FREEBSD_WORKAROUND
-static const void *lt_preloaded_setup() {
- return lt__PROGRAM__LTX_preloaded_symbols;
-}
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-_LT_EOF
- # Now try linking the two files.
- mv conftest.$ac_objext conftstm.$ac_objext
- lt_save_LIBS="$LIBS"
- lt_save_CFLAGS="$CFLAGS"
- LIBS="conftstm.$ac_objext"
- CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext}; then
- pipe_works=yes
- fi
- LIBS="$lt_save_LIBS"
- CFLAGS="$lt_save_CFLAGS"
- else
- echo "cannot find nm_test_func in $nlist" >&5
- fi
- else
- echo "cannot find nm_test_var in $nlist" >&5
- fi
- else
- echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
- fi
- else
- echo "$progname: failed program was:" >&5
- cat conftest.$ac_ext >&5
- fi
- rm -rf conftest* conftst*
-
- # Do not use the global_symbol_pipe unless it works.
- if test "$pipe_works" = yes; then
- break
- else
- lt_cv_sys_global_symbol_pipe=
- fi
-done
-
-fi
-
-if test -z "$lt_cv_sys_global_symbol_pipe"; then
- lt_cv_sys_global_symbol_to_cdecl=
-fi
-if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-# Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
- enableval=$enable_libtool_lock;
-fi
-
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case $host in
-ia64-*-hpux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.$ac_objext` in
- *ELF-32*)
- HPUX_IA64_MODE="32"
- ;;
- *ELF-64*)
- HPUX_IA64_MODE="64"
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-*-*-irix6*)
- # Find out which ABI we are using.
- echo '#line 6706 "configure"' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- if test "$lt_cv_prog_gnu_ld" = yes; then
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -melf32bsmip"
- ;;
- *N32*)
- LD="${LD-ld} -melf32bmipn32"
- ;;
- *64-bit*)
- LD="${LD-ld} -melf64bmip"
- ;;
- esac
- else
- case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -32"
- ;;
- *N32*)
- LD="${LD-ld} -n32"
- ;;
- *64-bit*)
- LD="${LD-ld} -64"
- ;;
- esac
- fi
- fi
- rm -rf conftest*
- ;;
-
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.o` in
- *32-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_i386_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_i386"
- ;;
- ppc64-*linux*|powerpc64-*linux*)
- LD="${LD-ld} -m elf32ppclinux"
- ;;
- s390x-*linux*)
- LD="${LD-ld} -m elf_s390"
- ;;
- sparc64-*linux*)
- LD="${LD-ld} -m elf32_sparc"
- ;;
- esac
- ;;
- *64-bit*)
- case $host in
- x86_64-*kfreebsd*-gnu)
- LD="${LD-ld} -m elf_x86_64_fbsd"
- ;;
- x86_64-*linux*)
- LD="${LD-ld} -m elf_x86_64"
- ;;
- ppc*-*linux*|powerpc*-*linux*)
- LD="${LD-ld} -m elf64ppc"
- ;;
- s390*-*linux*|s390*-*tpf*)
- LD="${LD-ld} -m elf64_s390"
- ;;
- sparc*-*linux*)
- LD="${LD-ld} -m elf64_sparc"
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-
-*-*-sco3.2v5*)
- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -belf"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if test "${lt_cv_cc_needs_belf+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- lt_cv_cc_needs_belf=yes
-else
- lt_cv_cc_needs_belf=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
- CFLAGS="$SAVE_CFLAGS"
- fi
- ;;
-sparc*-*solaris*)
- # Find out which ABI we are using.
- echo 'int i;' > conftest.$ac_ext
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- case `/usr/bin/file conftest.o` in
- *64-bit*)
- case $lt_cv_prog_gnu_ld in
- yes*) LD="${LD-ld} -m elf64_sparc" ;;
- *)
- if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
- LD="${LD-ld} -64"
- fi
- ;;
- esac
- ;;
- esac
- fi
- rm -rf conftest*
- ;;
-esac
-
-need_locks="$enable_libtool_lock"
-
-
- case $host_os in
- rhapsody* | darwin*)
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_DSYMUTIL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$DSYMUTIL"; then
- ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-DSYMUTIL=$ac_cv_prog_DSYMUTIL
-if test -n "$DSYMUTIL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_DSYMUTIL"; then
- ac_ct_DSYMUTIL=$DSYMUTIL
- # Extract the first word of "dsymutil", so it can be a program name with args.
-set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_DSYMUTIL"; then
- ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
-if test -n "$ac_ct_DSYMUTIL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_DSYMUTIL" = x; then
- DSYMUTIL=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- DSYMUTIL=$ac_ct_DSYMUTIL
- fi
-else
- DSYMUTIL="$ac_cv_prog_DSYMUTIL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
-set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_NMEDIT+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$NMEDIT"; then
- ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-NMEDIT=$ac_cv_prog_NMEDIT
-if test -n "$NMEDIT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_NMEDIT"; then
- ac_ct_NMEDIT=$NMEDIT
- # Extract the first word of "nmedit", so it can be a program name with args.
-set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_NMEDIT"; then
- ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_NMEDIT="nmedit"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
-if test -n "$ac_ct_NMEDIT"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_NMEDIT" = x; then
- NMEDIT=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- NMEDIT=$ac_ct_NMEDIT
- fi
-else
- NMEDIT="$ac_cv_prog_NMEDIT"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
-set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_LIPO+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$LIPO"; then
- ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-LIPO=$ac_cv_prog_LIPO
-if test -n "$LIPO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_LIPO"; then
- ac_ct_LIPO=$LIPO
- # Extract the first word of "lipo", so it can be a program name with args.
-set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_LIPO"; then
- ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_LIPO="lipo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
-if test -n "$ac_ct_LIPO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_LIPO" = x; then
- LIPO=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- LIPO=$ac_ct_LIPO
- fi
-else
- LIPO="$ac_cv_prog_LIPO"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OTOOL"; then
- ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL=$ac_cv_prog_OTOOL
-if test -n "$OTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL"; then
- ac_ct_OTOOL=$OTOOL
- # Extract the first word of "otool", so it can be a program name with args.
-set dummy otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OTOOL"; then
- ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OTOOL="otool"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
-if test -n "$ac_ct_OTOOL"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OTOOL" = x; then
- OTOOL=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OTOOL=$ac_ct_OTOOL
- fi
-else
- OTOOL="$ac_cv_prog_OTOOL"
-fi
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OTOOL64+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OTOOL64"; then
- ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OTOOL64=$ac_cv_prog_OTOOL64
-if test -n "$OTOOL64"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_OTOOL64"; then
- ac_ct_OTOOL64=$OTOOL64
- # Extract the first word of "otool64", so it can be a program name with args.
-set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_OTOOL64"; then
- ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_OTOOL64="otool64"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
-if test -n "$ac_ct_OTOOL64"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_OTOOL64" = x; then
- OTOOL64=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- OTOOL64=$ac_ct_OTOOL64
- fi
-else
- OTOOL64="$ac_cv_prog_OTOOL64"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if test "${lt_cv_apple_cc_single_mod+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_apple_cc_single_mod=no
- if test -z "${LT_MULTI_MODULE}"; then
- # By default we will add the -single_module flag. You can override
- # by either setting the environment variable LT_MULTI_MODULE
- # non-empty at configure time, or by adding -multi_module to the
- # link flags.
- rm -rf libconftest.dylib*
- echo "int foo(void){return 1;}" > conftest.c
- echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&5
- $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
- -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
- _lt_result=$?
- if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
- lt_cv_apple_cc_single_mod=yes
- else
- cat conftest.err >&5
- fi
- rm -rf libconftest.dylib*
- rm -f conftest.*
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if test "${lt_cv_ld_exported_symbols_list+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_ld_exported_symbols_list=no
- save_LDFLAGS=$LDFLAGS
- echo "_main" > conftest.sym
- LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- lt_cv_ld_exported_symbols_list=yes
-else
- lt_cv_ld_exported_symbols_list=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
- case $host_os in
- rhapsody* | darwin1.[012])
- _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
- darwin1.*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- darwin*) # darwin 5.x on
- # if running on 10.5 or later, the deployment target defaults
- # to the OS version, if on x86, and 10.4, the deployment
- # target defaults to 10.4. Don't you love it?
- case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
- 10.0,*86*-darwin8*|10.0,*-darwin[91]*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- 10.[012]*)
- _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
- 10.*)
- _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
- esac
- ;;
- esac
- if test "$lt_cv_apple_cc_single_mod" = "yes"; then
- _lt_dar_single_mod='$single_module'
- fi
- if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
- _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
- else
- _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
- fi
- if test "$DSYMUTIL" != ":"; then
- _lt_dsymutil='~$DSYMUTIL $lib || :'
- else
- _lt_dsymutil=
- fi
- ;;
- esac
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
- CPP=
-fi
-if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CPP needs to be expanded
- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
- do
- ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
- break
-fi
-
- done
- ac_cv_prog_CPP=$CPP
-
-fi
- CPP=$ac_cv_prog_CPP
-else
- ac_cv_prog_CPP=$CPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
-ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
- Syntax error
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_header_stdc=yes
-else
- ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then :
- :
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
- (('a' <= (c) && (c) <= 'i') \
- || ('j' <= (c) && (c) <= 'r') \
- || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
- int i;
- for (i = 0; i < 256; i++)
- if (XOR (islower (i), ISLOWER (i))
- || toupper (i) != TOUPPER (i))
- return 2;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
- ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
- inttypes.h stdint.h unistd.h
-do :
- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-for ac_header in dlfcn.h
-do :
- ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_dlfcn_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_DLFCN_H 1
-_ACEOF
-
-fi
-
-done
-
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -z "$CXX"; then
- if test -n "$CCC"; then
- CXX=$CCC
- else
- if test -n "$ac_tool_prefix"; then
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CXX"; then
- ac_cv_prog_CXX="$CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CXX=$ac_cv_prog_CXX
-if test -n "$CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
-$as_echo "$CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CXX" && break
- done
-fi
-if test -z "$CXX"; then
- ac_ct_CXX=$CXX
- for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CXX"; then
- ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_ac_ct_CXX="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
-if test -n "$ac_ct_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
-$as_echo "$ac_ct_CXX" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CXX" && break
-done
-
- if test "x$ac_ct_CXX" = x; then
- CXX="g++"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CXX=$ac_ct_CXX
- fi
-fi
-
- fi
-fi
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
-$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
-$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GXX=yes
-else
- GXX=
-fi
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
-$as_echo_n "checking whether $CXX accepts -g... " >&6; }
-if test "${ac_cv_prog_cxx_g+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_cxx_werror_flag=$ac_cxx_werror_flag
- ac_cxx_werror_flag=yes
- ac_cv_prog_cxx_g=no
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-else
- CXXFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
-
-else
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
- CXXFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_compile "$LINENO"; then :
- ac_cv_prog_cxx_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_cxx_werror_flag=$ac_save_cxx_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
-$as_echo "$ac_cv_prog_cxx_g" >&6; }
-if test "$ac_test_CXXFLAGS" = set; then
- CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
- if test "$GXX" = yes; then
- CXXFLAGS="-g -O2"
- else
- CXXFLAGS="-g"
- fi
-else
- if test "$GXX" = yes; then
- CXXFLAGS="-O2"
- else
- CXXFLAGS=
- fi
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-depcc="$CXX" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CXX_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CXX_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CXX_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
-CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
- am__fastdepCXX_TRUE=
- am__fastdepCXX_FALSE='#'
-else
- am__fastdepCXX_TRUE='#'
- am__fastdepCXX_FALSE=
-fi
-
-
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
- ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
- (test "X$CXX" != "Xg++"))) ; then
- ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5
-$as_echo_n "checking how to run the C++ preprocessor... " >&6; }
-if test -z "$CXXCPP"; then
- if test "${ac_cv_prog_CXXCPP+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # Double quotes because CXXCPP needs to be expanded
- for CXXCPP in "$CXX -E" "/lib/cpp"
- do
- ac_preproc_ok=false
-for ac_cxx_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
- Syntax error
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
- break
-fi
-
- done
- ac_cv_prog_CXXCPP=$CXXCPP
-
-fi
- CXXCPP=$ac_cv_prog_CXXCPP
-else
- ac_cv_prog_CXXCPP=$CXXCPP
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5
-$as_echo "$CXXCPP" >&6; }
-ac_preproc_ok=false
-for ac_cxx_preproc_warn_flag in '' yes
-do
- # Use a header file that comes with gcc, so configuring glibc
- # with a fresh cross-compiler works.
- # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- # <limits.h> exists even on freestanding compilers.
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp. "Syntax error" is here to catch this case.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
- Syntax error
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
-
-else
- # Broken: fails on valid input.
-continue
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
- # OK, works on sane cases. Now check whether nonexistent headers
- # can be detected and how.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <ac_nonexistent.h>
-_ACEOF
-if ac_fn_cxx_try_cpp "$LINENO"; then :
- # Broken: success on invalid input.
-continue
-else
- # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-_lt_caught_CXX_error=yes; }
-fi
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-else
- _lt_caught_CXX_error=yes
-fi
-
-
-
-
-
-# Set options
-
-
-
-
-
- # Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
- enableval=$enable_shared; p=${PACKAGE-default}
- case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
- enable_shared=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_shared=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_shared=yes
-fi
-
-
-
-
-
-
-
-
-
- # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
- enableval=$enable_static; p=${PACKAGE-default}
- case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
- enable_static=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_static=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_static=yes
-fi
-
-
-
-
-
-
-
-
-
-
-# Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
- withval=$with_pic; pic_mode="$withval"
-else
- pic_mode=default
-fi
-
-
-test -z "$pic_mode" && pic_mode=default
-
-
-
-
-
-
-
- # Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
- enableval=$enable_fast_install; p=${PACKAGE-default}
- case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
- enable_fast_install=no
- # Look at the argument we got. We use all the common list separators.
- lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
- for pkg in $enableval; do
- IFS="$lt_save_ifs"
- if test "X$pkg" = "X$p"; then
- enable_fast_install=yes
- fi
- done
- IFS="$lt_save_ifs"
- ;;
- esac
-else
- enable_fast_install=yes
-fi
-
-
-
-
-
-
-
-
-
-
-
-# This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
-
-# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-test -z "$LN_S" && LN_S="ln -s"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if test "${lt_cv_objdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
- lt_cv_objdir=.libs
-else
- # MS-DOS does not allow filenames that begin with a dot.
- lt_cv_objdir=_libs
-fi
-rmdir .libs 2>/dev/null
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
-objdir=$lt_cv_objdir
-
-
-
-
-
-cat >>confdefs.h <<_ACEOF
-#define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-case $host_os in
-aix3*)
- # AIX sometimes has problems with the GCC collect2 program. For some
- # reason, if we set the COLLECT_NAMES environment variable, the problems
- # vanish in a puff of smoke.
- if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
- fi
- ;;
-esac
-
-# Sed substitution that helps us do robust quoting. It backslashifies
-# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\(["`\\]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# Sed substitution to delay expansion of an escaped single quote.
-delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
-
-# Sed substitution to avoid accidental globbing in evaled expressions
-no_glob_subst='s/\*/\\\*/g'
-
-# Global variables:
-ofile=libtool
-can_build_shared=yes
-
-# All known linkers require a `.a' archive for static linking (except MSVC,
-# which needs '.lib').
-libext=a
-
-with_gnu_ld="$lt_cv_prog_gnu_ld"
-
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-
-# Set sane defaults for various variables
-test -z "$CC" && CC=cc
-test -z "$LTCC" && LTCC=$CC
-test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
-test -z "$LD" && LD=ld
-test -z "$ac_objext" && ac_objext=o
-
-for cc_temp in $compiler""; do
- case $cc_temp in
- compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
- distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
- \-*) ;;
- *) break;;
- esac
-done
-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
-
-
-# Only perform the check for file, if the check method requires it
-test -z "$MAGIC_CMD" && MAGIC_CMD=file
-case $deplibs_check_method in
-file_magic*)
- if test "$file_magic_cmd" = '$MAGIC_CMD'; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if test "${lt_cv_path_MAGIC_CMD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MAGIC_CMD in
-[\\/*] | ?:[\\/]*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/${ac_tool_prefix}file; then
- lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
-
-
-if test -z "$lt_cv_path_MAGIC_CMD"; then
- if test -n "$ac_tool_prefix"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if test "${lt_cv_path_MAGIC_CMD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MAGIC_CMD in
-[\\/*] | ?:[\\/]*)
- lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
- ;;
-*)
- lt_save_MAGIC_CMD="$MAGIC_CMD"
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
- for ac_dir in $ac_dummy; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/file; then
- lt_cv_path_MAGIC_CMD="$ac_dir/file"
- if test -n "$file_magic_test_file"; then
- case $deplibs_check_method in
- "file_magic "*)
- file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
- MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
- if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
- $EGREP "$file_magic_regex" > /dev/null; then
- :
- else
- cat <<_LT_EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such. This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem. Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool at gnu.org
-
-_LT_EOF
- fi ;;
- esac
- fi
- break
- fi
- done
- IFS="$lt_save_ifs"
- MAGIC_CMD="$lt_save_MAGIC_CMD"
- ;;
-esac
-fi
-
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-if test -n "$MAGIC_CMD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- else
- MAGIC_CMD=:
- fi
-fi
-
- fi
- ;;
-esac
-
-# Use C for the default configuration in the libtool script
-
-lt_save_CC="$CC"
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-# Source file extension for C test sources.
-ac_ext=c
-
-# Object file extension for compiled C test sources.
-objext=o
-objext=$objext
-
-# Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;"
-
-# Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}'
-
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-# Save the default compiler, since it gets overwritten when the other
-# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
-compiler_DEFAULT=$CC
-
-# save warnings/boilerplate of simple test code
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-
-ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-
-
-if test -n "$compiler"; then
-
-lt_prog_compiler_no_builtin_flag=
-
-if test "$GCC" = yes; then
- lt_prog_compiler_no_builtin_flag=' -fno-builtin'
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_rtti_exceptions=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="-fno-rtti -fno-exceptions"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8754: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:8758: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_rtti_exceptions=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
-
-if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
- lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
-else
- :
-fi
-
-fi
-
-
-
-
-
-
- lt_prog_compiler_wl=
-lt_prog_compiler_pic=
-lt_prog_compiler_static=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-
- if test "$GCC" = yes; then
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_static='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- lt_prog_compiler_pic='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- lt_prog_compiler_pic='-DDLL_EXPORT'
- ;;
-
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- lt_prog_compiler_pic='-fno-common'
- ;;
-
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic='-fPIC'
- ;;
- esac
- ;;
-
- interix[3-9]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
-
- msdosdjgpp*)
- # Just because we use GCC doesn't mean we suddenly get shared libraries
- # on systems that don't support them.
- lt_prog_compiler_can_build_shared=no
- enable_shared=no
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic='-fPIC -shared'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- lt_prog_compiler_pic=-Kconform_pic
- fi
- ;;
-
- *)
- lt_prog_compiler_pic='-fPIC'
- ;;
- esac
- else
- # PORTME Check for flag to pass linker flags through the system compiler.
- case $host_os in
- aix*)
- lt_prog_compiler_wl='-Wl,'
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static='-Bstatic'
- else
- lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
-
- mingw* | cygwin* | pw32* | os2* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- lt_prog_compiler_pic='-DDLL_EXPORT'
- ;;
-
- hpux9* | hpux10* | hpux11*)
- lt_prog_compiler_wl='-Wl,'
- # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
- # not for PA HP-UX.
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic='+Z'
- ;;
- esac
- # Is there a better lt_prog_compiler_static that works with the bundled CC?
- lt_prog_compiler_static='${wl}-a ${wl}archive'
- ;;
-
- irix5* | irix6* | nonstopux*)
- lt_prog_compiler_wl='-Wl,'
- # PIC (with -KPIC) is the default.
- lt_prog_compiler_static='-non_shared'
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- # old Intel for x86_64 which still supported -KPIC.
- ecc*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-static'
- ;;
- # icc used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- icc* | ifort*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-fPIC'
- lt_prog_compiler_static='-static'
- ;;
- # Lahey Fortran 8.1.
- lf95*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='--shared'
- lt_prog_compiler_static='--static'
- ;;
- pgcc* | pgf77* | pgf90* | pgf95*)
- # Portland Group compilers (*not* the Pentium gcc compiler,
- # which looks to be a dead project)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-fpic'
- lt_prog_compiler_static='-Bstatic'
- ;;
- ccc*)
- lt_prog_compiler_wl='-Wl,'
- # All Alpha code is PIC.
- lt_prog_compiler_static='-non_shared'
- ;;
- xl*)
- # IBM XL C 8.0/Fortran 10.1 on PPC
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-qpic'
- lt_prog_compiler_static='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C 5.9
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- lt_prog_compiler_wl='-Wl,'
- ;;
- *Sun\ F*)
- # Sun Fortran 8.3 passes all unrecognized flags to the linker
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- lt_prog_compiler_wl=''
- ;;
- esac
- ;;
- esac
- ;;
-
- newsos6)
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- *nto* | *qnx*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic='-fPIC -shared'
- ;;
-
- osf3* | osf4* | osf5*)
- lt_prog_compiler_wl='-Wl,'
- # All OSF/1 code is PIC.
- lt_prog_compiler_static='-non_shared'
- ;;
-
- rdos*)
- lt_prog_compiler_static='-non_shared'
- ;;
-
- solaris*)
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- case $cc_basename in
- f77* | f90* | f95*)
- lt_prog_compiler_wl='-Qoption ld ';;
- *)
- lt_prog_compiler_wl='-Wl,';;
- esac
- ;;
-
- sunos4*)
- lt_prog_compiler_wl='-Qoption ld '
- lt_prog_compiler_pic='-PIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- sysv4 | sysv4.2uw2* | sysv4.3*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec ;then
- lt_prog_compiler_pic='-Kconform_pic'
- lt_prog_compiler_static='-Bstatic'
- fi
- ;;
-
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_pic='-KPIC'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- unicos*)
- lt_prog_compiler_wl='-Wl,'
- lt_prog_compiler_can_build_shared=no
- ;;
-
- uts4*)
- lt_prog_compiler_pic='-pic'
- lt_prog_compiler_static='-Bstatic'
- ;;
-
- *)
- lt_prog_compiler_can_build_shared=no
- ;;
- esac
- fi
-
-case $host_os in
- # For platforms which do not support PIC, -DPIC is meaningless:
- *djgpp*)
- lt_prog_compiler_pic=
- ;;
- *)
- lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5
-$as_echo "$lt_prog_compiler_pic" >&6; }
-
-
-
-
-
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$lt_prog_compiler_pic"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if test "${lt_cv_prog_compiler_pic_works+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_pic_works=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9093: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:9097: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_pic_works=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
- case $lt_prog_compiler_pic in
- "" | " "*) ;;
- *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
- esac
-else
- lt_prog_compiler_pic=
- lt_prog_compiler_can_build_shared=no
-fi
-
-fi
-
-
-
-
-
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if test "${lt_cv_prog_compiler_static_works+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_static_works=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_static_works=yes
- fi
- else
- lt_cv_prog_compiler_static_works=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
-
-if test x"$lt_cv_prog_compiler_static_works" = xyes; then
- :
-else
- lt_prog_compiler_static=
-fi
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9198: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:9202: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:9253: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:9257: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
-
-
-
-
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
- if test "$hard_links" = no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
-
- runpath_var=
- allow_undefined_flag=
- always_export_symbols=no
- archive_cmds=
- archive_expsym_cmds=
- compiler_needs_object=no
- enable_shared_with_static_runtimes=no
- export_dynamic_flag_spec=
- export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- hardcode_automatic=no
- hardcode_direct=no
- hardcode_direct_absolute=no
- hardcode_libdir_flag_spec=
- hardcode_libdir_flag_spec_ld=
- hardcode_libdir_separator=
- hardcode_minus_L=no
- hardcode_shlibpath_var=unsupported
- inherit_rpath=no
- link_all_deplibs=unknown
- module_cmds=
- module_expsym_cmds=
- old_archive_from_new_cmds=
- old_archive_from_expsyms_cmds=
- thread_safe_flag_spec=
- whole_archive_flag_spec=
- # include_expsyms should be a list of space-separated symbols to be *always*
- # included in the symbol list
- include_expsyms=
- # exclude_expsyms can be an extended regexp of symbols to exclude
- # it will be wrapped by ` (' and `)$', so one must not match beginning or
- # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
- # as well as any symbol that contains `d'.
- exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
- # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
- # platforms (ab)use it in PIC code, but their linkers get confused if
- # the symbol is explicitly referenced. Since portable code cannot
- # rely on this symbol name, it's probably fine to never include it in
- # preloaded symbol tables.
- # Exclude shared library initialization/finalization symbols.
- extract_expsyms_cmds=
-
- case $host_os in
- cygwin* | mingw* | pw32* | cegcc*)
- # FIXME: the MSVC++ port hasn't been tested in a loooong time
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- if test "$GCC" != yes; then
- with_gnu_ld=no
- fi
- ;;
- interix*)
- # we just hope/assume this is gcc and not c89 (= MSVC++)
- with_gnu_ld=yes
- ;;
- openbsd*)
- with_gnu_ld=no
- ;;
- linux* | k*bsd*-gnu)
- link_all_deplibs=no
- ;;
- esac
-
- ld_shlibs=yes
- if test "$with_gnu_ld" = yes; then
- # If archive_cmds runs LD, not CC, wlarc should be empty
- wlarc='${wl}'
-
- # Set some defaults for GNU ld with shared library support. These
- # are reset later if shared libraries are not supported. Putting them
- # here allows them to be overridden if necessary.
- runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec='${wl}--export-dynamic'
- # ancient GNU ld didn't support --whole-archive et. al.
- if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
- whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- whole_archive_flag_spec=
- fi
- supports_anon_versioning=no
- case `$LD -v 2>&1` in
- *GNU\ gold*) supports_anon_versioning=yes ;;
- *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
- *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
- *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
- *\ 2.11.*) ;; # other 2.11 versions
- *) supports_anon_versioning=yes ;;
- esac
-
- # See if GNU ld supports shared libraries.
- case $host_os in
- aix[3-9]*)
- # On AIX/PPC, the GNU linker is very broken
- if test "$host_cpu" != ia64; then
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support. If you
-*** really care for shared libraries, you may want to modify your PATH
-*** so that a non-GNU linker is found, and then restart.
-
-_LT_EOF
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds=''
- ;;
- m68k)
- archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- ;;
- esac
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- allow_undefined_flag=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
- # as there is no search path for DLLs.
- hardcode_libdir_flag_spec='-L$libdir'
- allow_undefined_flag=unsupported
- always_export_symbols=no
- enable_shared_with_static_runtimes=yes
- export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- interix[3-9]*)
- hardcode_direct=no
- hardcode_shlibpath_var=no
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- export_dynamic_flag_spec='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
-
- gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
- tmp_diet=no
- if test "$host_os" = linux-dietlibc; then
- case $cc_basename in
- diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
- esac
- fi
- if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
- && test "$tmp_diet" = no
- then
- tmp_addflag=
- tmp_sharedflag='-shared'
- case $cc_basename,$host_cpu in
- pgcc*) # Portland Group C compiler
- whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag'
- ;;
- pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
- whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- tmp_addflag=' $pic_flag -Mnomain' ;;
- ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
- tmp_addflag=' -i_dynamic' ;;
- efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
- tmp_addflag=' -i_dynamic -nofor_main' ;;
- ifc* | ifort*) # Intel Fortran compiler
- tmp_addflag=' -nofor_main' ;;
- lf95*) # Lahey Fortran 8.1
- whole_archive_flag_spec=
- tmp_sharedflag='--shared' ;;
- xl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
- tmp_sharedflag='-qmkshrobj'
- tmp_addflag= ;;
- esac
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*) # Sun C 5.9
- whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- compiler_needs_object=yes
- tmp_sharedflag='-G' ;;
- *Sun\ F*) # Sun Fortran 8.3
- tmp_sharedflag='-G' ;;
- esac
- archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
-
- case $cc_basename in
- xlf*)
- # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
- whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
- hardcode_libdir_flag_spec=
- hardcode_libdir_flag_spec_ld='-rpath $libdir'
- archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
- fi
- ;;
- esac
- else
- ld_shlibs=no
- fi
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
- wlarc=
- else
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- fi
- ;;
-
- solaris*)
- if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
- case `$LD -v 2>&1` in
- *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
- ld_shlibs=no
- cat <<_LT_EOF 1>&2
-
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
-*** reliably create shared libraries on SCO systems. Therefore, libtool
-*** is disabling shared libraries support. We urge you to upgrade GNU
-*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-_LT_EOF
- ;;
- *)
- # For security reasons, it is highly recommended that you always
- # use absolute paths for naming shared libraries, and exclude the
- # DT_RUNPATH tag from executables and libraries. But doing so
- # requires that you compile everything twice, which is a pain.
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
- esac
- ;;
-
- sunos4*)
- archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- wlarc=
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- *)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- else
- ld_shlibs=no
- fi
- ;;
- esac
-
- if test "$ld_shlibs" = no; then
- runpath_var=
- hardcode_libdir_flag_spec=
- export_dynamic_flag_spec=
- whole_archive_flag_spec=
- fi
- else
- # PORTME fill in a description of your system's linker (not GNU ld)
- case $host_os in
- aix3*)
- allow_undefined_flag=unsupported
- always_export_symbols=yes
- archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
- # Note: this linker hardcodes the directories in LIBPATH if there
- # are no directories specified by -L.
- hardcode_minus_L=yes
- if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
- # Neither direct hardcoding nor static linking is supported with a
- # broken collect2.
- hardcode_direct=unsupported
- fi
- ;;
-
- aix[4-9]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
- for ld_flag in $LDFLAGS; do
- if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
- aix_use_runtimelinking=yes
- break
- fi
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- archive_cmds=''
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- hardcode_libdir_separator=':'
- link_all_deplibs=yes
- file_list_spec='${wl}-f,'
-
- if test "$GCC" = yes; then
- case $host_os in aix4.[012]|aix4.[012].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- hardcode_direct=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- hardcode_minus_L=yes
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_libdir_separator=
- fi
- ;;
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- link_all_deplibs=no
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- export_dynamic_flag_spec='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to export.
- always_export_symbols=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- allow_undefined_flag='-berok'
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
- allow_undefined_flag="-z nodefs"
- archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- no_undefined_flag=' ${wl}-bernotok'
- allow_undefined_flag=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- whole_archive_flag_spec='$convenience'
- archive_cmds_need_lc=yes
- # This is similar to how AIX traditionally builds its shared libraries.
- archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds=''
- ;;
- m68k)
- archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- ;;
- esac
- ;;
-
- bsdi[45]*)
- export_dynamic_flag_spec=-rdynamic
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # When not using gcc, we currently assume that we are using
- # Microsoft Visual C++.
- # hardcode_libdir_flag_spec is actually meaningless, as there is
- # no search path for DLLs.
- hardcode_libdir_flag_spec=' '
- allow_undefined_flag=unsupported
- # Tell ltmain to make .lib files, not .a files.
- libext=lib
- # Tell ltmain to make .dll files, not .so files.
- shrext_cmds=".dll"
- # FIXME: Setting linknames here is a bad hack.
- archive_cmds='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
- # The linker will automatically build a .lib file if we build a DLL.
- old_archive_from_new_cmds='true'
- # FIXME: Should let the user specify the lib program.
- old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
- fix_srcfile_path='`cygpath -w "$srcfile"`'
- enable_shared_with_static_runtimes=yes
- ;;
-
- darwin* | rhapsody*)
-
-
- archive_cmds_need_lc=no
- hardcode_direct=no
- hardcode_automatic=yes
- hardcode_shlibpath_var=unsupported
- whole_archive_flag_spec=''
- link_all_deplibs=yes
- allow_undefined_flag="$_lt_dar_allow_undefined"
- case $cc_basename in
- ifort*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test "$_lt_dar_can_shared" = "yes"; then
- output_verbose_link_cmd=echo
- archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
- module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
- archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
- module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
-
- else
- ld_shlibs=no
- fi
-
- ;;
-
- dgux*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- freebsd1*)
- ld_shlibs=no
- ;;
-
- # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
- # support. Future versions do this automatically, but an explicit c++rt0.o
- # does not break anything, and helps significantly (at the cost of a little
- # extra space).
- freebsd2.2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- # Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
- freebsd* | dragonfly*)
- archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- hpux9*)
- if test "$GCC" = yes; then
- archive_cmds='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- fi
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_direct=yes
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- export_dynamic_flag_spec='${wl}-E'
- ;;
-
- hpux10*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
- fi
- if test "$with_gnu_ld" = no; then
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_flag_spec_ld='+b $libdir'
- hardcode_libdir_separator=:
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- export_dynamic_flag_spec='${wl}-E'
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- fi
- ;;
-
- hpux11*)
- if test "$GCC" = yes -a "$with_gnu_ld" = no; then
- case $host_cpu in
- hppa*64*)
- archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- else
- case $host_cpu in
- hppa*64*)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- ia64*)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- fi
- if test "$with_gnu_ld" = no; then
- hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- hardcode_direct=no
- hardcode_shlibpath_var=no
- ;;
- *)
- hardcode_direct=yes
- hardcode_direct_absolute=yes
- export_dynamic_flag_spec='${wl}-E'
-
- # hardcode_minus_L: Not really in the search PATH,
- # but as the default location of the library.
- hardcode_minus_L=yes
- ;;
- esac
- fi
- ;;
-
- irix5* | irix6* | nonstopux*)
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- # Try to use the -exported_symbol ld option, if it does not
- # work, assume that -exports_file does not work either and
- # implicitly export all symbols.
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-int foo(void) {}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS="$save_LDFLAGS"
- else
- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- inherit_rpath=yes
- link_all_deplibs=yes
- ;;
-
- netbsd* | netbsdelf*-gnu)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
- else
- archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
- fi
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- newsos6)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- hardcode_shlibpath_var=no
- ;;
-
- *nto* | *qnx*)
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- hardcode_direct_absolute=yes
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- export_dynamic_flag_spec='${wl}-E'
- else
- case $host_os in
- openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-R$libdir'
- ;;
- *)
- archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
- hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
- ;;
- esac
- fi
- else
- ld_shlibs=no
- fi
- ;;
-
- os2*)
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- allow_undefined_flag=unsupported
- archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
- old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
- ;;
-
- osf3*)
- if test "$GCC" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator=:
- ;;
-
- osf4* | osf5*) # as osf3* with the addition of -msym flag
- if test "$GCC" = yes; then
- allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
- else
- allow_undefined_flag=' -expect_unresolved \*'
- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
- $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
-
- # Both c and cxx compiler support -rpath directly
- hardcode_libdir_flag_spec='-rpath $libdir'
- fi
- archive_cmds_need_lc='no'
- hardcode_libdir_separator=:
- ;;
-
- solaris*)
- no_undefined_flag=' -z defs'
- if test "$GCC" = yes; then
- wlarc='${wl}'
- archive_cmds='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- else
- case `$CC -V 2>&1` in
- *"Compilers 5.0"*)
- wlarc=''
- archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
- ;;
- *)
- wlarc='${wl}'
- archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
- ;;
- esac
- fi
- hardcode_libdir_flag_spec='-R$libdir'
- hardcode_shlibpath_var=no
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'. GCC discards it without `$wl',
- # but is careful enough not to reorder.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- if test "$GCC" = yes; then
- whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- else
- whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
- fi
- ;;
- esac
- link_all_deplibs=yes
- ;;
-
- sunos4*)
- if test "x$host_vendor" = xsequent; then
- # Use $CC to link under sequent, because it throws in some extra .o
- # files that make .init and .fini sections work.
- archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
- fi
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_direct=yes
- hardcode_minus_L=yes
- hardcode_shlibpath_var=no
- ;;
-
- sysv4)
- case $host_vendor in
- sni)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=yes # is this really true???
- ;;
- siemens)
- ## LD is ld it makes a PLAMLIB
- ## CC just makes a GrossModule.
- archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
- reload_cmds='$CC -r -o $output$reload_objs'
- hardcode_direct=no
- ;;
- motorola)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_direct=no #Motorola manual says yes, but my tests say they lie
- ;;
- esac
- runpath_var='LD_RUN_PATH'
- hardcode_shlibpath_var=no
- ;;
-
- sysv4.3*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- export_dynamic_flag_spec='-Bexport'
- ;;
-
- sysv4*MP*)
- if test -d /usr/nec; then
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_shlibpath_var=no
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ld_shlibs=yes
- fi
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
- no_undefined_flag='${wl}-z,text'
- archive_cmds_need_lc=no
- hardcode_shlibpath_var=no
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- no_undefined_flag='${wl}-z,text'
- allow_undefined_flag='${wl}-z,nodefs'
- archive_cmds_need_lc=no
- hardcode_shlibpath_var=no
- hardcode_libdir_flag_spec='${wl}-R,$libdir'
- hardcode_libdir_separator=':'
- link_all_deplibs=yes
- export_dynamic_flag_spec='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- if test "$GCC" = yes; then
- archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- else
- archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- fi
- ;;
-
- uts4*)
- archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_shlibpath_var=no
- ;;
-
- *)
- ld_shlibs=no
- ;;
- esac
-
- if test x$host_vendor = xsni; then
- case $host in
- sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
- export_dynamic_flag_spec='${wl}-Blargedynsym'
- ;;
- esac
- fi
- fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
-test "$ld_shlibs" = no && can_build_shared=no
-
-with_gnu_ld=$with_gnu_ld
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$archive_cmds_need_lc" in
-x|xyes)
- # Assume -lc should be added
- archive_cmds_need_lc=yes
-
- if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $archive_cmds in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
- $RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$lt_prog_compiler_wl
- pic_flag=$lt_prog_compiler_pic
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$allow_undefined_flag
- allow_undefined_flag=
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
- (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- then
- archive_cmds_need_lc=no
- else
- archive_cmds_need_lc=yes
- fi
- allow_undefined_flag=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5
-$as_echo "$archive_cmds_need_lc" >&6; }
- ;;
- esac
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
-
-if test "$GCC" = yes; then
- case $host_os in
- darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
- *) lt_awk_arg="/^libraries:/" ;;
- esac
- lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
- # if the path contains ";" then we assume it to be the separator
- # otherwise default to the standard path separator (i.e. ":") - it is
- # assumed that no part of a normal pathname contains ";" but that should
- # okay in the real world where ";" in dirpaths is itself problematic.
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
- else
- lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- # Ok, now we have the path, separated by spaces, we can step through it
- # and add multilib dir if necessary.
- lt_tmp_lt_search_path_spec=
- lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
- for lt_sys_path in $lt_search_path_spec; do
- if test -d "$lt_sys_path/$lt_multi_os_dir"; then
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
- else
- test -d "$lt_sys_path" && \
- lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
- fi
- done
- lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
-BEGIN {RS=" "; FS="/|\n";} {
- lt_foo="";
- lt_count=0;
- for (lt_i = NF; lt_i > 0; lt_i--) {
- if ($lt_i != "" && $lt_i != ".") {
- if ($lt_i == "..") {
- lt_count++;
- } else {
- if (lt_count == 0) {
- lt_foo="/" $lt_i lt_foo;
- } else {
- lt_count--;
- }
- }
- }
- }
- if (lt_foo != "") { lt_freq[lt_foo]++; }
- if (lt_freq[lt_foo] == 1) { print lt_foo; }
-}'`
- sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
-else
- sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
-
-aix[4-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[01] | aix4.[01].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}${shared_ext}$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='${libname}${shared_ext}'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[45]*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=".dll"
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
- # It is most probably a Windows format PATH printed by
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
- # path with ; separators, and with drive letters. We can handle the
- # drive letters (cygwin fileutils understands them), so leave them,
- # especially as we might pass files found there to a mingw objdump,
- # which wouldn't understand a cygwinified path. Ahh.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- ;;
- esac
- ;;
-
- *)
- library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
- soname_spec='${libname}${release}${major}$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-
- sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd* | dragonfly*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[123]*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[01]* | freebsdelf3.[01]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
- freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- fi
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-interix[3-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" = yes; then
- version_type=linux
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # Some binutils ld are patched to set DT_RUNPATH
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
- LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
- shlibpath_overrides_runpath=yes
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsdelf*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='NetBSD ld.elf_so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd*)
- version_type=sunos
- sys_lib_dlsearch_path_spec="/usr/lib"
- need_lib_prefix=no
- # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
- case $host_os in
- openbsd3.3 | openbsd3.3.*) need_version=yes ;;
- *) need_version=no ;;
- esac
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case $host_os in
- openbsd2.[89] | openbsd2.[89].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- ;;
-
-os2*)
- libname_spec='$name'
- shrext_cmds=".dll"
- need_lib_prefix=no
- library_names_spec='$libname${shared_ext} $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
- soname_spec='$libname${shared_ext}.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=freebsd-elf
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test "$with_gnu_ld" = yes; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
- sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
- sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
-hardcode_action=
-if test -n "$hardcode_libdir_flag_spec" ||
- test -n "$runpath_var" ||
- test "X$hardcode_automatic" = "Xyes" ; then
-
- # We can hardcode non-existent directories.
- if test "$hardcode_direct" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
- test "$hardcode_minus_L" != no; then
- # Linking always hardcodes the temporary library directory.
- hardcode_action=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- hardcode_action=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- hardcode_action=unsupported
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
-
-if test "$hardcode_action" = relink ||
- test "$inherit_rpath" = yes; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-
-
-
-
-
-
- if test "x$enable_dlopen" != xyes; then
- enable_dlopen=unknown
- enable_dlopen_self=unknown
- enable_dlopen_self_static=unknown
-else
- lt_cv_dlopen=no
- lt_cv_dlopen_libs=
-
- case $host_os in
- beos*)
- lt_cv_dlopen="load_add_on"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
- ;;
-
- mingw* | pw32* | cegcc*)
- lt_cv_dlopen="LoadLibrary"
- lt_cv_dlopen_libs=
- ;;
-
- cygwin*)
- lt_cv_dlopen="dlopen"
- lt_cv_dlopen_libs=
- ;;
-
- darwin*)
- # if libdl is installed we need to link against it
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dl_dlopen=yes
-else
- ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
-
- lt_cv_dlopen="dyld"
- lt_cv_dlopen_libs=
- lt_cv_dlopen_self=yes
-
-fi
-
- ;;
-
- *)
- ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = x""yes; then :
- lt_cv_dlopen="shl_load"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if test "${ac_cv_lib_dld_shl_load+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char shl_load ();
-int
-main ()
-{
-return shl_load ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dld_shl_load=yes
-else
- ac_cv_lib_dld_shl_load=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = x""yes; then :
- lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
-else
- ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if test "${ac_cv_lib_dl_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dl_dlopen=yes
-else
- ac_cv_lib_dl_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if test "${ac_cv_lib_svld_dlopen+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lsvld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen ();
-int
-main ()
-{
-return dlopen ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_svld_dlopen=yes
-else
- ac_cv_lib_svld_dlopen=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = x""yes; then :
- lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if test "${ac_cv_lib_dld_dld_link+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldld $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dld_link ();
-int
-main ()
-{
-return dld_link ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_dld_dld_link=yes
-else
- ac_cv_lib_dld_dld_link=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = x""yes; then :
- lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
-
-fi
-
- ;;
- esac
-
- if test "x$lt_cv_dlopen" != xno; then
- enable_dlopen=yes
- else
- enable_dlopen=no
- fi
-
- case $lt_cv_dlopen in
- dlopen)
- save_CPPFLAGS="$CPPFLAGS"
- test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-
- save_LDFLAGS="$LDFLAGS"
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-
- save_LIBS="$LIBS"
- LIBS="$lt_cv_dlopen_libs $LIBS"
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if test "${lt_cv_dlopen_self+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- lt_cv_dlopen_self=cross
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-#line 11637 "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}
-_LT_EOF
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) >&5 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
- x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
- x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
- esac
- else :
- # compilation failed
- lt_cv_dlopen_self=no
- fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
-
- if test "x$lt_cv_dlopen_self" = xyes; then
- wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if test "${lt_cv_dlopen_self_static+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "$cross_compiling" = yes; then :
- lt_cv_dlopen_self_static=cross
-else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
-#line 11733 "configure"
-#include "confdefs.h"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LT_DLGLOBAL RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-# define LT_DLGLOBAL DL_GLOBAL
-# else
-# define LT_DLGLOBAL 0
-# endif
-#endif
-
-/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
- find out it does not work in some platform. */
-#ifndef LT_DLLAZY_OR_NOW
-# ifdef RTLD_LAZY
-# define LT_DLLAZY_OR_NOW RTLD_LAZY
-# else
-# ifdef DL_LAZY
-# define LT_DLLAZY_OR_NOW DL_LAZY
-# else
-# ifdef RTLD_NOW
-# define LT_DLLAZY_OR_NOW RTLD_NOW
-# else
-# ifdef DL_NOW
-# define LT_DLLAZY_OR_NOW DL_NOW
-# else
-# define LT_DLLAZY_OR_NOW 0
-# endif
-# endif
-# endif
-# endif
-#endif
-
-void fnord() { int i=42;}
-int main ()
-{
- void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
- int status = $lt_dlunknown;
-
- if (self)
- {
- if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
- else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
- /* dlclose (self); */
- }
- else
- puts (dlerror ());
-
- return status;
-}
-_LT_EOF
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
- (./conftest; exit; ) >&5 2>/dev/null
- lt_status=$?
- case x$lt_status in
- x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
- x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
- x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
- esac
- else :
- # compilation failed
- lt_cv_dlopen_self_static=no
- fi
-fi
-rm -fr conftest*
-
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
- fi
-
- CPPFLAGS="$save_CPPFLAGS"
- LDFLAGS="$save_LDFLAGS"
- LIBS="$save_LIBS"
- ;;
- esac
-
- case $lt_cv_dlopen_self in
- yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
- *) enable_dlopen_self=unknown ;;
- esac
-
- case $lt_cv_dlopen_self_static in
- yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
- *) enable_dlopen_self_static=unknown ;;
- esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-striplib=
-old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
- test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
- test -z "$striplib" && striplib="$STRIP --strip-unneeded"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-# FIXME - insert some real tests, host_os isn't really good enough
- case $host_os in
- darwin*)
- if test -n "$STRIP" ; then
- striplib="$STRIP -x"
- old_striplib="$STRIP -S"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
- ;;
- *)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- ;;
- esac
-fi
-
-
-
-
-
-
-
-
-
-
-
-
- # Report which library types will actually be built
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
- test "$can_build_shared" = "no" && enable_shared=no
-
- # On AIX, shared libraries and static libraries use the same namespace, and
- # are all built from PIC.
- case $host_os in
- aix3*)
- test "$enable_shared" = yes && enable_static=no
- if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
- postinstall_cmds='$RANLIB $lib'
- fi
- ;;
-
- aix[4-9]*)
- if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
- test "$enable_shared" = yes && enable_static=no
- fi
- ;;
- esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
- # Make sure either enable_shared or enable_static is yes.
- test "$enable_shared" = yes || enable_static=yes
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
-
-
-
-
-fi
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-CC="$lt_save_CC"
-
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-archive_cmds_need_lc_CXX=no
-allow_undefined_flag_CXX=
-always_export_symbols_CXX=no
-archive_expsym_cmds_CXX=
-compiler_needs_object_CXX=no
-export_dynamic_flag_spec_CXX=
-hardcode_direct_CXX=no
-hardcode_direct_absolute_CXX=no
-hardcode_libdir_flag_spec_CXX=
-hardcode_libdir_flag_spec_ld_CXX=
-hardcode_libdir_separator_CXX=
-hardcode_minus_L_CXX=no
-hardcode_shlibpath_var_CXX=unsupported
-hardcode_automatic_CXX=no
-inherit_rpath_CXX=no
-module_cmds_CXX=
-module_expsym_cmds_CXX=
-link_all_deplibs_CXX=unknown
-old_archive_cmds_CXX=$old_archive_cmds
-no_undefined_flag_CXX=
-whole_archive_flag_spec_CXX=
-enable_shared_with_static_runtimes_CXX=no
-
-# Source file extension for C++ test sources.
-ac_ext=cpp
-
-# Object file extension for compiled C++ test sources.
-objext=o
-objext_CXX=$objext
-
-# No sense in running all these tests if we already determined that
-# the CXX compiler isn't working. Some variables (like enable_shared)
-# are currently assumed to apply to all compilers on this platform,
-# and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
- # Code to be used in simple compile tests
- lt_simple_compile_test_code="int some_variable = 0;"
-
- # Code to be used in simple link tests
- lt_simple_link_test_code='int main(int, char *[]) { return(0); }'
-
- # ltmain only uses $CC for tagged configurations so make sure $CC is set.
-
-
-
-
-
-
-# If no C compiler was specified, use CC.
-LTCC=${LTCC-"$CC"}
-
-# If no C compiler flags were specified, use CFLAGS.
-LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
-
-# Allow CC to be a program name with arguments.
-compiler=$CC
-
-
- # save warnings/boilerplate of simple test code
- ac_outfile=conftest.$ac_objext
-echo "$lt_simple_compile_test_code" >conftest.$ac_ext
-eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_compiler_boilerplate=`cat conftest.err`
-$RM conftest*
-
- ac_outfile=conftest.$ac_objext
-echo "$lt_simple_link_test_code" >conftest.$ac_ext
-eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
-_lt_linker_boilerplate=`cat conftest.err`
-$RM -r conftest*
-
-
- # Allow CC to be a program name with arguments.
- lt_save_CC=$CC
- lt_save_LD=$LD
- lt_save_GCC=$GCC
- GCC=$GXX
- lt_save_with_gnu_ld=$with_gnu_ld
- lt_save_path_LD=$lt_cv_path_LD
- if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
- lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
- else
- $as_unset lt_cv_prog_gnu_ld
- fi
- if test -n "${lt_cv_path_LDCXX+set}"; then
- lt_cv_path_LD=$lt_cv_path_LDCXX
- else
- $as_unset lt_cv_path_LD
- fi
- test -z "${LDCXX+set}" || LD=$LDCXX
- CC=${CXX-"c++"}
- compiler=$CC
- compiler_CXX=$CC
- for cc_temp in $compiler""; do
- case $cc_temp in
- compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
- distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
- \-*) ;;
- *) break;;
- esac
-done
-cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
-
-
- if test -n "$compiler"; then
- # We don't want -fno-exception when compiling C++ code, so set the
- # no_builtin_flag separately
- if test "$GXX" = yes; then
- lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'
- else
- lt_prog_compiler_no_builtin_flag_CXX=
- fi
-
- if test "$GXX" = yes; then
- # Set up default GNU C++ configuration
-
-
-
-# Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
- withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
- with_gnu_ld=no
-fi
-
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [\\/]* | ?:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
- # Canonicalize the pathname of ld
- ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
- while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if test "${lt_cv_path_LD+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$LD"; then
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- IFS="$lt_save_ifs"
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some variants of GNU ld only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$lt_save_ifs"
-else
- lt_cv_path_LD="$LD" # Let the user override the test with a path.
-fi
-fi
-
-LD="$lt_cv_path_LD"
-if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if test "${lt_cv_prog_gnu_ld+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- lt_cv_prog_gnu_ld=yes
- ;;
-*)
- lt_cv_prog_gnu_ld=no
- ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$lt_cv_prog_gnu_ld
-
-
-
-
-
-
-
- # Check if GNU C++ uses GNU ld as the underlying linker, since the
- # archiving commands below assume that GNU ld is being used.
- if test "$with_gnu_ld" = yes; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
-
- # If archive_cmds runs LD, not CC, wlarc should be empty
- # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
- # investigate it a little bit more. (MM)
- wlarc='${wl}'
-
- # ancient GNU ld didn't support --whole-archive et. al.
- if eval "`$CC -print-prog-name=ld` --help 2>&1" |
- $GREP 'no-whole-archive' > /dev/null; then
- whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- else
- whole_archive_flag_spec_CXX=
- fi
- else
- with_gnu_ld=no
- wlarc=
-
- # A generic and very simple default shared library creation
- # command for GNU C++ for the case where it uses the native
- # linker, instead of GNU ld. If possible, this setting should
- # overridden to take advantage of the native linker features on
- # the platform it is being used on.
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- fi
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- GXX=no
- with_gnu_ld=no
- wlarc=
- fi
-
- # PORTME: fill in a description of your system's C++ link characteristics
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
- ld_shlibs_CXX=yes
- case $host_os in
- aix3*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aix[4-9]*)
- if test "$host_cpu" = ia64; then
- # On IA64, the linker does run time linking by default, so we don't
- # have to do anything special.
- aix_use_runtimelinking=no
- exp_sym_flag='-Bexport'
- no_entry_flag=""
- else
- aix_use_runtimelinking=no
-
- # Test if we are trying to use run time linking or normal
- # AIX style linking. If -brtl is somewhere in LDFLAGS, we
- # need to do runtime linking.
- case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
- for ld_flag in $LDFLAGS; do
- case $ld_flag in
- *-brtl*)
- aix_use_runtimelinking=yes
- break
- ;;
- esac
- done
- ;;
- esac
-
- exp_sym_flag='-bexport'
- no_entry_flag='-bnoentry'
- fi
-
- # When large executables or shared objects are built, AIX ld can
- # have problems creating the table of contents. If linking a library
- # or program results in "error TOC overflow" add -mminimal-toc to
- # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
- # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-
- archive_cmds_CXX=''
- hardcode_direct_CXX=yes
- hardcode_direct_absolute_CXX=yes
- hardcode_libdir_separator_CXX=':'
- link_all_deplibs_CXX=yes
- file_list_spec_CXX='${wl}-f,'
-
- if test "$GXX" = yes; then
- case $host_os in aix4.[012]|aix4.[012].*)
- # We only want to do this on AIX 4.2 and lower, the check
- # below for broken collect2 doesn't work under 4.3+
- collect2name=`${CC} -print-prog-name=collect2`
- if test -f "$collect2name" &&
- strings "$collect2name" | $GREP resolve_lib_name >/dev/null
- then
- # We have reworked collect2
- :
- else
- # We have old collect2
- hardcode_direct_CXX=unsupported
- # It fails to find uninstalled libraries when the uninstalled
- # path is not listed in the libpath. Setting hardcode_minus_L
- # to unsupported forces relinking
- hardcode_minus_L_CXX=yes
- hardcode_libdir_flag_spec_CXX='-L$libdir'
- hardcode_libdir_separator_CXX=
- fi
- esac
- shared_flag='-shared'
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag="$shared_flag "'${wl}-G'
- fi
- else
- # not using gcc
- if test "$host_cpu" = ia64; then
- # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
- # chokes on -Wl,-G. The following line is correct:
- shared_flag='-G'
- else
- if test "$aix_use_runtimelinking" = yes; then
- shared_flag='${wl}-G'
- else
- shared_flag='${wl}-bM:SRE'
- fi
- fi
- fi
-
- export_dynamic_flag_spec_CXX='${wl}-bexpall'
- # It seems that -bexpall does not export symbols beginning with
- # underscore (_), so it is better to generate a list of symbols to
- # export.
- always_export_symbols_CXX=yes
- if test "$aix_use_runtimelinking" = yes; then
- # Warning - without using the other runtime loading flags (-brtl),
- # -berok will link without error, but may produce a broken library.
- allow_undefined_flag_CXX='-berok'
- # Determine the default libpath from the value encoded in an empty
- # executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
-
- archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
- else
- if test "$host_cpu" = ia64; then
- hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib'
- allow_undefined_flag_CXX="-z nodefs"
- archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
- else
- # Determine the default libpath from the value encoded in an
- # empty executable.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
- s/^0 *\(.*\)$/\1/
- p
- }
- }'
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-# Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then
- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
- # Warning - without using the other run time loading flags,
- # -berok will link without error, but may produce a broken library.
- no_undefined_flag_CXX=' ${wl}-bernotok'
- allow_undefined_flag_CXX=' ${wl}-berok'
- # Exported symbols can be pulled into shared objects from archives
- whole_archive_flag_spec_CXX='$convenience'
- archive_cmds_need_lc_CXX=yes
- # This is similar to how AIX traditionally builds its shared
- # libraries.
- archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
- fi
- fi
- ;;
-
- beos*)
- if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
- allow_undefined_flag_CXX=unsupported
- # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
- # support --undefined. This deserves some investigation. FIXME
- archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- else
- ld_shlibs_CXX=no
- fi
- ;;
-
- chorus*)
- case $cc_basename in
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- cygwin* | mingw* | pw32* | cegcc*)
- # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,
- # as there is no search path for DLLs.
- hardcode_libdir_flag_spec_CXX='-L$libdir'
- allow_undefined_flag_CXX=unsupported
- always_export_symbols_CXX=no
- enable_shared_with_static_runtimes_CXX=yes
-
- if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- # If the export-symbols file already is a .def file (1st line
- # is EXPORTS), use it as is; otherwise, prepend...
- archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
- cp $export_symbols $output_objdir/$soname.def;
- else
- echo EXPORTS > $output_objdir/$soname.def;
- cat $export_symbols >> $output_objdir/$soname.def;
- fi~
- $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
- else
- ld_shlibs_CXX=no
- fi
- ;;
- darwin* | rhapsody*)
-
-
- archive_cmds_need_lc_CXX=no
- hardcode_direct_CXX=no
- hardcode_automatic_CXX=yes
- hardcode_shlibpath_var_CXX=unsupported
- whole_archive_flag_spec_CXX=''
- link_all_deplibs_CXX=yes
- allow_undefined_flag_CXX="$_lt_dar_allow_undefined"
- case $cc_basename in
- ifort*) _lt_dar_can_shared=yes ;;
- *) _lt_dar_can_shared=$GCC ;;
- esac
- if test "$_lt_dar_can_shared" = "yes"; then
- output_verbose_link_cmd=echo
- archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
- module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
- archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
- module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
- if test "$lt_cv_apple_cc_single_mod" != "yes"; then
- archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
- archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
- fi
-
- else
- ld_shlibs_CXX=no
- fi
-
- ;;
-
- dgux*)
- case $cc_basename in
- ec++*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- freebsd[12]*)
- # C++ shared libraries reported to be fairly broken before
- # switch to ELF
- ld_shlibs_CXX=no
- ;;
-
- freebsd-elf*)
- archive_cmds_need_lc_CXX=no
- ;;
-
- freebsd* | dragonfly*)
- # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
- # conventions
- ld_shlibs_CXX=yes
- ;;
-
- gnu*)
- ;;
-
- hpux9*)
- hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
- export_dynamic_flag_spec_CXX='${wl}-E'
- hardcode_direct_CXX=yes
- hardcode_minus_L_CXX=yes # Not in the search PATH,
- # but as the default
- # location of the library.
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aCC*)
- archive_cmds_CXX='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- hpux10*|hpux11*)
- if test $with_gnu_ld = no; then
- hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
-
- case $host_cpu in
- hppa*64*|ia64*)
- ;;
- *)
- export_dynamic_flag_spec_CXX='${wl}-E'
- ;;
- esac
- fi
- case $host_cpu in
- hppa*64*|ia64*)
- hardcode_direct_CXX=no
- hardcode_shlibpath_var_CXX=no
- ;;
- *)
- hardcode_direct_CXX=yes
- hardcode_direct_absolute_CXX=yes
- hardcode_minus_L_CXX=yes # Not in the search PATH,
- # but as the default
- # location of the library.
- ;;
- esac
-
- case $cc_basename in
- CC*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- aCC*)
- case $host_cpu in
- hppa*64*)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes; then
- if test $with_gnu_ld = no; then
- case $host_cpu in
- hppa*64*)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- ia64*)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- ;;
- esac
- fi
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- interix[3-9]*)
- hardcode_direct_CXX=no
- hardcode_shlibpath_var_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}-E'
- # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
- # Instead, shared libraries are loaded at an image base (0x10000000 by
- # default) and relocated if they conflict, which is a slow very memory
- # consuming and fragmenting process. To avoid this, we pick a random,
- # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
- # time. Moving up from 0x10000000 also allows more sbrk(2) space.
- archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- archive_expsym_cmds_CXX='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
- ;;
- irix5* | irix6*)
- case $cc_basename in
- CC*)
- # SGI C++
- archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
-
- # Archives containing C++ object files must be created using
- # "CC -ar", where "CC" is the IRIX C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'
- ;;
- *)
- if test "$GXX" = yes; then
- if test "$with_gnu_ld" = no; then
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- else
- archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
- fi
- fi
- link_all_deplibs_CXX=yes
- ;;
- esac
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
- inherit_rpath_CXX=yes
- ;;
-
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
- archive_expsym_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
-
- # Archives containing C++ object files must be created using
- # "CC -Bstatic", where "CC" is the KAI C++ compiler.
- old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'
- ;;
- icpc* | ecpc* )
- # Intel C++
- with_gnu_ld=yes
- # version 8.0 and above of icpc choke on multiply defined symbols
- # if we add $predep_objects and $postdep_objects, however 7.1 and
- # earlier do not add the objects themselves.
- case `$CC -V 2>&1` in
- *"Version 7."*)
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- *) # Version 8.0 or newer
- tmp_idyn=
- case $host_cpu in
- ia64*) tmp_idyn=' -i_dynamic';;
- esac
- archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- ;;
- esac
- archive_cmds_need_lc_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- case `$CC -V` in
- *pgCC\ [1-5]* | *pgcpp\ [1-5]*)
- prelink_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
- compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
- old_archive_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
- $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
- $RANLIB $oldlib'
- archive_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- archive_expsym_cmds_CXX='tpldir=Template.dir~
- rm -rf $tpldir~
- $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
- $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- *) # Version 6 will use weak symbols
- archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
- ;;
- esac
-
- hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- whole_archive_flag_spec_CXX='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- ;;
- cxx*)
- # Compaq C++
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
- archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
-
- runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec_CXX='-rpath $libdir'
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- xl*)
- # IBM XL 8.0 on PPC, with GNU ld
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
- archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
- if test "x$supports_anon_versioning" = xyes; then
- archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~
- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
- echo "local: *; };" >> $output_objdir/$libname.ver~
- $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
- fi
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- no_undefined_flag_CXX=' -zdefs'
- archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- whole_archive_flag_spec_CXX='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
- compiler_needs_object_CXX=yes
-
- # Not sure whether something based on
- # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
- # would be better.
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
- ;;
- esac
- ;;
- esac
- ;;
-
- lynxos*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- m88k*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- mvs*)
- case $cc_basename in
- cxx*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- netbsd*)
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
- wlarc=
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- hardcode_direct_CXX=yes
- hardcode_shlibpath_var_CXX=no
- fi
- # Workaround some broken pre-1.5 toolchains
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
- ;;
-
- *nto* | *qnx*)
- ld_shlibs_CXX=yes
- ;;
-
- openbsd2*)
- # C++ shared libraries are fairly broken
- ld_shlibs_CXX=no
- ;;
-
- openbsd*)
- if test -f /usr/libexec/ld.so; then
- hardcode_direct_CXX=yes
- hardcode_shlibpath_var_CXX=no
- hardcode_direct_absolute_CXX=yes
- archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
- export_dynamic_flag_spec_CXX='${wl}-E'
- whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
- fi
- output_verbose_link_cmd=echo
- else
- ld_shlibs_CXX=no
- fi
- ;;
-
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- # Kuck and Associates, Inc. (KAI) C++ Compiler
-
- # KCC will only create a shared library if the output file
- # ends with ".so" (or ".sl" for HP-UX), so rename the library
- # to its proper name (with version) after linking.
- archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
- hardcode_libdir_separator_CXX=:
-
- # Archives containing C++ object files must be created using
- # the KAI C++ compiler.
- case $host in
- osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;
- *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;
- esac
- ;;
- RCC*)
- # Rational C++ 2.4.1
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- cxx*)
- case $host in
- osf3*)
- allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*'
- archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- ;;
- *)
- allow_undefined_flag_CXX=' -expect_unresolved \*'
- archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
- archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
- echo "-hidden">> $lib.exp~
- $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
- $RM $lib.exp'
- hardcode_libdir_flag_spec_CXX='-rpath $libdir'
- ;;
- esac
-
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- #
- # There doesn't appear to be a way to prevent this compiler from
- # explicitly linking system object files so we need to strip them
- # from the output so that they don't get included in the library
- # dependencies.
- output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
- ;;
- *)
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*'
- case $host in
- osf3*)
- archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- *)
- archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
- ;;
- esac
-
- hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
- hardcode_libdir_separator_CXX=:
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
-
- else
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- fi
- ;;
- esac
- ;;
-
- psos*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- lcc*)
- # Lucid
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- archive_cmds_need_lc_CXX=yes
- no_undefined_flag_CXX=' -zdefs'
- archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- hardcode_libdir_flag_spec_CXX='-R$libdir'
- hardcode_shlibpath_var_CXX=no
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- # The compiler driver will combine and reorder linker options,
- # but understands `-z linker_flag'.
- # Supported since Solaris 2.6 (maybe 2.5.1?)
- whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'
- ;;
- esac
- link_all_deplibs_CXX=yes
-
- output_verbose_link_cmd='echo'
-
- # Archives containing C++ object files must be created using
- # "CC -xar", where "CC" is the Sun C++ compiler. This is
- # necessary to make sure instantiated templates are included
- # in the archive.
- old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
- ;;
- gcx*)
- # Green Hills C++ Compiler
- archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
-
- # The C++ compiler must be used to create the archive.
- old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
- ;;
- *)
- # GNU C++ compiler with Solaris linker
- if test "$GXX" = yes && test "$with_gnu_ld" = no; then
- no_undefined_flag_CXX=' ${wl}-z ${wl}defs'
- if $CC --version | $GREP -v '^2\.7' > /dev/null; then
- archive_cmds_CXX='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- else
- # g++ 2.7 appears to require `-G' NOT `-shared' on this
- # platform.
- archive_cmds_CXX='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
- archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
- $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
-
- # Commands to make compiler produce verbose output that lists
- # what "hidden" libraries, object files and flags are used when
- # linking a shared library.
- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
- fi
-
- hardcode_libdir_flag_spec_CXX='${wl}-R $wl$libdir'
- case $host_os in
- solaris2.[0-5] | solaris2.[0-5].*) ;;
- *)
- whole_archive_flag_spec_CXX='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
- ;;
- esac
- fi
- ;;
- esac
- ;;
-
- sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
- no_undefined_flag_CXX='${wl}-z,text'
- archive_cmds_need_lc_CXX=no
- hardcode_shlibpath_var_CXX=no
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- sysv5* | sco3.2v5* | sco5v6*)
- # Note: We can NOT use -z defs as we might desire, because we do not
- # link with -lc, and that would cause any symbols used from libc to
- # always be unresolved, which means just about no library would
- # ever link correctly. If we're not using GNU ld we use -z text
- # though, which does catch some bad symbols but isn't as heavy-handed
- # as -z defs.
- no_undefined_flag_CXX='${wl}-z,text'
- allow_undefined_flag_CXX='${wl}-z,nodefs'
- archive_cmds_need_lc_CXX=no
- hardcode_shlibpath_var_CXX=no
- hardcode_libdir_flag_spec_CXX='${wl}-R,$libdir'
- hardcode_libdir_separator_CXX=':'
- link_all_deplibs_CXX=yes
- export_dynamic_flag_spec_CXX='${wl}-Bexport'
- runpath_var='LD_RUN_PATH'
-
- case $cc_basename in
- CC*)
- archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- *)
- archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- archive_expsym_cmds_CXX='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
- ;;
- esac
- ;;
-
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
- ;;
-
- vxworks*)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
-
- *)
- # FIXME: insert proper C++ library support
- ld_shlibs_CXX=no
- ;;
- esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
-$as_echo "$ld_shlibs_CXX" >&6; }
- test "$ld_shlibs_CXX" = no && can_build_shared=no
-
- GCC_CXX="$GXX"
- LD_CXX="$LD"
-
- ## CAVEAT EMPTOR:
- ## There is no encapsulation within the following macros, do not change
- ## the running order or otherwise move them around unless you know exactly
- ## what you are doing...
- # Dependencies to place before and after the object being linked:
-predep_objects_CXX=
-postdep_objects_CXX=
-predeps_CXX=
-postdeps_CXX=
-compiler_lib_search_path_CXX=
-
-cat > conftest.$ac_ext <<_LT_EOF
-class Foo
-{
-public:
- Foo (void) { a = 0; }
-private:
- int a;
-};
-_LT_EOF
-
-if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- # Parse the compiler output and extract the necessary
- # objects, libraries and library flags.
-
- # Sentinel used to keep track of whether or not we are before
- # the conftest object file.
- pre_test_object_deps_done=no
-
- for p in `eval "$output_verbose_link_cmd"`; do
- case $p in
-
- -L* | -R* | -l*)
- # Some compilers place space between "-{L,R}" and the path.
- # Remove the space.
- if test $p = "-L" ||
- test $p = "-R"; then
- prev=$p
- continue
- else
- prev=
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- case $p in
- -L* | -R*)
- # Internal compiler library paths should come after those
- # provided the user. The postdeps already come after the
- # user supplied libs so there is no need to process them.
- if test -z "$compiler_lib_search_path_CXX"; then
- compiler_lib_search_path_CXX="${prev}${p}"
- else
- compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} ${prev}${p}"
- fi
- ;;
- # The "-l" case would never come before the object being
- # linked, so don't bother handling this case.
- esac
- else
- if test -z "$postdeps_CXX"; then
- postdeps_CXX="${prev}${p}"
- else
- postdeps_CXX="${postdeps_CXX} ${prev}${p}"
- fi
- fi
- ;;
-
- *.$objext)
- # This assumes that the test object file only shows up
- # once in the compiler output.
- if test "$p" = "conftest.$objext"; then
- pre_test_object_deps_done=yes
- continue
- fi
-
- if test "$pre_test_object_deps_done" = no; then
- if test -z "$predep_objects_CXX"; then
- predep_objects_CXX="$p"
- else
- predep_objects_CXX="$predep_objects_CXX $p"
- fi
- else
- if test -z "$postdep_objects_CXX"; then
- postdep_objects_CXX="$p"
- else
- postdep_objects_CXX="$postdep_objects_CXX $p"
- fi
- fi
- ;;
-
- *) ;; # Ignore the rest.
-
- esac
- done
-
- # Clean up.
- rm -f a.out a.exe
-else
- echo "libtool.m4: error: problem compiling CXX test program"
-fi
-
-$RM -f confest.$objext
-
-# PORTME: override above test on systems where it is broken
-case $host_os in
-interix[3-9]*)
- # Interix 3.5 installs completely hosed .la files for C++, so rather than
- # hack all around it, let's just trust "g++" to DTRT.
- predep_objects_CXX=
- postdep_objects_CXX=
- postdeps_CXX=
- ;;
-
-linux*)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
-
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- if test "$solaris_use_stlport4" != yes; then
- postdeps_CXX='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-
-solaris*)
- case $cc_basename in
- CC*)
- # The more standards-conforming stlport4 library is
- # incompatible with the Cstd library. Avoid specifying
- # it if it's in CXXFLAGS. Ignore libCrun as
- # -library=stlport4 depends on it.
- case " $CXX $CXXFLAGS " in
- *" -library=stlport4 "*)
- solaris_use_stlport4=yes
- ;;
- esac
-
- # Adding this requires a known-good setup of shared libraries for
- # Sun compiler versions before 5.6, else PIC objects from an old
- # archive will be linked into the output, leading to subtle bugs.
- if test "$solaris_use_stlport4" != yes; then
- postdeps_CXX='-library=Cstd -library=Crun'
- fi
- ;;
- esac
- ;;
-esac
-
-
-case " $postdeps_CXX " in
-*" -lc "*) archive_cmds_need_lc_CXX=no ;;
-esac
- compiler_lib_search_dirs_CXX=
-if test -n "${compiler_lib_search_path_CXX}"; then
- compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- lt_prog_compiler_wl_CXX=
-lt_prog_compiler_pic_CXX=
-lt_prog_compiler_static_CXX=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-
- # C++ specific cases for pic, static, wl, etc.
- if test "$GXX" = yes; then
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='-static'
-
- case $host_os in
- aix*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static_CXX='-Bstatic'
- fi
- ;;
-
- amigaos*)
- case $host_cpu in
- powerpc)
- # see comment about AmigaOS4 .so support
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- m68k)
- # FIXME: we need at least 68020 code to build shared libraries, but
- # adding the `-m68020' flag to GCC prevents building anything better,
- # like `-m68040'.
- lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'
- ;;
- esac
- ;;
-
- beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
- # PIC is the default for these OSes.
- ;;
- mingw* | cygwin* | os2* | pw32* | cegcc*)
- # This hack is so that the source file can tell whether it is being
- # built for inclusion in a dll (and should export symbols for example).
- # Although the cygwin gcc ignores -fPIC, still need this for old-style
- # (--disable-auto-import) libraries
- lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
- ;;
- darwin* | rhapsody*)
- # PIC is the default on this platform
- # Common symbols not allowed in MH_DYLIB files
- lt_prog_compiler_pic_CXX='-fno-common'
- ;;
- *djgpp*)
- # DJGPP does not support shared libraries at all
- lt_prog_compiler_pic_CXX=
- ;;
- interix[3-9]*)
- # Interix 3.x gcc -fpic/-fPIC options generate broken code.
- # Instead, we relocate shared libraries at runtime.
- ;;
- sysv4*MP*)
- if test -d /usr/nec; then
- lt_prog_compiler_pic_CXX=-Kconform_pic
- fi
- ;;
- hpux*)
- # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
- # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
- # sets the default TLS model and affects inlining.
- case $host_cpu in
- hppa*64*)
- ;;
- *)
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- esac
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic_CXX='-fPIC -shared'
- ;;
- *)
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- esac
- else
- case $host_os in
- aix[4-9]*)
- # All AIX code is PIC.
- if test "$host_cpu" = ia64; then
- # AIX 5 now supports IA64 processor
- lt_prog_compiler_static_CXX='-Bstatic'
- else
- lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'
- fi
- ;;
- chorus*)
- case $cc_basename in
- cxch68*)
- # Green Hills C++ Compiler
- # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
- ;;
- esac
- ;;
- dgux*)
- case $cc_basename in
- ec++*)
- lt_prog_compiler_pic_CXX='-KPIC'
- ;;
- ghcx*)
- # Green Hills C++ Compiler
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- freebsd* | dragonfly*)
- # FreeBSD uses GNU C++
- ;;
- hpux9* | hpux10* | hpux11*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='${wl}-a ${wl}archive'
- if test "$host_cpu" != ia64; then
- lt_prog_compiler_pic_CXX='+Z'
- fi
- ;;
- aCC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='${wl}-a ${wl}archive'
- case $host_cpu in
- hppa*64*|ia64*)
- # +Z the default
- ;;
- *)
- lt_prog_compiler_pic_CXX='+Z'
- ;;
- esac
- ;;
- *)
- ;;
- esac
- ;;
- interix*)
- # This is c89, which is MS Visual C++ (no shared libs)
- # Anyone wants to do a port?
- ;;
- irix5* | irix6* | nonstopux*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_static_CXX='-non_shared'
- # CC pic flag -KPIC is the default.
- ;;
- *)
- ;;
- esac
- ;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
- case $cc_basename in
- KCC*)
- # KAI C++ Compiler
- lt_prog_compiler_wl_CXX='--backend -Wl,'
- lt_prog_compiler_pic_CXX='-fPIC'
- ;;
- ecpc* )
- # old Intel C++ for x86_64 which still supported -KPIC.
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-static'
- ;;
- icpc* )
- # Intel C++, used to be incompatible with GCC.
- # ICC 10 doesn't accept -KPIC any more.
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-fPIC'
- lt_prog_compiler_static_CXX='-static'
- ;;
- pgCC* | pgcpp*)
- # Portland Group C++ compiler
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-fpic'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- cxx*)
- # Compaq C++
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_static_CXX='-non_shared'
- ;;
- xlc* | xlC*)
- # IBM XL 8.0 on PPC
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-qpic'
- lt_prog_compiler_static_CXX='-qstaticlink'
- ;;
- *)
- case `$CC -V 2>&1 | sed 5q` in
- *Sun\ C*)
- # Sun C++ 5.9
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- lt_prog_compiler_wl_CXX='-Qoption ld '
- ;;
- esac
- ;;
- esac
- ;;
- lynxos*)
- ;;
- m88k*)
- ;;
- mvs*)
- case $cc_basename in
- cxx*)
- lt_prog_compiler_pic_CXX='-W c,exportall'
- ;;
- *)
- ;;
- esac
- ;;
- netbsd* | netbsdelf*-gnu)
- ;;
- *qnx* | *nto*)
- # QNX uses GNU C++, but need to define -shared option too, otherwise
- # it will coredump.
- lt_prog_compiler_pic_CXX='-fPIC -shared'
- ;;
- osf3* | osf4* | osf5*)
- case $cc_basename in
- KCC*)
- lt_prog_compiler_wl_CXX='--backend -Wl,'
- ;;
- RCC*)
- # Rational C++ 2.4.1
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- cxx*)
- # Digital/Compaq C++
- lt_prog_compiler_wl_CXX='-Wl,'
- # Make sure the PIC flag is empty. It appears that all Alpha
- # Linux and Compaq Tru64 Unix objects are PIC.
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_static_CXX='-non_shared'
- ;;
- *)
- ;;
- esac
- ;;
- psos*)
- ;;
- solaris*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.2, 5.x and Centerline C++
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- lt_prog_compiler_wl_CXX='-Qoption ld '
- ;;
- gcx*)
- # Green Hills C++ Compiler
- lt_prog_compiler_pic_CXX='-PIC'
- ;;
- *)
- ;;
- esac
- ;;
- sunos4*)
- case $cc_basename in
- CC*)
- # Sun C++ 4.x
- lt_prog_compiler_pic_CXX='-pic'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- lcc*)
- # Lucid
- lt_prog_compiler_pic_CXX='-pic'
- ;;
- *)
- ;;
- esac
- ;;
- sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
- case $cc_basename in
- CC*)
- lt_prog_compiler_wl_CXX='-Wl,'
- lt_prog_compiler_pic_CXX='-KPIC'
- lt_prog_compiler_static_CXX='-Bstatic'
- ;;
- esac
- ;;
- tandem*)
- case $cc_basename in
- NCC*)
- # NonStop-UX NCC 3.20
- lt_prog_compiler_pic_CXX='-KPIC'
- ;;
- *)
- ;;
- esac
- ;;
- vxworks*)
- ;;
- *)
- lt_prog_compiler_can_build_shared_CXX=no
- ;;
- esac
- fi
-
-case $host_os in
- # For platforms which do not support PIC, -DPIC is meaningless:
- *djgpp*)
- lt_prog_compiler_pic_CXX=
- ;;
- *)
- lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_CXX" >&5
-$as_echo "$lt_prog_compiler_pic_CXX" >&6; }
-
-
-
-#
-# Check to make sure the PIC flag actually works.
-#
-if test -n "$lt_prog_compiler_pic_CXX"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }
-if test "${lt_cv_prog_compiler_pic_works_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_pic_works_CXX=no
- ac_outfile=conftest.$ac_objext
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
- lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- # The option is referenced via a variable to avoid confusing sed.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13689: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>conftest.err)
- ac_status=$?
- cat conftest.err >&5
- echo "$as_me:13693: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s "$ac_outfile"; then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings other than the usual output.
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_pic_works_CXX=yes
- fi
- fi
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }
-
-if test x"$lt_cv_prog_compiler_pic_works_CXX" = xyes; then
- case $lt_prog_compiler_pic_CXX in
- "" | " "*) ;;
- *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;
- esac
-else
- lt_prog_compiler_pic_CXX=
- lt_prog_compiler_can_build_shared_CXX=no
-fi
-
-fi
-
-
-
-#
-# Check to make sure the static flag actually works.
-#
-wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if test "${lt_cv_prog_compiler_static_works_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_static_works_CXX=no
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
- echo "$lt_simple_link_test_code" > conftest.$ac_ext
- if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
- # The linker can only warn and ignore the option if not recognized
- # So say no if there are warnings
- if test -s conftest.err; then
- # Append any errors to the config.log.
- cat conftest.err 1>&5
- $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
- $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
- if diff conftest.exp conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_static_works_CXX=yes
- fi
- else
- lt_cv_prog_compiler_static_works_CXX=yes
- fi
- fi
- $RM -r conftest*
- LDFLAGS="$save_LDFLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }
-
-if test x"$lt_cv_prog_compiler_static_works_CXX" = xyes; then
- :
-else
- lt_prog_compiler_static_CXX=
-fi
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o_CXX=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13788: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:13792: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o_CXX=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- lt_cv_prog_compiler_c_o_CXX=no
- $RM -r conftest 2>/dev/null
- mkdir conftest
- cd conftest
- mkdir out
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- lt_compiler_flag="-o out/conftest2.$ac_objext"
- # Insert the option either (1) after the last *FLAGS variable, or
- # (2) before a word containing "conftest.", or (3) at the end.
- # Note that $ac_compile itself does not contain backslashes and begins
- # with a dollar sign (not a hyphen), so the echo should work correctly.
- lt_compile=`echo "$ac_compile" | $SED \
- -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
- -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
- -e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13840: $lt_compile\"" >&5)
- (eval "$lt_compile" 2>out/conftest.err)
- ac_status=$?
- cat out/conftest.err >&5
- echo "$as_me:13844: \$? = $ac_status" >&5
- if (exit $ac_status) && test -s out/conftest2.$ac_objext
- then
- # The compiler can only warn and ignore the option if not recognized
- # So say no if there are warnings
- $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
- $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
- if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
- lt_cv_prog_compiler_c_o_CXX=yes
- fi
- fi
- chmod u+w . 2>&5
- $RM conftest*
- # SGI C++ compiler will create directory out/ii_files/ for
- # template instantiation
- test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
- $RM out/* && rmdir out
- cd ..
- $RM -r conftest
- $RM conftest*
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
-$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
-
-
-
-
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o_CXX" = no && test "$need_locks" != no; then
- # do not overwrite the value of need_locks provided by the user
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
- hard_links=yes
- $RM conftest*
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- touch conftest.a
- ln conftest.a conftest.b 2>&5 || hard_links=no
- ln conftest.a conftest.b 2>/dev/null && hard_links=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
- if test "$hard_links" = no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
- need_locks=warn
- fi
-else
- need_locks=no
-fi
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
-
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- case $host_os in
- aix[4-9]*)
- # If we're using GNU nm, then we don't want the "-C" option.
- # -C means demangle to AIX nm, but means don't demangle with GNU nm
- if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
- export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- else
- export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
- fi
- ;;
- pw32*)
- export_symbols_cmds_CXX="$ltdll_cmds"
- ;;
- cygwin* | mingw* | cegcc*)
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;/^.*[ ]__nm__/s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- linux* | k*bsd*-gnu)
- link_all_deplibs_CXX=no
- ;;
- *)
- export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
- ;;
- esac
- exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
-$as_echo "$ld_shlibs_CXX" >&6; }
-test "$ld_shlibs_CXX" = no && can_build_shared=no
-
-with_gnu_ld_CXX=$with_gnu_ld
-
-
-
-
-
-
-#
-# Do we need to explicitly link libc?
-#
-case "x$archive_cmds_need_lc_CXX" in
-x|xyes)
- # Assume -lc should be added
- archive_cmds_need_lc_CXX=yes
-
- if test "$enable_shared" = yes && test "$GCC" = yes; then
- case $archive_cmds_CXX in
- *'~'*)
- # FIXME: we may have to deal with multi-command sequences.
- ;;
- '$CC '*)
- # Test whether the compiler implicitly links with -lc since on some
- # systems, -lgcc has to come before -lc. If gcc already passes -lc
- # to ld, don't add -lc before -lgcc.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
- $RM conftest*
- echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } 2>conftest.err; then
- soname=conftest
- lib=conftest
- libobjs=conftest.$ac_objext
- deplibs=
- wl=$lt_prog_compiler_wl_CXX
- pic_flag=$lt_prog_compiler_pic_CXX
- compiler_flags=-v
- linker_flags=-v
- verstring=
- output_objdir=.
- libname=conftest
- lt_save_allow_undefined_flag=$allow_undefined_flag_CXX
- allow_undefined_flag_CXX=
- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
- (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- then
- archive_cmds_need_lc_CXX=no
- else
- archive_cmds_need_lc_CXX=yes
- fi
- allow_undefined_flag_CXX=$lt_save_allow_undefined_flag
- else
- cat conftest.err 1>&5
- fi
- $RM conftest*
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_CXX" >&5
-$as_echo "$archive_cmds_need_lc_CXX" >&6; }
- ;;
- esac
- fi
- ;;
-esac
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
-
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-shrext_cmds=".so"
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-need_lib_prefix=unknown
-hardcode_into_libs=no
-
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-need_version=unknown
-
-case $host_os in
-aix3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
- shlibpath_var=LIBPATH
-
- # AIX 3 has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
-
-aix[4-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- hardcode_into_libs=yes
- if test "$host_cpu" = ia64; then
- # AIX 5 supports IA64
- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- else
- # With GCC up to 2.95.x, collect2 would create an import file
- # for dependence libraries. The import file would start with
- # the line `#! .'. This would cause the generated library to
- # depend on `.', always an invalid library. This was fixed in
- # development snapshots of GCC prior to 3.0.
- case $host_os in
- aix4 | aix4.[01] | aix4.[01].*)
- if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
- echo ' yes '
- echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
- :
- else
- can_build_shared=no
- fi
- ;;
- esac
- # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
- # soname into executable. Probably we can add versioning support to
- # collect2, so additional links can be useful in future.
- if test "$aix_use_runtimelinking" = yes; then
- # If using run time linking (on AIX 4.2 or later) use lib<name>.so
- # instead of lib<name>.a to let people know that these are not
- # typical AIX shared libraries.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- else
- # We preserve .a as extension for shared libraries through AIX4.2
- # and later when we are not doing run time linking.
- library_names_spec='${libname}${release}.a $libname.a'
- soname_spec='${libname}${release}${shared_ext}$major'
- fi
- shlibpath_var=LIBPATH
- fi
- ;;
-
-amigaos*)
- case $host_cpu in
- powerpc)
- # Since July 2007 AmigaOS4 officially supports .so libraries.
- # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- ;;
- m68k)
- library_names_spec='$libname.ixlibrary $libname.a'
- # Create ${libname}_ixlibrary.a entries in /sys/libs.
- finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
- ;;
- esac
- ;;
-
-beos*)
- library_names_spec='${libname}${shared_ext}'
- dynamic_linker="$host_os ld.so"
- shlibpath_var=LIBRARY_PATH
- ;;
-
-bsdi[45]*)
- version_type=linux
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
- sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
- # the default ld.so.conf also contains /usr/contrib/lib and
- # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
- # libtool to hard-code these into programs
- ;;
-
-cygwin* | mingw* | pw32* | cegcc*)
- version_type=windows
- shrext_cmds=".dll"
- need_version=no
- need_lib_prefix=no
-
- case $GCC,$host_os in
- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
- library_names_spec='$libname.dll.a'
- # DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
- $install_prog $dir/$dlname \$dldir/$dlname~
- chmod a+x \$dldir/$dlname~
- if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
- eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
- fi'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
- $RM \$dlpath'
- shlibpath_overrides_runpath=yes
-
- case $host_os in
- cygwin*)
- # Cygwin DLLs use 'cyg' prefix rather than 'lib'
- soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
- ;;
- mingw* | cegcc*)
- # MinGW DLLs use traditional 'lib' prefix
- soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
- if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
- # It is most probably a Windows format PATH printed by
- # mingw gcc, but we are running on Cygwin. Gcc prints its search
- # path with ; separators, and with drive letters. We can handle the
- # drive letters (cygwin fileutils understands them), so leave them,
- # especially as we might pass files found there to a mingw objdump,
- # which wouldn't understand a cygwinified path. Ahh.
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
- else
- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
- fi
- ;;
- pw32*)
- # pw32 DLLs use 'pw' prefix rather than 'lib'
- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
- ;;
- esac
- ;;
-
- *)
- library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
- ;;
- esac
- dynamic_linker='Win32 ld.exe'
- # FIXME: first we should search . and the directory the executable is in
- shlibpath_var=PATH
- ;;
-
-darwin* | rhapsody*)
- dynamic_linker="$host_os dyld"
- version_type=darwin
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
- soname_spec='${libname}${release}${major}$shared_ext'
- shlibpath_overrides_runpath=yes
- shlibpath_var=DYLD_LIBRARY_PATH
- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-
- sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
- ;;
-
-dgux*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-freebsd1*)
- dynamic_linker=no
- ;;
-
-freebsd* | dragonfly*)
- # DragonFly does not have aout. When/if they implement a new
- # versioning mechanism, adjust this.
- if test -x /usr/bin/objformat; then
- objformat=`/usr/bin/objformat`
- else
- case $host_os in
- freebsd[123]*) objformat=aout ;;
- *) objformat=elf ;;
- esac
- fi
- version_type=freebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- need_version=no
- need_lib_prefix=no
- ;;
- freebsd-*)
- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
- need_version=yes
- ;;
- esac
- shlibpath_var=LD_LIBRARY_PATH
- case $host_os in
- freebsd2*)
- shlibpath_overrides_runpath=yes
- ;;
- freebsd3.[01]* | freebsdelf3.[01]*)
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
- freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
- *) # from 4.6 on, and DragonFly
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
- esac
- ;;
-
-gnu*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- hardcode_into_libs=yes
- ;;
-
-hpux9* | hpux10* | hpux11*)
- # Give a soname corresponding to the major version so that dld.sl refuses to
- # link against other versions.
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- case $host_cpu in
- ia64*)
- shrext_cmds='.so'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.so"
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- if test "X$HPUX_IA64_MODE" = X32; then
- sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
- else
- sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
- fi
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- hppa*64*)
- shrext_cmds='.sl'
- hardcode_into_libs=yes
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
- shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
- sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
- ;;
- *)
- shrext_cmds='.sl'
- dynamic_linker="$host_os dld.sl"
- shlibpath_var=SHLIB_PATH
- shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- ;;
- esac
- # HP-UX runs *really* slowly unless shared libraries are mode 555.
- postinstall_cmds='chmod 555 $lib'
- ;;
-
-interix[3-9]*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-irix5* | irix6* | nonstopux*)
- case $host_os in
- nonstopux*) version_type=nonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" = yes; then
- version_type=linux
- else
- version_type=irix
- fi ;;
- esac
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
- case $host_os in
- irix5* | nonstopux*)
- libsuff= shlibsuff=
- ;;
- *)
- case $LD in # libtool.m4 will add one of these switches to LD
- *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
- libsuff= shlibsuff= libmagic=32-bit;;
- *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
- libsuff=32 shlibsuff=N32 libmagic=N32;;
- *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
- libsuff=64 shlibsuff=64 libmagic=64-bit;;
- *) libsuff= shlibsuff= libmagic=never-match;;
- esac
- ;;
- esac
- shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
- sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
- hardcode_into_libs=yes
- ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux*oldld* | linux*aout* | linux*coff*)
- dynamic_linker=no
- ;;
-
-# This must be Linux ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- # Some binutils ld are patched to set DT_RUNPATH
- save_LDFLAGS=$LDFLAGS
- save_libdir=$libdir
- eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \
- LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
- shlibpath_overrides_runpath=yes
-fi
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LDFLAGS=$save_LDFLAGS
- libdir=$save_libdir
-
- # This implies no fast_install, which is unacceptable.
- # Some rework will be needed to allow for fast_install
- # before this can be enabled.
- hardcode_into_libs=yes
-
- # Append ld.so.conf contents to the search path
- if test -f /etc/ld.so.conf; then
- lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
- fi
-
- # We used to test for /lib/ld.so.1 and disable shared libraries on
- # powerpc, because MkLinux only supported shared libraries with the
- # GNU dynamic linker. Since this was broken with cross compilers,
- # most powerpc-linux boxes support dynamic linking these days and
- # people can always --disable-shared, the test was removed, and we
- # assume the GNU/Linux dynamic linker is in use.
- dynamic_linker='GNU/Linux ld.so'
- ;;
-
-netbsdelf*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='NetBSD ld.elf_so'
- ;;
-
-netbsd*)
- version_type=sunos
- need_lib_prefix=no
- need_version=no
- if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
- else
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- dynamic_linker='NetBSD ld.elf_so'
- fi
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- ;;
-
-newsos6)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- ;;
-
-*nto* | *qnx*)
- version_type=qnx
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- dynamic_linker='ldqnx.so'
- ;;
-
-openbsd*)
- version_type=sunos
- sys_lib_dlsearch_path_spec="/usr/lib"
- need_lib_prefix=no
- # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
- case $host_os in
- openbsd3.3 | openbsd3.3.*) need_version=yes ;;
- *) need_version=no ;;
- esac
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
- case $host_os in
- openbsd2.[89] | openbsd2.[89].*)
- shlibpath_overrides_runpath=no
- ;;
- *)
- shlibpath_overrides_runpath=yes
- ;;
- esac
- else
- shlibpath_overrides_runpath=yes
- fi
- ;;
-
-os2*)
- libname_spec='$name'
- shrext_cmds=".dll"
- need_lib_prefix=no
- library_names_spec='$libname${shared_ext} $libname.a'
- dynamic_linker='OS/2 ld.exe'
- shlibpath_var=LIBPATH
- ;;
-
-osf3* | osf4* | osf5*)
- version_type=osf
- need_lib_prefix=no
- need_version=no
- soname_spec='${libname}${release}${shared_ext}$major'
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
- sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
- ;;
-
-rdos*)
- dynamic_linker=no
- ;;
-
-solaris*)
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- # ldd complains unless libraries are executable
- postinstall_cmds='chmod +x $lib'
- ;;
-
-sunos4*)
- version_type=sunos
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
- finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- if test "$with_gnu_ld" = yes; then
- need_lib_prefix=no
- fi
- need_version=yes
- ;;
-
-sysv4 | sysv4.3*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- case $host_vendor in
- sni)
- shlibpath_overrides_runpath=no
- need_lib_prefix=no
- runpath_var=LD_RUN_PATH
- ;;
- siemens)
- need_lib_prefix=no
- ;;
- motorola)
- need_lib_prefix=no
- need_version=no
- shlibpath_overrides_runpath=no
- sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
- ;;
- esac
- ;;
-
-sysv4*MP*)
- if test -d /usr/nec ;then
- version_type=linux
- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
- soname_spec='$libname${shared_ext}.$major'
- shlibpath_var=LD_LIBRARY_PATH
- fi
- ;;
-
-sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
- version_type=freebsd-elf
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=yes
- hardcode_into_libs=yes
- if test "$with_gnu_ld" = yes; then
- sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
- else
- sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
- case $host_os in
- sco3.2v5*)
- sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
- ;;
- esac
- fi
- sys_lib_dlsearch_path_spec='/usr/lib'
- ;;
-
-tpf*)
- # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
- version_type=linux
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- hardcode_into_libs=yes
- ;;
-
-uts4*)
- version_type=linux
- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
- soname_spec='${libname}${release}${shared_ext}$major'
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-
-*)
- dynamic_linker=no
- ;;
-esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
-
-variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
- variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-fi
-
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
- sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
-fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
- sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
-hardcode_action_CXX=
-if test -n "$hardcode_libdir_flag_spec_CXX" ||
- test -n "$runpath_var_CXX" ||
- test "X$hardcode_automatic_CXX" = "Xyes" ; then
-
- # We can hardcode non-existent directories.
- if test "$hardcode_direct_CXX" != no &&
- # If the only mechanism to avoid hardcoding is shlibpath_var, we
- # have to relink, otherwise we might link with an installed library
- # when we should be linking with a yet-to-be-installed one
- ## test "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" != no &&
- test "$hardcode_minus_L_CXX" != no; then
- # Linking always hardcodes the temporary library directory.
- hardcode_action_CXX=relink
- else
- # We can link without hardcoding, and we can hardcode nonexisting dirs.
- hardcode_action_CXX=immediate
- fi
-else
- # We cannot hardcode anything, or else we can only hardcode existing
- # directories.
- hardcode_action_CXX=unsupported
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5
-$as_echo "$hardcode_action_CXX" >&6; }
-
-if test "$hardcode_action_CXX" = relink ||
- test "$inherit_rpath_CXX" = yes; then
- # Fast installation is not supported
- enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
- test "$enable_shared" = no; then
- # Fast installation is not necessary
- enable_fast_install=needless
-fi
-
-
-
-
-
-
-
- fi # test -n "$compiler"
-
- CC=$lt_save_CC
- LDCXX=$LD
- LD=$lt_save_LD
- GCC=$lt_save_GCC
- with_gnu_ld=$lt_save_with_gnu_ld
- lt_cv_path_LDCXX=$lt_cv_path_LD
- lt_cv_path_LD=$lt_save_path_LD
- lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
- lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
-
-ac_ext=cpp
-ac_cpp='$CXXCPP $CPPFLAGS'
-ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-
-
-
-
-
-
-
-
-
-
-
-
-
- ac_config_commands="$ac_config_commands libtool"
-
-
-
-
-# Only expand once:
-
-
-
-# Check whether --enable-double was given.
-if test "${enable_double+set}" = set; then :
- enableval=$enable_double; case "${enableval}" in
- yes) double=true ;;
- no) double=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-double" "$LINENO" 5 ;;
-esac
-else
- double=false
-fi
-
-
-if (test x$double = xtrue) ;then
-
-$as_echo "#define MGL_USE_DOUBLE 1" >>confdefs.h
-
-else
-
-$as_echo "#define MGL_USE_DOUBLE 0" >>confdefs.h
-
-fi
-
-# Check whether --enable-all was given.
-if test "${enable_all+set}" = set; then :
- enableval=$enable_all; case "${enableval}" in
- yes) all=true ;;
- no) all=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-all" "$LINENO" 5 ;;
-esac
-else
- all=false
-fi
-
-
-# Check whether --enable-langall was given.
-if test "${enable_langall+set}" = set; then :
- enableval=$enable_langall; case "${enableval}" in
- yes) langall=true ;;
- no) langall=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-langall" "$LINENO" 5 ;;
-esac
-else
- langall=false
-fi
-
-
-# Check whether --enable-pthread was given.
-if test "${enable_pthread+set}" = set; then :
- enableval=$enable_pthread; case "${enableval}" in
- yes) pthread=true ;;
- no) pthread=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-pthread" "$LINENO" 5 ;;
-esac
-else
- pthread=true
-fi
-
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
-if test "x$ac_cv_header_pthread_h" = x""yes; then :
- (test x$all = xtrue || test x$pthread = xtrue) && PTHREAD_FLAGS=-DHAVE_PTHREAD
-else
- (test x$all = xtrue || test x$pthread = xtrue) && echo "Please install posix threads headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpthread" >&5
-$as_echo_n "checking for main in -lpthread... " >&6; }
-if test "${ac_cv_lib_pthread_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpthread $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_pthread_main=yes
-else
- ac_cv_lib_pthread_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_main" >&5
-$as_echo "$ac_cv_lib_pthread_main" >&6; }
-if test "x$ac_cv_lib_pthread_main" = x""yes; then :
- (test x$all = xtrue || test x$pthread = xtrue) && PTHREAD_LIBS=-lpthread
-else
- (test x$all = xtrue || test x$pthread = xtrue) && echo "Please install posix threads library" && exit
-fi
-
- if test x$pthread = xtrue; then
- USE_PTHREAD_TRUE=
- USE_PTHREAD_FALSE='#'
-else
- USE_PTHREAD_TRUE='#'
- USE_PTHREAD_FALSE=
-fi
-
-
-# Check whether --enable-gsl was given.
-if test "${enable_gsl+set}" = set; then :
- enableval=$enable_gsl; case "${enableval}" in
- yes) gsl=true ;;
- no) gsl=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-gsl" "$LINENO" 5 ;;
-esac
-else
- gsl=true
-fi
-
-
-if (test x$all = xtrue || test x$gsl = xtrue) ;then
- GSL_PROG=gsl-config
- # Extract the first word of "$GSL_PROG", so it can be a program name with args.
-set dummy $GSL_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_GSL_FLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$GSL_FLAGS"; then
- ac_cv_prog_GSL_FLAGS="$GSL_FLAGS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_GSL_FLAGS="`$GSL_PROG --cflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-GSL_FLAGS=$ac_cv_prog_GSL_FLAGS
-if test -n "$GSL_FLAGS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GSL_FLAGS" >&5
-$as_echo "$GSL_FLAGS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "$GSL_PROG", so it can be a program name with args.
-set dummy $GSL_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_GSL_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$GSL_LIBS"; then
- ac_cv_prog_GSL_LIBS="$GSL_LIBS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_GSL_LIBS="`$GSL_PROG --libs`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-GSL_LIBS=$ac_cv_prog_GSL_LIBS
-if test -n "$GSL_LIBS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GSL_LIBS" >&5
-$as_echo "$GSL_LIBS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "$GSL_LIBS" ;then
- test_gsl=true
- else
- echo "Please install gsl headers and libraries and make sure that \
- path to $GSL_PROG exist in your PATH"
- exit
- fi
-else
- GSL_FLAGS=-DNO_GSL
-
-fi
- if test x$test_gsl = xtrue; then
- USE_GSL_TRUE=
- USE_GSL_FALSE='#'
-else
- USE_GSL_TRUE='#'
- USE_GSL_FALSE=
-fi
-
-
-case "${host}" in
- *darwin*)
- GL_LIBS="-framework OpenGL"
-
- ;;
-
- *w32*)
- GL_LIBS=opengl32
- ac_fn_cxx_check_header_mongrel "$LINENO" "GL/gl.h" "ac_cv_header_GL_gl_h" "$ac_includes_default"
-if test "x$ac_cv_header_GL_gl_h" = x""yes; then :
-
-else
- echo "Please install OpenGL headers (GL/gl.h)"; exit
-fi
-
-
- as_ac_Lib=`$as_echo "ac_cv_lib_${GL_LIBS}''_main" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -l${GL_LIBS}" >&5
-$as_echo_n "checking for main in -l${GL_LIBS}... " >&6; }
-if eval "test \"\${$as_ac_Lib+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-l${GL_LIBS} $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- eval "$as_ac_Lib=yes"
-else
- eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
- GL_LIBS=-l${GL_LIBS}
-else
- echo "Please install OpenGL library (lib${GL_LIBS}.a)"; exit
-fi
-
- ;;
-
- *)
- GL_LIBS=GL
- ac_fn_cxx_check_header_mongrel "$LINENO" "GL/gl.h" "ac_cv_header_GL_gl_h" "$ac_includes_default"
-if test "x$ac_cv_header_GL_gl_h" = x""yes; then :
-
-else
- echo "Please install OpenGL headers (GL/gl.h)"; exit
-fi
-
-
- as_ac_Lib=`$as_echo "ac_cv_lib_${GL_LIBS}''_main" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -l${GL_LIBS}" >&5
-$as_echo_n "checking for main in -l${GL_LIBS}... " >&6; }
-if eval "test \"\${$as_ac_Lib+set}\"" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-l${GL_LIBS} $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- eval "$as_ac_Lib=yes"
-else
- eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
- GL_LIBS=-l${GL_LIBS}
-else
- echo "Please install OpenGL library (lib${GL_LIBS}.a)"; exit
-fi
-
- ;;
-
-esac
- if (test x$all = xtrue || test x$glut = xtrue); then
- USE_GLUT_TRUE=
- USE_GLUT_FALSE='#'
-else
- USE_GLUT_TRUE='#'
- USE_GLUT_FALSE=
-fi
-
-
-case "${host}" in
- *linux*)
- ADDON_FLAGS=-DNO_COLOR_ARRAY
- ;;
-
- *)
- ;;
-esac
-
-# Check whether --enable-hdf5 was given.
-if test "${enable_hdf5+set}" = set; then :
- enableval=$enable_hdf5; case "${enableval}" in
- yes) hdf5=true ;;
- no) hdf5=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf5" "$LINENO" 5 ;;
-esac
-else
- hdf5=false
-fi
-
-# Check whether --enable-hdf5_18 was given.
-if test "${enable_hdf5_18+set}" = set; then :
- enableval=$enable_hdf5_18; case "${enableval}" in
- yes) hdf5_18=true ;;
- no) hdf5_18=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf5_18" "$LINENO" 5 ;;
-esac
-else
- hdf5_18=false
-fi
-
-#AC_CHECK_HEADER(hdf5.h,[(test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_FLAGS=-DHAVE_HDF5 AC_SUBST(HDF5_FLAGS)],
-ac_fn_cxx_check_header_mongrel "$LINENO" "hdf5.h" "ac_cv_header_hdf5_h" "$ac_includes_default"
-if test "x$ac_cv_header_hdf5_h" = x""yes; then :
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_FLAGS=-DHAVE_HDF5
-else
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && echo "Please install hdf5 headers" && exit
-fi
-
-
-if ((test x$all = xtrue || test x$hdf5 = xtrue) && test x$hdf5_18 = xfalse) ;then
- HDF5_FLAGS="$HDF5_FLAGS -DH5_USE_16_API"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lhdf5" >&5
-$as_echo_n "checking for main in -lhdf5... " >&6; }
-if test "${ac_cv_lib_hdf5_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lhdf5 $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_hdf5_main=yes
-else
- ac_cv_lib_hdf5_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_hdf5_main" >&5
-$as_echo "$ac_cv_lib_hdf5_main" >&6; }
-if test "x$ac_cv_lib_hdf5_main" = x""yes; then :
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && HDF5_LIBS=-lhdf5
-else
- (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue) && echo "Please install hdf5 library" && exit
-fi
-
- if (test x$all = xtrue || test x$hdf5 = xtrue || test x$hdf5_18 = xtrue); then
- USE_HDF5_TRUE=
- USE_HDF5_FALSE='#'
-else
- USE_HDF5_TRUE='#'
- USE_HDF5_FALSE=
-fi
-
-
-
-# Check whether --enable-hdf4 was given.
-if test "${enable_hdf4+set}" = set; then :
- enableval=$enable_hdf4; case "${enableval}" in
- yes) hdf4=true ;;
- no) hdf4=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-hdf4" "$LINENO" 5 ;;
-esac
-else
- hdf4=false
-fi
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "hdf/mfhdf.h" "ac_cv_header_hdf_mfhdf_h" "$ac_includes_default"
-if test "x$ac_cv_header_hdf_mfhdf_h" = x""yes; then :
- (test x$all = xtrue || test x$hdf4 = xtrue) && HDF4_FLAGS=-DHAVE_HDF4
-else
- (test x$all = xtrue || test x$hdf4 = xtrue) && echo "Please install hdf4 headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ldf" >&5
-$as_echo_n "checking for main in -ldf... " >&6; }
-if test "${ac_cv_lib_df_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ldf $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_df_main=yes
-else
- ac_cv_lib_df_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_df_main" >&5
-$as_echo "$ac_cv_lib_df_main" >&6; }
-if test "x$ac_cv_lib_df_main" = x""yes; then :
- (test x$all = xtrue || test x$hdf4 = xtrue) && HDF4_LIBS="-lmfhdf -ldf"
-else
- (test x$all = xtrue || test x$hdf4 = xtrue) && echo "Please install hdf4 library" && exit
-fi
-
- if (test x$all = xtrue || test x$hdf4 = xtrue); then
- USE_HDF4_TRUE=
- USE_HDF4_FALSE='#'
-else
- USE_HDF4_TRUE='#'
- USE_HDF4_FALSE=
-fi
-
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "png.h" "ac_cv_header_png_h" "$ac_includes_default"
-if test "x$ac_cv_header_png_h" = x""yes; then :
-
-else
- echo "Please install png headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpng" >&5
-$as_echo_n "checking for main in -lpng... " >&6; }
-if test "${ac_cv_lib_png_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lpng $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_png_main=yes
-else
- ac_cv_lib_png_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_png_main" >&5
-$as_echo "$ac_cv_lib_png_main" >&6; }
-if test "x$ac_cv_lib_png_main" = x""yes; then :
- PNG_LIBS=-lpng
-else
- echo "Please install png library" && exit
-fi
-
-
-# Check whether --enable-jpeg was given.
-if test "${enable_jpeg+set}" = set; then :
- enableval=$enable_jpeg; case "${enableval}" in
- yes) jpeg=true ;;
- no) jpeg=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-jpeg" "$LINENO" 5 ;;
-esac
-else
- jpeg=false
-fi
-
-ac_fn_cxx_check_header_mongrel "$LINENO" "jpeglib.h" "ac_cv_header_jpeglib_h" "$ac_includes_default"
-if test "x$ac_cv_header_jpeglib_h" = x""yes; then :
- (test x$all = xtrue || test x$jpeg = xtrue) && JPEG_FLAGS=-DHAVE_JPEG
-else
- (test x$all = xtrue || test x$jpeg = xtrue) && echo "Please install jpeg headers" && exit
-fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ljpeg" >&5
-$as_echo_n "checking for main in -ljpeg... " >&6; }
-if test "${ac_cv_lib_jpeg_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ljpeg $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_jpeg_main=yes
-else
- ac_cv_lib_jpeg_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_main" >&5
-$as_echo "$ac_cv_lib_jpeg_main" >&6; }
-if test "x$ac_cv_lib_jpeg_main" = x""yes; then :
- (test x$all = xtrue || test x$jpeg = xtrue) && JPEG_LIBS=-ljpeg
-else
- (test x$all = xtrue || test x$jpeg = xtrue) && echo "Please install jpeg library" && exit
-fi
-
- if (test x$all = xtrue || test x$jpeg = xtrue); then
- USE_JPEG_TRUE=
- USE_JPEG_FALSE='#'
-else
- USE_JPEG_TRUE='#'
- USE_JPEG_FALSE=
-fi
-
-
-# Check whether --enable-u3d was given.
-if test "${enable_u3d+set}" = set; then :
- enableval=$enable_u3d; case "${enableval}" in
- yes) u3d=true ;;
- no) u3d=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-u3d" "$LINENO" 5 ;;
-esac
-else
- u3d=false
-fi
-
-# Check whether --enable-pdf was given.
-if test "${enable_pdf+set}" = set; then :
- enableval=$enable_pdf; case "${enableval}" in
- yes) pdf=true; u3d=true ;;
- no) pdf=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-pdf" "$LINENO" 5 ;;
-esac
-else
- pdf=false
-fi
-
-if test "x$pdf" == xtrue; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lhpdf" >&5
-$as_echo_n "checking for main in -lhpdf... " >&6; }
-if test "${ac_cv_lib_hpdf_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lhpdf $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_hpdf_main=yes
-else
- ac_cv_lib_hpdf_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_hpdf_main" >&5
-$as_echo "$ac_cv_lib_hpdf_main" >&6; }
-if test "x$ac_cv_lib_hpdf_main" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBHPDF 1
-_ACEOF
-
- LIBS="-lhpdf $LIBS"
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-pdf was given, but test for libharu failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-fi
-if test "x$pdf" == xtrue; then :
- for ac_header in hpdf.h
-do :
- ac_fn_cxx_check_header_mongrel "$LINENO" "hpdf.h" "ac_cv_header_hpdf_h" "$ac_includes_default"
-if test "x$ac_cv_header_hpdf_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_HPDF_H 1
-_ACEOF
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-pdf was given, but test for headers failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-done
-
-fi
- if test x$pdf = xtrue; then
- USE_PDF_TRUE=
- USE_PDF_FALSE='#'
-else
- USE_PDF_TRUE='#'
- USE_PDF_FALSE=
-fi
-
-
-if test "x$u3d" == xtrue; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lIDTF" >&5
-$as_echo_n "checking for main in -lIDTF... " >&6; }
-if test "${ac_cv_lib_IDTF_main+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lIDTF -lm -ldl $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-return main ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
- ac_cv_lib_IDTF_main=yes
-else
- ac_cv_lib_IDTF_main=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_IDTF_main" >&5
-$as_echo "$ac_cv_lib_IDTF_main" >&6; }
-if test "x$ac_cv_lib_IDTF_main" = x""yes; then :
- U3D_LIBS="-lIDTF -lm -ldl"
-
-
-$as_echo "#define HAVE_U3D 1" >>confdefs.h
-
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-u3d was given, but test for libIDTF failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-fi
-
-fi
-if test "x$u3d" == xtrue; then :
- for ac_header in u3d/SceneConverterLib.h
-do :
- ac_fn_cxx_check_header_mongrel "$LINENO" "u3d/SceneConverterLib.h" "ac_cv_header_u3d_SceneConverterLib_h" "$ac_includes_default"
-if test "x$ac_cv_header_u3d_SceneConverterLib_h" = x""yes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_U3D_SCENECONVERTERLIB_H 1
-_ACEOF
-
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "--enable-u3d was given, but test for headers failed
-See \`config.log' for more details" "$LINENO" 5 ; }
-
-fi
-
-done
-
-fi
- if test x$u3d = xtrue; then
- USE_U3D_TRUE=
- USE_U3D_FALSE='#'
-else
- USE_U3D_TRUE='#'
- USE_U3D_FALSE=
-fi
-
-
-# Check whether --enable-fltk was given.
-if test "${enable_fltk+set}" = set; then :
- enableval=$enable_fltk; case "${enableval}" in
- yes) fltk=true ;;
- no) fltk=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-fltk" "$LINENO" 5 ;;
-esac
-else
- fltk=false
-fi
-
-if (test x$all = xtrue || test x$fltk = xtrue) ;then
- FLTK_PROG=fltk-config
- # Extract the first word of "$FLTK_PROG", so it can be a program name with args.
-set dummy $FLTK_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_FLTK_FLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$FLTK_FLAGS"; then
- ac_cv_prog_FLTK_FLAGS="$FLTK_FLAGS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_FLTK_FLAGS="`$FLTK_PROG --cxxflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-FLTK_FLAGS=$ac_cv_prog_FLTK_FLAGS
-if test -n "$FLTK_FLAGS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FLTK_FLAGS" >&5
-$as_echo "$FLTK_FLAGS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "$FLTK_PROG", so it can be a program name with args.
-set dummy $FLTK_PROG; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_FLTK_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$FLTK_LIBS"; then
- ac_cv_prog_FLTK_LIBS="$FLTK_LIBS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_FLTK_LIBS="`$FLTK_PROG --ldflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-FLTK_LIBS=$ac_cv_prog_FLTK_LIBS
-if test -n "$FLTK_LIBS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FLTK_LIBS" >&5
-$as_echo "$FLTK_LIBS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if test "$FLTK_FLAGS" && test "$FLTK_LIBS" ;then
- test_fltk=true
- else
- echo "Please install FLTK headers and libraries and make sure that \
- path to $FLTK_PROG exist in your PATH"
- exit
- fi
-fi
- if test x$test_fltk = xtrue; then
- USE_FLTK_TRUE=
- USE_FLTK_FALSE='#'
-else
- USE_FLTK_TRUE='#'
- USE_FLTK_FALSE=
-fi
-
-
-# Check whether --enable-qt was given.
-if test "${enable_qt+set}" = set; then :
- enableval=$enable_qt; case "${enableval}" in
- yes) qt=true ;;
- no) qt=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-qt" "$LINENO" 5 ;;
-esac
-else
- qt=false
-fi
-
-if (test x$all = xtrue || test x$qt = xtrue) ;then
-
-
-
-
- test x"$TROLL" != x && echo 'ViM rox emacs.'
-
-
-# Check whether --with-qt was given.
-if test "${with_qt+set}" = set; then :
- withval=$with_qt; QT_PATH=$withval
-else
- QT_PATH=
-fi
-
-
- # Find Qt.
- if test -d /usr/local/Trolltech; then
- # Try to find the latest version.
- tmp_qt_paths=`echo /usr/local/Trolltech/*/bin | tr ' ' '\n' | sort -nr \
- | xargs | sed 's/ */:/g'`
- fi
-
- # Find qmake.
- for ac_prog in qmake-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_QMAKE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $QMAKE in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_QMAKE="$QMAKE" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_DIR:$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_QMAKE="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-QMAKE=$ac_cv_path_QMAKE
-if test -n "$QMAKE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $QMAKE" >&5
-$as_echo "$QMAKE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$QMAKE" && break
-done
-test -n "$QMAKE" || QMAKE="missing"
-
- if test x"$QMAKE" = xmissing; then
- for ac_prog in qmake${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_QMAKE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $QMAKE in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_QMAKE="$QMAKE" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_DIR:$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_QMAKE="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-QMAKE=$ac_cv_path_QMAKE
-if test -n "$QMAKE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $QMAKE" >&5
-$as_echo "$QMAKE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$QMAKE" && break
-done
-test -n "$QMAKE" || QMAKE="missing"
-
- if test x"$QMAKE" = xmissing; then
- as_fn_error $? "Cannot find qmake in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find moc (Meta Object Compiler).
- for ac_prog in moc-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MOC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MOC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_MOC="$MOC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_MOC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-MOC=$ac_cv_path_MOC
-if test -n "$MOC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MOC" >&5
-$as_echo "$MOC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$MOC" && break
-done
-test -n "$MOC" || MOC="missing"
-
- if test x"$MOC" = xmissing; then
- for ac_prog in moc${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_MOC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $MOC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_MOC="$MOC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_MOC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-MOC=$ac_cv_path_MOC
-if test -n "$MOC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MOC" >&5
-$as_echo "$MOC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$MOC" && break
-done
-test -n "$MOC" || MOC="missing"
-
- if test x"$MOC" = xmissing; then
- as_fn_error $? "Cannot find moc (Meta Object Compiler) in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find uic (User Interface Compiler).
- for ac_prog in uic-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_UIC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $UIC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_UIC="$UIC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_UIC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-UIC=$ac_cv_path_UIC
-if test -n "$UIC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $UIC" >&5
-$as_echo "$UIC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$UIC" && break
-done
-test -n "$UIC" || UIC="missing"
-
- if test x"$UIC" = xmissing; then
- for ac_prog in uic${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_UIC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $UIC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_UIC="$UIC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_UIC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-UIC=$ac_cv_path_UIC
-if test -n "$UIC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $UIC" >&5
-$as_echo "$UIC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$UIC" && break
-done
-test -n "$UIC" || UIC="missing"
-
- if test x"$UIC" = xmissing; then
- as_fn_error $? "Cannot find uic (User Interface Compiler) in your PATH. Try using --with-qt." "$LINENO" 5
- fi
- fi
-
- # Find rcc (Qt Resource Compiler).
- for ac_prog in rcc-qt4${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_RCC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $RCC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_RCC="$RCC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_RCC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-RCC=$ac_cv_path_RCC
-if test -n "$RCC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RCC" >&5
-$as_echo "$RCC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$RCC" && break
-done
-test -n "$RCC" || RCC="false"
-
- if test x"$RCC" = xfalse; then
- for ac_prog in rcc${EXEEXT}
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_RCC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $RCC in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_RCC="$RCC" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$QT_PATH:$PATH:$tmp_qt_paths"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_RCC="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-RCC=$ac_cv_path_RCC
-if test -n "$RCC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RCC" >&5
-$as_echo "$RCC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$RCC" && break
-done
-test -n "$RCC" || RCC="false"
-
- if test x"$RCC" = xfalse; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find rcc (Qt Resource Compiler) in your PATH. Try using --with-qt." >&5
-$as_echo "$as_me: WARNING: Cannot find rcc (Qt Resource Compiler) in your PATH. Try using --with-qt." >&2;}
- fi
- fi
-
- # If we don't know the path to Qt, guess it from the path to qmake.
- if test x"$QT_PATH" = x; then
- QT_PATH=`dirname "$QMAKE"`
- fi
- if test x"$QT_PATH" = x; then
- as_fn_error $? "Cannot find the path to your Qt install. Use --with-qt." "$LINENO" 5
- fi
-
-
- # Get ready to build a test-app with Qt.
-
- # Look for a writable temporary directory.
-
- if test x"$TMPDIR" = x || test ! -d "$TMPDIR" || test ! -w "$TMPDIR"; then
- echo "$as_me:$LINENO: no TMPDIR or bad TMPDIR ($TMPDIR)" \
- >&5
- for i in /tmp /var/tmp; do
- if test -d "$i" && test -w "$i"; then
- TMPDIR=$i
- export TMPDIR
- echo "$as_me:$LINENO: setting TMPDIR=$TMPDIR" >&5
- break
- fi
- done
- fi
-
- # Kludge!! QMake has a very strange behavior. For instance, if you
- # install Qt under your $HOME and run QMake somewhere else under your
- # $HOME, it will try to be clever and produce Makefiles with relative
- # include paths. In order to avoid this, we will test QMake from a
- # temporary directory (usually /tmp). Note that this problem was only
- # observed with Qt 4.
- my_configure_pwd=`pwd`
- my_tmpdir="$TMPDIR/conftest$$.dir"
- test -d "$my_tmpdir" || mkdir "$my_tmpdir"
- if test -w "$my_tmpdir" && cd "$my_tmpdir"
- then
- :
- else
- as_fn_error $? "Cannot cd to or write in $my_tmpdir" "$LINENO" 5
- fi
- cat >conftest.h <<_ASEOF
-#include <QObject>
-
-class Foo: public QObject
-{
- Q_OBJECT;
-public:
- Foo();
- ~Foo() {}
-public slots:
- void setValue(int value);
-signals:
- void valueChanged(int newValue);
-private:
- int value_;
-};
-_ASEOF
-
- cat >conftest.cpp <<_ASEOF
-#include "conftest.h"
-Foo::Foo()
- : value_ (42)
-{
- connect(this, SIGNAL(valueChanged(int)), this, SLOT(setValue(int)));
-}
-
-void Foo::setValue(int value)
-{
- value_ = value;
-}
-
-int main()
-{
- Foo f;
-}
-_ASEOF
- if $QMAKE -project; then :; else
- as_fn_error $? "Calling $QMAKE -project failed." "$LINENO" 5
- fi
-
- # Find the .pro file generated by qmake.
- pro_file='conftest.dir.pro'
- test -f $pro_file || pro_file=`echo *.pro`
- if test -f "$pro_file"; then :; else
- as_fn_error $? "Can't find the .pro file generated by Qmake." "$LINENO" 5
- fi
-
-
-
-
-
-
-
- echo "$as_me:$LINENO: Invoking $QMAKE on $pro_file" >&5
- sed 's/^/| /' "$pro_file" >&5
-
- if $QMAKE; then :; else
- as_fn_error $? "Calling $QMAKE failed." "$LINENO" 5
- fi
- # Try to compile a simple Qt app.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we can build a simple Qt app" >&5
-$as_echo_n "checking whether we can build a simple Qt app... " >&6; }
-if test "${at_cv_qt_build+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_qt_build=ko
- : ${MAKE=make}
-
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 4'
- else
- echo "$as_me:$LINENO: Build failed, trying to #include <qobject.h> \
-instead" >&5
- sed 's/<QObject>/<qobject.h>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 3'
- else
- # Sometimes (such as on Debian) build will fail because Qt hasn't been
- # installed in debug mode and qmake tries (by default) to build apps in
- # debug mode => Try again in release mode.
- echo "$as_me:$LINENO: Build failed, trying to enforce release mode" \
- >&5
-
- # Tweak the value of CONFIG in the .pro file for +release.
-
- qt_conf=''
- for at_mod in +release; do
- at_mod=`echo "$at_mod" | sed 's/^-//; tough
- s/^+//; beef
- :ough
- s/^/CONFIG -= /;n
- :eef
- s/^/CONFIG += /'`
- qt_conf="$qt_conf
-$at_mod"
- done
- echo "$qt_conf" | sed 1d >>"$pro_file"
-
-
- sed 's/<qobject.h>/<QObject>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 4, release mode forced'
- else
- echo "$as_me:$LINENO: Build failed, trying to #include <qobject.h> \
-instead" >&5
- sed 's/<QObject>/<qobject.h>/' conftest.h > tmp.h && mv tmp.h conftest.h
- if $MAKE >&5 2>&1; then
- at_cv_qt_build='ok, looks like Qt 3, release mode forced'
- else
- at_cv_qt_build=ko
- echo "$as_me:$LINENO: failed program was:" >&5
- sed 's/^/| /' conftest.h >&5
- echo "$as_me:$LINENO: failed program was:" >&5
- sed 's/^/| /' conftest.cpp >&5
- fi # if make with Qt3-style #include and release mode forced.
- fi # if make with Qt4-style #include and release mode forced.
- fi # if make with Qt3-style #include.
- fi # if make with Qt4-style #include.
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_qt_build" >&5
-$as_echo "$at_cv_qt_build" >&6; }
- if test x"$at_cv_qt_build" = xko; then
- as_fn_error $? "Cannot build a test Qt program" "$LINENO" 5
- fi
- QT_VERSION_MAJOR=`echo "$at_cv_qt_build" | sed 's/^^0-9*//'`
-
-
- # This sed filter is applied after an expression of the form: /^FOO.*=/!d;
- # It starts by removing the beginning of the line, removing references to
- # SUBLIBS, removing unnecessary whitespaces at the beginning, and prefixes
- # all variable uses by QT_.
- qt_sed_filter='s///;
- s/$(SUBLIBS)//g;
- s/^ *//;
- s/\$(\([A-Z_][A-Z_]*\))/$(QT_\1)/g'
-
- # Find the Makefile (qmake happens to generate a fake Makefile which invokes
- # a Makefile.Debug or Makefile.Release). We we have both, we'll pick the
- # Makefile.Release. The reason is that the main difference is that release
- # uses -Os and debug -g. We can override -Os by passing another -O but we
- # usually don't override -g.
- if test -f Makefile.Release; then
- at_mfile='Makefile.Release'
- else
- at_mfile='Makefile'
- fi
- if test -f $at_mfile; then :; else
- cd "$my_configure_pwd"
- as_fn_error $? "Cannot find the Makefile generated by qmake." "$LINENO" 5
- fi
-
- # Find the DEFINES of Qt (should have been named CPPFLAGS).
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the DEFINES to use with Qt" >&5
-$as_echo_n "checking for the DEFINES to use with Qt... " >&6; }
-if test "${at_cv_env_QT_DEFINES+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_DEFINES=`sed "/^DEFINES[ ]*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_DEFINES" >&5
-$as_echo "$at_cv_env_QT_DEFINES" >&6; }
- QT_DEFINES=$at_cv_env_QT_DEFINES
-
-
- # Find the CFLAGS of Qt (We can use Qt in C?!)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the CFLAGS to use with Qt" >&5
-$as_echo_n "checking for the CFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_CFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_CFLAGS=`sed "/^CFLAGS[ ]*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_CFLAGS" >&5
-$as_echo "$at_cv_env_QT_CFLAGS" >&6; }
- QT_CFLAGS=$at_cv_env_QT_CFLAGS
-
-
- # Find the CXXFLAGS of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the CXXFLAGS to use with Qt" >&5
-$as_echo_n "checking for the CXXFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_CXXFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_CXXFLAGS=`sed "/^CXXFLAGS[ ]*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_CXXFLAGS" >&5
-$as_echo "$at_cv_env_QT_CXXFLAGS" >&6; }
- QT_CXXFLAGS=$at_cv_env_QT_CXXFLAGS
-
-
- # Find the INCPATH of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the INCPATH to use with Qt" >&5
-$as_echo_n "checking for the INCPATH to use with Qt... " >&6; }
-if test "${at_cv_env_QT_INCPATH+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_INCPATH=`sed "/^INCPATH[ ]*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_INCPATH" >&5
-$as_echo "$at_cv_env_QT_INCPATH" >&6; }
- QT_INCPATH=$at_cv_env_QT_INCPATH
-
-
- QT_CPPFLAGS="$at_cv_env_QT_DEFINES $at_cv_env_QT_INCPATH"
-
-
- # Find the LFLAGS of Qt (Should have been named LDFLAGS)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the LDFLAGS to use with Qt" >&5
-$as_echo_n "checking for the LDFLAGS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_LDFLAGS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_LDFLAGS=`sed "/^LDFLAGS[ ]*=/!d;$qt_sed_filter" $at_mfile`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_LDFLAGS" >&5
-$as_echo "$at_cv_env_QT_LDFLAGS" >&6; }
- QT_LFLAGS=$at_cv_env_QT_LDFLAGS
-
- QT_LDFLAGS=$at_cv_env_QT_LDFLAGS
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether host operating system is Darwin" >&5
-$as_echo_n "checking whether host operating system is Darwin... " >&6; }
- at_darwin="no"
- case $host_os in
- darwin*)
- at_darwin="yes"
- ;;
- esac
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_darwin" >&5
-$as_echo "$at_darwin" >&6; }
-
- # Find the LIBS of Qt.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the LIBS to use with Qt" >&5
-$as_echo_n "checking for the LIBS to use with Qt... " >&6; }
-if test "${at_cv_env_QT_LIBS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- at_cv_env_QT_LIBS=`sed "/^LIBS[ ]*=/!d;$qt_sed_filter" $at_mfile`
- if test x$at_darwin = xyes; then
- # Fix QT_LIBS: as of today Libtool (GNU Libtool 1.5.23a) doesn't handle
- # -F properly. The "bug" has been fixed on 22 October 2006
- # by Peter O'Gorman but we provide backward compatibility here.
- at_cv_env_QT_LIBS=`echo "$at_cv_env_QT_LIBS" \
- | sed 's/^-F/-Wl,-F/;s/ -F/ -Wl,-F/g'`
- fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_env_QT_LIBS" >&5
-$as_echo "$at_cv_env_QT_LIBS" >&6; }
- QT_LIBS=$at_cv_env_QT_LIBS
-
-
- cd "$my_configure_pwd" || echo 'WTF!'
- rm -rf "$my_tmpdir"
-
-
- if test x"$QMAKE" = x; then
- as_fn_error $? "\$QMAKE is empty. \
-Did you invoke AT_WITH_QT before AT_REQUIRE_QT_VERSION?" "$LINENO" 5
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Qt's version" >&5
-$as_echo_n "checking for Qt's version... " >&6; }
-if test "${at_cv_QT_VERSION+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- echo "$as_me:$LINENO: Running $QMAKE --version:" >&5
- $QMAKE --version >&5 2>&1
- qmake_version_sed='/^.*\([0-9]\.[0-9]\.[0-9]\).*$/!d;s//\1/'
- at_cv_QT_VERSION=`$QMAKE --version 2>&1 | sed "$qmake_version_sed"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $at_cv_QT_VERSION" >&5
-$as_echo "$at_cv_QT_VERSION" >&6; }
- if test x"$at_cv_QT_VERSION" = x; then
- as_fn_error $? "Cannot detect Qt's version." "$LINENO" 5
- fi
- QT_VERSION=$at_cv_QT_VERSION
-
- as_arg_v1=$QT_VERSION
-as_arg_v2=4.3
-awk "$as_awk_strverscmp" v1="$as_arg_v1" v2="$as_arg_v2" /dev/null
-case $? in #(
- 1) :
- as_fn_error $? "This package requires Qt 4.3 or above." "$LINENO" 5 ;; #(
- 0) :
- ;; #(
- 2) :
- ;; #(
- *) :
- ;;
-esac
-
- test_qt=true
-fi
- if test x$test_qt = xtrue; then
- USE_QT_TRUE=
- USE_QT_FALSE='#'
-else
- USE_QT_TRUE='#'
- USE_QT_FALSE=
-fi
-
-
-# Check whether --enable-python was given.
-if test "${enable_python+set}" = set; then :
- enableval=$enable_python; case "${enableval}" in
- yes) python=true ;;
- no) python=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-python" "$LINENO" 5 ;;
-esac
-else
- python=false
-fi
-
-if (test x$langall = xtrue || test x$python = xtrue) ;then
- # Extract the first word of "python-config", so it can be a program name with args.
-set dummy python-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_PYTHON_HEADERS+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$PYTHON_HEADERS"; then
- ac_cv_prog_PYTHON_HEADERS="$PYTHON_HEADERS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_PYTHON_HEADERS="`python-config --cflags`"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-PYTHON_HEADERS=$ac_cv_prog_PYTHON_HEADERS
-if test -n "$PYTHON_HEADERS"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON_HEADERS" >&5
-$as_echo "$PYTHON_HEADERS" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- # Extract the first word of "swig$EXEEXT", so it can be a program name with args.
-set dummy swig$EXEEXT; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_HAVE_SWIG+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$HAVE_SWIG"; then
- ac_cv_prog_HAVE_SWIG="$HAVE_SWIG" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_HAVE_SWIG="true"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-HAVE_SWIG=$ac_cv_prog_HAVE_SWIG
-if test -n "$HAVE_SWIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HAVE_SWIG" >&5
-$as_echo "$HAVE_SWIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- if (test "$PYTHON_HEADERS" && test "$HAVE_SWIG") ;then
- test_python=true
-
-
-
-
- # Find any Python interpreter.
- if test -z "$PYTHON"; then
- for ac_prog in python python2 python3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_PYTHON+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- case $PYTHON in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-PYTHON=$ac_cv_path_PYTHON
-if test -n "$PYTHON"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
-$as_echo "$PYTHON" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$PYTHON" && break
-done
-test -n "$PYTHON" || PYTHON=":"
-
- fi
- am_display_PYTHON=python
-
-
- if test "$PYTHON" = :; then
- as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
- else
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
-$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
-if test "${am_cv_python_version+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
-$as_echo "$am_cv_python_version" >&6; }
- PYTHON_VERSION=$am_cv_python_version
-
-
-
- PYTHON_PREFIX='${prefix}'
-
- PYTHON_EXEC_PREFIX='${exec_prefix}'
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
-$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
-if test "${am_cv_python_platform+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
-$as_echo "$am_cv_python_platform" >&6; }
- PYTHON_PLATFORM=$am_cv_python_platform
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
-$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
-if test "${am_cv_python_pythondir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$prefix" = xNONE
- then
- am_py_prefix=$ac_default_prefix
- else
- am_py_prefix=$prefix
- fi
- am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null ||
- echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pythondir in
- $am_py_prefix*)
- am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
- am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
- ;;
- *)
- case $am_py_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
-$as_echo "$am_cv_python_pythondir" >&6; }
- pythondir=$am_cv_python_pythondir
-
-
-
- pkgpythondir=\${pythondir}/$PACKAGE
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
-$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
-if test "${am_cv_python_pyexecdir+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$exec_prefix" = xNONE
- then
- am_py_exec_prefix=$am_py_prefix
- else
- am_py_exec_prefix=$exec_prefix
- fi
- am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null ||
- echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
- case $am_cv_python_pyexecdir in
- $am_py_exec_prefix*)
- am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
- am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
- ;;
- *)
- case $am_py_exec_prefix in
- /usr|/System*) ;;
- *)
- am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
- ;;
- esac
- ;;
- esac
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
-$as_echo "$am_cv_python_pyexecdir" >&6; }
- pyexecdir=$am_cv_python_pyexecdir
-
-
-
- pkgpyexecdir=\${pyexecdir}/$PACKAGE
-
-
-
- fi
-
-
- else
- echo Please install python-dev and swig packages
- exit
- fi
-fi
- if test x$test_python = xtrue ; then
- USE_PYTHON_TRUE=
- USE_PYTHON_FALSE='#'
-else
- USE_PYTHON_TRUE='#'
- USE_PYTHON_FALSE=
-fi
-
-
-# Check whether --enable-octave was given.
-if test "${enable_octave+set}" = set; then :
- enableval=$enable_octave; case "${enableval}" in
- yes) octave=true ;;
- no) octave=false ;;
- *) as_fn_error $? "bad value ${enableval} for --enable-octave" "$LINENO" 5 ;;
-esac
-else
- octave=false
-fi
-
-if (test x$langall = xtrue || test x$octave = xtrue) ;then
- # Extract the first word of "octave-config", so it can be a program name with args.
-set dummy octave-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_OCTAVE+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$OCTAVE"; then
- ac_cv_prog_OCTAVE="$OCTAVE" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_OCTAVE="octave-config"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-OCTAVE=$ac_cv_prog_OCTAVE
-if test -n "$OCTAVE"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCTAVE" >&5
-$as_echo "$OCTAVE" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-# find Octave arch
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Octave arch" >&5
-$as_echo_n "checking for Octave arch... " >&6; }
- OCTAVE_ARCH=`$OCTAVE -p CANONICAL_HOST_TYPE`-`$OCTAVE -p API_VERSION`
- OCTAVE_INCFLAGS="-I`$OCTAVE -p OCTINCLUDEDIR`"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OCTAVE_ARCH" >&5
-$as_echo "$OCTAVE_ARCH" >&6; }
- OCTAVE_ARCH=$OCTAVE_ARCH
-
- OCTAVE_INCFLAGS=$OCTAVE_INCFLAGS
-
- test_octave=true
-fi
- if test x$test_octave = xtrue ; then
- USE_OCTAVE_TRUE=
- USE_OCTAVE_FALSE='#'
-else
- USE_OCTAVE_TRUE='#'
- USE_OCTAVE_FALSE=
-fi
-
-
-AM_CXXFLAGS="$AM_CXXFLAGS -Wall $GSL_FLAGS"
-
-
-ac_config_files="$ac_config_files Makefile src/Makefile include/Makefile widgets/Makefile lang/Makefile utils/Makefile examples/Makefile"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
- for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
-
- (set) 2>&1 |
- case $as_nl`(ac_space=' '; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- # `set' does not quote correctly, so add quotes: double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \.
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;; #(
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-) |
- sed '
- /^ac_cv_env_/b end
- t clear
- :clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
- if test -w "$cache_file"; then
- test "x$cache_file" != "x/dev/null" &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
- cat confcache >$cache_file
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
- fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-DEFS=-DHAVE_CONFIG_H
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
- ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
- # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
- # will be set to the directory where LIBOBJS objects are built.
- as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
- as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
- if test -n "$EXEEXT"; then
- am__EXEEXT_TRUE=
- am__EXEEXT_FALSE='#'
-else
- am__EXEEXT_TRUE='#'
- am__EXEEXT_FALSE=
-fi
-
-if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
- as_fn_error $? "conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PTHREAD_TRUE}" && test -z "${USE_PTHREAD_FALSE}"; then
- as_fn_error $? "conditional \"USE_PTHREAD\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_GSL_TRUE}" && test -z "${USE_GSL_FALSE}"; then
- as_fn_error $? "conditional \"USE_GSL\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_GLUT_TRUE}" && test -z "${USE_GLUT_FALSE}"; then
- as_fn_error $? "conditional \"USE_GLUT\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_HDF5_TRUE}" && test -z "${USE_HDF5_FALSE}"; then
- as_fn_error $? "conditional \"USE_HDF5\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_HDF4_TRUE}" && test -z "${USE_HDF4_FALSE}"; then
- as_fn_error $? "conditional \"USE_HDF4\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_JPEG_TRUE}" && test -z "${USE_JPEG_FALSE}"; then
- as_fn_error $? "conditional \"USE_JPEG\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PDF_TRUE}" && test -z "${USE_PDF_FALSE}"; then
- as_fn_error $? "conditional \"USE_PDF\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_U3D_TRUE}" && test -z "${USE_U3D_FALSE}"; then
- as_fn_error $? "conditional \"USE_U3D\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_FLTK_TRUE}" && test -z "${USE_FLTK_FALSE}"; then
- as_fn_error $? "conditional \"USE_FLTK\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_QT_TRUE}" && test -z "${USE_QT_FALSE}"; then
- as_fn_error $? "conditional \"USE_QT\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_PYTHON_TRUE}" && test -z "${USE_PYTHON_FALSE}"; then
- as_fn_error $? "conditional \"USE_PYTHON\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${USE_OCTAVE_TRUE}" && test -z "${USE_OCTAVE_FALSE}"; then
- as_fn_error $? "conditional \"USE_OCTAVE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-
-: ${CONFIG_STATUS=./config.status}
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-case $0 in #((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-# as_fn_error STATUS ERROR [LINENO LOG_FD]
-# ----------------------------------------
-# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-# script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} # as_fn_error
-
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-# as_fn_append VAR VALUE
-# ----------------------
-# Append the text in VALUE to the end of the definition contained in VAR. Take
-# advantage of any shell optimizations that allow amortized linear growth over
-# repeated appends, instead of the typical quadratic growth present in naive
-# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-# as_fn_arith ARG...
-# ------------------
-# Perform arithmetic evaluation on the ARGs, and store the result in the
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
-# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in #(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -p'
- fi
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-# as_fn_mkdir_p
-# -------------
-# Create "$as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} # as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by mathgl $as_me 2.0, which was
-generated by GNU Autoconf 2.67. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-case $ac_config_headers in *"
-"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
-esac
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_headers="$ac_config_headers"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration. Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
- -h, --help print this help, then exit
- -V, --version print version number and configuration settings, then exit
- --config print configuration, then exit
- -q, --quiet, --silent
- do not print progress messages
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
- --header=FILE[:TEMPLATE]
- instantiate the configuration header FILE
-
-Configuration files:
-$config_files
-
-Configuration headers:
-$config_headers
-
-Configuration commands:
-$config_commands
-
-Report bugs to <mathgl.abalakin at gmail.com>."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-mathgl config.status 2.0
-configured by $0, generated by GNU Autoconf 2.67,
- with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-MKDIR_P='$MKDIR_P'
-AWK='$AWK'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=?*)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
- ac_shift=:
- ;;
- --*=)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=
- ac_shift=:
- ;;
- *)
- ac_option=$1
- ac_optarg=$2
- ac_shift=shift
- ;;
- esac
-
- case $ac_option in
- # Handling of the options.
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- ac_cs_recheck=: ;;
- --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
- $as_echo "$ac_cs_version"; exit ;;
- --config | --confi | --conf | --con | --co | --c )
- $as_echo "$ac_cs_config"; exit ;;
- --debug | --debu | --deb | --de | --d | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- '') as_fn_error $? "missing file argument" ;;
- esac
- as_fn_append CONFIG_FILES " '$ac_optarg'"
- ac_need_defaults=false;;
- --header | --heade | --head | --hea )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- as_fn_append CONFIG_HEADERS " '$ac_optarg'"
- ac_need_defaults=false;;
- --he | --h)
- # Conflict between --help and --header
- as_fn_error $? "ambiguous option: \`$1'
-Try \`$0 --help' for more information.";;
- --help | --hel | -h )
- $as_echo "$ac_cs_usage"; exit ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil | --si | --s)
- ac_cs_silent=: ;;
-
- # This is an error.
- -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
- *) as_fn_append ac_config_targets " $1"
- ac_need_defaults=false ;;
-
- esac
- shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
- exec 6>/dev/null
- ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
- shift
- \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
- CONFIG_SHELL='$SHELL'
- export CONFIG_SHELL
- exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
- $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
-
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-sed_quote_subst='$sed_quote_subst'
-double_quote_subst='$double_quote_subst'
-delay_variable_subst='$delay_variable_subst'
-AS='`$ECHO "X$AS" | $Xsed -e "$delay_single_quote_subst"`'
-DLLTOOL='`$ECHO "X$DLLTOOL" | $Xsed -e "$delay_single_quote_subst"`'
-OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`'
-macro_version='`$ECHO "X$macro_version" | $Xsed -e "$delay_single_quote_subst"`'
-macro_revision='`$ECHO "X$macro_revision" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared='`$ECHO "X$enable_shared" | $Xsed -e "$delay_single_quote_subst"`'
-enable_static='`$ECHO "X$enable_static" | $Xsed -e "$delay_single_quote_subst"`'
-pic_mode='`$ECHO "X$pic_mode" | $Xsed -e "$delay_single_quote_subst"`'
-enable_fast_install='`$ECHO "X$enable_fast_install" | $Xsed -e "$delay_single_quote_subst"`'
-host_alias='`$ECHO "X$host_alias" | $Xsed -e "$delay_single_quote_subst"`'
-host='`$ECHO "X$host" | $Xsed -e "$delay_single_quote_subst"`'
-host_os='`$ECHO "X$host_os" | $Xsed -e "$delay_single_quote_subst"`'
-build_alias='`$ECHO "X$build_alias" | $Xsed -e "$delay_single_quote_subst"`'
-build='`$ECHO "X$build" | $Xsed -e "$delay_single_quote_subst"`'
-build_os='`$ECHO "X$build_os" | $Xsed -e "$delay_single_quote_subst"`'
-SED='`$ECHO "X$SED" | $Xsed -e "$delay_single_quote_subst"`'
-Xsed='`$ECHO "X$Xsed" | $Xsed -e "$delay_single_quote_subst"`'
-GREP='`$ECHO "X$GREP" | $Xsed -e "$delay_single_quote_subst"`'
-EGREP='`$ECHO "X$EGREP" | $Xsed -e "$delay_single_quote_subst"`'
-FGREP='`$ECHO "X$FGREP" | $Xsed -e "$delay_single_quote_subst"`'
-LD='`$ECHO "X$LD" | $Xsed -e "$delay_single_quote_subst"`'
-NM='`$ECHO "X$NM" | $Xsed -e "$delay_single_quote_subst"`'
-LN_S='`$ECHO "X$LN_S" | $Xsed -e "$delay_single_quote_subst"`'
-max_cmd_len='`$ECHO "X$max_cmd_len" | $Xsed -e "$delay_single_quote_subst"`'
-ac_objext='`$ECHO "X$ac_objext" | $Xsed -e "$delay_single_quote_subst"`'
-exeext='`$ECHO "X$exeext" | $Xsed -e "$delay_single_quote_subst"`'
-lt_unset='`$ECHO "X$lt_unset" | $Xsed -e "$delay_single_quote_subst"`'
-lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`'
-lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`'
-reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`'
-reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`'
-file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`'
-AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`'
-AR_FLAGS='`$ECHO "X$AR_FLAGS" | $Xsed -e "$delay_single_quote_subst"`'
-STRIP='`$ECHO "X$STRIP" | $Xsed -e "$delay_single_quote_subst"`'
-RANLIB='`$ECHO "X$RANLIB" | $Xsed -e "$delay_single_quote_subst"`'
-old_postinstall_cmds='`$ECHO "X$old_postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_postuninstall_cmds='`$ECHO "X$old_postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_cmds='`$ECHO "X$old_archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-CC='`$ECHO "X$CC" | $Xsed -e "$delay_single_quote_subst"`'
-CFLAGS='`$ECHO "X$CFLAGS" | $Xsed -e "$delay_single_quote_subst"`'
-compiler='`$ECHO "X$compiler" | $Xsed -e "$delay_single_quote_subst"`'
-GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
-objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`'
-SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`'
-ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`'
-MAGIC_CMD='`$ECHO "X$MAGIC_CMD" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_no_builtin_flag='`$ECHO "X$lt_prog_compiler_no_builtin_flag" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_wl='`$ECHO "X$lt_prog_compiler_wl" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`'
-need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`'
-DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`'
-NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`'
-LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`'
-OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`'
-OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`'
-libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`'
-shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_need_lc='`$ECHO "X$archive_cmds_need_lc" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared_with_static_runtimes='`$ECHO "X$enable_shared_with_static_runtimes" | $Xsed -e "$delay_single_quote_subst"`'
-export_dynamic_flag_spec='`$ECHO "X$export_dynamic_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-whole_archive_flag_spec='`$ECHO "X$whole_archive_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_needs_object='`$ECHO "X$compiler_needs_object" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_new_cmds='`$ECHO "X$old_archive_from_new_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_expsyms_cmds='`$ECHO "X$old_archive_from_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds='`$ECHO "X$archive_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-archive_expsym_cmds='`$ECHO "X$archive_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-module_cmds='`$ECHO "X$module_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-module_expsym_cmds='`$ECHO "X$module_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-with_gnu_ld='`$ECHO "X$with_gnu_ld" | $Xsed -e "$delay_single_quote_subst"`'
-allow_undefined_flag='`$ECHO "X$allow_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
-no_undefined_flag='`$ECHO "X$no_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec='`$ECHO "X$hardcode_libdir_flag_spec" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_ld='`$ECHO "X$hardcode_libdir_flag_spec_ld" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_separator='`$ECHO "X$hardcode_libdir_separator" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct='`$ECHO "X$hardcode_direct" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_absolute='`$ECHO "X$hardcode_direct_absolute" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_minus_L='`$ECHO "X$hardcode_minus_L" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_shlibpath_var='`$ECHO "X$hardcode_shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_automatic='`$ECHO "X$hardcode_automatic" | $Xsed -e "$delay_single_quote_subst"`'
-inherit_rpath='`$ECHO "X$inherit_rpath" | $Xsed -e "$delay_single_quote_subst"`'
-link_all_deplibs='`$ECHO "X$link_all_deplibs" | $Xsed -e "$delay_single_quote_subst"`'
-fix_srcfile_path='`$ECHO "X$fix_srcfile_path" | $Xsed -e "$delay_single_quote_subst"`'
-always_export_symbols='`$ECHO "X$always_export_symbols" | $Xsed -e "$delay_single_quote_subst"`'
-export_symbols_cmds='`$ECHO "X$export_symbols_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-exclude_expsyms='`$ECHO "X$exclude_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
-include_expsyms='`$ECHO "X$include_expsyms" | $Xsed -e "$delay_single_quote_subst"`'
-prelink_cmds='`$ECHO "X$prelink_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-file_list_spec='`$ECHO "X$file_list_spec" | $Xsed -e "$delay_single_quote_subst"`'
-variables_saved_for_relink='`$ECHO "X$variables_saved_for_relink" | $Xsed -e "$delay_single_quote_subst"`'
-need_lib_prefix='`$ECHO "X$need_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`'
-need_version='`$ECHO "X$need_version" | $Xsed -e "$delay_single_quote_subst"`'
-version_type='`$ECHO "X$version_type" | $Xsed -e "$delay_single_quote_subst"`'
-runpath_var='`$ECHO "X$runpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-shlibpath_var='`$ECHO "X$shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`'
-shlibpath_overrides_runpath='`$ECHO "X$shlibpath_overrides_runpath" | $Xsed -e "$delay_single_quote_subst"`'
-libname_spec='`$ECHO "X$libname_spec" | $Xsed -e "$delay_single_quote_subst"`'
-library_names_spec='`$ECHO "X$library_names_spec" | $Xsed -e "$delay_single_quote_subst"`'
-soname_spec='`$ECHO "X$soname_spec" | $Xsed -e "$delay_single_quote_subst"`'
-postinstall_cmds='`$ECHO "X$postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-postuninstall_cmds='`$ECHO "X$postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-finish_cmds='`$ECHO "X$finish_cmds" | $Xsed -e "$delay_single_quote_subst"`'
-finish_eval='`$ECHO "X$finish_eval" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_into_libs='`$ECHO "X$hardcode_into_libs" | $Xsed -e "$delay_single_quote_subst"`'
-sys_lib_search_path_spec='`$ECHO "X$sys_lib_search_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
-sys_lib_dlsearch_path_spec='`$ECHO "X$sys_lib_dlsearch_path_spec" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_action='`$ECHO "X$hardcode_action" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen='`$ECHO "X$enable_dlopen" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen_self='`$ECHO "X$enable_dlopen_self" | $Xsed -e "$delay_single_quote_subst"`'
-enable_dlopen_self_static='`$ECHO "X$enable_dlopen_self_static" | $Xsed -e "$delay_single_quote_subst"`'
-old_striplib='`$ECHO "X$old_striplib" | $Xsed -e "$delay_single_quote_subst"`'
-striplib='`$ECHO "X$striplib" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_dirs='`$ECHO "X$compiler_lib_search_dirs" | $Xsed -e "$delay_single_quote_subst"`'
-predep_objects='`$ECHO "X$predep_objects" | $Xsed -e "$delay_single_quote_subst"`'
-postdep_objects='`$ECHO "X$postdep_objects" | $Xsed -e "$delay_single_quote_subst"`'
-predeps='`$ECHO "X$predeps" | $Xsed -e "$delay_single_quote_subst"`'
-postdeps='`$ECHO "X$postdeps" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_path='`$ECHO "X$compiler_lib_search_path" | $Xsed -e "$delay_single_quote_subst"`'
-LD_CXX='`$ECHO "X$LD_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_cmds_CXX='`$ECHO "X$old_archive_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_CXX='`$ECHO "X$compiler_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-GCC_CXX='`$ECHO "X$GCC_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "X$lt_prog_compiler_no_builtin_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_wl_CXX='`$ECHO "X$lt_prog_compiler_wl_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_pic_CXX='`$ECHO "X$lt_prog_compiler_pic_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_prog_compiler_static_CXX='`$ECHO "X$lt_prog_compiler_static_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-lt_cv_prog_compiler_c_o_CXX='`$ECHO "X$lt_cv_prog_compiler_c_o_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_need_lc_CXX='`$ECHO "X$archive_cmds_need_lc_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-enable_shared_with_static_runtimes_CXX='`$ECHO "X$enable_shared_with_static_runtimes_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-export_dynamic_flag_spec_CXX='`$ECHO "X$export_dynamic_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-whole_archive_flag_spec_CXX='`$ECHO "X$whole_archive_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_needs_object_CXX='`$ECHO "X$compiler_needs_object_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_new_cmds_CXX='`$ECHO "X$old_archive_from_new_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-old_archive_from_expsyms_cmds_CXX='`$ECHO "X$old_archive_from_expsyms_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_cmds_CXX='`$ECHO "X$archive_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-archive_expsym_cmds_CXX='`$ECHO "X$archive_expsym_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-module_cmds_CXX='`$ECHO "X$module_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-module_expsym_cmds_CXX='`$ECHO "X$module_expsym_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-with_gnu_ld_CXX='`$ECHO "X$with_gnu_ld_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-allow_undefined_flag_CXX='`$ECHO "X$allow_undefined_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-no_undefined_flag_CXX='`$ECHO "X$no_undefined_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_CXX='`$ECHO "X$hardcode_libdir_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_flag_spec_ld_CXX='`$ECHO "X$hardcode_libdir_flag_spec_ld_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_libdir_separator_CXX='`$ECHO "X$hardcode_libdir_separator_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_CXX='`$ECHO "X$hardcode_direct_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_direct_absolute_CXX='`$ECHO "X$hardcode_direct_absolute_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_minus_L_CXX='`$ECHO "X$hardcode_minus_L_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_shlibpath_var_CXX='`$ECHO "X$hardcode_shlibpath_var_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_automatic_CXX='`$ECHO "X$hardcode_automatic_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-inherit_rpath_CXX='`$ECHO "X$inherit_rpath_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-link_all_deplibs_CXX='`$ECHO "X$link_all_deplibs_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-fix_srcfile_path_CXX='`$ECHO "X$fix_srcfile_path_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-always_export_symbols_CXX='`$ECHO "X$always_export_symbols_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-export_symbols_cmds_CXX='`$ECHO "X$export_symbols_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-exclude_expsyms_CXX='`$ECHO "X$exclude_expsyms_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-include_expsyms_CXX='`$ECHO "X$include_expsyms_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-prelink_cmds_CXX='`$ECHO "X$prelink_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-file_list_spec_CXX='`$ECHO "X$file_list_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-hardcode_action_CXX='`$ECHO "X$hardcode_action_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_dirs_CXX='`$ECHO "X$compiler_lib_search_dirs_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-predep_objects_CXX='`$ECHO "X$predep_objects_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-postdep_objects_CXX='`$ECHO "X$postdep_objects_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-predeps_CXX='`$ECHO "X$predeps_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-postdeps_CXX='`$ECHO "X$postdeps_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-compiler_lib_search_path_CXX='`$ECHO "X$compiler_lib_search_path_CXX" | $Xsed -e "$delay_single_quote_subst"`'
-
-LTCC='$LTCC'
-LTCFLAGS='$LTCFLAGS'
-compiler='$compiler_DEFAULT'
-
-# Quote evaled strings.
-for var in SED \
-GREP \
-EGREP \
-FGREP \
-LD \
-NM \
-LN_S \
-lt_SP2NL \
-lt_NL2SP \
-reload_flag \
-deplibs_check_method \
-file_magic_cmd \
-AR \
-AR_FLAGS \
-STRIP \
-RANLIB \
-CC \
-CFLAGS \
-compiler \
-lt_cv_sys_global_symbol_pipe \
-lt_cv_sys_global_symbol_to_cdecl \
-lt_cv_sys_global_symbol_to_c_name_address \
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
-SHELL \
-ECHO \
-lt_prog_compiler_no_builtin_flag \
-lt_prog_compiler_wl \
-lt_prog_compiler_pic \
-lt_prog_compiler_static \
-lt_cv_prog_compiler_c_o \
-need_locks \
-DSYMUTIL \
-NMEDIT \
-LIPO \
-OTOOL \
-OTOOL64 \
-shrext_cmds \
-export_dynamic_flag_spec \
-whole_archive_flag_spec \
-compiler_needs_object \
-with_gnu_ld \
-allow_undefined_flag \
-no_undefined_flag \
-hardcode_libdir_flag_spec \
-hardcode_libdir_flag_spec_ld \
-hardcode_libdir_separator \
-fix_srcfile_path \
-exclude_expsyms \
-include_expsyms \
-file_list_spec \
-variables_saved_for_relink \
-libname_spec \
-library_names_spec \
-soname_spec \
-finish_eval \
-old_striplib \
-striplib \
-compiler_lib_search_dirs \
-predep_objects \
-postdep_objects \
-predeps \
-postdeps \
-compiler_lib_search_path \
-LD_CXX \
-compiler_CXX \
-lt_prog_compiler_no_builtin_flag_CXX \
-lt_prog_compiler_wl_CXX \
-lt_prog_compiler_pic_CXX \
-lt_prog_compiler_static_CXX \
-lt_cv_prog_compiler_c_o_CXX \
-export_dynamic_flag_spec_CXX \
-whole_archive_flag_spec_CXX \
-compiler_needs_object_CXX \
-with_gnu_ld_CXX \
-allow_undefined_flag_CXX \
-no_undefined_flag_CXX \
-hardcode_libdir_flag_spec_CXX \
-hardcode_libdir_flag_spec_ld_CXX \
-hardcode_libdir_separator_CXX \
-fix_srcfile_path_CXX \
-exclude_expsyms_CXX \
-include_expsyms_CXX \
-file_list_spec_CXX \
-compiler_lib_search_dirs_CXX \
-predep_objects_CXX \
-postdep_objects_CXX \
-predeps_CXX \
-postdeps_CXX \
-compiler_lib_search_path_CXX; do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[\\\\\\\`\\"\\\$]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Double-quote double-evaled strings.
-for var in reload_cmds \
-old_postinstall_cmds \
-old_postuninstall_cmds \
-old_archive_cmds \
-extract_expsyms_cmds \
-old_archive_from_new_cmds \
-old_archive_from_expsyms_cmds \
-archive_cmds \
-archive_expsym_cmds \
-module_cmds \
-module_expsym_cmds \
-export_symbols_cmds \
-prelink_cmds \
-postinstall_cmds \
-postuninstall_cmds \
-finish_cmds \
-sys_lib_search_path_spec \
-sys_lib_dlsearch_path_spec \
-old_archive_cmds_CXX \
-old_archive_from_new_cmds_CXX \
-old_archive_from_expsyms_cmds_CXX \
-archive_cmds_CXX \
-archive_expsym_cmds_CXX \
-module_cmds_CXX \
-module_expsym_cmds_CXX \
-export_symbols_cmds_CXX \
-prelink_cmds_CXX; do
- case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
- *[\\\\\\\`\\"\\\$]*)
- eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
- ;;
- *)
- eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
- ;;
- esac
-done
-
-# Fix-up fallback echo if it was mangled by the above quoting rules.
-case \$lt_ECHO in
-*'\\\$0 --fallback-echo"') lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\$0 --fallback-echo"\$/\$0 --fallback-echo"/'\`
- ;;
-esac
-
-ac_aux_dir='$ac_aux_dir'
-xsi_shell='$xsi_shell'
-lt_shell_append='$lt_shell_append'
-
-# See if we are running on zsh, and set the options which allow our
-# commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
-fi
-
-
- PACKAGE='$PACKAGE'
- VERSION='$VERSION'
- TIMESTAMP='$TIMESTAMP'
- RM='$RM'
- ofile='$ofile'
-
-
-
-
-
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
- case $ac_config_target in
- "include/mgl/config.h") CONFIG_HEADERS="$CONFIG_HEADERS include/mgl/config.h" ;;
- "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
- "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
- "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
- "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;;
- "widgets/Makefile") CONFIG_FILES="$CONFIG_FILES widgets/Makefile" ;;
- "lang/Makefile") CONFIG_FILES="$CONFIG_FILES lang/Makefile" ;;
- "utils/Makefile") CONFIG_FILES="$CONFIG_FILES utils/Makefile" ;;
- "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
-
- *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;;
- esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
- test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
- test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
- tmp=
- trap 'exit_status=$?
- { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
-' 0
- trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
- tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
-} ||
-{
- tmp=./conf$$-$RANDOM
- (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
- eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
- ac_cs_awk_cr='\\r'
-else
- ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$tmp/subs1.awk" &&
-_ACEOF
-
-
-{
- echo "cat >conf$$subs.awk <<_ACEOF" &&
- echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
- echo "_ACEOF"
-} >conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
- . ./conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
- ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
- if test $ac_delim_n = $ac_delim_num; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
- N
- s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$tmp/subs1.awk" <<_ACAWK &&
- for (key in S) S_is_set[key] = 1
- FS = ""
-
-}
-{
- line = $ 0
- nfields = split(line, field, "@")
- substed = 0
- len = length(field[1])
- for (i = 2; i < nfields; i++) {
- key = field[i]
- keylen = length(key)
- if (S_is_set[key]) {
- value = S[key]
- line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
- len += length(value) + length(field[++i])
- substed = 1
- } else
- len += 1 + keylen
- }
-
- print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
- sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
- cat
-fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
- || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
-h
-s///
-s/^/:/
-s/[ ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[ ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[ ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-# Set up the scripts for CONFIG_HEADERS section.
-# No need to generate them if there are no CONFIG_HEADERS.
-# This happens for instance with `./config.status Makefile'.
-if test -n "$CONFIG_HEADERS"; then
-cat >"$tmp/defines.awk" <<\_ACAWK ||
-BEGIN {
-_ACEOF
-
-# Transform confdefs.h into an awk script `defines.awk', embedded as
-# here-document in config.status, that substitutes the proper values into
-# config.h.in to produce config.h.
-
-# Create a delimiter string that does not exist in confdefs.h, to ease
-# handling of long lines.
-ac_delim='%!_!# '
-for ac_last_try in false false :; do
- ac_t=`sed -n "/$ac_delim/p" confdefs.h`
- if test -z "$ac_t"; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-
-# For the awk script, D is an array of macro values keyed by name,
-# likewise P contains macro parameters if any. Preserve backslash
-# newline sequences.
-
-ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
-sed -n '
-s/.\{148\}/&'"$ac_delim"'/g
-t rset
-:rset
-s/^[ ]*#[ ]*define[ ][ ]*/ /
-t def
-d
-:def
-s/\\$//
-t bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3"/p
-s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
-d
-:bsnl
-s/["\\]/\\&/g
-s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
-D["\1"]=" \3\\\\\\n"\\/p
-t cont
-s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
-t cont
-d
-:cont
-n
-s/.\{148\}/&'"$ac_delim"'/g
-t clear
-:clear
-s/\\$//
-t bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/"/p
-d
-:bsnlc
-s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
-b cont
-' <confdefs.h | sed '
-s/'"$ac_delim"'/"\\\
-"/g' >>$CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- for (key in D) D_is_set[key] = 1
- FS = ""
-}
-/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
- line = \$ 0
- split(line, arg, " ")
- if (arg[1] == "#") {
- defundef = arg[2]
- mac1 = arg[3]
- } else {
- defundef = substr(arg[1], 2)
- mac1 = arg[2]
- }
- split(mac1, mac2, "(") #)
- macro = mac2[1]
- prefix = substr(line, 1, index(line, defundef) - 1)
- if (D_is_set[macro]) {
- # Preserve the white space surrounding the "#".
- print prefix "define", macro P[macro] D[macro]
- next
- } else {
- # Replace #undef with comments. This is necessary, for example,
- # in the case of _POSIX_SOURCE, which is predefined and required
- # on some systems where configure will not decide to define it.
- if (defundef == "undef") {
- print "/*", prefix defundef, macro, "*/"
- next
- }
- }
-}
-{ print }
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
- as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
-fi # test -n "$CONFIG_HEADERS"
-
-
-eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
-shift
-for ac_tag
-do
- case $ac_tag in
- :[FHLC]) ac_mode=$ac_tag; continue;;
- esac
- case $ac_mode$ac_tag in
- :[FHL]*:*);;
- :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;;
- :[FH]-) ac_tag=-:-;;
- :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
- esac
- ac_save_IFS=$IFS
- IFS=:
- set x $ac_tag
- IFS=$ac_save_IFS
- shift
- ac_file=$1
- shift
-
- case $ac_mode in
- :L) ac_source=$1;;
- :[FH])
- ac_file_inputs=
- for ac_f
- do
- case $ac_f in
- -) ac_f="$tmp/stdin";;
- *) # Look for the file first in the build tree, then in the source tree
- # (if the path is not absolute). The absolute path cannot be DOS-style,
- # because $ac_f cannot contain `:'.
- test -f "$ac_f" ||
- case $ac_f in
- [\\/$]*) false;;
- *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
- esac ||
- as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;;
- esac
- case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
- as_fn_append ac_file_inputs " '$ac_f'"
- done
-
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- configure_input='Generated from '`
- $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
- `' by configure.'
- if test x"$ac_file" != x-; then
- configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
- fi
- # Neutralize special characters interpreted by sed in replacement strings.
- case $configure_input in #(
- *\&* | *\|* | *\\* )
- ac_sed_conf_input=`$as_echo "$configure_input" |
- sed 's/[\\\\&|]/\\\\&/g'`;; #(
- *) ac_sed_conf_input=$configure_input;;
- esac
-
- case $ac_tag in
- *:-:* | *:-) cat >"$tmp/stdin" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
- esac
- ;;
- esac
-
- ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir="$ac_dir"; as_fn_mkdir_p
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
- case $ac_mode in
- :F)
- #
- # CONFIG_FILE
- #
-
- case $INSTALL in
- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
- esac
- ac_MKDIR_P=$MKDIR_P
- case $MKDIR_P in
- [\\/$]* | ?:[\\/]* ) ;;
- */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
- esac
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
- p
- q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- ac_datarootdir_hack='
- s&@datadir@&$datadir&g
- s&@docdir@&$docdir&g
- s&@infodir@&$infodir&g
- s&@localedir@&$localedir&g
- s&@mandir@&$mandir&g
- s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-s&@INSTALL@&$ac_INSTALL&;t t
-s&@MKDIR_P@&$ac_MKDIR_P&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&2;}
-
- rm -f "$tmp/stdin"
- case $ac_file in
- -) cat "$tmp/out" && rm -f "$tmp/out";;
- *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
- esac \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
- :H)
- #
- # CONFIG_HEADER
- #
- if test x"$ac_file" != x-; then
- {
- $as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
- } >"$tmp/config.h" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
- else
- rm -f "$ac_file"
- mv "$tmp/config.h" "$ac_file" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- fi
- else
- $as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
- || as_fn_error $? "could not create -" "$LINENO" 5
- fi
-# Compute "$ac_file"'s index in $config_headers.
-_am_arg="$ac_file"
-_am_stamp_count=1
-for _am_header in $config_headers :; do
- case $_am_header in
- $_am_arg | $_am_arg:* )
- break ;;
- * )
- _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
-done
-echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
-$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$_am_arg" : 'X\(//\)[^/]' \| \
- X"$_am_arg" : 'X\(//\)$' \| \
- X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$_am_arg" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`/stamp-h$_am_stamp_count
- ;;
-
- :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
- esac
-
-
- case $ac_file$ac_mode in
- "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$mf" : 'X\(//\)[^/]' \| \
- X"$mf" : 'X\(//\)$' \| \
- X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$file" : 'X\(//\)[^/]' \| \
- X"$file" : 'X\(//\)$' \| \
- X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir=$dirpart/$fdir; as_fn_mkdir_p
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
- ;;
- "libtool":C)
-
- # See if we are running on zsh, and set the options which allow our
- # commands through without removal of \ escapes.
- if test -n "${ZSH_VERSION+set}" ; then
- setopt NO_GLOB_SUBST
- fi
-
- cfgfile="${ofile}T"
- trap "$RM \"$cfgfile\"; exit 1" 1 2 15
- $RM "$cfgfile"
-
- cat <<_LT_EOF >> "$cfgfile"
-#! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-#
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-# 2006, 2007, 2008 Free Software Foundation, Inc.
-# Written by Gordon Matzigkeit, 1996
-#
-# This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
-#
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING. If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-
-# The names of the tagged configurations supported by this script.
-available_tags="CXX "
-
-# ### BEGIN LIBTOOL CONFIG
-
-# Assembler program.
-AS=$AS
-
-# DLL creation program.
-DLLTOOL=$DLLTOOL
-
-# Object dumper program.
-OBJDUMP=$OBJDUMP
-
-# Which release of libtool.m4 was used?
-macro_version=$macro_version
-macro_revision=$macro_revision
-
-# Whether or not to build shared libraries.
-build_libtool_libs=$enable_shared
-
-# Whether or not to build static libraries.
-build_old_libs=$enable_static
-
-# What type of objects to build.
-pic_mode=$pic_mode
-
-# Whether or not to optimize for fast installation.
-fast_install=$enable_fast_install
-
-# The host system.
-host_alias=$host_alias
-host=$host
-host_os=$host_os
-
-# The build system.
-build_alias=$build_alias
-build=$build
-build_os=$build_os
-
-# A sed program that does not truncate output.
-SED=$lt_SED
-
-# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-Xsed="\$SED -e 1s/^X//"
-
-# A grep program that handles long lines.
-GREP=$lt_GREP
-
-# An ERE matcher.
-EGREP=$lt_EGREP
-
-# A literal string matcher.
-FGREP=$lt_FGREP
-
-# A BSD- or MS-compatible name lister.
-NM=$lt_NM
-
-# Whether we need soft or hard links.
-LN_S=$lt_LN_S
-
-# What is the maximum length of a command?
-max_cmd_len=$max_cmd_len
-
-# Object file suffix (normally "o").
-objext=$ac_objext
-
-# Executable file suffix (normally "").
-exeext=$exeext
-
-# whether the shell understands "unset".
-lt_unset=$lt_unset
-
-# turn spaces into newlines.
-SP2NL=$lt_lt_SP2NL
-
-# turn newlines into spaces.
-NL2SP=$lt_lt_NL2SP
-
-# How to create reloadable object files.
-reload_flag=$lt_reload_flag
-reload_cmds=$lt_reload_cmds
-
-# Method to check whether dependent libraries are shared objects.
-deplibs_check_method=$lt_deplibs_check_method
-
-# Command to use when deplibs_check_method == "file_magic".
-file_magic_cmd=$lt_file_magic_cmd
-
-# The archiver.
-AR=$lt_AR
-AR_FLAGS=$lt_AR_FLAGS
-
-# A symbol stripping program.
-STRIP=$lt_STRIP
-
-# Commands used to install an old-style archive.
-RANLIB=$lt_RANLIB
-old_postinstall_cmds=$lt_old_postinstall_cmds
-old_postuninstall_cmds=$lt_old_postuninstall_cmds
-
-# A C compiler.
-LTCC=$lt_CC
-
-# LTCC compiler flags.
-LTCFLAGS=$lt_CFLAGS
-
-# Take the output of nm and produce a listing of raw symbols and C names.
-global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
-
-# Transform the output of nm in a proper C declaration.
-global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
-
-# Transform the output of nm in a C name address pair.
-global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
-
-# Transform the output of nm in a C name address pair when lib prefix is needed.
-global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
-
-# The name of the directory that contains temporary libtool files.
-objdir=$objdir
-
-# Shell to use when invoking shell scripts.
-SHELL=$lt_SHELL
-
-# An echo program that does not interpret backslashes.
-ECHO=$lt_ECHO
-
-# Used to examine libraries when file_magic_cmd begins with "file".
-MAGIC_CMD=$MAGIC_CMD
-
-# Must we lock files when doing compilation?
-need_locks=$lt_need_locks
-
-# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
-DSYMUTIL=$lt_DSYMUTIL
-
-# Tool to change global to local symbols on Mac OS X.
-NMEDIT=$lt_NMEDIT
-
-# Tool to manipulate fat objects and archives on Mac OS X.
-LIPO=$lt_LIPO
-
-# ldd/readelf like tool for Mach-O binaries on Mac OS X.
-OTOOL=$lt_OTOOL
-
-# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
-OTOOL64=$lt_OTOOL64
-
-# Old archive suffix (normally "a").
-libext=$libext
-
-# Shared library suffix (normally ".so").
-shrext_cmds=$lt_shrext_cmds
-
-# The commands to extract the exported symbol list from a shared archive.
-extract_expsyms_cmds=$lt_extract_expsyms_cmds
-
-# Variables whose values should be saved in libtool wrapper scripts and
-# restored at link time.
-variables_saved_for_relink=$lt_variables_saved_for_relink
-
-# Do we need the "lib" prefix for modules?
-need_lib_prefix=$need_lib_prefix
-
-# Do we need a version for libraries?
-need_version=$need_version
-
-# Library versioning type.
-version_type=$version_type
-
-# Shared library runtime path variable.
-runpath_var=$runpath_var
-
-# Shared library path variable.
-shlibpath_var=$shlibpath_var
-
-# Is shlibpath searched before the hard-coded library search path?
-shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-
-# Format of library name prefix.
-libname_spec=$lt_libname_spec
-
-# List of archive names. First name is the real one, the rest are links.
-# The last name is the one that the linker finds with -lNAME
-library_names_spec=$lt_library_names_spec
-
-# The coded name of the library, if different from the real name.
-soname_spec=$lt_soname_spec
-
-# Command to use after installation of a shared archive.
-postinstall_cmds=$lt_postinstall_cmds
-
-# Command to use after uninstallation of a shared archive.
-postuninstall_cmds=$lt_postuninstall_cmds
-
-# Commands used to finish a libtool library installation in a directory.
-finish_cmds=$lt_finish_cmds
-
-# As "finish_cmds", except a single script fragment to be evaled but
-# not shown.
-finish_eval=$lt_finish_eval
-
-# Whether we should hardcode library paths into libraries.
-hardcode_into_libs=$hardcode_into_libs
-
-# Compile-time system search path for libraries.
-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
-
-# Run-time system search path for libraries.
-sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-
-# Whether dlopen is supported.
-dlopen_support=$enable_dlopen
-
-# Whether dlopen of programs is supported.
-dlopen_self=$enable_dlopen_self
-
-# Whether dlopen of statically linked programs is supported.
-dlopen_self_static=$enable_dlopen_self_static
-
-# Commands to strip libraries.
-old_striplib=$lt_old_striplib
-striplib=$lt_striplib
-
-
-# The linker used to build libraries.
-LD=$lt_LD
-
-# Commands used to build an old-style archive.
-old_archive_cmds=$lt_old_archive_cmds
-
-# A language specific compiler.
-CC=$lt_compiler
-
-# Is the compiler the GNU compiler?
-with_gcc=$GCC
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
-
-# How to pass a linker flag through the compiler.
-wl=$lt_lt_prog_compiler_wl
-
-# Additional compiler flags for building library objects.
-pic_flag=$lt_lt_prog_compiler_pic
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$lt_lt_prog_compiler_static
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$lt_lt_cv_prog_compiler_c_o
-
-# Whether or not to add -lc for building shared libraries.
-build_libtool_need_lc=$archive_cmds_need_lc
-
-# Whether or not to disallow shared libs when runtime libs are static.
-allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$lt_whole_archive_flag_spec
-
-# Whether the compiler copes with passing no objects directly.
-compiler_needs_object=$lt_compiler_needs_object
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
-
-# Create a temporary old-style archive to link instead of a shared archive.
-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
-
-# Commands used to build a shared archive.
-archive_cmds=$lt_archive_cmds
-archive_expsym_cmds=$lt_archive_expsym_cmds
-
-# Commands used to build a loadable module if different from building
-# a shared archive.
-module_cmds=$lt_module_cmds
-module_expsym_cmds=$lt_module_expsym_cmds
-
-# Whether we are building with GNU ld or not.
-with_gnu_ld=$lt_with_gnu_ld
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$lt_allow_undefined_flag
-
-# Flag that enforces no undefined symbols.
-no_undefined_flag=$lt_no_undefined_flag
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist
-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
-
-# If ld is used when linking, flag to hardcode \$libdir into a binary
-# during linking. This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld
-
-# Whether we need a single "-rpath" flag with a separated argument.
-hardcode_libdir_separator=$lt_hardcode_libdir_separator
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary.
-hardcode_direct=$hardcode_direct
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary and the resulting library dependency is
-# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
-# library is relocated.
-hardcode_direct_absolute=$hardcode_direct_absolute
-
-# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
-# into the resulting binary.
-hardcode_minus_L=$hardcode_minus_L
-
-# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
-# into the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var
-
-# Set to "yes" if building a shared library automatically hardcodes DIR
-# into the library and all subsequent libraries and executables linked
-# against it.
-hardcode_automatic=$hardcode_automatic
-
-# Set to yes if linker adds runtime paths of dependent libraries
-# to runtime path list.
-inherit_rpath=$inherit_rpath
-
-# Whether libtool must link a program against all its dependency libraries.
-link_all_deplibs=$link_all_deplibs
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path=$lt_fix_srcfile_path
-
-# Set to "yes" if exported symbols are required.
-always_export_symbols=$always_export_symbols
-
-# The commands to list exported symbols.
-export_symbols_cmds=$lt_export_symbols_cmds
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$lt_exclude_expsyms
-
-# Symbols that must always be exported.
-include_expsyms=$lt_include_expsyms
-
-# Commands necessary for linking programs (against libraries) with templates.
-prelink_cmds=$lt_prelink_cmds
-
-# Specify filename containing input files.
-file_list_spec=$lt_file_list_spec
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action
-
-# The directories searched by this compiler when creating a shared library.
-compiler_lib_search_dirs=$lt_compiler_lib_search_dirs
-
-# Dependencies to place before and after the objects being linked to
-# create a shared library.
-predep_objects=$lt_predep_objects
-postdep_objects=$lt_postdep_objects
-predeps=$lt_predeps
-postdeps=$lt_postdeps
-
-# The library search path used internally by the compiler when linking
-# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path
-
-# ### END LIBTOOL CONFIG
-
-_LT_EOF
-
- case $host_os in
- aix3*)
- cat <<\_LT_EOF >> "$cfgfile"
-# AIX sometimes has problems with the GCC collect2 program. For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
- COLLECT_NAMES=
- export COLLECT_NAMES
-fi
-_LT_EOF
- ;;
- esac
-
-
-ltmain="$ac_aux_dir/ltmain.sh"
-
-
- # We use sed instead of cat because bash on DJGPP gets confused if
- # if finds mixed CR/LF and LF-only lines. Since sed operates in
- # text mode, it properly converts lines to CR/LF. This bash problem
- # is reportedly fixed, but why not run on old versions too?
- sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- case $xsi_shell in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result="${1##*/}"
-}
-
-# func_dirname_and_basename file append nondir_replacement
-# perform func_basename and func_dirname in a single function
-# call:
-# dirname: Compute the dirname of FILE. If nonempty,
-# add APPEND to the result, otherwise set result
-# to NONDIR_REPLACEMENT.
-# value returned in "$func_dirname_result"
-# basename: Compute filename of FILE.
-# value retuned in "$func_basename_result"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
- case ${1} in
- */*) func_dirname_result="${1%/*}${2}" ;;
- * ) func_dirname_result="${3}" ;;
- esac
- func_basename_result="${1##*/}"
-}
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-func_stripname ()
-{
- # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
- # positional parameters, so assign one to ordinary parameter first.
- func_stripname_result=${3}
- func_stripname_result=${func_stripname_result#"${1}"}
- func_stripname_result=${func_stripname_result%"${2}"}
-}
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=${1%%=*}
- func_opt_split_arg=${1#*=}
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- case ${1} in
- *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
- *) func_lo2o_result=${1} ;;
- esac
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=${1%.*}.lo
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=$(( $* ))
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=${#1}
-}
-
-_LT_EOF
- ;;
- *) # Bourne compatible functions.
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
- # Extract subdirectory from the argument.
- func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
- if test "X$func_dirname_result" = "X${1}"; then
- func_dirname_result="${3}"
- else
- func_dirname_result="$func_dirname_result${2}"
- fi
-}
-
-# func_basename file
-func_basename ()
-{
- func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
-}
-
-
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-# func_strip_suffix prefix name
-func_stripname ()
-{
- case ${2} in
- .*) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
- *) func_stripname_result=`$ECHO "X${3}" \
- | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
- esac
-}
-
-# sed scripts:
-my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q'
-my_sed_long_arg='1s/^-[^=]*=//'
-
-# func_opt_split
-func_opt_split ()
-{
- func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
- func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
-}
-
-# func_lo2o object
-func_lo2o ()
-{
- func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
-}
-
-# func_xform libobj-or-source
-func_xform ()
-{
- func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'`
-}
-
-# func_arith arithmetic-term...
-func_arith ()
-{
- func_arith_result=`expr "$@"`
-}
-
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
- func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
-}
-
-_LT_EOF
-esac
-
-case $lt_shell_append in
- yes)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$1+=\$2"
-}
-_LT_EOF
- ;;
- *)
- cat << \_LT_EOF >> "$cfgfile"
-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
-{
- eval "$1=\$$1\$2"
-}
-
-_LT_EOF
- ;;
- esac
-
-
- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
- || (rm -f "$cfgfile"; exit 1)
-
- mv -f "$cfgfile" "$ofile" ||
- (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
- chmod +x "$ofile"
-
-
- cat <<_LT_EOF >> "$ofile"
-
-# ### BEGIN LIBTOOL TAG CONFIG: CXX
-
-# The linker used to build libraries.
-LD=$lt_LD_CXX
-
-# Commands used to build an old-style archive.
-old_archive_cmds=$lt_old_archive_cmds_CXX
-
-# A language specific compiler.
-CC=$lt_compiler_CXX
-
-# Is the compiler the GNU compiler?
-with_gcc=$GCC_CXX
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX
-
-# How to pass a linker flag through the compiler.
-wl=$lt_lt_prog_compiler_wl_CXX
-
-# Additional compiler flags for building library objects.
-pic_flag=$lt_lt_prog_compiler_pic_CXX
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$lt_lt_prog_compiler_static_CXX
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX
-
-# Whether or not to add -lc for building shared libraries.
-build_libtool_need_lc=$archive_cmds_need_lc_CXX
-
-# Whether or not to disallow shared libs when runtime libs are static.
-allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX
-
-# Whether the compiler copes with passing no objects directly.
-compiler_needs_object=$lt_compiler_needs_object_CXX
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX
-
-# Create a temporary old-style archive to link instead of a shared archive.
-old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX
-
-# Commands used to build a shared archive.
-archive_cmds=$lt_archive_cmds_CXX
-archive_expsym_cmds=$lt_archive_expsym_cmds_CXX
-
-# Commands used to build a loadable module if different from building
-# a shared archive.
-module_cmds=$lt_module_cmds_CXX
-module_expsym_cmds=$lt_module_expsym_cmds_CXX
-
-# Whether we are building with GNU ld or not.
-with_gnu_ld=$lt_with_gnu_ld_CXX
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$lt_allow_undefined_flag_CXX
-
-# Flag that enforces no undefined symbols.
-no_undefined_flag=$lt_no_undefined_flag_CXX
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist
-hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX
-
-# If ld is used when linking, flag to hardcode \$libdir into a binary
-# during linking. This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_CXX
-
-# Whether we need a single "-rpath" flag with a separated argument.
-hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary.
-hardcode_direct=$hardcode_direct_CXX
-
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
-# DIR into the resulting binary and the resulting library dependency is
-# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
-# library is relocated.
-hardcode_direct_absolute=$hardcode_direct_absolute_CXX
-
-# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
-# into the resulting binary.
-hardcode_minus_L=$hardcode_minus_L_CXX
-
-# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
-# into the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX
-
-# Set to "yes" if building a shared library automatically hardcodes DIR
-# into the library and all subsequent libraries and executables linked
-# against it.
-hardcode_automatic=$hardcode_automatic_CXX
-
-# Set to yes if linker adds runtime paths of dependent libraries
-# to runtime path list.
-inherit_rpath=$inherit_rpath_CXX
-
-# Whether libtool must link a program against all its dependency libraries.
-link_all_deplibs=$link_all_deplibs_CXX
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path=$lt_fix_srcfile_path_CXX
-
-# Set to "yes" if exported symbols are required.
-always_export_symbols=$always_export_symbols_CXX
-
-# The commands to list exported symbols.
-export_symbols_cmds=$lt_export_symbols_cmds_CXX
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$lt_exclude_expsyms_CXX
-
-# Symbols that must always be exported.
-include_expsyms=$lt_include_expsyms_CXX
-
-# Commands necessary for linking programs (against libraries) with templates.
-prelink_cmds=$lt_prelink_cmds_CXX
-
-# Specify filename containing input files.
-file_list_spec=$lt_file_list_spec_CXX
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action_CXX
-
-# The directories searched by this compiler when creating a shared library.
-compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX
-
-# Dependencies to place before and after the objects being linked to
-# create a shared library.
-predep_objects=$lt_predep_objects_CXX
-postdep_objects=$lt_postdep_objects_CXX
-predeps=$lt_predeps_CXX
-postdeps=$lt_postdeps_CXX
-
-# The library search path used internally by the compiler when linking
-# a shared library.
-compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
-
-# ### END LIBTOOL TAG CONFIG: CXX
-_LT_EOF
-
- ;;
-
- esac
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
- as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- ac_config_status_args=
- test "$silent" = yes &&
- ac_config_status_args="$ac_config_status_args --quiet"
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
-
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 74a36cf..54ada73 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -45,7 +45,7 @@ if(use_qt)
include(${QT_USE_FILE})
qt_wrap_cpp(mgl_qt_example MGL_MOC_EX_FILES ../include/mgl/qt.h)
add_executable(mgl_qt_example wnd_samples.cpp qt_example.cpp ${MGL_MOC_EX_FILES})
- target_link_libraries(mgl_qt_example ${QT_LIBRARIES} mgl-wnd)
+ target_link_libraries(mgl_qt_example mgl-wnd ${QT_LIBRARIES})
install(
TARGETS mgl_qt_example
RUNTIME DESTINATION bin
diff --git a/examples/Makefile.in b/examples/Makefile.in
deleted file mode 100644
index e4406b9..0000000
--- a/examples/Makefile.in
+++ /dev/null
@@ -1,859 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-# Makerules.
-# This file is part of AutoTroll.
-# Copyright (C) 2006 Benoit Sigoure.
-#
-# AutoTroll is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
-# USA.
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-check_PROGRAMS = $(am__EXEEXT_3)
-bin_PROGRAMS = mgl_example$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2)
- at USE_FLTK_TRUE@am__append_1 = mgl_fltk_example
- at USE_FLTK_TRUE@am__append_2 = test
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(top_srcdir)/config/autotroll.mk
- at USE_QT_TRUE@am__append_3 = mgl_qt_example
-subdir = examples
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/config/autotroll.m4 \
- $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/mgl/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
- at USE_FLTK_TRUE@am__EXEEXT_1 = mgl_fltk_example$(EXEEXT)
- at USE_QT_TRUE@am__EXEEXT_2 = mgl_qt_example$(EXEEXT)
-am__installdirs = "$(DESTDIR)$(bindir)"
- at USE_FLTK_TRUE@am__EXEEXT_3 = test$(EXEEXT)
-PROGRAMS = $(bin_PROGRAMS)
-am_mgl_example_OBJECTS = wnd_samples.$(OBJEXT) full_test.$(OBJEXT)
-mgl_example_OBJECTS = $(am_mgl_example_OBJECTS)
-mgl_example_DEPENDENCIES = $(top_builddir)/src/libmgl.la
-am__mgl_fltk_example_SOURCES_DIST = wnd_samples.cpp fltk_example.cpp
- at USE_FLTK_TRUE@am_mgl_fltk_example_OBJECTS = \
- at USE_FLTK_TRUE@ mgl_fltk_example-wnd_samples.$(OBJEXT) \
- at USE_FLTK_TRUE@ mgl_fltk_example-fltk_example.$(OBJEXT)
-mgl_fltk_example_OBJECTS = $(am_mgl_fltk_example_OBJECTS)
-am__DEPENDENCIES_1 =
- at USE_FLTK_TRUE@mgl_fltk_example_DEPENDENCIES = $(am__DEPENDENCIES_1) \
- at USE_FLTK_TRUE@ $(top_builddir)/widgets/libmgl-wnd.la \
- at USE_FLTK_TRUE@ $(top_builddir)/src/libmgl.la
-mgl_fltk_example_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
- $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-am__mgl_qt_example_SOURCES_DIST = wnd_samples.cpp \
- $(top_builddir)/include/mgl/qt.moc.cpp \
- $(top_srcdir)/include/mgl/qt.h qt_example.cpp
- at USE_QT_TRUE@am_mgl_qt_example_OBJECTS = \
- at USE_QT_TRUE@ mgl_qt_example-wnd_samples.$(OBJEXT) \
- at USE_QT_TRUE@ mgl_qt_example-qt.moc.$(OBJEXT) \
- at USE_QT_TRUE@ mgl_qt_example-qt_example.$(OBJEXT)
-mgl_qt_example_OBJECTS = $(am_mgl_qt_example_OBJECTS)
- at USE_QT_TRUE@mgl_qt_example_DEPENDENCIES = $(am__DEPENDENCIES_1) \
- at USE_QT_TRUE@ $(top_builddir)/widgets/libmgl-wnd.la \
- at USE_QT_TRUE@ $(top_builddir)/src/libmgl.la
-mgl_qt_example_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
- $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) \
- $(mgl_qt_example_LDFLAGS) $(LDFLAGS) -o $@
-am__test_SOURCES_DIST = wnd_samples.cpp main.cpp
- at USE_FLTK_TRUE@am_test_OBJECTS = test-wnd_samples.$(OBJEXT) \
- at USE_FLTK_TRUE@ test-main.$(OBJEXT)
-test_OBJECTS = $(am_test_OBJECTS)
- at USE_FLTK_TRUE@test_DEPENDENCIES = $(am__DEPENDENCIES_1) \
- at USE_FLTK_TRUE@ $(top_builddir)/widgets/libmgl-wnd.la \
- at USE_FLTK_TRUE@ $(top_builddir)/src/libmgl.la
-test_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CXXLD) $(test_CXXFLAGS) $(CXXFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)/include/mgl
-depcomp = $(SHELL) $(top_srcdir)/config/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-CXXLD = $(CXX)
-CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-SOURCES = $(mgl_example_SOURCES) $(mgl_fltk_example_SOURCES) \
- $(mgl_qt_example_SOURCES) $(test_SOURCES)
-DIST_SOURCES = $(mgl_example_SOURCES) \
- $(am__mgl_fltk_example_SOURCES_DIST) \
- $(am__mgl_qt_example_SOURCES_DIST) $(am__test_SOURCES_DIST)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_CXXFLAGS = @AM_CXXFLAGS@ -I$(top_srcdir)/include \
- -I$(top_builddir)/include
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FLTK_FLAGS = @FLTK_FLAGS@
-FLTK_LIBS = @FLTK_LIBS@
-GL_LIBS = @GL_LIBS@
-GREP = @GREP@
-GSL_FLAGS = @GSL_FLAGS@
-GSL_LIBS = @GSL_LIBS@
-HAVE_SWIG = @HAVE_SWIG@
-HDF4_FLAGS = @HDF4_FLAGS@
-HDF4_LIBS = @HDF4_LIBS@
-HDF5_FLAGS = @HDF5_FLAGS@
-HDF5_LIBS = @HDF5_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-JPEG_FLAGS = @JPEG_FLAGS@
-JPEG_LIBS = @JPEG_LIBS@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
-MGL_AGE = @MGL_AGE@
-MGL_CURRENT = @MGL_CURRENT@
-MGL_RELEASE = @MGL_RELEASE@
-MGL_REVISION = @MGL_REVISION@
-MKDIR_P = @MKDIR_P@
-MOC = @MOC@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OCTAVE = @OCTAVE@
-OCTAVE_ARCH = @OCTAVE_ARCH@
-OCTAVE_INCFLAGS = @OCTAVE_INCFLAGS@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PNG_LIBS = @PNG_LIBS@
-PTHREAD_FLAGS = @PTHREAD_FLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-PYTHON = @PYTHON@
-PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
-PYTHON_HEADERS = @PYTHON_HEADERS@
-PYTHON_PLATFORM = @PYTHON_PLATFORM@
-PYTHON_PREFIX = @PYTHON_PREFIX@
-PYTHON_VERSION = @PYTHON_VERSION@
-QMAKE = @QMAKE@
-QT_CFLAGS = @QT_CFLAGS@
-QT_CPPFLAGS = @QT_CPPFLAGS@
-QT_CXXFLAGS = @QT_CXXFLAGS@
-QT_DEFINES = @QT_DEFINES@
-QT_INCPATH = @QT_INCPATH@
-QT_LDFLAGS = @QT_LDFLAGS@
-QT_LFLAGS = @QT_LFLAGS@
-QT_LIBS = @QT_LIBS@
-QT_PATH = @QT_PATH@
-QT_VERSION = @QT_VERSION@
-QT_VERSION_MAJOR = @QT_VERSION_MAJOR@
-RANLIB = @RANLIB@
-RCC = @RCC@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-TMPDIR = @TMPDIR@
-U3D_LIBS = @U3D_LIBS@
-UIC = @UIC@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-lt_ECHO = @lt_ECHO@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-pkgpyexecdir = @pkgpyexecdir@
-pkgpythondir = @pkgpythondir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-pyexecdir = @pyexecdir@
-pythondir = @pythondir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-mgl_example_SOURCES = wnd_samples.cpp full_test.cpp
-mgl_example_LDADD = $(top_builddir)/src/libmgl.la
- at USE_FLTK_TRUE@mgl_fltk_example_SOURCES = wnd_samples.cpp fltk_example.cpp
- at USE_FLTK_TRUE@mgl_fltk_example_LDADD = $(FLTK_LIBS) $(top_builddir)/widgets/libmgl-wnd.la $(top_builddir)/src/libmgl.la
- at USE_FLTK_TRUE@mgl_fltk_example_CXXFLAGS = $(FLTK_FLAGS) $(AM_CXXFLAGS)
- at USE_FLTK_TRUE@test_SOURCES = wnd_samples.cpp main.cpp
- at USE_FLTK_TRUE@test_LDADD = $(FLTK_LIBS) $(top_builddir)/widgets/libmgl-wnd.la $(top_builddir)/src/libmgl.la
- at USE_FLTK_TRUE@test_CXXFLAGS = $(FLTK_FLAGS) $(AM_CXXFLAGS)
-
-# See autotroll.m4 :)
- at USE_QT_TRUE@SUFFIXES = .moc.cpp .moc.cc .moc.cxx .moc.C .h .hh \
- at USE_QT_TRUE@ .ui .ui.h .ui.hh \
- at USE_QT_TRUE@ .qrc .qrc.cpp .qrc.cc .qrc.cxx .qrc.C
-
- at USE_QT_TRUE@DISTCLEANFILES = $(BUILT_SOURCES)
-
-#if USE_GLUT
-#bin_PROGRAMS += mgl_glut_example
-#mgl_glut_example_SOURCES = wnd_samples.cpp glut_example.cpp
-#mgl_glut_example_LDADD = $(top_builddir)/widgets/libmgl-wnd.la $(top_builddir)/src/libmgl.la
-#endif
-
-#if USE_WX
-#bin_PROGRAMS += mgl_wx_example
-#mgl_wx_example_LDADD = $(WX_LIBS) $(top_builddir)/widgets/libmgl-wnd.la $(top_builddir)/src/libmgl.la
-#mgl_wx_example_CXXFLAGS = $(WX_FLAGS) $(AM_CXXFLAGS)
-#mgl_wx_example_SOURCES = wnd_samples.cpp wx_example.cpp
-#endif
- at USE_QT_TRUE@ACLOCAL_AMFLAGS = -I $(top_srcdir)/config/
- at USE_QT_TRUE@mgl_qt_example_SOURCES = wnd_samples.cpp $(top_builddir)/include/mgl/qt.moc.cpp $(top_srcdir)/include/mgl/qt.h qt_example.cpp
- at USE_QT_TRUE@mgl_qt_example_LDADD = $(QT_LIBS) $(top_builddir)/widgets/libmgl-wnd.la $(top_builddir)/src/libmgl.la
- at USE_QT_TRUE@mgl_qt_example_LDFLAGS = $(QT_LDFLAGS)
- at USE_QT_TRUE@mgl_qt_example_CPPFLAGS = $(QT_CPPFLAGS) $(AM_CPPFLAGS)
- at USE_QT_TRUE@mgl_qt_example_CXXFLAGS = $(QT_CXXFLAGS) $(AM_CXXFLAGS)
- at USE_QT_TRUE@BUILT_SOURCES = $(top_builddir)/include/mgl/qt.moc.cpp
- at USE_QT_TRUE@CLEANFILES = $(BUILT_SOURCES)
-all: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) all-am
-
-.SUFFIXES:
-.SUFFIXES: .moc.cpp .moc.cc .moc.cxx .moc.C .h .hh .ui .ui.h .ui.hh .qrc .qrc.cpp .qrc.cc .qrc.cxx .qrc.C .cpp .lo .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/config/autotroll.mk $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu examples/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu examples/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-binPROGRAMS: $(bin_PROGRAMS)
- @$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- for p in $$list; do echo "$$p $$p"; done | \
- sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
- done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
- -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
- sed 'N;N;N;s,\n, ,g' | \
- $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
- { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
- if ($$2 == $$4) files[d] = files[d] " " $$1; \
- else { print "f", $$3 "/" $$4, $$1; } } \
- END { for (d in files) print "f", d, files[d] }' | \
- while read type dir files; do \
- if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
- test -z "$$files" || { \
- echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
- $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
- } \
- ; done
-
-uninstall-binPROGRAMS:
- @$(NORMAL_UNINSTALL)
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- files=`for p in $$list; do echo "$$p"; done | \
- sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
- test -n "$$list" || exit 0; \
- echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(bindir)" && rm -f $$files
-
-clean-binPROGRAMS:
- @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
- echo " rm -f" $$list; \
- rm -f $$list || exit $$?; \
- test -n "$(EXEEXT)" || exit 0; \
- list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
- echo " rm -f" $$list; \
- rm -f $$list
-
-clean-checkPROGRAMS:
- @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \
- echo " rm -f" $$list; \
- rm -f $$list || exit $$?; \
- test -n "$(EXEEXT)" || exit 0; \
- list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
- echo " rm -f" $$list; \
- rm -f $$list
-mgl_example$(EXEEXT): $(mgl_example_OBJECTS) $(mgl_example_DEPENDENCIES)
- @rm -f mgl_example$(EXEEXT)
- $(CXXLINK) $(mgl_example_OBJECTS) $(mgl_example_LDADD) $(LIBS)
-mgl_fltk_example$(EXEEXT): $(mgl_fltk_example_OBJECTS) $(mgl_fltk_example_DEPENDENCIES)
- @rm -f mgl_fltk_example$(EXEEXT)
- $(mgl_fltk_example_LINK) $(mgl_fltk_example_OBJECTS) $(mgl_fltk_example_LDADD) $(LIBS)
-mgl_qt_example$(EXEEXT): $(mgl_qt_example_OBJECTS) $(mgl_qt_example_DEPENDENCIES)
- @rm -f mgl_qt_example$(EXEEXT)
- $(mgl_qt_example_LINK) $(mgl_qt_example_OBJECTS) $(mgl_qt_example_LDADD) $(LIBS)
-test$(EXEEXT): $(test_OBJECTS) $(test_DEPENDENCIES)
- @rm -f test$(EXEEXT)
- $(test_LINK) $(test_OBJECTS) $(test_LDADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/full_test.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mgl_fltk_example-fltk_example.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mgl_fltk_example-wnd_samples.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mgl_qt_example-qt.moc.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mgl_qt_example-qt_example.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mgl_qt_example-wnd_samples.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/test-main.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/test-wnd_samples.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/wnd_samples.Po at am__quote@
-
-.cpp.o:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
-
-.cpp.obj:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
-.cpp.lo:
- at am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
-
-mgl_fltk_example-wnd_samples.o: wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_fltk_example-wnd_samples.o -MD -MP -MF $(DEPDIR)/mgl_fltk_example-wnd_samples.Tpo -c -o mgl_fltk_example-wnd_samples.o `test -f 'wnd_samples.cpp' || echo '$(srcdir)/'`wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_fltk_example-wnd_samples.Tpo $(DEPDIR)/mgl_fltk_example-wnd_samples.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='wnd_samples.cpp' object='mgl_fltk_example-wnd_samples.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_fltk_example-wnd_samples.o `test -f 'wnd_samples.cpp' || echo '$(srcdir)/'`wnd_samples.cpp
-
-mgl_fltk_example-wnd_samples.obj: wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_fltk_example-wnd_samples.obj -MD -MP -MF $(DEPDIR)/mgl_fltk_example-wnd_samples.Tpo -c -o mgl_fltk_example-wnd_samples.obj `if test -f 'wnd_samples.cpp'; then $(CYGPATH_W) 'wnd_samples.cpp'; else $(CYGPATH_W) '$(srcdir)/wnd_samples.cpp'; fi`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_fltk_example-wnd_samples.Tpo $(DEPDIR)/mgl_fltk_example-wnd_samples.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='wnd_samples.cpp' object='mgl_fltk_example-wnd_samples.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_fltk_example-wnd_samples.obj `if test -f 'wnd_samples.cpp'; then $(CYGPATH_W) 'wnd_samples.cpp'; else $(CYGPATH_W) '$(srcdir)/wnd_samples.cpp'; fi`
-
-mgl_fltk_example-fltk_example.o: fltk_example.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_fltk_example-fltk_example.o -MD -MP -MF $(DEPDIR)/mgl_fltk_example-fltk_example.Tpo -c -o mgl_fltk_example-fltk_example.o `test -f 'fltk_example.cpp' || echo '$(srcdir)/'`fltk_example.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_fltk_example-fltk_example.Tpo $(DEPDIR)/mgl_fltk_example-fltk_example.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fltk_example.cpp' object='mgl_fltk_example-fltk_example.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_fltk_example-fltk_example.o `test -f 'fltk_example.cpp' || echo '$(srcdir)/'`fltk_example.cpp
-
-mgl_fltk_example-fltk_example.obj: fltk_example.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_fltk_example-fltk_example.obj -MD -MP -MF $(DEPDIR)/mgl_fltk_example-fltk_example.Tpo -c -o mgl_fltk_example-fltk_example.obj `if test -f 'fltk_example.cpp'; then $(CYGPATH_W) 'fltk_example.cpp'; else $(CYGPATH_W) '$(srcdir)/fltk_example.cpp'; fi`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_fltk_example-fltk_example.Tpo $(DEPDIR)/mgl_fltk_example-fltk_example.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fltk_example.cpp' object='mgl_fltk_example-fltk_example.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mgl_fltk_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_fltk_example-fltk_example.obj `if test -f 'fltk_example.cpp'; then $(CYGPATH_W) 'fltk_example.cpp'; else $(CYGPATH_W) '$(srcdir)/fltk_example.cpp'; fi`
-
-mgl_qt_example-wnd_samples.o: wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_qt_example-wnd_samples.o -MD -MP -MF $(DEPDIR)/mgl_qt_example-wnd_samples.Tpo -c -o mgl_qt_example-wnd_samples.o `test -f 'wnd_samples.cpp' || echo '$(srcdir)/'`wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_qt_example-wnd_samples.Tpo $(DEPDIR)/mgl_qt_example-wnd_samples.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='wnd_samples.cpp' object='mgl_qt_example-wnd_samples.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_qt_example-wnd_samples.o `test -f 'wnd_samples.cpp' || echo '$(srcdir)/'`wnd_samples.cpp
-
-mgl_qt_example-wnd_samples.obj: wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_qt_example-wnd_samples.obj -MD -MP -MF $(DEPDIR)/mgl_qt_example-wnd_samples.Tpo -c -o mgl_qt_example-wnd_samples.obj `if test -f 'wnd_samples.cpp'; then $(CYGPATH_W) 'wnd_samples.cpp'; else $(CYGPATH_W) '$(srcdir)/wnd_samples.cpp'; fi`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_qt_example-wnd_samples.Tpo $(DEPDIR)/mgl_qt_example-wnd_samples.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='wnd_samples.cpp' object='mgl_qt_example-wnd_samples.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_qt_example-wnd_samples.obj `if test -f 'wnd_samples.cpp'; then $(CYGPATH_W) 'wnd_samples.cpp'; else $(CYGPATH_W) '$(srcdir)/wnd_samples.cpp'; fi`
-
-mgl_qt_example-qt.moc.o: $(top_builddir)/include/mgl/qt.moc.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_qt_example-qt.moc.o -MD -MP -MF $(DEPDIR)/mgl_qt_example-qt.moc.Tpo -c -o mgl_qt_example-qt.moc.o `test -f '$(top_builddir)/include/mgl/qt.moc.cpp' || echo '$(srcdir)/'`$(top_builddir)/include/mgl/qt.moc.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_qt_example-qt.moc.Tpo $(DEPDIR)/mgl_qt_example-qt.moc.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(top_builddir)/include/mgl/qt.moc.cpp' object='mgl_qt_example-qt.moc.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_qt_example-qt.moc.o `test -f '$(top_builddir)/include/mgl/qt.moc.cpp' || echo '$(srcdir)/'`$(top_builddir)/include/mgl/qt.moc.cpp
-
-mgl_qt_example-qt.moc.obj: $(top_builddir)/include/mgl/qt.moc.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_qt_example-qt.moc.obj -MD -MP -MF $(DEPDIR)/mgl_qt_example-qt.moc.Tpo -c -o mgl_qt_example-qt.moc.obj `if test -f '$(top_builddir)/include/mgl/qt.moc.cpp'; then $(CYGPATH_W) '$(top_builddir)/include/mgl/qt.moc.cpp'; else $(CYGPATH_W) '$(srcdir)/$(top_builddir)/include/mgl/qt.moc.cpp'; fi`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_qt_example-qt.moc.Tpo $(DEPDIR)/mgl_qt_example-qt.moc.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(top_builddir)/include/mgl/qt.moc.cpp' object='mgl_qt_example-qt.moc.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_qt_example-qt.moc.obj `if test -f '$(top_builddir)/include/mgl/qt.moc.cpp'; then $(CYGPATH_W) '$(top_builddir)/include/mgl/qt.moc.cpp'; else $(CYGPATH_W) '$(srcdir)/$(top_builddir)/include/mgl/qt.moc.cpp'; fi`
-
-mgl_qt_example-qt_example.o: qt_example.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_qt_example-qt_example.o -MD -MP -MF $(DEPDIR)/mgl_qt_example-qt_example.Tpo -c -o mgl_qt_example-qt_example.o `test -f 'qt_example.cpp' || echo '$(srcdir)/'`qt_example.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_qt_example-qt_example.Tpo $(DEPDIR)/mgl_qt_example-qt_example.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='qt_example.cpp' object='mgl_qt_example-qt_example.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_qt_example-qt_example.o `test -f 'qt_example.cpp' || echo '$(srcdir)/'`qt_example.cpp
-
-mgl_qt_example-qt_example.obj: qt_example.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -MT mgl_qt_example-qt_example.obj -MD -MP -MF $(DEPDIR)/mgl_qt_example-qt_example.Tpo -c -o mgl_qt_example-qt_example.obj `if test -f 'qt_example.cpp'; then $(CYGPATH_W) 'qt_example.cpp'; else $(CYGPATH_W) '$(srcdir)/qt_example.cpp'; fi`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mgl_qt_example-qt_example.Tpo $(DEPDIR)/mgl_qt_example-qt_example.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='qt_example.cpp' object='mgl_qt_example-qt_example.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mgl_qt_example_CPPFLAGS) $(CPPFLAGS) $(mgl_qt_example_CXXFLAGS) $(CXXFLAGS) -c -o mgl_qt_example-qt_example.obj `if test -f 'qt_example.cpp'; then $(CYGPATH_W) 'qt_example.cpp'; else $(CYGPATH_W) '$(srcdir)/qt_example.cpp'; fi`
-
-test-wnd_samples.o: wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_CXXFLAGS) $(CXXFLAGS) -MT test-wnd_samples.o -MD -MP -MF $(DEPDIR)/test-wnd_samples.Tpo -c -o test-wnd_samples.o `test -f 'wnd_samples.cpp' || echo '$(srcdir)/'`wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/test-wnd_samples.Tpo $(DEPDIR)/test-wnd_samples.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='wnd_samples.cpp' object='test-wnd_samples.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_CXXFLAGS) $(CXXFLAGS) -c -o test-wnd_samples.o `test -f 'wnd_samples.cpp' || echo '$(srcdir)/'`wnd_samples.cpp
-
-test-wnd_samples.obj: wnd_samples.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_CXXFLAGS) $(CXXFLAGS) -MT test-wnd_samples.obj -MD -MP -MF $(DEPDIR)/test-wnd_samples.Tpo -c -o test-wnd_samples.obj `if test -f 'wnd_samples.cpp'; then $(CYGPATH_W) 'wnd_samples.cpp'; else $(CYGPATH_W) '$(srcdir)/wnd_samples.cpp'; fi`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/test-wnd_samples.Tpo $(DEPDIR)/test-wnd_samples.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='wnd_samples.cpp' object='test-wnd_samples.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_CXXFLAGS) $(CXXFLAGS) -c -o test-wnd_samples.obj `if test -f 'wnd_samples.cpp'; then $(CYGPATH_W) 'wnd_samples.cpp'; else $(CYGPATH_W) '$(srcdir)/wnd_samples.cpp'; fi`
-
-test-main.o: main.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_CXXFLAGS) $(CXXFLAGS) -MT test-main.o -MD -MP -MF $(DEPDIR)/test-main.Tpo -c -o test-main.o `test -f 'main.cpp' || echo '$(srcdir)/'`main.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/test-main.Tpo $(DEPDIR)/test-main.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='main.cpp' object='test-main.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_CXXFLAGS) $(CXXFLAGS) -c -o test-main.o `test -f 'main.cpp' || echo '$(srcdir)/'`main.cpp
-
-test-main.obj: main.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_CXXFLAGS) $(CXXFLAGS) -MT test-main.obj -MD -MP -MF $(DEPDIR)/test-main.Tpo -c -o test-main.obj `if test -f 'main.cpp'; then $(CYGPATH_W) 'main.cpp'; else $(CYGPATH_W) '$(srcdir)/main.cpp'; fi`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/test-main.Tpo $(DEPDIR)/test-main.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='main.cpp' object='test-main.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_CXXFLAGS) $(CXXFLAGS) -c -o test-main.obj `if test -f 'main.cpp'; then $(CYGPATH_W) 'main.cpp'; else $(CYGPATH_W) '$(srcdir)/main.cpp'; fi`
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
- $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
-check: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(PROGRAMS)
-installdirs:
- for dir in "$(DESTDIR)$(bindir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
- -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
-clean: clean-am
-
-clean-am: clean-binPROGRAMS clean-checkPROGRAMS clean-generic \
- clean-libtool mostlyclean-am
-
-distclean: distclean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am: install-binPROGRAMS
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-binPROGRAMS
-
-.MAKE: all check check-am install install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-checkPROGRAMS clean-generic clean-libtool ctags \
- distclean distclean-compile distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-binPROGRAMS \
- install-data install-data-am install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-pdf \
- install-pdf-am install-ps install-ps-am install-strip \
- installcheck installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-binPROGRAMS
-
-
- at USE_QT_TRUE@ # ------------- #
- at USE_QT_TRUE@ # DOCUMENTATION #
- at USE_QT_TRUE@ # ------------- #
-
-# --- #
-# MOC #
-# --- #
-
- at USE_QT_TRUE@.hh.moc.cpp:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
- at USE_QT_TRUE@.h.moc.cpp:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
-
- at USE_QT_TRUE@.hh.moc.cc:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
- at USE_QT_TRUE@.h.moc.cc:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
-
- at USE_QT_TRUE@.hh.moc.cxx:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
- at USE_QT_TRUE@.h.moc.cxx:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
-
- at USE_QT_TRUE@.hh.moc.C:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
- at USE_QT_TRUE@.h.moc.C:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
-
-# --- #
-# UIC #
-# --- #
-
- at USE_QT_TRUE@.ui.ui.hh:
- at USE_QT_TRUE@ $(UIC) $< -o $@
-
- at USE_QT_TRUE@.ui.ui.h:
- at USE_QT_TRUE@ $(UIC) $< -o $@
-
-# --- #
-# RCC #
-# --- #
-
- at USE_QT_TRUE@.qrc.qrc.cpp:
- at USE_QT_TRUE@ $(RCC) -name `echo "$<" | sed 's/\.qrc$$//'` $< -o $@
-
- at USE_QT_TRUE@.qrc.qrc.cc:
- at USE_QT_TRUE@ $(RCC) -name `echo "$<" | sed 's/\.qrc$$//'` $< -o $@
-
- at USE_QT_TRUE@.qrc.qrc.cxx:
- at USE_QT_TRUE@ $(RCC) -name `echo "$<" | sed 's/\.qrc$$//'` $< -o $@
-
- at USE_QT_TRUE@.qrc.qrc.C:
- at USE_QT_TRUE@ $(RCC) -name `echo "$<" | sed 's/\.qrc$$//'` $< -o $@
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/examples/fltk_example.cpp b/examples/fltk_example.cpp
index ce3930d..985b74b 100644
--- a/examples/fltk_example.cpp
+++ b/examples/fltk_example.cpp
@@ -51,23 +51,22 @@ int main(int argc,char **argv)
gr.Text(mglPoint(),"");
gr.Update(); // update window
}
- return 0; // finish calculations and close the window*/
+ return 0; // finish calculations and close the window
#else
+ mglWindow *gr;
char key = 0;
- if(argc>1) key = (argv[1][0]!='-') ? argv[1][0] : argv[1][1];
- if(!key) printf("You may specify argument '1', '2', '3' or 'd' for viewing examples of 1d, 2d, 3d or dual plotting\n");
- mglCanvasFL gr;
+ if(argc>1 && argv[1][0]!='-') key = argv[1][0];
+ else printf("You may specify argument '1', '2', '3' or 'd' for viewing examples of 1d, 2d, 3d or dual plotting\n");
switch(key)
{
- case '1': gr.Window(argc,argv,sample_1,"1D plots"); break;
- case '2': gr.Window(argc,argv,sample_2,"2D plots"); break;
- case '3': gr.Window(argc,argv,sample_3,"3D plots"); break;
- case 'd': gr.Window(argc,argv,sample_d,"Dual plots"); break;
- case 't': gr.Window(argc,argv,test_wnd,"Testing"); break;
- default: gr.Window(argc,argv,sample,"Example of molecules"); break;
+ case '1': gr = new mglWindow(0,sample_1,"1D plots"); break;
+ case '2': gr = new mglWindow(0,sample_2,"2D plots"); break;
+ case '3': gr = new mglWindow(0,sample_3,"3D plots"); break;
+ case 'd': gr = new mglWindow(0,sample_d,"Dual plots"); break;
+ case 't': gr = new mglWindow(0,test_wnd,"Testing"); break;
+ default: gr = new mglWindow(0,sample,"Drop and waves"); break;
}
- mgl_fltk_run();
- return 0;
+ gr->Run(); return 0;
#endif
}
//-----------------------------------------------------------------------------
diff --git a/examples/full_test.cpp b/examples/full_test.cpp
index 9b5e26d..d0d7081 100644
--- a/examples/full_test.cpp
+++ b/examples/full_test.cpp
@@ -26,272 +26,92 @@
#include <getopt.h>
#include <vector>
#include "mgl/mgl.h"
+#include "mgl/eval.h"
//#include <mgl/mgl_idtf.h>
#include "mgl/parser.h"
+//-----------------------------------------------------------------------------
void mgls_prepare1d(mglData *y, mglData *y1=0, mglData *y2=0, mglData *x1=0, mglData *x2=0);
void mgls_prepare2d(mglData *a, mglData *b=0, mglData *v=0);
void mgls_prepare3d(mglData *a, mglData *b=0);
void mgls_prepare2v(mglData *a, mglData *b);
void mgls_prepare3v(mglData *ex, mglData *ey, mglData *ez);
//-----------------------------------------------------------------------------
-int test(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- gr->Box(); gr->Plot(y.SubData(-1,0));
- gr->Text(y,"This is very very long string drawn along a curve",":k");
-// gr->Text(y,"Another string drawn above a curve","T:r");
- return 0;
-
- mglParse par(true);
- FILE *fp=fopen("test.mgl","rt");
- par.Execute(gr,fp,true);
- fclose(fp);
- gr->ShowImage("",true);
- return 0;
-}
-//=============================================================================
-struct mglSample /// Structure for list of samples
-{
- const char *name;
- void (*func)(mglGraph*);
-};
-//-----------------------------------------------------------------------------
-int mgl_cmd_smp(const void *a, const void *b)
-{
- const mglSample *aa = (const mglSample *)a;
- const mglSample *bb = (const mglSample *)b;
- return strcmp(aa->name, bb->name);
-}
-//-----------------------------------------------------------------------------
-extern mglSample samp[];
int type = 0;
int dotest = 0;
-int width = 600;
-int height = 400;
+int width = 1000;
+int height = 750;
int mini = 0;
int big = 0;
int srnd = 0;
-mglData sdat;
-//-----------------------------------------------------------------------------
-static struct option longopts[] =
-{
- { "test", no_argument, &dotest, 1 },
- { "srnd", no_argument, &srnd, 1 },
- { "width", required_argument, NULL, 'w' },
- { "height", required_argument, NULL, 'h' },
- { "list", no_argument, NULL, 'l' },
- { "kind", required_argument, NULL, 'k' },
- { "thread", required_argument, NULL, 't' },
- { "mini", no_argument, &mini, 1 },
- { "big", no_argument, &big, 1 },
- { "png", no_argument, &type, 0 },
- { "eps", no_argument, &type, 1 },
- { "svg", no_argument, &type, 2 },
- { "solid", no_argument, &type, 3 },
- { "jpeg", no_argument, &type, 4 },
- { "idtf", no_argument, &type, 5 },
- { "gif", no_argument, &type, 6 },
- { "none", no_argument, &type, 7 },
- { "bps", no_argument, &type, 8 },
- { "u3d", no_argument, &type, 9 },
- { "pdf", no_argument, &type, 10 },
- { "help", no_argument, NULL, '?' },
- { NULL, 0, NULL, 0 }
-};
-//-----------------------------------------------------------------------------
-void usage()
-{
- puts ( \
- "-png - output png\n" \
- "-width=num - png picture width\n" \
- "-height=num - png picture height\n" \
- "-mini - png picture is 200x133\n" \
- "-big - png picture is 1200x800\n" \
- "-idtf - output idtf\n" \
- "-u3d - output u3d\n" \
- "-pdf - output pdf\n" \
- "-eps - output EPS\n" \
- "-jpeg - output JPEG\n" \
- "-solid - output solid PNG\n" \
- "-svg - output SVG\n" \
- "-none - none output\n" \
- "-srnd - use the same random numbers in any run\n" \
- "-kind=name - produce only this picture" \
- "-thread=num - number of threads used" \
- "-test - perform test\n"
- );
-// exit(0);
-};
-//-----------------------------------------------------------------------------
-void save(mglGraph *gr,const char *name,const char *suf="")
-{
-// return;
- char buf[128];
- printf("%s ",name); fflush(stdout);
- switch(type)
- {
- case 1: // EPS
- sprintf(buf,"%s%s.eps",name,suf);
- gr->WriteEPS(buf);
- break;
- case 2: // SVG
- sprintf(buf,"%s%s.svg",name,suf);
- gr->WriteSVG(buf); break;
- case 3: // PNG
- sprintf(buf,"%s%s.png",name,suf);
- gr->WritePNG(buf,0,true); break;
- case 4: // JPEG
- sprintf(buf,"%s%s.jpg",name,suf);
- gr->WriteJPEG(buf); break;
- case 5: // IDTF
- sprintf(buf,"%s%s.idtf",name,suf);
- gr->WriteIDTF(buf); break;
- case 6: // GIF
- sprintf(buf,"%s%s.gif",name,suf);
- gr->WriteGIF(buf); break;
- case 7: // none
- break;
- case 8: // EPS to PNG
- sprintf(buf,"%s%s.png",name,suf);
- gr->WritePNG(buf,0,false);
- break;
- case 9: // U3D
- sprintf(buf,"%s%s.u3d",name,suf);
-// gr->WriteU3D(buf); break; // TODO: Add IDTF support
- case 10: // PDF
- sprintf(buf,"%s%s.pdf",name,suf);
-// gr->WritePDF(buf); break; // TODO: Add IDTF support
- default:// PNG (no alpha)
- sprintf(buf,"%s%s.png",name,suf);
- gr->WritePNG(buf,0,false); break;
- }
-}
//-----------------------------------------------------------------------------
-// Sample functions
-//-----------------------------------------------------------------------------
-void smgl_tval(mglGraph *gr) // ticks features
-{
- gr->SetRanges(-M_PI,M_PI, 0, 2);
- float val[]={-M_PI, -M_PI/2, 0, 0.886, M_PI/2, M_PI};
- mglData xt(6,val);
- gr->SetTicksVal('x', xt, "-\\pi\n-\\pi/2\n\n0\nx^*\n\\pi/2\n\\pi");
- gr->Axis(); gr->Grid();
- gr->FPlot("2*cos(x^2)^2", "r2");
-}
-//-----------------------------------------------------------------------------
-void smgl_fonts(mglGraph *gr) // ticks features
-{
- float h=1.1, d=0.25;
- gr->LoadFont("STIX"); gr->Puts(mglPoint(0,h), "default font (STIX)");
- gr->LoadFont("adventor"); gr->Puts(mglPoint(0,h-d), "adventor font");
- gr->LoadFont("bonum"); gr->Puts(mglPoint(0,h-2*d), "bonum font");
- gr->LoadFont("chorus"); gr->Puts(mglPoint(0,h-3*d), "chorus font");
- gr->LoadFont("cursor"); gr->Puts(mglPoint(0,h-4*d), "cursor font");
- gr->LoadFont("heros"); gr->Puts(mglPoint(0,h-5*d), "heros font");
- gr->LoadFont("heroscn"); gr->Puts(mglPoint(0,h-6*d), "heroscn font");
- gr->LoadFont("pagella"); gr->Puts(mglPoint(0,h-7*d), "pagella font");
- gr->LoadFont("schola"); gr->Puts(mglPoint(0,h-8*d), "schola font");
- gr->LoadFont("termes"); gr->Puts(mglPoint(0,h-9*d), "termes font");
- gr->LoadFont("STIX");
-}
-//-----------------------------------------------------------------------------
-void smgl_stick(mglGraph *gr) // column plot
+void test(mglGraph *gr)
{
- if(type==5 || type==9 || type==10)
- gr->Puts(mglPoint(0,0),"Does not work in 3D\\n for reasons I do not care to investigate till 2.0");
+ gr->SubPlot(2,2,0);
+ float d,x1,x2,x0,y=0.95;
+ d=0.3, x0=0.2, x1=0.5, x2=0.6;
+ gr->Line(mglPoint(x0,1-0*d),mglPoint(x1,1-0*d),"k-"); gr->Puts(mglPoint(x2,y-0*d),"Solid '-'",":rL");
+ gr->Line(mglPoint(x0,1-1*d),mglPoint(x1,1-1*d),"k|"); gr->Puts(mglPoint(x2,y-1*d),"Long Dash '|'",":rL");
+ gr->Line(mglPoint(x0,1-2*d),mglPoint(x1,1-2*d),"k;"); gr->Puts(mglPoint(x2,y-2*d),"Dash ';'",":rL");
+ gr->Line(mglPoint(x0,1-3*d),mglPoint(x1,1-3*d),"k="); gr->Puts(mglPoint(x2,y-3*d),"Small dash '='",":rL");
+ gr->Line(mglPoint(x0,1-4*d),mglPoint(x1,1-4*d),"kj"); gr->Puts(mglPoint(x2,y-4*d),"Dash-dot 'j'",":rL");
+ gr->Line(mglPoint(x0,1-5*d),mglPoint(x1,1-5*d),"ki"); gr->Puts(mglPoint(x2,y-5*d),"Small dash-dot 'i'",":rL");
+ gr->Line(mglPoint(x0,1-6*d),mglPoint(x1,1-6*d),"k:"); gr->Puts(mglPoint(x2,y-6*d),"Dots ':'",":rL");
+ gr->Line(mglPoint(x0,1-7*d),mglPoint(x1,1-7*d),"k "); gr->Puts(mglPoint(x2,y-7*d),"None ' '",":rL");
- gr->SetRanges(-1, 1, -1, 1, 0, 1); gr->Light(true);
- gr->StickPlot(3, 0, 40, 30); gr->Axis("xyz_");
- gr->FSurf("exp(-10*y^2-6*x^2)");
- gr->Puts(mglPoint(0.2, 0, 1.2), "z=0", "", -2);
- gr->StickPlot(3, 1, 40, 30); gr->Axis("xyz_");
- gr->FSurf("exp(-10*y^2/2-6*x^2)/sqrt(2)");
- gr->Puts(mglPoint(0.2, 0, 1.2), "z=1", "", -2);
- gr->StickPlot(3, 2, 40, 30); gr->Axis("xyz_");
- gr->FSurf("exp(-10*y^2/5-6*x^2)/sqrt(5)");
- gr->Puts(mglPoint(0.2, 0, 1.2), "z=2", "", -2);
- gr->Label('x',"\\tau", 0); gr->Label('y', "\\rho");
-}
-//-----------------------------------------------------------------------------
-void smgl_column(mglGraph *gr) // column plot
-{
- char str[32];
- for(int i=0;i<4;i++)
- {
- gr->ColumnPlot(4,i);
- gr->Box();
- sprintf(str,"Plot %d of 4",i);
- gr->Puts(mglPoint(-0.5,0.5),str,"",-2);
- sprintf(str,"sin(pi*x+pi*%d/2)",i);
- gr->FPlot(str);
- }
-}
-//-----------------------------------------------------------------------------
-void smgl_map(mglGraph *gr) // example of mapping
-{
- mglData a(50, 40), b(50, 40);
- gr->Puts(mglPoint(0, 0), "\\to", ":C", -1.4);
- gr->SetRanges(-1,1,-1,1,-2,2);
+ d=0.25; x1=-1; x0=-0.8; y = -0.05;
+ gr->Mark(mglPoint(x1,5*d),"."); gr->Puts(mglPoint(x0,y+5*d),"'.'",":rL");
+ gr->Mark(mglPoint(x1,4*d),"+"); gr->Puts(mglPoint(x0,y+4*d),"'+'",":rL");
+ gr->Mark(mglPoint(x1,3*d),"x"); gr->Puts(mglPoint(x0,y+3*d),"'x'",":rL");
+ gr->Mark(mglPoint(x1,2*d),"*"); gr->Puts(mglPoint(x0,y+2*d),"'*'",":rL");
+ gr->Mark(mglPoint(x1,d),"s"); gr->Puts(mglPoint(x0,y+d),"'s'",":rL");
+ gr->Mark(mglPoint(x1,0),"d"); gr->Puts(mglPoint(x0,y),"'d'",":rL");
+ gr->Mark(mglPoint(x1,-d,0),"o"); gr->Puts(mglPoint(x0,y-d),"'o'",":rL");
+ gr->Mark(mglPoint(x1,-2*d,0),"^"); gr->Puts(mglPoint(x0,y-2*d),"'\\^'",":rL");
+ gr->Mark(mglPoint(x1,-3*d,0),"v"); gr->Puts(mglPoint(x0,y-3*d),"'v'",":rL");
+ gr->Mark(mglPoint(x1,-4*d,0),"<"); gr->Puts(mglPoint(x0,y-4*d),"'<'",":rL");
+ gr->Mark(mglPoint(x1,-5*d,0),">"); gr->Puts(mglPoint(x0,y-5*d),"'>'",":rL");
- gr->SubPlot(2, 1, 0);
- gr->Fill(a,"x"); gr->Fill(b,"y");
- gr->Puts(mglPoint(0, 1.1), "\\{x, y\\}", ":C", -2); gr->Box();
- gr->Map(a, b, "brgk");
+ d=0.25; x1=-0.5; x0=-0.3; y = -0.05;
+ gr->Mark(mglPoint(x1,5*d),"#."); gr->Puts(mglPoint(x0,y+5*d),"'\\#.'",":rL");
+ gr->Mark(mglPoint(x1,4*d),"#+"); gr->Puts(mglPoint(x0,y+4*d),"'\\#+'",":rL");
+ gr->Mark(mglPoint(x1,3*d),"#x"); gr->Puts(mglPoint(x0,y+3*d),"'\\#x'",":rL");
+ gr->Mark(mglPoint(x1,2*d),"#*"); gr->Puts(mglPoint(x0,y+2*d),"'\\#*'",":rL");
+ gr->Mark(mglPoint(x1,d),"#s"); gr->Puts(mglPoint(x0,y+d),"'\\#s'",":rL");
+ gr->Mark(mglPoint(x1,0),"#d"); gr->Puts(mglPoint(x0,y),"'\\#d'",":rL");
+ gr->Mark(mglPoint(x1,-d,0),"#o"); gr->Puts(mglPoint(x0,y-d),"'\\#o'",":rL");
+ gr->Mark(mglPoint(x1,-2*d,0),"#^"); gr->Puts(mglPoint(x0,y-2*d),"'\\#\\^'",":rL");
+ gr->Mark(mglPoint(x1,-3*d,0),"#v"); gr->Puts(mglPoint(x0,y-3*d),"'\\#v'",":rL");
+ gr->Mark(mglPoint(x1,-4*d,0),"#<"); gr->Puts(mglPoint(x0,y-4*d),"'\\#<'",":rL");
+ gr->Mark(mglPoint(x1,-5*d,0),"#>"); gr->Puts(mglPoint(x0,y-5*d),"'\\#>'",":rL");
- gr->SubPlot(2, 1, 1);
- gr->Fill(a,"(x^3+y^3)/2"); gr->Fill(b,"(x-y)/2");
- gr->Puts(mglPoint(0, 1.1), "\\{\\frac{x^3+y^3}{2}, \\frac{x-y}{2}\\}", ":C", -2);
- gr->Box();
- gr->Map(a, b, "brgk");
-}
-//-----------------------------------------------------------------------------
-void smgl_color_schemes(mglGraph *gr) // Color table
-{
- mglData a(256,2); a.Fill(-1,1);
- gr->SubPlot(2,10,0,0.2); gr->Dens(a,"kw");
- gr->Puts(mglPoint(-1.4, -0.3), "kw", ":C", -8);
- gr->SubPlot(2,10,1,0.2); gr->Dens(a,"wk");
- gr->Puts(mglPoint(-1.4, -0.3), "wk", ":C", -8);
- gr->SubPlot(2,10,2,0.2); gr->Dens(a,"kHCcw");
- gr->Puts(mglPoint(-1.4, -0.3), "kHCcw", ":C", -8);
- gr->SubPlot(2,10,3,0.2); gr->Dens(a,"kBbcw");
- gr->Puts(mglPoint(-1.4, -0.3), "kBbcw", ":C", -8);
- gr->SubPlot(2,10,4,0.2); gr->Dens(a,"kRryw");
- gr->Puts(mglPoint(-1.4, -0.3), "kRryw", ":C", -8);
- gr->SubPlot(2,10,5,0.2); gr->Dens(a,"kGgew");
- gr->Puts(mglPoint(-1.4, -0.3), "kGgew", ":C", -8);
- gr->SubPlot(2,10,6,0.2); gr->Dens(a,"BbwrR");
- gr->Puts(mglPoint(-1.4, -0.3), "BbwrR", ":C", -8);
- gr->SubPlot(2,10,7,0.2); gr->Dens(a,"BbwgG");
- gr->Puts(mglPoint(-1.4, -0.3), "BbwgG", ":C", -8);
- gr->SubPlot(2,10,8,0.2); gr->Dens(a,"GgwmM");
- gr->Puts(mglPoint(-1.4, -0.3), "GgwmM", ":C", -8);
- gr->SubPlot(2,10,9,0.2); gr->Dens(a,"UuwqR");
- gr->Puts(mglPoint(-1.4, -0.3), "UuwqR", ":C", -8);
- gr->SubPlot(2,10,10,0.2); gr->Dens(a,"QqwcC");
- gr->Puts(mglPoint(-1.4, -0.3), "QqwcC", ":C", -8);
- gr->SubPlot(2,10,11,0.2); gr->Dens(a,"CcwyY");
- gr->Puts(mglPoint(-1.4, -0.3), "CcwyY", ":C", -8);
- gr->SubPlot(2,10,12,0.2); gr->Dens(a,"bcwyr");
- gr->Puts(mglPoint(-1.4, -0.3), "bcwyr", ":C", -8);
- gr->SubPlot(2,10,13,0.2); gr->Dens(a,"bwr");
- gr->Puts(mglPoint(-1.4, -0.3), "bwr", ":C", -8);
- gr->SubPlot(2,10,14,0.2); gr->Dens(a,"BbcyrR");
- gr->Puts(mglPoint(-1.4, -0.3), "BbcyrR", ":C", -8);
- gr->SubPlot(2,10,15,0.2); gr->Dens(a,"UbcyqR");
- gr->Puts(mglPoint(-1.4, -0.3), "UbcyqR", ":C", -8);
- gr->SubPlot(2,10,16,0.2); gr->Dens(a,"BbcwyrR");
- gr->Puts(mglPoint(-1.4, -0.3), "BbcwyrR", ":C", -8);
- gr->SubPlot(2,10,17,0.2); gr->Dens(a,"bcyr");
- gr->Puts(mglPoint(-1.4, -0.3), "bcyr", ":C", -8);
- gr->SubPlot(2,10,18,0.2); gr->Dens(a,"BbcyrR|");
- gr->Puts(mglPoint(-1.4, -0.3), "BbcyrR|", ":C", -8);
- gr->SubPlot(2,10,19,0.2); gr->Dens(a,"bgr");
- gr->Puts(mglPoint(-1.4, -0.3), "bgr", ":C", -8);
-}
-//-----------------------------------------------------------------------------
-void smgl_colors(mglGraph *gr) // Color table
-{
+ gr->SubPlot(2,2,1);
+ float a=0.1,b=0.4,c=0.5;
+ gr->Line(mglPoint(a,1),mglPoint(b,1),"k-A"); gr->Puts(mglPoint(c,1),"Style 'A' or 'A\\_'",":rL");
+ gr->Line(mglPoint(a,0.8),mglPoint(b,0.8),"k-V"); gr->Puts(mglPoint(c,0.8),"Style 'V' or 'V\\_'",":rL");
+ gr->Line(mglPoint(a,0.6),mglPoint(b,0.6),"k-K"); gr->Puts(mglPoint(c,0.6),"Style 'K' or 'K\\_'",":rL");
+ gr->Line(mglPoint(a,0.4),mglPoint(b,0.4),"k-I"); gr->Puts(mglPoint(c,0.4),"Style 'I' or 'I\\_'",":rL");
+ gr->Line(mglPoint(a,0.2),mglPoint(b,0.2),"k-D"); gr->Puts(mglPoint(c,0.2),"Style 'D' or 'D\\_'",":rL");
+ gr->Line(mglPoint(a,0),mglPoint(b,0),"k-S"); gr->Puts(mglPoint(c,0),"Style 'S' or 'S\\_'",":rL");
+ gr->Line(mglPoint(a,-0.2),mglPoint(b,-0.2),"k-O"); gr->Puts(mglPoint(c,-0.2),"Style 'O' or 'O\\_'",":rL");
+ gr->Line(mglPoint(a,-0.4),mglPoint(b,-0.4),"k-T"); gr->Puts(mglPoint(c,-0.4),"Style 'T' or 'T\\_'",":rL");
+ gr->Line(mglPoint(a,-0.6),mglPoint(b,-0.6),"k-_"); gr->Puts(mglPoint(c,-0.6),"Style '\\_' or none",":rL");
+ gr->Line(mglPoint(a,-0.8),mglPoint(b,-0.8),"k-AS"); gr->Puts(mglPoint(c,-0.8),"Style 'AS'",":rL");
+ gr->Line(mglPoint(a,-1),mglPoint(b,-1),"k-_A"); gr->Puts(mglPoint(c,-1),"Style '\\_A'",":rL");
+
+ a=-1; b=-0.7; c=-0.6;
+ gr->Line(mglPoint(a,1),mglPoint(b,1),"kAA"); gr->Puts(mglPoint(c,1),"Style 'AA'",":rL");
+ gr->Line(mglPoint(a,0.8),mglPoint(b,0.8),"kVV"); gr->Puts(mglPoint(c,0.8),"Style 'VV'",":rL");
+ gr->Line(mglPoint(a,0.6),mglPoint(b,0.6),"kKK"); gr->Puts(mglPoint(c,0.6),"Style 'KK'",":rL");
+ gr->Line(mglPoint(a,0.4),mglPoint(b,0.4),"kII"); gr->Puts(mglPoint(c,0.4),"Style 'II'",":rL");
+ gr->Line(mglPoint(a,0.2),mglPoint(b,0.2),"kDD"); gr->Puts(mglPoint(c,0.2),"Style 'DD'",":rL");
+ gr->Line(mglPoint(a,0),mglPoint(b,0),"kSS"); gr->Puts(mglPoint(c,0),"Style 'SS'",":rL");
+ gr->Line(mglPoint(a,-0.2),mglPoint(b,-0.2),"kOO"); gr->Puts(mglPoint(c,-0.2),"Style 'OO'",":rL");
+ gr->Line(mglPoint(a,-0.4),mglPoint(b,-0.4),"kTT"); gr->Puts(mglPoint(c,-0.4),"Style 'TT'",":rL");
+ gr->Line(mglPoint(a,-0.6),mglPoint(b,-0.6),"k-__"); gr->Puts(mglPoint(c,-0.6),"Style '\\_\\_'",":rL");
+ gr->Line(mglPoint(a,-0.8),mglPoint(b,-0.8),"k-VA"); gr->Puts(mglPoint(c,-0.8),"Style 'VA'",":rL");
+ gr->Line(mglPoint(a,-1),mglPoint(b,-1),"k-AV"); gr->Puts(mglPoint(c,-1),"Style 'AV'",":rL");
+
+ gr->SubPlot(2,2,2);
//#LENUQ
gr->FaceZ(mglPoint(-1, -1), 0.4, 0.3, "L#"); gr->Puts(mglPoint(-0.8,-0.9), "L", "w:C", -1.4);
gr->FaceZ(mglPoint(-0.6,-1), 0.4, 0.3, "E#"); gr->Puts(mglPoint(-0.4,-0.9), "E", "w:C", -1.4);
@@ -334,291 +154,140 @@ void smgl_colors(mglGraph *gr) // Color table
gr->FaceZ(mglPoint(-0.2,0.8), 0.4, 0.3, "{r5}#"); gr->Puts(mglPoint(0, 0.9), "\\{r5\\}", "k:C", -1.4);
gr->FaceZ(mglPoint(0.2, 0.8), 0.4, 0.3, "{r7}#"); gr->Puts(mglPoint(0.4, 0.9), "\\{r7\\}", "k:C", -1.4);
gr->FaceZ(mglPoint(0.6, 0.8), 0.4, 0.3, "{r9}#"); gr->Puts(mglPoint(0.8, 0.9), "\\{r9\\}", "k:C", -1.4);
-}
-//-----------------------------------------------------------------------------
-void smgl_qo2d(mglGraph *gr)
-{
- gr->Compression(true); // try to save space
- mglData r, xx, yy, a, im(128), re(128);
- const char *ham = "p^2+q^2-x-1+i*0.5*(y+x)*(y>-x)";
- r = mglRay(ham, mglPoint(-0.7, -1), mglPoint(0, 0.5), 0.02, 2);
- gr->Plot(r.SubData(0), r.SubData(1), "k");
- gr->Axis(); gr->Label('x', "\\i x"); gr->Label('y', "\\i z");
- // now start beam tracing
- gr->Fill(re,"exp(-48*x^2)");
- a = mglQO2d(ham, re, im, r, xx, yy, 1, 30);
- gr->SetRange('c',0, 1);
- gr->Dens(xx, yy, a, "wyrRk");
- gr->FPlot("-x", "k|");
- gr->Puts(mglPoint(0, 0.85), "absorption: (x+y)/2 for x+y>0");
- gr->Puts(mglPoint(0.7, -0.05), "central ray");
- gr->Puts(mglPoint(0,1.1),"Beam and ray tracing");
- gr->Compression(false); //put setting back
-}
-//-----------------------------------------------------------------------------
-void smgl_pde(mglGraph *gr) // PDE and Ray sample
-{
- gr->Compression(true); // try to save space
- mglData a,re(128),im(128);
- gr->Axis();
- gr->Label('x', "\\i x");
- gr->Label('y', "\\i z");
- gr->Fill(re,"exp(-48*(x+0.7)^2)");
- a = gr->PDE("p^2+q^2-x-1+i*0.5*(z+x)*(z>-x)", re, im, 0.01, 30);
- a.Transpose("yxz");
- gr->SetRange('c',0, 1);
- gr->Dens(a,"wyrRk");
- gr->FPlot("-x", "k|");
- gr->Puts(mglPoint(0, 0.85), "absorption: (x+z)/2 for x+z>0");
- gr->Puts(mglPoint(0,1.1),"Equation: ik_0\\partial_zu + \\Delta u + x\\cdot u + i \\frac{x+z}{2}\\cdot u = 0");
- gr->Compression(false); //put setting back
+ gr->SubPlot(2,2,3);
+ char stl[3]="r1", txt[4]="'1'";
+ for(int i=0;i<10;i++)
+ {
+ txt[1]=stl[1]='0'+i;
+ gr->Line(mglPoint(-1,0.2*i-1),mglPoint(1,0.2*i-1),stl);
+ gr->Puts(mglPoint(1.05,0.2*i-1),txt,":L");
+ }
+ return;
+
+ mglParse par;
+ par.AllowSetSize(true);
+ FILE *fp=fopen("/home/balakin/mgl/att/put.mgl","rt");
+ par.Execute(gr,fp,true);
+ fclose(fp);
}
//-----------------------------------------------------------------------------
-void smgl_stfa(mglGraph *gr) // STFA sample
+void fexport(mglGraph *gr)
{
- mglData a(2000), b(2000);
- gr->Fill(a,"cos(50*pi*x)*(x<-.5)+cos(100*pi*x)*(x<0)*(x>-.5)+\
- cos(200*pi*x)*(x<.5)*(x>0)+cos(400*pi*x)*(x>.5)");
- gr->SubPlot(1, 2, 0);
- gr->Plot(a);
- gr->Axis();
- gr->Label('x', "\\i t");
+ mglData a,b,d; mgls_prepare2v(&a,&b); d = a;
+ for(int i=0;i<a.nx*a.ny;i++) d.a[i] = hypot(a.a[i],b.a[i]);
+ mglData c; mgls_prepare3d(&c);
+ mglData v(10); v.Fill(-0.5,1);
+ gr->SubPlot(2,2,1,""); gr->Title("Flow + Dens");
+ gr->Flow(a,b,"br"); gr->Dens(d,"BbcyrR"); gr->Box();
+ gr->SubPlot(2,2,0); gr->Title("Surf + Cont"); gr->Rotate(50,60);
+ gr->Light(true); gr->Surf(a); gr->Cont(a,"y"); gr->Box();
+ gr->SubPlot(2,2,2); gr->Title("Mesh + Cont"); gr->Rotate(50,60);
+ gr->Box(); gr->Mesh(a); gr->Cont(a,"_");
+ gr->SubPlot(2,2,3); gr->Title("Surf3 + ContF_3");gr->Rotate(50,60);
+ gr->Box(); gr->ContF3(v,c,"z",0); gr->ContF3(v,c,"x"); gr->ContF3(v,c);
+ gr->SetCutBox(mglPoint(0,-1,-1), mglPoint(1,0,1.1));
+ gr->ContF3(v,c,"z",c.nz-1); gr->Surf3(-0.5,c);
- gr->SubPlot(1, 2, 1);
- gr->STFA(a, b, 64, "BbcyrR");
- gr->Axis();
- gr->Label('x', "\\i t");
- gr->Label('y', "\\omega", 0);
+/* gr->WriteJPEG("test.jpg");
+* gr->WritePNG("test.png");
+* gr->WriteBMP("test.bmp");
+* gr->WriteTGA("test.tga");
+* gr->WriteEPS("test.eps");
+* gr->WriteSVG("test.svg");
+* gr->WriteGIF("test.gif");*/
+
+ gr->WriteXYZ("test.xyz");
+ gr->WriteSTL("test.stl");
+ gr->WriteOFF("test.off");
+ gr->WriteTEX("test.tex");
+ gr->WriteOBJ("test.obj","",true);
+ // gr->WriteX3D("test.x3d");
}
//-----------------------------------------------------------------------------
-void smgl_envelop(mglGraph *gr) // Envelop reconstruction
+// Sample functions (v.2.*0)
+//-----------------------------------------------------------------------------
+const char *mmgl_alpha="subplot 2 2 0:title 'default':rotate 50 60:box\nsurf a\n"
+"subplot 2 2 0:title 'light on':rotate 50 60:box\nlight on:surf a\n"
+"subplot 2 2 0:title 'light on; alpha on':rotate 50 60:box\nalpha on:surf a\n"
+"subplot 2 2 0:title 'alpha on':rotate 50 60:box\nnlight off:surf a\n";
+void smgl_alpha(mglGraph *gr) // alpha and lighting
{
- mglData a(1000);
- gr->Fill(a,"exp(-8*x^2)*sin(10*pi*x)");
- gr->Plot(a, "b");
- a.Envelop('x');
- gr->Plot(a, "r");
- gr->Axis();
-}
-//-----------------------------------------------------------------------------
-void smgl_sew(mglGraph *gr) // Phase reconstruction
-{
- gr->VertexColor(false);
- mglData a(100, 100);
- a.Modify("mod((y^2-(1-x)^2)/2,0.1)");
- gr->Rotate(40, 60);
- gr->Light(true);
- gr->Alpha(true);
- gr->Surf(a, "b");
- a.Sew("xy", 0.1);
- gr->Surf(a, "r");
- gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_samplee(mglGraph *gr) // TeX sample
-{
- gr->Puts(mglPoint(0), "\\sqrt{\\frac{\\alpha^{\\gamma^2}+\\overset 1{\\big\\infty}}{\\sqrt3{2+b}}}", 0, -4);
-}
-//-----------------------------------------------------------------------------
-void smgl_sampled(mglGraph *gr) // arrow styles
-{
- float a=0.1,b=0.4,c=0.5;
- gr->Line(mglPoint(a,1),mglPoint(b,1),"k-A"); gr->Puts(mglPoint(c,1),"Style 'A' or 'A\\_'",":rL");
- gr->Line(mglPoint(a,0.8),mglPoint(b,0.8),"k-V"); gr->Puts(mglPoint(c,0.8),"Style 'V' or 'V\\_'",":rL");
- gr->Line(mglPoint(a,0.6),mglPoint(b,0.6),"k-K"); gr->Puts(mglPoint(c,0.6),"Style 'K' or 'K\\_'",":rL");
- gr->Line(mglPoint(a,0.4),mglPoint(b,0.4),"k-I"); gr->Puts(mglPoint(c,0.4),"Style 'I' or 'I\\_'",":rL");
- gr->Line(mglPoint(a,0.2),mglPoint(b,0.2),"k-D"); gr->Puts(mglPoint(c,0.2),"Style 'D' or 'D\\_'",":rL");
- gr->Line(mglPoint(a,0),mglPoint(b,0),"k-S"); gr->Puts(mglPoint(c,0),"Style 'S' or 'S\\_'",":rL");
- gr->Line(mglPoint(a,-0.2),mglPoint(b,-0.2),"k-O"); gr->Puts(mglPoint(c,-0.2),"Style 'O' or 'O\\_'",":rL");
- gr->Line(mglPoint(a,-0.4),mglPoint(b,-0.4),"k-T"); gr->Puts(mglPoint(c,-0.4),"Style 'T' or 'T\\_'",":rL");
- gr->Line(mglPoint(a,-0.6),mglPoint(b,-0.6),"k-_"); gr->Puts(mglPoint(c,-0.6),"Style '\\_' or none",":rL");
- gr->Line(mglPoint(a,-0.8),mglPoint(b,-0.8),"k-AS"); gr->Puts(mglPoint(c,-0.8),"Style 'AS'",":rL");
- gr->Line(mglPoint(a,-1),mglPoint(b,-1),"k-_A"); gr->Puts(mglPoint(c,-1),"Style '\\_A'",":rL");
-
- a=-1; b=-0.7; c=-0.6;
- gr->Line(mglPoint(a,1),mglPoint(b,1),"kAA"); gr->Puts(mglPoint(c,1),"Style 'AA'",":rL");
- gr->Line(mglPoint(a,0.8),mglPoint(b,0.8),"kVV"); gr->Puts(mglPoint(c,0.8),"Style 'VV'",":rL");
- gr->Line(mglPoint(a,0.6),mglPoint(b,0.6),"kKK"); gr->Puts(mglPoint(c,0.6),"Style 'KK'",":rL");
- gr->Line(mglPoint(a,0.4),mglPoint(b,0.4),"kII"); gr->Puts(mglPoint(c,0.4),"Style 'II'",":rL");
- gr->Line(mglPoint(a,0.2),mglPoint(b,0.2),"kDD"); gr->Puts(mglPoint(c,0.2),"Style 'DD'",":rL");
- gr->Line(mglPoint(a,0),mglPoint(b,0),"kSS"); gr->Puts(mglPoint(c,0),"Style 'SS'",":rL");
- gr->Line(mglPoint(a,-0.2),mglPoint(b,-0.2),"kOO"); gr->Puts(mglPoint(c,-0.2),"Style 'OO'",":rL");
- gr->Line(mglPoint(a,-0.4),mglPoint(b,-0.4),"kTT"); gr->Puts(mglPoint(c,-0.4),"Style 'TT'",":rL");
- gr->Line(mglPoint(a,-0.6),mglPoint(b,-0.6),"k-__"); gr->Puts(mglPoint(c,-0.6),"Style '\\_\\_'",":rL");
- gr->Line(mglPoint(a,-0.8),mglPoint(b,-0.8),"k-VA"); gr->Puts(mglPoint(c,-0.8),"Style 'VA'",":rL");
- gr->Line(mglPoint(a,-1),mglPoint(b,-1),"k-AV"); gr->Puts(mglPoint(c,-1),"Style 'AV'",":rL");
-}
-//-----------------------------------------------------------------------------
-void smgl_samplec(mglGraph *gr) // error boxes
-{
- mglData x(10), y(10), ex(10), ey(10), y0(50);
- x.Modify("2*x-1 + 0.2*rnd-0.1");
- y.Modify("(2*x-1)^2 + 0.2*rnd-0.1");
- y0.Modify("(2*x-1)^2");
- ex.Modify("0.2");
- ey.Modify("0.1");
-
- gr->Clf();
- gr->SubPlot(2,2,0);
- gr->Error(y,ey,"ko");
- gr->Plot(y0,"r");
- gr->Axis();
- gr->Puts(mglPoint(0,1.2,0),"Random \\i{y}");
- gr->SubPlot(2,2,1);
- gr->Error(x,y,ex,"ko");
- gr->Plot(y0,"r");
- gr->Axis();
- gr->Puts(mglPoint(0,1.2,0),"Random \\i{x, y}");
- gr->SubPlot(2,2,2);
- gr->Error(x,y,ey,ey,"ko");
- gr->Plot(y0,"r");
- gr->Axis();
- gr->Puts(mglPoint(0,1.2,0),"Random \\i{x, y} and 2d boxes");
- gr->SubPlot(2,2,3);
- gr->Puts(mglPoint(0,1.2,0),"Random point in 3d space");
- gr->Rotate(40,60);
- for(int i=0;i<10;i++)
- gr->Error(mglPoint(mgl_rnd()-0.5,mgl_rnd()-0.5,mgl_rnd()-0.5), mglPoint(0.1,0.1,0.1),"bo");
- gr->Axis();
- gr->Rotate(0,0); // for unrotate in IDTF
-}
-//-----------------------------------------------------------------------------
-void smgl_sampleb(mglGraph *gr) // Gaussian beam
-{
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a(30,30,30), b(30,30,30);
- a.Modify("exp(-16*((z-0.5)^2+(y-0.5)^2)/(1+4*x^2))");
- b.Modify("16*((z-0.5)^2+(y-0.5)^2)*(x)/(1+4*x^2)");
- gr->SetRange('c',0,1);
-
- gr->SubPlot(2,2,0); gr->Rotate(40,60);
- gr->VertexColor(false);
- // since we have one-color trasparent surfaces - disable (per-vertex) coloring
- gr->Surf3(a,"wgk"); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60);
- gr->Dens3(a,'x'); gr->Dens3(a,'y'); gr->Dens3(a,'z');
- gr->Box(); gr->Axis();
- gr->SubPlot(2,2,2); gr->Rotate(40,60);
- gr->Cloud(a); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60);
- gr->VertexColor(false);
- // for variable transparency the only way is to disable smooth (per-vertex) coloring
- gr->Surf3A(b,a,"q"); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_samplea(mglGraph *gr) // flag #
-{
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a(30,20);
- a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-
- gr->SubPlot(2,2,0); gr->Rotate(40,60);
- gr->Surf(a,"BbcyrR#"); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60);
- gr->Dens(a,"BbcyrR#"); gr->Box();
- gr->SubPlot(2,2,2); gr->Rotate(40,60);
- gr->Cont(a,"BbcyrR#"); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60);
- gr->Axial(a,"BbcyrR#"); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_sample9(mglGraph *gr) // 2d plot
+ mglData a; mgls_prepare2d(&a);
+ gr->SubPlot(2,2,0); gr->Title("default"); gr->Rotate(50,60);
+ gr->Box(); gr->Surf(a);
+ gr->SubPlot(2,2,1); gr->Title("light on"); gr->Rotate(50,60);
+ gr->Box(); gr->Light(true); gr->Surf(a);
+ gr->SubPlot(2,2,2); gr->Title("alpha on; light on"); gr->Rotate(50,60);
+ gr->Box(); gr->Alpha(true); gr->Surf(a);
+ gr->SubPlot(2,2,3); gr->Title("alpha on"); gr->Rotate(50,60);
+ gr->Box(); gr->Light(false); gr->Surf(a);
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_schemes="call 'sch' 0 'kw'\ncall 'sch' 1 'wk'\ncall 'sch' 2 'kHCcw'\ncall 'sch' 3 'kBbcw'\n"
+"call 'sch' 4 'kRryw'\ncall 'sch' 5 'kGgew'\ncall 'sch' 6 'BbwrR'\ncall 'sch' 7 'BbwgG'\n"
+"call 'sch' 8 'GgwmM'\ncall 'sch' 9 'UuwqR'\ncall 'sch' 10 'QqwcC'\ncall 'sch' 11 'CcwyY'\n"
+"call 'sch' 12 'bcwyr'\ncall 'sch' 13 'bwr'\ncall 'sch' 13 'BbcyrR'\ncall 'sch' 15 'UbcyqR'\n"
+"call 'sch' 16 'BbcwyrR'\ncall 'sch' 17 'bcyr'\ncall 'sch' 18 'BbcyrR|'\ncall 'sch' 19 'bgr'\n"
+"stop\nfunc 'sch' 2\nsubplot 2 10 $1 0.2 0:fsurf 'x' '$2':text -1.4 -0.3 '$2' ':C' -8\nreturn\n";
+void smgl_schemes(mglGraph *gr) // Color table
{
- gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
+ mglData a(256,2); a.Fill(-1,1);
+ gr->SubPlot(2,10,0,0.2); gr->Dens(a,"kw"); gr->Puts(0.07, 0.92, "kw", "A");
+ gr->SubPlot(2,10,1,0.2); gr->Dens(a,"wk"); gr->Puts(0.57, 0.92, "wk", "A");
+ gr->SubPlot(2,10,2,0.2); gr->Dens(a,"kHCcw"); gr->Puts(0.07, 0.82, "kHCcw", "A");
+ gr->SubPlot(2,10,3,0.2); gr->Dens(a,"kBbcw"); gr->Puts(0.57, 0.82, "kBbcw", "A");
+ gr->SubPlot(2,10,4,0.2); gr->Dens(a,"kRryw"); gr->Puts(0.07, 0.72, "kRryw", "A");
+ gr->SubPlot(2,10,5,0.2); gr->Dens(a,"kGgew"); gr->Puts(0.57, 0.72, "kGgew", "A");
+ gr->SubPlot(2,10,6,0.2); gr->Dens(a,"BbwrR"); gr->Puts(0.07, 0.62, "BbwrR", "A");
+ gr->SubPlot(2,10,7,0.2); gr->Dens(a,"BbwgG"); gr->Puts(0.57, 0.62, "BbwgG", "A");
+ gr->SubPlot(2,10,8,0.2); gr->Dens(a,"GgwmM"); gr->Puts(0.07, 0.52, "GgwmM", "A");
+ gr->SubPlot(2,10,9,0.2); gr->Dens(a,"UuwqR"); gr->Puts(0.57, 0.52, "UuwqR", "A");
+ gr->SubPlot(2,10,10,0.2); gr->Dens(a,"QqwcC"); gr->Puts(0.07, 0.42, "QqwcC", "A");
+ gr->SubPlot(2,10,11,0.2); gr->Dens(a,"CcwyY"); gr->Puts(0.57, 0.42, "CcwyY", "A");
+ gr->SubPlot(2,10,12,0.2); gr->Dens(a,"bcwyr"); gr->Puts(0.07, 0.32, "bcwyr", "A");
+ gr->SubPlot(2,10,13,0.2); gr->Dens(a,"bwr"); gr->Puts(0.57, 0.32, "bwr", "A");
+ gr->SubPlot(2,10,14,0.2); gr->Dens(a,"BbcyrR"); gr->Puts(0.07, 0.22, "BbcyrR", "A");
+ gr->SubPlot(2,10,15,0.2); gr->Dens(a,"UbcyqR"); gr->Puts(0.57, 0.22, "UbcyqR", "A");
+ gr->SubPlot(2,10,16,0.2); gr->Dens(a,"BbcwyrR"); gr->Puts(0.07, 0.12, "BbcwyrR", "A");
+ gr->SubPlot(2,10,17,0.2); gr->Dens(a,"bcyr"); gr->Puts(0.57, 0.12, "bcyr", "A");
+ gr->SubPlot(2,10,18,0.2); gr->Dens(a,"BbcyrR|"); gr->Puts(0.07, 0.02, "BbcyrR|", "A");
+ gr->SubPlot(2,10,19,0.2); gr->Dens(a,"bgr"); gr->Puts(0.57, 0.02, "bgr", "A");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_curvcor="origin -1 1 -1\nsubplot 2 2 0:title 'Cartesian':rotate 50 60:fplot '2*t-1' '0.5' '0':axis:grid\n"
+"axis 'y*sin(pi*x)' 'y*cos(pi*x)':subplot 2 2 1:title 'Cylindrical':rotate 50 60:fplot '2*t-1' '0.5' '0':axis:grid\n"
+"axis '2*y*x' 'y*y - x*x':subplot 2 2 2:title 'Parabolic':rotate 50 60:fplot '2*t-1' '0.5' '0':axis:grid\n"
+"axis 'y*sin(pi*x)' 'y*cos(pi*x)' 'x+z':subplot 2 2 3:title 'Spiral':rotate 50 60:fplot '2*t-1' '0.5' '0':axis:grid\n";
+void smgl_curvcoor(mglGraph *gr) // curvilinear coordinates
+{
+ gr->SetOrigin(-1,1,-1);
- mglData a0(50,40);
- a0.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
- gr->SubPlot(2,2,0); gr->Rotate(60,40);
- gr->Surf(a0); gr->Box();
+ gr->SubPlot(2,2,0); gr->Title("Cartesian"); gr->Rotate(50,60);
+ gr->FPlot("2*t-1","0.5","0","r2");
+ gr->Axis(); gr->Grid();
- mglData x(50,40),y(50,40),z(50,40);
- x.Modify("0.8*sin(2*pi*x)*sin(pi*y)");
- y.Modify("0.8*cos(2*pi*x)*sin(pi*y)");
- z.Modify("0.8*cos(pi*y)");
- gr->SubPlot(2,2,1); gr->Rotate(60,40);
- gr->Surf(x,y,z,"BbwrR"); gr->Box();
+ gr->SetFunc("y*sin(pi*x)","y*cos(pi*x)",0);
+ gr->SubPlot(2,2,1); gr->Title("Cylindrical"); gr->Rotate(50,60);
+ gr->FPlot("2*t-1","0.5","0","r2");
+ gr->Axis(); gr->Grid();
- mglData a1(50,40,3);
- a1.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
- a1.Modify("0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*sin(3*pi*(x*y))",1);
- a1.Modify("0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*cos(3*pi*(x*y))",2);
- gr->SubPlot(2,2,2); gr->Rotate(60,40);
- gr->Alpha(true);
- gr->Surf(a1); gr->Box();
+ gr->SetFunc("2*y*x","y*y - x*x",0);
+ gr->SubPlot(2,2,2); gr->Title("Parabolic"); gr->Rotate(50,60);
+ gr->FPlot("2*t-1","0.5","0","r2");
+ gr->Axis(); gr->Grid();
- gr->SubPlot(2,2,3); gr->Rotate(60,40);
- gr->Dens(a1); gr->Box();
+ gr->SetFunc("y*sin(pi*x)","y*cos(pi*x)","x+z");
+ gr->SubPlot(2,2,3); gr->Title("Spiral"); gr->Rotate(50,60);
+ gr->FPlot("2*t-1","0.5","0","r2");
+ gr->Axis(); gr->Grid();
+ gr->SetFunc(0,0,0); // set to default Cartesian
}
//-----------------------------------------------------------------------------
-void smgl_sample8(mglGraph *gr) // 1d plot
+const char *mmgl_style="";
+void smgl_style(mglGraph *gr) // pen styles
{
- mglData y0(50); y0.Modify("sin(pi*(2*x-1))");
gr->SubPlot(2,2,0);
- gr->Plot(y0); gr->Box();
-
- gr->SubPlot(2,2,1);
- mglData y1(50,2);
- y1.Modify("sin(pi*2*x-pi)"); y1.Modify("cos(pi*2*x-pi)/2",1);
- gr->Plot(y1); gr->Box();
-
- mglData x(50); x.Modify("cos(pi*2*x-pi)");
- gr->Plot(x,y0,"Y+");
-
- gr->Plot(y1.SubData(-1,0),y1.SubData(-1,1),"q|");
-
- gr->SubPlot(2,2,2); gr->Rotate(60,40);
- mglData z(50); z.Modify("2*x-1");
- gr->Plot(x,y0,z); gr->Box();
-
- mglData y2(10,3); y2.Modify("cos(pi*(2*x-1-y))");
- y2.Modify("2*x-1",2);
- gr->Plot(y2.SubData(-1,0),y2.SubData(-1,1),y2.SubData(-1,2),"bo ");
-
- gr->SubPlot(2,2,3); gr->Rotate(60,40);
- gr->Bars(x,y0,z,"ri"); gr->Box();
-
- gr->Rotate(0,0); // for unrotate in IDTF
-}
-//-----------------------------------------------------------------------------
-void smgl_sample7(mglGraph *gr) // smoothing
-{
- mglData y0(30),y1,y2,y3;
- y0.Modify("0.4*sin(2*pi*x) + 0.3*cos(3*pi*x) - 0.4*sin(4*pi*x)+0.4*rnd");
-
- y1=y0; y1.Smooth("x3");
- y2=y0; y2.Smooth("x5");
- y3=y0; y3.Smooth("x");
-
- gr->Plot(y0,"k"); gr->AddLegend("NONE","k");
- gr->Plot(y1,"r"); gr->AddLegend("LINE\\_3","r");
- gr->Plot(y2,"g"); gr->AddLegend("LINE\\_5","g");
- gr->Plot(y3,"b"); gr->AddLegend("QUAD\\_5","b");
- gr->Legend(); gr->Box();
- gr->ClearLegend(); // clear legend strings
-}
-//-----------------------------------------------------------------------------
-void smgl_sample6(mglGraph *gr) // differentiate
-{
- mglData a(30,40); a.Modify("x*y");
- gr->SetRanges(0,1,0,1,0,1);
- gr->SubPlot(2,2,0); gr->Rotate(60,40);
- gr->Surf(a); gr->Box();
- gr->Puts(mglPoint(0.7,1,1.2),"a(x,y)");
- gr->SubPlot(2,2,1); gr->Rotate(60,40);
- a.Diff("x"); gr->Surf(a); gr->Box();
- gr->Puts(mglPoint(0.7,1,1.2),"da/dx");
- gr->SubPlot(2,2,2); gr->Rotate(60,40);
- a.Integral("xy"); gr->Surf(a); gr->Box();
- gr->Puts(mglPoint(0.7,1,1.2),"\\int da/dx dxdy");
- gr->SubPlot(2,2,3); gr->Rotate(60,40);
- a.Diff2("y"); gr->Surf(a); gr->Box();
- gr->Puts(mglPoint(0.7,1,1.2),"\\int {d^2}a/dxdy dx");
-}
-//-----------------------------------------------------------------------------
-void smgl_sample5(mglGraph *gr) // pen styles
-{
- if(type==5 || type==9 || type==10) gr->Puts(mglPoint(0,1.2),"line styles not supported",":rL");
float d,x1,x2,x0,y=0.95;
d=0.3, x0=0.2, x1=0.5, x2=0.6;
gr->Line(mglPoint(x0,1-0*d),mglPoint(x1,1-0*d),"k-"); gr->Puts(mglPoint(x2,y-0*d),"Solid '-'",":rL");
@@ -655,1029 +324,1676 @@ void smgl_sample5(mglGraph *gr) // pen styles
gr->Mark(mglPoint(x1,-3*d,0),"#v"); gr->Puts(mglPoint(x0,y-3*d),"'\\#v'",":rL");
gr->Mark(mglPoint(x1,-4*d,0),"#<"); gr->Puts(mglPoint(x0,y-4*d),"'\\#<'",":rL");
gr->Mark(mglPoint(x1,-5*d,0),"#>"); gr->Puts(mglPoint(x0,y-5*d),"'\\#>'",":rL");
+
+ gr->SubPlot(2,2,1);
+ float a=0.1,b=0.4,c=0.5;
+ gr->Line(mglPoint(a,1),mglPoint(b,1),"k-A"); gr->Puts(mglPoint(c,1),"Style 'A' or 'A\\_'",":rL");
+ gr->Line(mglPoint(a,0.8),mglPoint(b,0.8),"k-V"); gr->Puts(mglPoint(c,0.8),"Style 'V' or 'V\\_'",":rL");
+ gr->Line(mglPoint(a,0.6),mglPoint(b,0.6),"k-K"); gr->Puts(mglPoint(c,0.6),"Style 'K' or 'K\\_'",":rL");
+ gr->Line(mglPoint(a,0.4),mglPoint(b,0.4),"k-I"); gr->Puts(mglPoint(c,0.4),"Style 'I' or 'I\\_'",":rL");
+ gr->Line(mglPoint(a,0.2),mglPoint(b,0.2),"k-D"); gr->Puts(mglPoint(c,0.2),"Style 'D' or 'D\\_'",":rL");
+ gr->Line(mglPoint(a,0),mglPoint(b,0),"k-S"); gr->Puts(mglPoint(c,0),"Style 'S' or 'S\\_'",":rL");
+ gr->Line(mglPoint(a,-0.2),mglPoint(b,-0.2),"k-O"); gr->Puts(mglPoint(c,-0.2),"Style 'O' or 'O\\_'",":rL");
+ gr->Line(mglPoint(a,-0.4),mglPoint(b,-0.4),"k-T"); gr->Puts(mglPoint(c,-0.4),"Style 'T' or 'T\\_'",":rL");
+ gr->Line(mglPoint(a,-0.6),mglPoint(b,-0.6),"k-_"); gr->Puts(mglPoint(c,-0.6),"Style '\\_' or none",":rL");
+ gr->Line(mglPoint(a,-0.8),mglPoint(b,-0.8),"k-AS"); gr->Puts(mglPoint(c,-0.8),"Style 'AS'",":rL");
+ gr->Line(mglPoint(a,-1),mglPoint(b,-1),"k-_A"); gr->Puts(mglPoint(c,-1),"Style '\\_A'",":rL");
+
+ a=-1; b=-0.7; c=-0.6;
+ gr->Line(mglPoint(a,1),mglPoint(b,1),"kAA"); gr->Puts(mglPoint(c,1),"Style 'AA'",":rL");
+ gr->Line(mglPoint(a,0.8),mglPoint(b,0.8),"kVV"); gr->Puts(mglPoint(c,0.8),"Style 'VV'",":rL");
+ gr->Line(mglPoint(a,0.6),mglPoint(b,0.6),"kKK"); gr->Puts(mglPoint(c,0.6),"Style 'KK'",":rL");
+ gr->Line(mglPoint(a,0.4),mglPoint(b,0.4),"kII"); gr->Puts(mglPoint(c,0.4),"Style 'II'",":rL");
+ gr->Line(mglPoint(a,0.2),mglPoint(b,0.2),"kDD"); gr->Puts(mglPoint(c,0.2),"Style 'DD'",":rL");
+ gr->Line(mglPoint(a,0),mglPoint(b,0),"kSS"); gr->Puts(mglPoint(c,0),"Style 'SS'",":rL");
+ gr->Line(mglPoint(a,-0.2),mglPoint(b,-0.2),"kOO"); gr->Puts(mglPoint(c,-0.2),"Style 'OO'",":rL");
+ gr->Line(mglPoint(a,-0.4),mglPoint(b,-0.4),"kTT"); gr->Puts(mglPoint(c,-0.4),"Style 'TT'",":rL");
+ gr->Line(mglPoint(a,-0.6),mglPoint(b,-0.6),"k-__"); gr->Puts(mglPoint(c,-0.6),"Style '\\_\\_'",":rL");
+ gr->Line(mglPoint(a,-0.8),mglPoint(b,-0.8),"k-VA"); gr->Puts(mglPoint(c,-0.8),"Style 'VA'",":rL");
+ gr->Line(mglPoint(a,-1),mglPoint(b,-1),"k-AV"); gr->Puts(mglPoint(c,-1),"Style 'AV'",":rL");
+
+ gr->SubPlot(2,2,2);
+ //#LENUQ
+ gr->FaceZ(mglPoint(-1, -1), 0.4, 0.3, "L#"); gr->Puts(mglPoint(-0.8,-0.9), "L", "w:C", -1.4);
+ gr->FaceZ(mglPoint(-0.6,-1), 0.4, 0.3, "E#"); gr->Puts(mglPoint(-0.4,-0.9), "E", "w:C", -1.4);
+ gr->FaceZ(mglPoint(-0.2,-1), 0.4, 0.3, "N#"); gr->Puts(mglPoint(0, -0.9), "N", "w:C", -1.4);
+ gr->FaceZ(mglPoint(0.2, -1), 0.4, 0.3, "U#"); gr->Puts(mglPoint(0.4,-0.9), "U", "w:C", -1.4);
+ gr->FaceZ(mglPoint(0.6, -1), 0.4, 0.3, "Q#"); gr->Puts(mglPoint(0.8,-0.9), "Q", "w:C", -1.4);
+ //#lenuq
+ gr->FaceZ(mglPoint(-1, -0.7), 0.4, 0.3, "l#"); gr->Puts(mglPoint(-0.8,-0.6), "l", "k:C", -1.4);
+ gr->FaceZ(mglPoint(-0.6,-0.7), 0.4, 0.3, "e#"); gr->Puts(mglPoint(-0.4,-0.6), "e", "k:C", -1.4);
+ gr->FaceZ(mglPoint(-0.2,-0.7), 0.4, 0.3, "n#"); gr->Puts(mglPoint(0, -0.6), "n", "k:C", -1.4);
+ gr->FaceZ(mglPoint(0.2, -0.7), 0.4, 0.3, "u#"); gr->Puts(mglPoint(0.4,-0.6), "u", "k:C", -1.4);
+ gr->FaceZ(mglPoint(0.6, -0.7), 0.4, 0.3, "q#"); gr->Puts(mglPoint(0.8,-0.6), "q", "k:C", -1.4);
+ //#CMYkP
+ gr->FaceZ(mglPoint(-1, -0.4), 0.4, 0.3, "C#"); gr->Puts(mglPoint(-0.8,-0.3), "C", "w:C", -1.4);
+ gr->FaceZ(mglPoint(-0.6,-0.4), 0.4, 0.3, "M#"); gr->Puts(mglPoint(-0.4,-0.3), "M", "w:C", -1.4);
+ gr->FaceZ(mglPoint(-0.2,-0.4), 0.4, 0.3, "Y#"); gr->Puts(mglPoint(0, -0.3), "Y", "w:C", -1.4);
+ gr->FaceZ(mglPoint(0.2, -0.4), 0.4, 0.3, "k#"); gr->Puts(mglPoint(0.4,-0.3), "k", "w:C", -1.4);
+ gr->FaceZ(mglPoint(0.6, -0.4), 0.4, 0.3, "P#"); gr->Puts(mglPoint(0.8,-0.3), "P", "w:C", -1.4);
+ //#cmywp
+ gr->FaceZ(mglPoint(-1, -0.1), 0.4, 0.3, "c#"); gr->Puts(mglPoint(-0.8, 0), "c", "k:C", -1.4);
+ gr->FaceZ(mglPoint(-0.6,-0.1), 0.4, 0.3, "m#"); gr->Puts(mglPoint(-0.4, 0), "m", "k:C", -1.4);
+ gr->FaceZ(mglPoint(-0.2,-0.1), 0.4, 0.3, "y#"); gr->Puts(mglPoint(0, 0), "y", "k:C", -1.4);
+ gr->FaceZ(mglPoint(0.2, -0.1), 0.4, 0.3, "w#"); gr->Puts(mglPoint(0.4, 0), "w", "k:C", -1.4);
+ gr->FaceZ(mglPoint(0.6, -0.1), 0.4, 0.3, "p#"); gr->Puts(mglPoint(0.8, 0), "p", "k:C", -1.4);
+ //#BGRHW
+ gr->FaceZ(mglPoint(-1, 0.2), 0.4, 0.3, "B#"); gr->Puts(mglPoint(-0.8, 0.3), "B", "w:C", -1.4);
+ gr->FaceZ(mglPoint(-0.6,0.2), 0.4, 0.3, "G#"); gr->Puts(mglPoint(-0.4, 0.3), "G", "w:C", -1.4);
+ gr->FaceZ(mglPoint(-0.2,0.2), 0.4, 0.3, "R#"); gr->Puts(mglPoint(0, 0.3), "R", "w:C", -1.4);
+ gr->FaceZ(mglPoint(0.2, 0.2), 0.4, 0.3, "H#"); gr->Puts(mglPoint(0.4, 0.3), "H", "w:C", -1.4);
+ gr->FaceZ(mglPoint(0.6, 0.2), 0.4, 0.3, "W#"); gr->Puts(mglPoint(0.8, 0.3), "W", "w:C", -1.4);
+ //#bgrhw
+ gr->FaceZ(mglPoint(-1, 0.5), 0.4, 0.3, "b#"); gr->Puts(mglPoint(-0.8, 0.6), "b", "k:C", -1.4);
+ gr->FaceZ(mglPoint(-0.6,0.5), 0.4, 0.3, "g#"); gr->Puts(mglPoint(-0.4, 0.6), "g", "k:C", -1.4);
+ gr->FaceZ(mglPoint(-0.2,0.5), 0.4, 0.3, "r#"); gr->Puts(mglPoint(0, 0.6), "r", "k:C", -1.4);
+ gr->FaceZ(mglPoint(0.2, 0.5), 0.4, 0.3, "h#"); gr->Puts(mglPoint(0.4, 0.6), "h", "k:C", -1.4);
+ gr->FaceZ(mglPoint(0.6, 0.5), 0.4, 0.3, "w#"); gr->Puts(mglPoint(0.8, 0.6), "w", "k:C", -1.4);
+ //#brighted
+ gr->FaceZ(mglPoint(-1, 0.8), 0.4, 0.3, "{r1}#"); gr->Puts(mglPoint(-0.8, 0.9), "\\{r1\\}", "w:C", -1.4);
+ gr->FaceZ(mglPoint(-0.6,0.8), 0.4, 0.3, "{r3}#"); gr->Puts(mglPoint(-0.4, 0.9), "\\{r3\\}", "w:C", -1.4);
+ gr->FaceZ(mglPoint(-0.2,0.8), 0.4, 0.3, "{r5}#"); gr->Puts(mglPoint(0, 0.9), "\\{r5\\}", "k:C", -1.4);
+ gr->FaceZ(mglPoint(0.2, 0.8), 0.4, 0.3, "{r7}#"); gr->Puts(mglPoint(0.4, 0.9), "\\{r7\\}", "k:C", -1.4);
+ gr->FaceZ(mglPoint(0.6, 0.8), 0.4, 0.3, "{r9}#"); gr->Puts(mglPoint(0.8, 0.9), "\\{r9\\}", "k:C", -1.4);
+
+ gr->SubPlot(2,2,3);
+ char stl[3]="r1", txt[4]="'1'";
+ for(int i=0;i<10;i++)
+ {
+ txt[1]=stl[1]='0'+i;
+ gr->Line(mglPoint(-1,0.2*i-1),mglPoint(1,0.2*i-1),stl);
+ gr->Puts(mglPoint(1.05,0.2*i-1),txt,":L");
+ }
}
//-----------------------------------------------------------------------------
-void smgl_sample4(mglGraph *gr) // font features
+const char *mmgl_text="subplot 2 2 0 ''\ntext 0 1 'Text can be in ASCII and in Unicode'\ntext 0 0.6 'It can be \\wire{wire}, \\big{big} or #r{colored}'\n"
+"text 0 0.2 'One can change style in string: \\b{bold}, \\i{italic, \\b{both}}'\ntext 0 -0.2 'Easy to \\a{overline} or \\u{underline}'\n"
+"text 0 -0.6 'Easy to change indexes ^{up} _{down} @{center}'\ntext 0 -1 'It parse TeX: \\int \\alpha \\cdot '\n'\\sqrt3{sin(\\pi x)^2 + \\gamma_{i_k}} dx'\n"
+"subplot0 2 2 1 ''\n text 0 0 '\\sqrt{\\frac{\\alpha^{\\gamma^2}+\\overset 1{\\big\\infty}}{\\sqrt3{2+b}}}' '@' -4\n"
+"subplot 2 2 2 '':box:plot y(:,0)\ntext y 'This is very very long string drawn along a curve' 'k'\ntext y 'Another string drawn above a curve' 'r:T'\n"
+"subplot 2 2 3 '':line -1 -1 1 -1 'rA':text 0 -1 1 -1 'Horizontal'\n"
+"line -1 -1 1 1 'rA':text 0 0 1 1 'At angle' '@'\nline -1 0 -1 1 'rA':text -1 0 -1 1 'Vertical'\n";
+void smgl_text(mglGraph *gr) // text drawing
{
-// setlocale(LC_CTYPE, "ru_RU.cp1251");
-// gr->Putsw(mglPoint(0,1),L"Text can be in english è â ÃÃèêîäå");
+ if(!mini) gr->SubPlot(2,2,0,"");
gr->Putsw(mglPoint(0,1),L"Text can be in ASCII and in Unicode");
gr->Puts(mglPoint(0,0.6),"It can be \\wire{wire}, \\big{big} or #r{colored}");
gr->Puts(mglPoint(0,0.2),"One can change style in string: "
- "\\b{bold}, \\i{italic, \\b{both}}");
+ "\\b{bold}, \\i{italic, \\b{both}}");
gr->Puts(mglPoint(0,-0.2),"Easy to \\a{overline} or "
- "\\u{underline}");
+ "\\u{underline}");
gr->Puts(mglPoint(0,-0.6),"Easy to change indexes ^{up} _{down} @{center}");
gr->Puts(mglPoint(0,-1),"It parse TeX: \\int \\alpha \\cdot "
- "\\sqrt3{sin(\\pi x)^2 + \\gamma_{i_k}} dx");
-}
-//-----------------------------------------------------------------------------
-void smgl_sample3(mglGraph *gr) // curvilinear coordinates
-{
- mglData x(50),y(50),z(50);
- y.Fill(0.5,0.5);
- x.Fill(-1,1); // create data arrays
-
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1));
- gr->SetOrigin(-1,1,-1); gr->SetTicks('z', 0.5); // set tick step to 0.5
+ "\\sqrt3{sin(\\pi x)^2 + \\gamma_{i_k}} dx");
+ if(mini) return;
- gr->SubPlot(2,2,0);
- gr->Rotate(60,40);
- gr->Plot(x,y,z,"r2");
- gr->Axis(); gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Cartesian");
-
- gr->SubPlot(2,2,1);
- gr->SetFunc("y*sin(pi*x)","y*cos(pi*x)",0);
- gr->Rotate(60,40);
- gr->Plot(x,y,z,"r2");
- gr->Axis(); gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Cylindrical");
+ gr->SubPlot(2,2,1,"");
+ gr->Puts(mglPoint(0), "\\sqrt{\\frac{\\alpha^{\\gamma^2}+\\overset 1{\\big\\infty}}{\\sqrt3{2+b}}}", "@", -4);
- gr->SubPlot(2,2,2);
- gr->Rotate(60,40);
- gr->SetFunc("2*y*x","y*y - x*x",0);
- gr->Plot(x,y,z,"r2");
- gr->Axis(); gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Parabolic");
+ gr->SubPlot(2,2,2,"");
+ mglData y; mgls_prepare1d(&y);
+ gr->Box(); gr->Plot(y.SubData(-1,0));
+ gr->Text(y,"This is very very long string drawn along a curve",":k");
+ gr->Text(y,"Another string drawn above a curve","T:r");
- gr->SubPlot(2,2,3);
- gr->Rotate(60,40);
- gr->SetFunc("y*sin(pi*x)","y*cos(pi*x)","x+z");
- gr->Plot(x,y,z,"r2");
- gr->Axis(); gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Spiral");
- gr->SetFunc(0,0,0); // set to default Cartesian
+ gr->SubPlot(2,2,3,"");
+ gr->Line(mglPoint(-1,-1),mglPoint(1,-1),"rA"); gr->Puts(mglPoint(0,-1),mglPoint(1,-1),"Horizontal");
+ gr->Line(mglPoint(-1,-1),mglPoint(1,1),"rA"); gr->Puts(mglPoint(0,0),mglPoint(1,1),"At angle","@");
+ gr->Line(mglPoint(-1,-1),mglPoint(-1,1),"rA"); gr->Puts(mglPoint(-1,0),mglPoint(-1,1),"Vertical");
}
//-----------------------------------------------------------------------------
-void smgl_sample2(mglGraph *gr) // axis and grid
+const char *mmgl_fonts="loadfont 'bonum':text 0 1.1-2*d 'bonum font'\nloadfont 'chorus':text 0 1.1-3*d 'chorus font'\nloadfont 'cursor':text 0 1.1-4*d 'cursor font'\n"
+"loadfont 'heros':text 0 1.1-5*d 'heros font'\nloadfont 'heroscn':text 0 1.1-6*d 'heroscn font'\nloadfont 'pagella':text 0 1.1-7*d 'pagella font'\n"
+"loadfont 'schola':text 0 1.1-8*d 'schola font'\nloadfont 'termes':text 0 1.1-9*d 'termes font'\nnloadfont ''\n";
+void smgl_fonts(mglGraph *gr) // font typefaces
{
- gr->SubPlot(2,2,0);
- gr->SetTicks('x', 0.4, 3); // sets tick step to 0.4
- gr->SetTicks('y', 0.4, 3); // and draws 3 subticks
- gr->Box(); // should be after the ticks change
- gr->Axis("xy");
- gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Axis and grid");
-
- gr->SetTicks('x'); gr->SetTicks('y'); // restore back
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(0,0,0);
-
- gr->SubPlot(2,2,1);
- gr->Rotate(60,40);
- gr->Axis();
- gr->Label('x',"x");
- gr->Label('y',"y");
- gr->Label('z',"z");
- gr->Puts(mglPoint(0,0,1.5),"Axis and labels");
-
- gr->SubPlot(2,2,2);
- gr->Rotate(60,40);
- gr->SetTicks('x', 0.2); gr->SetTicks('y', 0.2);
- gr->SetTicks('z', 0.2); // too low step of ticks
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(-1,-1,-1);
- gr->Axis();
- gr->Grid();
- gr->Puts(mglPoint(0,0,1.5),"Shift origin and add grid");
- gr->Puts(mglPoint(0,0,1.2),"(note, too many ticks)");
-
- gr->SubPlot(2,2,3);
- gr->Rotate(60,40);
- gr->SetTicks('x', -6); // decrease the number of ticks
- gr->SetTicks('y', -6);
- gr->Axis("yz");
- gr->Label('y',"Y axis",0);
- gr->Label('z',"Z axis",0);
- gr->Puts(mglPoint(0,0,1.5),"Remove X axis, and");
- gr->Puts(mglPoint(0,0,1.2),"decrease number of ticks");
-
- gr->Rotate(0,0); // for unrotate in IDTF
+ float h=1.1, d=0.25;
+ gr->LoadFont("STIX"); gr->Puts(mglPoint(0,h), "default font (STIX)");
+ gr->LoadFont("adventor"); gr->Puts(mglPoint(0,h-d), "adventor font");
+ gr->LoadFont("bonum"); gr->Puts(mglPoint(0,h-2*d), "bonum font");
+ gr->LoadFont("chorus"); gr->Puts(mglPoint(0,h-3*d), "chorus font");
+ gr->LoadFont("cursor"); gr->Puts(mglPoint(0,h-4*d), "cursor font");
+ gr->LoadFont("heros"); gr->Puts(mglPoint(0,h-5*d), "heros font");
+ gr->LoadFont("heroscn"); gr->Puts(mglPoint(0,h-6*d), "heroscn font");
+ gr->LoadFont("pagella"); gr->Puts(mglPoint(0,h-7*d), "pagella font");
+ gr->LoadFont("schola"); gr->Puts(mglPoint(0,h-8*d), "schola font");
+ gr->LoadFont("termes"); gr->Puts(mglPoint(0,h-9*d), "termes font");
+ gr->LoadFont("");
}
//-----------------------------------------------------------------------------
-void smgl_sample1(mglGraph *gr) // transformation
+const char *mmgl_bars="new ys 10 3 '0.8*sin(pi*(x+y/4+1.25))+0.2*rnd':origin 0 0 0\n"
+"subplot 3 2 0 '':title 'Bars plot (default)':box:bars ys\nsubplot 3 2 1 '':title '2 colors':box:bars ys 'cbgGyr'\n"
+"subplot 3 2 4 '':title '\\\'\\#\\\' style':box:bars ys '#'\n"
+"new yc 30 'sin(pi*x)':new xc 30 'cos(pi*x)':new z 30 'x'\nsubplot 3 2 5:title '3d variant':rotate 50 60:box:bars xc yc z 'r'\n"
+"ranges -1 1 -3 3:subplot 3 2 2 '':title '\\\'a\\\' style':box:bars ys 'a'\nsubplot 3 2 3 '':title '\\\'f\\\' style':box:bars ys 'f'\n";
+void smgl_bars(mglGraph *gr)
{
- gr->SubPlot(2,2,0); // just new axis without rotation and aspects
- gr->Box();
- gr->Puts(mglPoint(-1,1.1,1),"Just box",":rL");
- gr->InPlot(0.2,0.5,0.7,1,false);
- gr->Box();
- gr->Puts(mglPoint(0,1.2,1),"InPlot example");
- gr->SubPlot(2,2,1); // new axis with aspect and rotation
- gr->Rotate(60,40);
- gr->Aspect(1,1,1);
- gr->Box();
- gr->Puts(mglPoint(1,1,1.5),"Rotate only",":rR");
- gr->SubPlot(2,2,2); // aspect in other direction
- gr->Rotate(60,40);
- gr->Aspect(1,1,2);
- gr->Box();
- gr->Puts(mglPoint(0,0,2),"Aspect and Rotate");
- gr->SubPlot(2,2,3); // rotation before aspect. INCORRECT !!!
- gr->Rotate(60,40);
- gr->Aspect(1,2,2);
- gr->Box();
- gr->Puts(mglPoint(0,0,1.5),"Aspect in other direction");
- gr->Rotate(0,0); // for unrotate in IDTF
-}
-//-----------------------------------------------------------------------------
-void smgl_candle(mglGraph *gr)
+ mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
+ gr->SetOrigin(0,0,0);
+ if(!mini) { gr->SubPlot(3,2,0,""); gr->Title("Bars plot (default)"); }
+ gr->Box(); gr->Bars(ys);
+ if(mini) return;
+ gr->SubPlot(3,2,1,""); gr->Title("2 colors"); gr->Box(); gr->Bars(ys,"cbgGyr");
+ gr->SubPlot(3,2,4,""); gr->Title("'\\#' style"); gr->Box(); gr->Bars(ys,"#");
+ gr->SubPlot(3,2,5); gr->Title("3d variant"); gr->Rotate(50,60); gr->Box();
+ mglData yc(30), xc(30), z(30); z.Modify("2*x-1");
+ yc.Modify("sin(pi*(2*x-1))"); xc.Modify("cos(pi*2*x-pi)");
+ gr->Bars(xc,yc,z,"r");
+ gr->SetRanges(-1,1,-3,3); // increase range since summation can exceed [-1,1]
+ gr->SubPlot(3,2,2,""); gr->Title("'a' style"); gr->Box(); gr->Bars(ys,"a");
+ gr->SubPlot(3,2,3,""); gr->Title("'f' style"); gr->Box(); gr->Bars(ys,"f");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_barh="new ys 10 3 '0.8*sin(pi*(x+y/4+1.25))+0.2*rnd':origin 0 0 0\n"
+"subplot 2 2 0 '':title 'Barh plot (default)':box:barh ys\nsubplot 2 2 1 '':title '2 colors':box:barh y 'cbgGyr's\n"
+"ranges -3 3 -1 1:subplot 2 2 2 '':title '\\\'a\\\' style':box:barh ys 'a'\nsubplot 2 2 3 '': title '\\\'f\\\' style':box:barh ys 'f'\n";
+void smgl_barh(mglGraph *gr)
+{
+ mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
+ gr->SetOrigin(0,0,0);
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Barh plot (default)"); }
+ gr->Box(); gr->Barh(ys);
+ if(mini) return;
+ gr->SubPlot(2,2,1,""); gr->Title("2 colors"); gr->Box(); gr->Barh(ys,"cbgGyr");
+ gr->SetRanges(-3,3,-1,1); // increase range since summation can exceed [-1,1]
+ gr->SubPlot(2,2,2,""); gr->Title("'a' style"); gr->Box(); gr->Barh(ys,"a");
+ gr->SubPlot(2,2,3,""); gr->Title("'f' style"); gr->Box(); gr->Barh(ys,"f");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_area="origin 0 0 0\nsubplot 2 2 0 '':title 'Area plot (default)':box:area y\n"
+"subplot 2 2 1 '':title '2 colors':box:area y 'cbgGyr'\nsubplot 2 2 2 '':title '\\\'!\\\' style':box:area y '!'\n"
+"new yc 30 'sin(pi*x)':new xc 30 'cos(pi*x)':new z 30 'x'\nsubplot 2 2 3:title '3d variant':rotate 50 60:box:area xc yc z 'r'\n";
+void smgl_area(mglGraph *gr)
{
- mglData y(50); gr->Fill(y,"sin(2*pi*x)^2");
- mglData y1(50); gr->Fill(y1,"v/2",y);
- mglData y2(50); gr->Fill(y2,"(1+v)/2",y);
- gr->SetRange('y',0,1); gr->Box();
- gr->Candle(y,y1,y2);
+ mglData y; mgls_prepare1d(&y); gr->SetOrigin(0,0,0);
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Area plot (default)"); }
+ gr->Box(); gr->Area(y);
+ if(mini) return;
+ gr->SubPlot(2,2,1,""); gr->Title("2 colors"); gr->Box(); gr->Area(y,"cbgGyr");
+ gr->SubPlot(2,2,2,""); gr->Title("'!' style"); gr->Box(); gr->Area(y,"!");
+ gr->SubPlot(2,2,3); gr->Title("3d variant"); gr->Rotate(50,60); gr->Box();
+ mglData yc(30), xc(30), z(30); z.Modify("2*x-1");
+ yc.Modify("sin(pi*(2*x-1))"); xc.Modify("cos(pi*2*x-pi)");
+ gr->Area(xc,yc,z,"r");
}
//-----------------------------------------------------------------------------
+const char *mmgl_plot="subplot 2 2 0 '':title 'Plot plot (default)':box:plot y\nsubplot 2 2 2 '':title ''!' style; 'rgb' palette':box:plot y 'o!rgb'\n"
+"new yc 30 'sin(pi*x)':new xc 30 'cos(pi*x)':new z 30 'x'\nsubplot 2 2 1:title '3d variant':rotate 50 60:box:plot xc yc z 'rs'\n";
void smgl_plot(mglGraph *gr)
{
- mglData y; mgls_prepare1d(&y);
+ mglData y; mgls_prepare1d(&y); gr->SetOrigin(0,0,0);
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Plot plot (default)"); }
gr->Box(); gr->Plot(y);
+ if(mini) return;
+ gr->SubPlot(2,2,2,""); gr->Title("'!' style; 'rgb' palette"); gr->Box(); gr->Plot(y,"o!rgb");
+ gr->SubPlot(2,2,1); gr->Title("3d variant"); gr->Rotate(50,60); gr->Box();
+ mglData yc(30), xc(30), z(30); z.Modify("2*x-1");
+ yc.Modify("sin(pi*(2*x-1))"); xc.Modify("cos(pi*2*x-pi)");
+ gr->Plot(xc,yc,z,"rs");
}
//-----------------------------------------------------------------------------
-void smgl_area(mglGraph *gr)
+const char *mmgl_tens="subplot 2 2 0 '':title 'Plot plot (default)':box:tens y(:.0) y(:,1)\nsubplot 2 2 1 '':title '' ' style':box:plot y(:.0) y(:,1) 'o '\n"
+"new yc 30 'sin(pi*x)':new xc 30 'cos(pi*x)':new z 30 'x'\nsubplot 2 2 1:title '3d variant':rotate 50 60:box:tens xc yc z z 's'\n";
+void smgl_tens(mglGraph *gr)
{
- mglData y; mgls_prepare1d(&y);
- gr->SetOrigin(0,0,0); gr->Box(); gr->Area(y);
-}
-//-----------------------------------------------------------------------------
-void smgl_area_2(mglGraph *gr)
+ mglData y; mgls_prepare1d(&y); gr->SetOrigin(0,0,0);
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Plot plot (default)"); }
+ gr->Box(); gr->Tens(y.SubData(-1,0), y.SubData(-1,1));
+ if(mini) return;
+ gr->SubPlot(2,2,2,""); gr->Title("' ' style"); gr->Box(); gr->Tens(y.SubData(-1,0), y.SubData(-1,1),"o ");
+ gr->SubPlot(2,2,1); gr->Title("3d variant"); gr->Rotate(50,60); gr->Box();
+ mglData yc(30), xc(30), z(30); z.Modify("2*x-1");
+ yc.Modify("sin(pi*(2*x-1))"); xc.Modify("cos(pi*2*x-pi)");
+ gr->Tens(xc,yc,z,z,"s");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_region="copy y1 y(:,1):copy y2 y(:,2)\n"
+"subplot 2 2 0 '':title 'Region plot (default)':box:region y1 y2:plot y1 'k2':plot y2 'k2'\n"
+"subplot 2 2 1 '':title '2 colors':box:region y1 y2 'yr':plot y1 'k2':plot y2 'k2'\n"
+"subplot 2 2 2 '':title '\\\'!\\\' style':box:region y1 y2 '!':plot y1 'k2':plot y2 'k2'\n"
+"subplot 2 2 3 '':title '\\\'i\\\' style':box:region y1 y2 'ir':plot y1 'k2':plot y2 'k2'\n";
+void smgl_region(mglGraph *gr)
{
mglData y; mgls_prepare1d(&y);
- gr->SetOrigin(0,0,0); gr->Box(); gr->Area(y,"cbgGyr");
-}
-//-----------------------------------------------------------------------------
+ mglData y1 = y.SubData(-1,1), y2 = y.SubData(-1,2); gr->SetOrigin(0,0,0);
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Region plot (default)"); }
+ gr->Box(); gr->Region(y1,y2); gr->Plot(y1,"k2"); gr->Plot(y2,"k2");
+ if(mini) return;
+ gr->SubPlot(2,2,1,""); gr->Title("2 colors"); gr->Box(); gr->Region(y1,y2,"yr"); gr->Plot(y1,"k2"); gr->Plot(y2,"k2");
+ gr->SubPlot(2,2,2,""); gr->Title("'!' style"); gr->Box(); gr->Region(y1,y2,"!"); gr->Plot(y1,"k2"); gr->Plot(y2,"k2");
+ gr->SubPlot(2,2,3,""); gr->Title("'i' style"); gr->Box(); gr->Region(y1,y2,"ir"); gr->Plot(y1,"k2"); gr->Plot(y2,"k2");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_stem="origin 0 0 0:subplot 2 2 0 '':title 'Stem plot (default)':box:stem y\n"
+"new yc 30 'sin(pi*x)':new xc 30 'cos(pi*x)':new z 30 'x'\nsubplot 2 2 1:title '3d variant':rotate 50 60:box:stem xc yc z 'rx'\n"
+"subplot 2 2 2 '':title '\\\\'!\\\' style':box:stem y 'o!rgb'\n";
void smgl_stem(mglGraph *gr)
{
- mglData y; mgls_prepare1d(&y);
- gr->SetOrigin(0,0,0); gr->Box(); gr->Stem(y,"o");
+ mglData y; mgls_prepare1d(&y); gr->SetOrigin(0,0,0);
+ mglData yc(30), xc(30), z(30); z.Modify("2*x-1");
+ yc.Modify("sin(pi*(2*x-1))"); xc.Modify("cos(pi*2*x-pi)");
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Stem plot (default)"); }
+ gr->Box(); gr->Stem(y);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("3d variant"); gr->Rotate(50,60);
+ gr->Box(); gr->Stem(xc,yc,z,"rx");
+ gr->SubPlot(2,2,2,""); gr->Title("'!' style"); gr->Box(); gr->Stem(y,"o!rgb");
}
//-----------------------------------------------------------------------------
+const char *mmgl_step="origin 0 0 0:subplot 2 2 0 '':title 'Step plot (default)':box:step y\n"
+"new yc 30 'sin(pi*x)':new xc 30 'cos(pi*x)':new z 30 'x'\nsubplot 2 2 1:title '3d variant':rotate 50 60:box:step xc yc z 'r'\n"
+"subplot 2 2 2 '':title '\\\\'!\\\' style':box:step y 's!rgb'\n";
void smgl_step(mglGraph *gr)
{
- mglData y; mgls_prepare1d(&y);
+ mglData y; mgls_prepare1d(&y); gr->SetOrigin(0,0,0);
+ mglData yc(30), xc(30), z(30); z.Modify("2*x-1");
+ yc.Modify("sin(pi*(2*x-1))"); xc.Modify("cos(pi*2*x-pi)");
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Step plot (default)"); }
gr->Box(); gr->Step(y);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("3d variant"); gr->Rotate(50,60);
+ gr->Box(); gr->Step(xc,yc,z,"r");
+ gr->SubPlot(2,2,2,""); gr->Title("'!' style"); gr->Box(); gr->Step(y,"s!rgb");
}
//-----------------------------------------------------------------------------
-void smgl_bars_2(mglGraph *gr)
+const char *mmgl_boxplot="new a 10 7 '(2*rnd-1)^3/2'\nsubplot 1 1 0 '':title 'Boxplot plot':box:boxplot a";
+void smgl_boxplot(mglGraph *gr) // flow threads and density plot
{
- mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Bars(ys,"cbgGyr");
+ mglData a(10,7); a.Modify("(2*rnd-1)^3/2");
+ if(!mini) { gr->SubPlot(1,1,0,""); gr->Title("Boxplot plot"); }
+ gr->Box(); gr->BoxPlot(a);
}
//-----------------------------------------------------------------------------
-void smgl_bars_a(mglGraph *gr)
+const char *mmgl_type0="alpha on:light on:transptype 0:clf\nsubplot 2 2 0:rotate 50 60:surf a:box\n"
+"subplot 2 2 1:rotate 50 60:dens a:box\nsubplot 2 2 2:rotate 50 60:cont a:box\n"
+"subplot 2 2 3:rotate 50 60:axial a:box";
+void smgl_type0(mglGraph *gr) // TranspType = 0
{
- mglData ys(10,3); ys.Modify("0.3*sin(pi*(2*x+y/2))+0.1*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Bars(ys,"a");
+ // if(type==5 || type==9 || type==10) return;
+ gr->Alpha(true); gr->Light(true);
+ mglData a; mgls_prepare2d(&a);
+ gr->SetTranspType(0); gr->Clf();
+ gr->SubPlot(2,2,0); gr->Rotate(50,60); gr->Surf(a); gr->Box();
+ gr->SubPlot(2,2,1); gr->Rotate(50,60); gr->Dens(a); gr->Box();
+ gr->SubPlot(2,2,2); gr->Rotate(50,60); gr->Cont(a); gr->Box();
+ gr->SubPlot(2,2,3); gr->Rotate(50,60); gr->Axial(a); gr->Box();
}
//-----------------------------------------------------------------------------
-void smgl_bars_f(mglGraph *gr)
+const char *mmgl_type1="alpha on:light on:transptype 1:clf\nsubplot 2 2 0:rotate 50 60:surf a:box\n"
+"subplot 2 2 1:rotate 50 60:dens a:box\nsubplot 2 2 2:rotate 50 60:cont a:box\n"
+"subplot 2 2 3:rotate 50 60:axial a:box";
+void smgl_type1(mglGraph *gr) // TranspType = 1
{
- mglData ys(10,2); ys.Modify("0.24*sin(pi*(2*x+y/2))+0.06*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Bars(ys,"f");
+ // if(type==5 || type==9 || type==10) return;
+ gr->Alpha(true); gr->Light(true);
+ mglData a; mgls_prepare2d(&a);
+ gr->SetTranspType(1); gr->Clf();
+ gr->SubPlot(2,2,0); gr->Rotate(50,60); gr->Surf(a); gr->Box();
+ gr->SubPlot(2,2,1); gr->Rotate(50,60); gr->Dens(a); gr->Box();
+ gr->SubPlot(2,2,2); gr->Rotate(50,60); gr->Cont(a); gr->Box();
+ gr->SubPlot(2,2,3); gr->Rotate(50,60); gr->Axial(a); gr->Box();
}
//-----------------------------------------------------------------------------
-void smgl_bars(mglGraph *gr)
+const char *mmgl_type2="alpha on:light on:transptype 2:clf\nsubplot 2 2 0:rotate 50 60:surf a:box\n"
+"subplot 2 2 1:rotate 50 60:dens a:box\nsubplot 2 2 2:rotate 50 60:cont a:box\n"
+"subplot 2 2 3:rotate 50 60:axial a:box";
+void smgl_type2(mglGraph *gr) // TranspType = 2
{
- mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Bars(ys);
+ // if(type==5 || type==9 || type==10) return;
+ gr->Alpha(true); gr->Light(true);
+ mglData a; mgls_prepare2d(&a);
+ gr->SetTranspType(2); gr->Clf();
+ gr->SubPlot(2,2,0); gr->Rotate(50,60); gr->Surf(a); gr->Box();
+ gr->SubPlot(2,2,1); gr->Rotate(50,60); gr->Dens(a); gr->Box();
+ gr->SubPlot(2,2,2); gr->Rotate(50,60); gr->Cont(a); gr->Box();
+ gr->SubPlot(2,2,3); gr->Rotate(50,60); gr->Axial(a); gr->Box();
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_molecule="alpha on:light on\n"
+"subplot 2 2 0 '':title 'Methane, CH_4':rotate 60 120\n"
+"sphere 0 0 0 0.25 'k':drop 0 0 0 0 0 1 0.35 'h' 1 2:sphere 0 0 0.7 0.25 'g'\n"
+"drop 0 0 0 -0.94 0 -0.33 0.35 'h' 1 2:sphere -0.66 0 -0.23 0.25 'g'\n"
+"drop 0 0 0 0.47 0.82 -0.33 0.35 'h' 1 2:sphere 0.33 0.57 -0.23 0.25 'g'\n"
+"drop 0 0 0 0.47 -0.82 -0.33 0.35 'h' 1 2:sphere 0.33 -0.57 -0.23 0.25 'g'\n"
+"subplot 2 2 1 '':title 'Water, H{_2}O':rotate 60 100\n"
+"sphere 0 0 0 0.25 'r':drop 0 0 0 0.3 0.5 0 0.3 'm' 1 2:sphere 0.3 0.5 0 0.25 'g'\n"
+"drop 0 0 0 0.3 -0.5 0 0.3 'm' 1 2:sphere 0.3 -0.5 0 0.25 'g'\n"
+"subplot 2 2 2 '':title 'Oxygen, O_2':rotate 60 120\n"
+"drop 0 0.5 0 0 -0.3 0 0.3 'm' 1 2:sphere 0 0.5 0 0.25 'r'\n"
+"drop 0 -0.5 0 0 0.3 0 0.3 'm' 1 2:sphere 0 -0.5 0 0.25 'r'\n"
+"subplot 2 2 3 '':title 'Ammonia, NH_3':rotate 60 120\n"
+"sphere 0 0 0 0.25 'b':drop 0 0 0 0.33 0.57 0 0.32 'n' 1 2\n"
+"sphere 0.33 0.57 0 0.25 'g':drop 0 0 0 0.33 -0.57 0 0.32 'n' 1 2\n"
+"sphere 0.33 -0.57 0 0.25 'g':drop 0 0 0 -0.65 0 0 0.32 'n' 1 2\n"
+"sphere -0.65 0 0 0.25 'g'\n";
+void smgl_molecule(mglGraph *gr) // example of moleculas
+{
+ gr->VertexColor(false); gr->Compression(false); // per-vertex colors and compression are detrimental to transparency
+ gr->DoubleSided(false); // we do not get into atoms, while rendering internal surface has negative impact on trasparency
+ gr->Alpha(true); gr->Light(true);
+
+ gr->SubPlot(2,2,0,""); gr->Title("Methane, CH_4");
+ gr->StartGroup("Methane");
+ gr->Rotate(60,120);
+ gr->Sphere(mglPoint(0,0,0),0.25,"k");
+ gr->Drop(mglPoint(0,0,0),mglPoint(0,0,1),0.35,"h",1,2);
+ gr->Sphere(mglPoint(0,0,0.7),0.25,"g");
+ gr->Drop(mglPoint(0,0,0),mglPoint(-0.94,0,-0.33),0.35,"h",1,2);
+ gr->Sphere(mglPoint(-0.66,0,-0.23),0.25,"g");
+ gr->Drop(mglPoint(0,0,0),mglPoint(0.47,0.82,-0.33),0.35,"h",1,2);
+ gr->Sphere(mglPoint(0.33,0.57,-0.23),0.25,"g");
+ gr->Drop(mglPoint(0,0,0),mglPoint(0.47,-0.82,-0.33),0.35,"h",1,2);
+ gr->Sphere(mglPoint(0.33,-0.57,-0.23),0.25,"g");
+ gr->EndGroup();
+
+ gr->SubPlot(2,2,1,""); gr->Title("Water, H_{2}O");
+ gr->StartGroup("Water");
+ gr->Rotate(60,100);
+ gr->StartGroup("Water_O");
+ gr->Sphere(mglPoint(0,0,0),0.25,"r");
+ gr->EndGroup();
+ gr->StartGroup("Water_Bond_1");
+ gr->Drop(mglPoint(0,0,0),mglPoint(0.3,0.5,0),0.3,"m",1,2);
+ gr->EndGroup();
+ gr->StartGroup("Water_H_1");
+ gr->Sphere(mglPoint(0.3,0.5,0),0.25,"g");
+ gr->EndGroup();
+ gr->StartGroup("Water_Bond_2");
+ gr->Drop(mglPoint(0,0,0),mglPoint(0.3,-0.5,0),0.3,"m",1,2);
+ gr->EndGroup();
+ gr->StartGroup("Water_H_2");
+ gr->Sphere(mglPoint(0.3,-0.5,0),0.25,"g");
+ gr->EndGroup();
+ gr->EndGroup();
+
+ gr->SubPlot(2,2,2,""); gr->Title("Oxygen, O_2");
+ gr->StartGroup("Oxygen");
+ gr->Rotate(60,120);
+ gr->Drop(mglPoint(0,0.5,0),mglPoint(0,-0.3,0),0.3,"m",1,2);
+ gr->Sphere(mglPoint(0,0.5,0),0.25,"r");
+ gr->Drop(mglPoint(0,-0.5,0),mglPoint(0,0.3,0),0.3,"m",1,2);
+ gr->Sphere(mglPoint(0,-0.5,0),0.25,"r");
+ gr->EndGroup();
+
+ gr->SubPlot(2,2,3,""); gr->Title("Ammonia, NH_3");
+ gr->StartGroup("Ammonia");
+ gr->Rotate(60,120);
+ gr->Sphere(mglPoint(0,0,0),0.25,"b");
+ gr->Drop(mglPoint(0,0,0),mglPoint(0.33,0.57,0),0.32,"n",1,2);
+ gr->Sphere(mglPoint(0.33,0.57,0),0.25,"g");
+ gr->Drop(mglPoint(0,0,0),mglPoint(0.33,-0.57,0),0.32,"n",1,2);
+ gr->Sphere(mglPoint(0.33,-0.57,0),0.25,"g");
+ gr->Drop(mglPoint(0,0,0),mglPoint(-0.65,0,0),0.32,"n",1,2);
+ gr->Sphere(mglPoint(-0.65,0,0),0.25,"g");
+ gr->EndGroup();
+ gr->DoubleSided( true ); // put back
}
//-----------------------------------------------------------------------------
-void smgl_barh(mglGraph *gr)
+const char *mmgl_error="new y 50 '0.7*sin(pi*x-pi) + 0.5*cos(3*pi*(x+1)/2) + 0.2*sin(pi*(x+1)/2)'\n"
+"new x0 10 'x + 0.1*rnd-0.05':new ex 10 '0.1':new ey 10 '0.2'\n"
+"new y0 10 '0.7*sin(pi*x-pi) + 0.5*cos(3*pi*(x+1)/2) + 0.2*sin(pi*(x+1)/2) + 0.2*rnd-0.1'\n"
+"subplot 2 2 0 '':title 'Error plot (default)':box:plot y:error x0 y0 ex ey 'k'\n"
+"subplot 2 2 1 '':title '\\\'!\\\' style; no e_x':box:plot y:error x0 y0 ex ey 'o!rgb'\n"
+"subplot 2 2 2 '':title '\\\'\\@\\\' style':box:plot y:error x0 y0 ex ey '@'; alpha 0.5\n"
+"subplot 2 2 3 '':title '3d variant':rotate 50 60:axis\n"
+"for $1 0 9\n\terror 2*rnd-1 2*rnd-1 2*rnd-1 0.2 0.2 0.2 'bo'\nnext\n";
+void smgl_error(mglGraph *gr)
{
- mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Barh(ys);
+ mglData y; mgls_prepare1d(&y);
+ mglData x0(10), y0(10), ex0(10), ey0(10);
+ float x;
+ for(int i=0;i<10;i++)
+ {
+ x = i/9.;
+ x0.a[i] = 2*x-1 + 0.1*mgl_rnd()-0.05;
+ y0.a[i] = 0.7*sin(2*M_PI*x)+0.5*cos(3*M_PI*x)+0.2*sin(M_PI*x)+0.2*mgl_rnd()-0.1;
+ ey0.a[i]=0.2; ex0.a[i]=0.1;
+ }
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Error plot (default)"); }
+ gr->Box(); gr->Plot(y.SubData(-1,0)); gr->Error(x0,y0,ex0,ey0,"ko");
+ if(mini) return;
+ gr->SubPlot(2,2,1,""); gr->Title("'!' style; no e_x");
+ gr->Box(); gr->Plot(y.SubData(-1,0)); gr->Error(x0,y0,ey0,"o!rgb");
+ gr->SubPlot(2,2,2,""); gr->Title("'\\@' style");
+ gr->Box(); gr->Plot(y.SubData(-1,0)); gr->Error(x0,y0,ex0,ey0,"@","alpha 0.5");
+ gr->SubPlot(2,2,3); gr->Title("3d variant"); gr->Rotate(50,60);
+ for(int i=0;i<10;i++)
+ gr->Error(mglPoint(2*mgl_rnd()-1,2*mgl_rnd()-1,2*mgl_rnd()-1), mglPoint(0.2,0.2,0.2),"bo");
+ gr->Axis();
}
//-----------------------------------------------------------------------------
-void smgl_tens(mglGraph *gr)
+const char *mmgl_chart="new ch 7 2 'rnd+0.1':light on\n"
+"subplot 2 2 0:title 'Chart plot (default)':rotate 50 60:box:chart ch\n"
+"subplot 2 2 1:title '\\\'\\#\\\' style':rotate 50 60:box:chart ch '#'\n"
+"subplot 2 2 2:title 'Pie chart; \\\'\\\' style':rotate 50 60:\n"
+"axis '(y+1)/2*cos(pi*x)' '(y+1)/2*sin(pi*x)':box:chart ch 'bgr cmy#'\n"
+"subplot 2 2 2:title 'Ring chart; \\\'\\\' style':rotate 50 60:\n"
+"axis '(y+2)/3*cos(pi*x)' '(y+2)/3*sin(pi*x)':box:chart ch 'bgr cmy#'\n";
+void smgl_chart(mglGraph *gr)
{
- mglData y; mgls_prepare1d(&y);
- gr->Box(); gr->Tens(y.SubData(-1,0), y.SubData(-1,1));
+ mglData ch(7,2); for(int i=0;i<7*2;i++) ch.a[i]=mgl_rnd()+0.1;
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("Chart plot (default)"); }
+ gr->Light(true); gr->Rotate(50,60); gr->Box(); gr->Chart(ch);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("'\\#' style");
+ gr->Rotate(50,60); gr->Box(); gr->Chart(ch,"#");
+ gr->SubPlot(2,2,2); gr->Title("Pie chart; ' ' color");
+ gr->SetFunc("(y+1)/2*cos(pi*x)","(y+1)/2*sin(pi*x)","");
+ gr->Rotate(50,60); gr->Box(); gr->Chart(ch,"bgr cmy#");
+ gr->SubPlot(2,2,3); gr->Title("Ring chart; ' ' color");
+ gr->SetFunc("(y+2)/3*cos(pi*x)","(y+2)/3*sin(pi*x)","");
+ gr->Rotate(50,60); gr->Box(); gr->Chart(ch,"bgr cmy#");
}
//-----------------------------------------------------------------------------
-void smgl_text(mglGraph *gr)
+const char *mmgl_mark="subplot 1 1 0:title 'Mark plot (default)':box:mark y y1 's'\n";
+void smgl_mark(mglGraph *gr)
{
- mglData y; mgls_prepare1d(&y);
- gr->Box(); gr->Plot(y.SubData(-1,0));
- gr->Text(y,"This is very very long string drawn along a curve",":k");
- gr->Text(y,"Another string drawn above a curve","T:r");
+ mglData y,y1; mgls_prepare1d(&y,&y1);
+ if(!mini) { gr->SubPlot(1,1,0,""); gr->Title("Mark plot (default)"); }
+ gr->Box(); gr->Mark(y,y1,"s");
}
//-----------------------------------------------------------------------------
-void smgl_region(mglGraph *gr)
+const char *mmgl_radar="new yr 10 3 '0.4*sin(pi*(x+1.5+y/2)+0.1*rnd)'\n"
+"subplot 1 1 0 '':title 'Radar plot (with grid, \\\'\\#\\\')':box:radar yr '#'\n";
+void smgl_radar(mglGraph *gr)
{
- mglData y1,y2; mgls_prepare1d(0, &y1, &y2);
- gr->Box(); gr->Region(y2,y1,"r");
- gr->Plot(y1,"k2"); gr->Plot(y2,"k2");
+ mglData yr(10,3); yr.Modify("0.4*sin(pi*(2*x+y))+0.1*rnd");
+ if(!mini) { gr->SubPlot(1,1,0,""); gr->Title("Radar plot (with grid, '\\#')"); }
+ gr->Radar(yr,"#");
}
//-----------------------------------------------------------------------------
-void smgl_region_2(mglGraph *gr)
+const char *mmgl_candle="new y 30 'sin(2*pi*x)^2':copy y1 y/2:copy y2 (y+1)/2\n"
+"subplot 1 1 0 '':title 'Candle plot (with grid, \\\'\\#\\\')'\nyrange 0 1:box:candle y y1 y2\n";
+void smgl_candle(mglGraph *gr)
{
- mglData y1,y2; mgls_prepare1d(0, &y1, &y2);
- gr->Box(); gr->Region(y2,y1,"yr");
- gr->Plot(y1,"k2"); gr->Plot(y2,"k2");
+ mglData y(30); gr->Fill(y,"sin(2*pi*x)^2");
+ mglData y1(30); gr->Fill(y1,"v/2",y);
+ mglData y2(30); gr->Fill(y2,"(1+v)/2",y);
+ if(!mini) { gr->SubPlot(1,1,0,""); gr->Title("Candle plot (default)"); }
+ gr->SetRange('y',0,1); gr->Box(); gr->Candle(y,y1,y2);
}
//-----------------------------------------------------------------------------
-void smgl_mark(mglGraph *gr)
+const char *mmgl_textmark="subplot 1 1 0 '':title 'TextMark plot (default)':box:textmark y y1 '\\gamma' 'r'\n";
+void smgl_textmark(mglGraph *gr)
{
mglData y,y1; mgls_prepare1d(&y,&y1);
- gr->Box(); gr->Mark(y,y1,"bs");
+ if(!mini) { gr->SubPlot(1,1,0,""); gr->Title("TextMark plot (default)"); }
+ gr->Box(); gr->TextMark(y,y1,"\\gamma","r");
}
//-----------------------------------------------------------------------------
-void smgl_traj(mglGraph *gr)
+const char *mmgl_tube="new yc 50 'sin(pi*x)':new xc 50 'cos(pi*x)':new z 50 'x':divto y1 20\n"
+"subplot 2 2 0 '':title 'Tube plot (default)':box:tube y 0.05\n"
+"subplot 2 2 1 '':title 'variable radius':box:tube y y1\n"
+"subplot 2 2 2 '':title '\\\'\\#\\\' style':box:tube y 0.05 '#'\n"
+"subplot 2 2 3:title '3d variant':rotate 50 60:box:tube xc yc z y2 'r'\n";
+void smgl_tube(mglGraph *gr)
{
- mglData x,y,y1,y2; mgls_prepare1d(&y,&y1,&y2,&x);
- gr->Box(); gr->Plot(x,y); gr->Traj(x,y,y1,y2);
+ mglData y,y1,y2; mgls_prepare1d(&y,&y1,&y2); y1/=20;
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Tube plot (default)"); }
+ gr->Light(true); gr->Box(); gr->Tube(y,0.05);
+ if(mini) return;
+ gr->SubPlot(2,2,1,""); gr->Title("variable radius"); gr->Box(); gr->Tube(y,y1);
+ gr->SubPlot(2,2,2,""); gr->Title("'\\#' style"); gr->Box(); gr->Tube(y,0.05,"#");
+ mglData yc(50), xc(50), z(50); z.Modify("2*x-1");
+ yc.Modify("sin(pi*(2*x-1))"); xc.Modify("cos(pi*2*x-pi)");
+ gr->SubPlot(2,2,3); gr->Title("3d variant"); gr->Rotate(50,60); gr->Box(); gr->Tube(xc,yc,z,y2,"r");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_tape="new yc 50 'sin(pi*x)':new xc 50 'cos(pi*x)':new z 50 'x'\n"
+"subplot 2 2 0 '':title 'Tape plot (default)':box:tape y:plot y 'k'\n"
+"subplot 2 2 1:title '3d variant, 2 colors':rotate 50 60:light on\n"
+"box:plot xc yc z 'k':tape xc yc z 'rg'\n"
+"subplot 2 2 2:title '3d variant, x only':rotate 50 60\n"
+"box:plot xc yc z 'k':tape xc yc z 'xr':tape xc yc z 'xr#'\n"
+"subplot 2 2 2:title '3d variant, z only':rotate 50 60\n"
+"box:plot xc yc z 'k':tape xc yc z 'zg':tape xc yc z 'zg#'\n";
+void smgl_tape(mglGraph *gr)
+{
+ mglData y; mgls_prepare1d(&y);
+ mglData xc(50), yc(50), z(50);
+ yc.Modify("sin(pi*(2*x-1))");
+ xc.Modify("cos(pi*2*x-pi)"); z.Fill(-1,1);
+ if(!mini) { gr->SubPlot(2,2,0,""); gr->Title("Tape plot (default)"); }
+ gr->Box(); gr->Tape(y); gr->Plot(y,"k");
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("3d variant, 2 colors"); gr->Rotate(50,60); gr->Light(true);
+ gr->Box(); gr->Plot(xc,yc,z,"k"); gr->Tape(xc,yc,z,"rg");
+ gr->SubPlot(2,2,2); gr->Title("3d variant, x only"); gr->Rotate(50,60);
+ gr->Box(); gr->Plot(xc,yc,z,"k"); gr->Tape(xc,yc,z,"xr"); gr->Tape(xc,yc,z,"xr#");
+ gr->SubPlot(2,2,3); gr->Title("3d variant, z only"); gr->Rotate(50,60);
+ gr->Box(); gr->Plot(xc,yc,z,"k"); gr->Tape(xc,yc,z,"zg"); gr->Tape(xc,yc,z,"zg#");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_fog="rotate 50 60:light on:fog 1\nbox:surf a\n";
+void smgl_fog(mglGraph *gr)
+{
+ mglData a; mgls_prepare2d(&a);
+ if(!mini) gr->Title("Fog sample");
+ gr->Light(true); gr->Rotate(50,60); gr->Fog(1); gr->Box();
+ gr->Surf(a);
}
//-----------------------------------------------------------------------------
-void smgl_textmark(mglGraph *gr)
+const char *mmgl_map="new a 50 40 'x':new b 50 40 'y':zrange -2 2:text 0 0 '\to'\n"
+"subplot 2 1 0:text 0 1.1 '\\{x, y\\}' '' -2:box:map a b 'brgk' 0 0\n"
+"subplot 2 1 1:text 0 1.1 '\\{\\frac{x^3+y^3}{2}, \\frac{x-y}{2}\\}' '' -2\n"
+"box:fill a '(x^3+y^3)/2':fill b '(x-y)/2':map a b 'brgk' 0 0\n";
+void smgl_map(mglGraph *gr) // example of mapping
{
- mglData y,y1; mgls_prepare1d(&y,&y1);
- gr->Box(); gr->TextMark(y,y1,"\\gamma");
+ mglData a(50, 40), b(50, 40);
+ gr->Puts(mglPoint(0, 0), "\\to", ":C", -1.4);
+ gr->SetRanges(-1,1,-1,1,-2,2);
+
+ gr->SubPlot(2, 1, 0);
+ gr->Fill(a,"x"); gr->Fill(b,"y");
+ gr->Puts(mglPoint(0, 1.1), "\\{x, y\\}", ":C", -2); gr->Box();
+ gr->Map(a, b, "brgk");
+
+ gr->SubPlot(2, 1, 1);
+ gr->Fill(a,"(x^3+y^3)/2"); gr->Fill(b,"(x-y)/2");
+ gr->Puts(mglPoint(0, 1.1), "\\{\\frac{x^3+y^3}{2}, \\frac{x-y}{2}\\}", ":C", -2);
+ gr->Box();
+ gr->Map(a, b, "brgk");
}
//-----------------------------------------------------------------------------
-void smgl_torus(mglGraph *gr)
+const char *mmgl_stfa="new a 2000:new b 2000\nfill a 'cos(50*pi*x)*(x<-.5)+cos(100*pi*x)*(x<0)*(x>-.5)+'\n"
+"'cos(200*pi*x)*(x<.5)*(x>0)+cos(400*pi*x)*(x>.5)'\n"
+"subplot 1 2 0:plot a:axis:xlabel '\\i t'\n"
+"subplot 1 2 1:stfa a b 64:axis:ylabel '\\omega' 0:xlabel '\\i t'\n";
+void smgl_stfa(mglGraph *gr) // STFA sample
{
- mglData y1,y2; mgls_prepare1d(0,&y1,&y2);
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Torus(y1,y2,"pz");
+ mglData a(2000), b(2000);
+ gr->Fill(a,"cos(50*pi*x)*(x<-.5)+cos(100*pi*x)*(x<0)*(x>-.5)+\
+ cos(200*pi*x)*(x<.5)*(x>0)+cos(400*pi*x)*(x>.5)");
+ gr->SubPlot(1, 2, 0,"<_"); gr->Title("Initial signal");
+ gr->Plot(a);
+ gr->Axis();
+ gr->Label('x', "\\i t");
+
+ gr->SubPlot(1, 2, 1,"<_"); gr->Title("STFA plot");
+ gr->STFA(a, b, 64);
+ gr->Axis();
+ gr->Label('x', "\\i t");
+ gr->Label('y', "\\omega", 0);
}
//-----------------------------------------------------------------------------
-void smgl_tube(mglGraph *gr)
+const char *mmgl_qo2d="define $1 'p^2+q^2-x-1+i*0.5*(y+x)*(y>-x)'\n"
+"subplot 1 1 0 '<_':title 'Beam and ray tracing'\n"
+"ray r $1 -0.7 -1 0 0 0.5 0 0.02 2:plot r(0) r(1) 'k'\naxis:xlabel '\\i x':ylabel '\\i z'\n"
+"new re 128 'exp(-48*x^2)':new im 128:qo2d a $1 re im r 1 30 xx yy\n"
+"crange 0 1:dens xx yy a 'wyrRk':fplot '-x' 'k|'\n"
+"text 0 0.85 'absorption: (x+y)/2 for x+y>0'\ntext 0.7 -0.05 'central ray'";
+void smgl_qo2d(mglGraph *gr)
{
- mglData y,y1; mgls_prepare1d(&y,&y1);
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Tube(y,0.05);
+ mglData r, xx, yy, a, im(128), re(128);
+ const char *ham = "p^2+q^2-x-1+i*0.5*(y+x)*(y>-x)";
+ r = mglRay(ham, mglPoint(-0.7, -1), mglPoint(0, 0.5), 0.02, 2);
+ if(!mini) {gr->SubPlot(1,1,0,"<_"); gr->Title("Beam and ray tracing");}
+ gr->Plot(r.SubData(0), r.SubData(1), "k");
+ gr->Axis(); gr->Label('x', "\\i x"); gr->Label('y', "\\i z");
+ // now start beam tracing
+ gr->Fill(re,"exp(-48*x^2)");
+ a = mglQO2d(ham, re, im, r, xx, yy, 1, 30);
+ gr->SetRange('c',0, 1);
+ gr->Dens(xx, yy, a, "wyrRk");
+ gr->FPlot("-x", "k|");
+ gr->Puts(mglPoint(0, 0.85), "absorption: (x+y)/2 for x+y>0");
+ gr->Puts(mglPoint(0.7, -0.05), "central ray");
}
//-----------------------------------------------------------------------------
-void smgl_tube_3d(mglGraph *gr)
+const char *mmgl_pde="new re 128 'exp(-48*(x+0.7)^2)':new im 128\n"
+"pde a 'p^2+q^2-x-1+i*0.5*(z+x)*(z>-x)' re im 0.01 30\ntranspose a\n"
+"subplot 1 1 0 '<_':title 'PDE solver'\n"
+"axis:xlabel '\\i x':ylabel '\\i z'\ncrange 0 1:dens a 'wyrRk'\n"
+"fplot '-x' 'k|':text 0 0.85 'absorption: (x+z)/2 for x+z>0'\n"
+"text 0 1.1 'Equation: ik_0\\partial_zu + \\Delta u + x\\cdot u + i \\frac{x+z}{2}\\cdot u = 0'";
+void smgl_pde(mglGraph *gr) // PDE sample
{
- mglData y,y1,y2,x1,x2; mgls_prepare1d(&y,&y1,&y2,&x1,&x2);
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Tube(y,0.05); gr->Tube(y1,x1,y2,x2);
+ mglData a,re(128),im(128);
+ gr->Fill(re,"exp(-48*(x+0.7)^2)");
+ a = gr->PDE("p^2+q^2-x-1+i*0.5*(z+x)*(z>-x)", re, im, 0.01, 30);
+ a.Transpose("yxz");
+ if(!mini) {gr->SubPlot(1,1,0,"<_"); gr->Title("PDE solver"); }
+ gr->SetRange('c',0,1); gr->Dens(a,"wyrRk");
+ gr->Axis(); gr->Label('x', "\\i x"); gr->Label('y', "\\i z");
+ gr->FPlot("-x", "k|");
+ gr->Puts(mglPoint(0, 0.85), "absorption: (x+z)/2 for x+z>0");
+ gr->Puts(mglPoint(0,1.1),"Equation: ik_0\\partial_zu + \\Delta u + x\\cdot u + i \\frac{x+z}{2}\\cdot u = 0");
}
//-----------------------------------------------------------------------------
-void smgl_radar(mglGraph *gr)
+const char *mmgl_conta="title 'Cont3 sample':rotate 50 60:box\ncont3 c 'x':cont3 c:cont3 c 'z'";
+void smgl_conta(mglGraph *gr)
{
- mglData yr(10,3); yr.Modify("0.4*sin(pi*(2*x+y/2))+0.1*rnd");
- gr->Box(); gr->Radar(yr,"#");
+ mglData c; mgls_prepare3d(&c);
+ if(!mini) gr->Title("Cont3 sample");
+ gr->Rotate(50,60); gr->Box();
+ gr->Cont3(c,"x"); gr->Cont3(c); gr->Cont3(c,"z");
}
//-----------------------------------------------------------------------------
-void smgl_error(mglGraph *gr)
+const char *mmgl_contfa="title 'Cont3 sample':rotate 50 60:light on:box\n"
+"contf3 c 'x':contf3 c:contf3 c 'z'\ncont3 c 'xk':cont3 c 'k':cont3 c 'zk'\n";
+void smgl_contfa(mglGraph *gr)
{
- mglData y; mgls_prepare1d(&y);
- mglData x0(10), y0(10), ex0(10), ey0(10);
- float x;
- for(int i=0;i<10;i++)
- {
- x = i/9.;
- x0.a[i] = 2*x-1 + 0.1*mgl_rnd()-0.05;
- y0.a[i] = 0.7*sin(2*M_PI*x)+0.5*cos(3*M_PI*x)+0.2*sin(M_PI*x)+0.2*mgl_rnd()-0.1;
- ey0.a[i]=0.2; ex0.a[i]=0.1;
- }
- gr->Box(); gr->Plot(y.SubData(-1,0));
- gr->Error(x0,y0,ex0,ey0,"ko");
+ mglData c; mgls_prepare3d(&c);
+ if(!mini) gr->Title("ContF3 sample");
+ gr->Rotate(50,60); gr->Light(true); gr->Box();
+ gr->ContF3(c,"x"); gr->ContF3(c); gr->ContF3(c,"z");
+ gr->Cont3(c,"kx"); gr->Cont3(c,"k"); gr->Cont3(c,"kz");
}
//-----------------------------------------------------------------------------
-void smgl_chart(mglGraph *gr)
+const char *mmgl_densa="title 'Dens3 sample':rotate 50 60:alpha on:alphadef 0.7\n"
+"origin 0 0 0:box:axis '_xyz'\ndens3 c 'x':dens3 c ':y':dens3 c 'z'";
+void smgl_densa(mglGraph *gr)
{
- mglData ch(7,2); for(int i=0;i<7*2;i++) ch.a[i]=mgl_rnd()+0.1;
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Chart(ch,"#");
+ mglData c; mgls_prepare3d(&c);
+ if(!mini) gr->Title("Dens3 sample");
+ gr->Rotate(50,60); gr->Alpha(true); gr->SetAlphaDef(0.7);
+ gr->SetOrigin(0,0,0); gr->Axis("_xyz"); gr->Box();
+ gr->Dens3(c,"x"); gr->Dens3(c); gr->Dens3(c,"z");
}
//-----------------------------------------------------------------------------
-void smgl_ring_chart(mglGraph *gr)
+const char *mmgl_dens_xyz="title 'Dens[XYZ] sample':rotate 50 60:light on:box\n"
+"densx c.sum('x') '' -1:densy c.sum('y') '' 1:densz c.sum('z') '' -1";
+void smgl_dens_xyz(mglGraph *gr)
{
- mglData ch(7,2); for(int i=0;i<7*2;i++) ch.a[i]=mgl_rnd()+0.1;
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->SetFunc("(y+2)/3*cos(pi*x)","(y+2)/3*sin(pi*x)","");
- gr->Box(); gr->Chart(ch,"bgr cmy#");
+ mglData c; mgls_prepare3d(&c);
+ if(!mini) gr->Title("Dens[XYZ] sample");
+ gr->Rotate(50,60); gr->Box(); gr->DensX(c.Sum("x"),0,-1);
+ gr->DensY(c.Sum("y"),0,1); gr->DensZ(c.Sum("z"),0,-1);
}
//-----------------------------------------------------------------------------
-void smgl_pie_chart(mglGraph *gr)
+const char *mmgl_cont_xyz="title 'Cont[XYZ] sample':rotate 50 60:light on:box\n"
+"contx c.sum('x') '' -1:conty c.sum('y') '' 1:contz c.sum('z') '' -1";
+void smgl_cont_xyz(mglGraph *gr)
{
- mglData ch(7,2); for(int i=0;i<7*2;i++) ch.a[i]=mgl_rnd()+0.1;
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->SetFunc("(y+1)/2*cos(pi*x)","(y+1)/2*sin(pi*x)","");
- gr->Box(); gr->Chart(ch,"bgr cmy#");
+ mglData c; mgls_prepare3d(&c);
+ if(!mini) gr->Title("Cont[XYZ] sample");
+ gr->Rotate(50,60); gr->Box(); gr->ContX(c.Sum("x"),"",-1);
+ gr->ContY(c.Sum("y"),"",1); gr->ContZ(c.Sum("z"),"",-1);
}
//-----------------------------------------------------------------------------
-void smgl_grad(mglGraph *gr)
+const char *mmgl_contf_xyz="title 'ContF[XYZ] sample':rotate 50 60:light on:box\n"
+"contfx c.sum('x') '' -1:contfy c.sum('y') '' 1:contfz c.sum('z') '' -1";
+void smgl_contf_xyz(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
- gr->Box(); gr->Grad(a);
- gr->Alpha(true); gr->Dens(a);
+ mglData c; mgls_prepare3d(&c);
+ if(!mini) gr->Title("ContF[XYZ] sample");
+ gr->Rotate(50,60); gr->Box(); gr->ContFX(c.Sum("x"),"",-1);
+ gr->ContFY(c.Sum("y"),"",1); gr->ContFZ(c.Sum("z"),"",-1);
}
//-----------------------------------------------------------------------------
-void smgl_contt(mglGraph *gr)
+const char *mmgl_cloud="subplot 2 2 0:title 'Cloud plot':rotate 50 60:alpha on:box:cloud c 'wyrRk'"
+"subplot 2 2 1:title '\\\'!\\\' style':rotate 50 60:box:cloud c '!wyrRk'"
+"subplot 2 2 2:title '\\\'.\\\' style':rotate 50 60:box:cloud c '.wyrRk'"
+"subplot 2 2 3:title 'meshnum 10':rotate 50 60:box:cloud c 'wyrRk'; meshnum 10";
+void smgl_cloud(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
+ mglData c; mgls_prepare3d(&c);
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("Cloud plot"); }
+ gr->Rotate(50,60); gr->Alpha(true);
+ gr->Box(); gr->Cloud(c,"wyrRk");
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("'!' style");
+ gr->Rotate(50,60); gr->Box(); gr->Cloud(c,"!wyrRk");
+ gr->SubPlot(2,2,2); gr->Title("'.' style");
+ gr->Rotate(50,60); gr->Box(); gr->Cloud(c,".wyrRk");
+ gr->SubPlot(2,2,3); gr->Title("meshnum 10");
+ gr->Rotate(50,60); gr->Box(); gr->Cloud(c,"wyrRk","meshnum 10");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_cont="list v -0.5 -0.15 0 0.15 0.5\nsubplot 2 2 0:title 'Cont plot (default)':rotate 50 60:box:cont a\n"
+"subplot 2 2 1:title 'manual levels':rotate 50 60:box:cont v a\n"
+"subplot 2 2 2:title '\\\'\\_\\\' style':rotate 50 60:box:cont a '_'\n"
+"subplot 2 2 3 '':title '\\\'t\\\' style':box:cont a 't'\n";
+void smgl_cont(mglGraph *gr)
+{
+ mglData a,v(5); mgls_prepare2d(&a); v.a[0]=-0.5; v.a[1]=-0.15; v.a[2]=0; v.a[3]=0.15; v.a[4]=0.5;
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("Cont plot (default)"); }
+ gr->Rotate(50,60); gr->Box(); gr->Cont(a);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("manual levels");
+ gr->Rotate(50,60); gr->Box(); gr->Cont(v,a);
+ gr->SubPlot(2,2,2); gr->Title("'\\_' style");
+ gr->Rotate(50,60); gr->Box(); gr->Cont(a,"_");
+ gr->SubPlot(2,2,3,""); gr->Title("'t' style");
gr->Box(); gr->Cont(a,"t");
}
//-----------------------------------------------------------------------------
-void smgl_tiles(mglGraph *gr)
+const char *mmgl_contf="list v -0.5 -0.15 0 0.15 0.5\n"
+"new a1 30 40 3 '0.6*sin(2*pi*x+pi*(z+1)/2)*sin(3*pi*y+pi*z) + 0.4*cos(3*pi*(x*y)+pi*(z+1)^2/2)'"
+"subplot 2 2 0:title 'ContF plot (default)':rotate 50 60:box:contf a\n"
+"subplot 2 2 1:title 'manual levels':rotate 50 60:box:contf v a\n"
+"subplot 2 2 2:title '\\\'\\_\\\' style':rotate 50 60:box:contf a '_'\n"
+"subplot 2 2 3:title 'several slices':rotate 50 60:box:contf a1\n";
+void smgl_contf(mglGraph *gr)
{
- mglData a,b; mgls_prepare2d(&a,&b);
- gr->Box(); gr->TileS(a,b);
-}
-//-----------------------------------------------------------------------------
+ mglData a,v(5),a1(30,40,3); mgls_prepare2d(&a); v.a[0]=-0.5;
+ v.a[1]=-0.15; v.a[2]=0; v.a[3]=0.15; v.a[4]=0.5;
+ gr->Fill(a1,"0.6*sin(2*pi*x+pi*(z+1)/2)*sin(3*pi*y+pi*z) + 0.4*cos(3*pi*(x*y)+pi*(z+1)^2/2)");
+
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("ContF plot (default)"); }
+ gr->Rotate(50,60); gr->Box(); gr->ContF(a);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("manual levels");
+ gr->Rotate(50,60); gr->Box(); gr->ContF(v,a);
+ gr->SubPlot(2,2,2); gr->Title("'\\_' style");
+ gr->Rotate(50,60); gr->Box(); gr->ContF(a,"_");
+ gr->SubPlot(2,2,3); gr->Title("several slices");
+ gr->Rotate(50,60); gr->Box(); gr->ContF(a1);
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_contd="list v -0.5 -0.15 0 0.15 0.5\n"
+"new a1 30 40 3 '0.6*sin(2*pi*x+pi*(z+1)/2)*sin(3*pi*y+pi*z) + 0.4*cos(3*pi*(x*y)+pi*(z+1)^2/2)'"
+"subplot 2 2 0:title 'ContD plot (default)':rotate 50 60:box:contd a\n"
+"subplot 2 2 1:title 'manual levels':rotate 50 60:box:contd v a\n"
+"subplot 2 2 2:title '\\\'\\_\\\' style':rotate 50 60:box:contd a '_'\n"
+"subplot 2 2 3:title 'several slices':rotate 50 60:box:contd a1\n";
void smgl_contd(mglGraph *gr)
{
- mglData a,v; mgls_prepare2d(&a,0,&v);
- gr->Box(); gr->ContD(v,a); gr->Colorbar(v);
+ mglData a,v(5),a1(30,40,3); mgls_prepare2d(&a); v.a[0]=-0.5;
+ v.a[1]=-0.15; v.a[2]=0; v.a[3]=0.15; v.a[4]=0.5;
+ gr->Fill(a1,"0.6*sin(2*pi*x+pi*(z+1)/2)*sin(3*pi*y+pi*z) + 0.4*cos(3*pi*(x*y)+pi*(z+1)^2/2)");
+
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("ContD plot (default)"); }
+ gr->Rotate(50,60); gr->Box(); gr->ContD(a);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("manual levels");
+ gr->Rotate(50,60); gr->Box(); gr->ContD(v,a);
+ gr->SubPlot(2,2,2); gr->Title("'\\_' style");
+ gr->Rotate(50,60); gr->Box(); gr->ContD(a,"_");
+ gr->SubPlot(2,2,3); gr->Title("several slices");
+ gr->Rotate(50,60); gr->Box(); gr->ContD(a1);
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_contv="list v -0.5 -0.15 0 0.15 0.5\n"
+"subplot 2 2 0:title 'ContV plot (default)':rotate 50 60:box:contv a\n"
+"subplot 2 2 1:title 'manual levels':rotate 50 60:box:contv v a\n"
+"subplot 2 2 2:title '\\\'\\_\\\' style':rotate 50 60:box:contv a '_'\n"
+"subplot 2 2 3:title 'ContV and ContF':rotate 50 60:light on:box\ncontv a:contf a:cont a 'k'\n";
+void smgl_contv(mglGraph *gr)
+{
+ mglData a,v(5); mgls_prepare2d(&a); v.a[0]=-0.5;
+ v.a[1]=-0.15; v.a[2]=0; v.a[3]=0.15; v.a[4]=0.5;
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("ContV plot (default)"); }
+ gr->Rotate(50,60); gr->Box(); gr->ContV(a);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("manual levels");
+ gr->Rotate(50,60); gr->Box(); gr->ContV(v,a);
+ gr->SubPlot(2,2,2); gr->Title("'\\_' style");
+ gr->Rotate(50,60); gr->Box(); gr->ContV(a,"_");
+ gr->SubPlot(2,2,3); gr->Title("ContV and ContF");
+ gr->Rotate(50,60); gr->Box(); gr->Light(true);
+ gr->ContV(a); gr->ContF(a); gr->Cont(a,"k");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_torus="subplot 2 2 0:title 'Torus plot (default)':light on:rotate 50 60:box:torus y1 y2\n"
+"subplot 2 2 0:title '\\\'x\\\' style':light on:rotate 50 60:box:torus y1 y2 'x'\n"
+"subplot 2 2 0:title '\\\'z\\\' style':light on:rotate 50 60:box:torus y1 y2 'z'\n"
+"subplot 2 2 0:title '\\\'\\#\\\' style':light on:rotate 50 60:box:torus y1 y2 '#'\n";
+void smgl_torus(mglGraph *gr)
+{
+ mglData y1,y2; mgls_prepare1d(0,&y1,&y2);
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("Torus plot (default)"); }
+ gr->Light(true); gr->Rotate(50,60); gr->Box(); gr->Torus(y1,y2);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("'x' style"); gr->Rotate(50,60); gr->Box(); gr->Torus(y1,y2,"x");
+ gr->SubPlot(2,2,2); gr->Title("'z' style"); gr->Rotate(50,60); gr->Box(); gr->Torus(y1,y2,"z");
+ gr->SubPlot(2,2,3); gr->Title("'\\#' style"); gr->Rotate(50,60); gr->Box(); gr->Torus(y1,y2,"#");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_axial="subplot 2 2 0:title 'Axial plot (default)':light on:rotate 50 60:box:axial a\n"
+"subplot 2 2 0:title '\\\'x\\\' style':light on:rotate 50 60:box:axial a 'x'\n"
+"subplot 2 2 0:title '\\\'z\\\' style':light on:rotate 50 60:box:axial a 'z'\n"
+"subplot 2 2 0:title '\\\'\\#\\\' style':light on:rotate 50 60:box:axial a '#'\n";
+void smgl_axial(mglGraph *gr)
+{
+ mglData a; mgls_prepare2d(&a);
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("Axial plot (default)"); }
+ gr->Light(true); gr->Alpha(true); gr->Rotate(50,60); gr->Box(); gr->Axial(a);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("'x' style"); gr->Rotate(50,60); gr->Box(); gr->Axial(a,"x");
+ gr->SubPlot(2,2,2); gr->Title("'z' style"); gr->Rotate(50,60); gr->Box(); gr->Axial(a,"z");
+ gr->SubPlot(2,2,3); gr->Title("'\\#' style"); gr->Rotate(50,60); gr->Box(); gr->Axial(a,"#");
}
//-----------------------------------------------------------------------------
-void smgl_dens(mglGraph *gr)
+const char *mmgl_several_light="rotate 50 60:light on:light 1 0 1 0 'c'\n"
+"light 2 1 0 0 'y':light 3 0 -1 0 'm':box:surf a 'h'\n";
+void smgl_several_light(mglGraph *gr) // several light sources
{
mglData a; mgls_prepare2d(&a);
- gr->Box(); gr->Dens(a); gr->Colorbar();
+ if(!mini) gr->Title("Several light sources");
+ gr->Rotate(50,60); gr->Light(true); gr->AddLight(1,mglPoint(0,1,0),'c');
+ gr->AddLight(2,mglPoint(1,0,0),'y'); gr->AddLight(3,mglPoint(0,-1,0),'m');
+ gr->Box(); gr->Surf(a,"h");
}
//-----------------------------------------------------------------------------
-void smgl_surf_sl(mglGraph *gr)
+const char *mmgl_surf3="title 'Surf3 plot':rotate 50 60:light on:alpha on:box:surf3 c";
+void smgl_surf3(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Surf(a,"|");
+ mglData c; mgls_prepare3d(&c);
+ if(!mini) gr->Title("Surf3 plot");
+ gr->Rotate(50,60); gr->Light(true); gr->Alpha(true);
+ gr->Box(); gr->Surf3(c);
}
//-----------------------------------------------------------------------------
-void smgl_surf(mglGraph *gr)
+const char *mmgl_surf3a="title 'Surf3 plot':rotate 50 60:light on:alpha on:box:surf3a c d";
+void smgl_surf3a(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Surf(a);
+ mglData c,d; mgls_prepare3d(&c,&d);
+ if(!mini) gr->Title("Surf3A plot");
+ gr->Rotate(50,60); gr->Light(true); gr->Alpha(true);
+ gr->Box(); gr->Surf3A(c,d);
}
//-----------------------------------------------------------------------------
-void smgl_stereo(mglGraph *gr)
+const char *mmgl_surf3c="title 'Surf3 plot':rotate 50 60:light on:alpha on:box:surf3c c d";
+void smgl_surf3c(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true);
- gr->SubPlot(2,1,0); gr->Rotate(40,60+3);
- gr->Box(); gr->Surf(a);
- gr->SubPlot(2,1,1); gr->Rotate(40,60-3);
- gr->Box(); gr->Surf(a);
- gr->Rotate(0,0); // for unrotate in IDTF
+ mglData c,d; mgls_prepare3d(&c,&d);
+ if(!mini) gr->Title("Surf3C plot");
+ gr->Rotate(50,60); gr->Light(true); gr->Alpha(true);
+ gr->Box(); gr->Surf3C(c,d);
}
//-----------------------------------------------------------------------------
-void smgl_tile(mglGraph *gr)
+const char *mmgl_cut="subplot 2 2 0:title 'Cut on (default)':rotate 50 60:light on:box:surf a; zrange -1 0.5\n"
+"subplot 2 2 1:title 'Cut off':rotate 50 60:box:surf a; zrange -1 0.5; cut off\n"
+"subplot 2 2 2:title 'Cut in box':rotate 50 60:box:alpha on\ncut 0 -1 -1 1 0 1.1:surf3 c\ncut 0 0 0 0 0 0\t# restore back\n"
+"subplot 2 2 3:title 'Cut by formula':rotate 50 60\ncut '(z>(x+0.5*y-1)^2-1) & (z>(x-0.5*y-1)^2-1)':surf3 c";
+void smgl_cut(mglGraph *gr) // cutting
{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Tile(a);
+ mglData a,c,v(1); mgls_prepare2d(&a); mgls_prepare3d(&c); v.a[0]=0.5;
+ gr->SubPlot(2,2,0); gr->Title("Cut on (default)"); gr->Rotate(50,60); gr->Light(true);
+ gr->Box(); gr->Surf(a,"","zrange -1 0.5");
+ gr->SubPlot(2,2,1); gr->Title("Cut off"); gr->Rotate(50,60);
+ gr->Box(); gr->Surf(a,"","zrange -1 0.5; cut off");
+ gr->SubPlot(2,2,2); gr->Title("Cut in box"); gr->Rotate(50,60);
+ gr->SetCutBox(mglPoint(0,-1,-1), mglPoint(1,0,1.1));
+ gr->Alpha(true); gr->Box(); gr->Surf3(c);
+ gr->SetCutBox(mglPoint(0), mglPoint(0)); // switch it off
+ gr->SubPlot(2,2,3); gr->Title("Cut by formula"); gr->Rotate(50,60);
+ gr->CutOff("(z>(x+0.5*y-1)^2-1) & (z>(x-0.5*y-1)^2-1)");
+ gr->Box(); gr->Surf3(c); gr->CutOff(""); // switch it off
}
//-----------------------------------------------------------------------------
-void smgl_belt(mglGraph *gr)
+const char *mmgl_traj="subplot 1 1 0 '':title 'Traj plot':box:plot x y:traj x y y1 y2\n";
+void smgl_traj(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Belt(a);
+ mglData x,y,y1,y2; mgls_prepare1d(&y,&y1,&y2,&x);
+ if(!mini) {gr->SubPlot(1,1,0,""); gr->Title("Traj plot");}
+ gr->Box(); gr->Plot(x,y); gr->Traj(x,y,y1,y2);
}
//-----------------------------------------------------------------------------
+const char *mmgl_mesh="title 'Mesh plot':rotate 50 60:box:mesh a\n";
void smgl_mesh(mglGraph *gr)
{
mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Mesh(a);
+ if(!mini) gr->Title("Mesh plot");
+ gr->Rotate(50,60); gr->Box(); gr->Mesh(a);
}
//-----------------------------------------------------------------------------
+const char *mmgl_fall="title 'Fall plot':rotate 50 60:box:fall a\n";
void smgl_fall(mglGraph *gr)
{
mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Fall(a);
+ if(!mini) gr->Title("Fall plot");
+ gr->Rotate(50,60); gr->Box(); gr->Fall(a);
}
//-----------------------------------------------------------------------------
-void smgl_contf(mglGraph *gr)
+const char *mmgl_surf="subplot 2 2 0:title 'Surf plot (default)':rotate 50 60:light on:box:surf a\n"
+"subplot 2 2 1:title '\\\'\\#\\\' style; meshnum 10':rotate 50 60:box:surf a '#'; meshnum 10\n"
+"subplot 2 2 2:title '\\\'|\\\' style':rotate 50 60:box:surf a '|'\n"
+"new x 50 40 '0.8*sin(pi*x)*sin(pi*(y+1)/2)'\nnew y 50 40 '0.8*cos(pi*x)*sin(pi*(y+1)/2)'\nnew z 50 40 '0.8*cos(pi*(y+1)/2)'\n"
+"subplot 2 2 3:title 'parametric form':rotate 50 60:box:surf x y z 'BbwrR'\n";
+void smgl_surf(mglGraph *gr)
{
mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->ContF(a);
+ if(!mini) { gr->SubPlot(2,2,0); gr->Title("Surf plot (default)"); }
+ gr->Light(true); gr->Rotate(50,60); gr->Box(); gr->Surf(a);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("'\\#' style; meshnum 10");
+ gr->Rotate(50,60); gr->Box(); gr->Surf(a,"#","meshnum 10");
+ gr->SubPlot(2,2,2); gr->Title("'|' style");
+ gr->Rotate(50,60); gr->Box(); gr->Surf(a,"|");
+ gr->SubPlot(2,2,3); gr->Title("parametric form");
+ mglData x(50,40),y(50,40),z(50,40);
+ gr->Fill(x,"0.8*sin(pi*x)*sin(pi*(y+1)/2)");
+ gr->Fill(y,"0.8*cos(pi*x)*sin(pi*(y+1)/2)");
+ gr->Fill(z,"0.8*cos(pi*(y+1)/2)");
+ gr->Rotate(50,60); gr->Box(); gr->Surf(x,y,z,"BbwrR");
}
//-----------------------------------------------------------------------------
-void smgl_cont(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60);
- gr->Box(); gr->Cont(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_surfc(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2d(&a,&b);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->SurfC(a,b);
-}
-//-----------------------------------------------------------------------------
-void smgl_boxs(mglGraph *gr)
+const char *mmgl_parser="# NOT AVAILABLE\n";
+void smgl_parser(mglGraph *gr) // example of MGL parsing
{
- mglData a; mgls_prepare2d(&a);
- gr->SetOrigin(0,0,0); gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Boxs(a);
+ gr->Title("MGL parser sample");
+ float a[100]; // let a_i = sin(4*pi*x), x=0...1
+ for(int i=0;i<100;i++)a[i]=sin(4*M_PI*i/99);
+ mglParse *parser = new mglParse;
+ mglData *d = parser->AddVar("dat");
+ d->Set(a,100); // set data to variable
+ parser->Execute(gr, "plot dat; xrange 0 1\nbox\naxis");
+ // you may break script at any line do something
+ // and continue after that
+ parser->Execute(gr, "xlabel 'x'\nylabel 'y'\nbox");
+ // also you may use cycles or conditions in script
+ parser->Execute(gr, "for $0 -1 1 0.1\nline 0 0 -1 $0 'r'\nnext");
+ delete parser;
}
//-----------------------------------------------------------------------------
-void smgl_surf_fog(mglGraph *gr)
+const char *mmgl_belt="title 'Fall plot':rotate 50 60:box:fall a\n";
+void smgl_belt(mglGraph *gr)
{
mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60); gr->Fog(1); gr->Box();
- (type==5 || type==9 || type==10)?gr->Puts(mglPoint(),"Fog not supported") : gr->Surf(a);
- gr->Fog(0);
+ if(!mini) gr->Title("Belt plot");
+ gr->Rotate(50,60); gr->Box(); gr->Belt(a);
}
//-----------------------------------------------------------------------------
-void smgl_surf_alpha(mglGraph *gr)
+const char *mmgl_dens="new a1 30 40 3 '0.6*sin(2*pi*x+pi*(z+1)/2)*sin(3*pi*y+pi*z) + 0.4*cos(3*pi*(x*y)+pi*(z+1)^2/2)'\n"
+"subplot 2 2 0 '':title 'Dens plot (default)':box:dens a\n"
+"subplot 2 2 1:title '3d variant':rotate 50 60:box:dens a\n"
+"subplot 2 2 2 '':title '\\\'\\#\\\' style; meshnum 10':box:dens a '#'; meshnum 10\n"
+"subplot 2 2 3:title 'several slices':rotate 50 60:box:dens a1\n";
+void smgl_dens(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60); gr->Alpha(true);
- gr->Box(); gr->Surf(a);
+ mglData a,a1(30,40,3); mgls_prepare2d(&a);
+ gr->Fill(a1,"0.6*sin(2*pi*x+pi*(z+1)/2)*sin(3*pi*y+pi*z) + 0.4*cos(3*pi*(x*y)+pi*(z+1)^2/2)");
+ if(!mini) {gr->SubPlot(2,2,0,""); gr->Title("Dens plot (default)");}
+ gr->Box(); gr->Dens(a);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("3d variant");
+ gr->Rotate(50,60); gr->Box(); gr->Dens(a);
+ gr->SubPlot(2,2,2,""); gr->Title("'\\#' style; meshnum 10");
+ gr->Box(); gr->Dens(a,"#","meshnum 10");
+ gr->SubPlot(2,2,3); gr->Title("several slices");
+ gr->Rotate(50,60); gr->Box(); gr->Dens(a1);
}
//-----------------------------------------------------------------------------
-void smgl_axial(mglGraph *gr)
+const char *mmgl_surfc="title 'SurfC plot':rotate 50 60:light on:box:surfc a b\n";
+void smgl_surfc(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Alpha(true); gr->VertexColor(false);
- gr->Box(); gr->Axial(a);
+ mglData a,b; mgls_prepare2d(&a,&b);
+ if(!mini) gr->Title("SurfC plot"); gr->Rotate(50,60);
+ gr->Light(true); gr->Box(); gr->SurfC(a,b);
}
//-----------------------------------------------------------------------------
+const char *mmgl_surfa="title 'SurfA plot':rotate 50 60:light on:box:surfa a b\n";
void smgl_surfa(mglGraph *gr)
{
mglData a,b; mgls_prepare2d(&a,&b);
- gr->Light(true); gr->Rotate(40,60);
- gr->Alpha(true); gr->VertexColor(false);
- gr->Box(); gr->SurfA(a,b);
-}
-//-----------------------------------------------------------------------------
-/*void smgl_surf3_rgbd(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->VertexColor(true);
- gr->Box(); gr->Surf3(c,"bgrd");
-}*/
-//-----------------------------------------------------------------------------
-void smgl_conta(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Cont3(c,'x'); gr->Cont3(c,'y'); gr->Cont3(c,'z');
-}
-//-----------------------------------------------------------------------------
-void smgl_dens_xyz(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->DensX(c.Sum("x"),0,-1);
- gr->DensY(c.Sum("y"),0,1); gr->DensZ(c.Sum("z"),0,-1);
-}
-//-----------------------------------------------------------------------------
-void smgl_cont_xyz(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->ContX(c.Sum("x"),"",-1);
- gr->ContY(c.Sum("y"),"",1);
- gr->ContZ(c.Sum("z"),"",-1);
+ if(!mini) gr->Title("SurfA plot"); gr->Rotate(50,60);
+ gr->Light(true); gr->Box(); gr->SurfA(a,b);
}
//-----------------------------------------------------------------------------
-void smgl_contfa(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Light(true); gr->VertexColor(false);
- gr->Box(); gr->ContF3(c,'x'); gr->ContF3(c,'y'); gr->ContF3(c,'z');
-}
-//-----------------------------------------------------------------------------
-void smgl_surf3(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false);
- gr->Box(); gr->Surf3(c);
-}
-//-----------------------------------------------------------------------------
-void smgl_surf3a(mglGraph *gr)
+const char *mmgl_tile="title 'Tile plot':rotate 50 60:box:tile a\n";
+void smgl_tile(mglGraph *gr)
{
- mglData c,d; mgls_prepare3d(&c,&d);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false);
- gr->Box(); gr->Surf3A(c,d);
+ mglData a; mgls_prepare2d(&a);
+ if(!mini) gr->Title("Tile plot");
+ gr->Rotate(40,60); gr->Box(); gr->Tile(a);
}
//-----------------------------------------------------------------------------
-void smgl_surf3c(mglGraph *gr)
+const char *mmgl_tiles="title 'Tiles plot':box:tiles a b\n";
+void smgl_tiles(mglGraph *gr)
{
- mglData c,d; mgls_prepare3d(&c,&d);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false);
- gr->Box(); gr->Surf3C(c,d);
+ mglData a,b; mgls_prepare2d(&a,&b);
+ if(!mini) {gr->SubPlot(1,1,0,""); gr->Title("Tile plot");}
+ gr->Box(); gr->TileS(a,b);
}
//-----------------------------------------------------------------------------
-void smgl_densa(mglGraph *gr)
+const char *mmgl_boxs="subplot 2 2 0 '':title 'Boxs plot (default)':light on:box:boxs a\n"
+"subplot 2 2 1:title '\\\'\\@\\\' style':rotate 50 60:box:boxs a '@'\n"
+"subplot 2 2 2:title '\\\'\\#\\\' style':box:boxs a '#'\n"
+"subplot 2 2 3:title 'compare with Tile':rotate 50 60:box:tile a\n";
+void smgl_boxs(mglGraph *gr)
{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Alpha(true); gr->VertexColor(false);
- gr->SetOrigin(0,0,0); gr->Axis();
- gr->Box(); gr->Dens3(c,'x'); gr->Dens3(c,'y'); gr->Dens3(c,'z');
-}
-//-----------------------------------------------------------------------------
-void smgl_cloud(mglGraph *gr)
+ mglData a; mgls_prepare2d(&a);
+ gr->SetOrigin(0,0,0); gr->Light(true);
+ if(!mini) {gr->SubPlot(2,2,0); gr->Title("Boxs plot (default)");}
+ gr->Rotate(40,60); gr->Box(); gr->Boxs(a);
+ if(mini) return;
+ gr->SubPlot(2,2,1); gr->Title("'\\@' style");
+ gr->Rotate(50,60); gr->Box(); gr->Boxs(a,"@");
+ gr->SubPlot(2,2,2); gr->Title("'\\#' style");
+ gr->Rotate(50,60); gr->Box(); gr->Boxs(a,"#");
+ gr->SubPlot(2,2,3); gr->Title("compare with Tile");
+ gr->Rotate(50,60); gr->Box(); gr->Tile(a);
+}
+//-----------------------------------------------------------------------------
+const char *fit="new rnd 100 '0.4*rnd+0.1+sin(2*pi*x)'\nnew in 100 '0.3+sin(2*pi*x)'\n"
+"list ini 1 1 3:fit res rnd 'a+b*sin(c*x)' 'abc' ini\n"
+"title 'Fitting sample':yrange -2 2:box:axis:plot rnd '. '\n"
+"plot res 'r':plot in 'b'\ntext -0.9 -1.3 'fitted:' 'r:L'\n"
+"putsfit 0 -1.8 'y = ' 'r':text 0 2.2 'initial: y = 0.3+sin(2\\pi x)' 'b'\n";
+void smgl_fit(mglGraph *gr) // nonlinear fitting
{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Alpha(true); gr->VertexColor(false);
- gr->Box(); gr->Cloud(c,"wyrRk");
+ mglData rnd(100), in(100), res;
+ gr->Fill(rnd,"0.4*rnd+0.1+sin(2*pi*x)");
+ gr->Fill(in,"0.3+sin(2*pi*x)");
+ float ini[3] = {1,1,3};
+ mglData Ini(3,ini);
+ res = gr->Fit(rnd, "a+b*sin(c*x)", "abc", Ini);
+ if(!mini) gr->Title("Fitting sample");
+ gr->SetRange('y',-2,2); gr->Box(); gr->Plot(rnd, ". ");
+ gr->Axis(); gr->Plot(res, "r"); gr->Plot(in, "b");
+ gr->Puts(mglPoint(-0.9, -1.3), "fitted:", "r:L");
+ gr->PutsFit(mglPoint(0, -1.8), "y = ", "r");
+ gr->Puts(mglPoint(0, 2.2), "initial: y = 0.3+sin(2\\pi x)", "b");
+ gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(0,0,0);
}
//-----------------------------------------------------------------------------
+const char *mmgl_vect="subplot 3 2 0 '':title 'Vect plot (default)':box:vect a b\n"
+"subplot 3 2 1 '':title '\\\'.\\\' style; \\\'=\\\' style':box:vect a b '.='\n"
+"subplot 3 2 2 '':title '\\\'f\\\' style':box:vect a b 'f'\n"
+"subplot 3 2 3 '':title '\\\'>\\\' style':box:vect a b '>'\n"
+"subplot 3 2 4 '':title '\\\'<\\\' style':box:vect a b '<'\n"
+"subplot 3 2 5:title '3d variant':rotate 50 60:box:vect ex ey ez\n";
void smgl_vect(mglGraph *gr)
{
mglData a,b; mgls_prepare2v(&a,&b);
+ if(!mini) {gr->SubPlot(3,2,0,""); gr->Title("Vect plot (default)");}
gr->Box(); gr->Vect(a,b);
+ if(mini) return;
+ gr->SubPlot(3,2,1,""); gr->Title("'.' style; '=' style"); gr->Box(); gr->Vect(a,b,"=.");
+ gr->SubPlot(3,2,2,""); gr->Title("'f' style"); gr->Box(); gr->Vect(a,b,"f");
+ gr->SubPlot(3,2,3,""); gr->Title("'>' style"); gr->Box(); gr->Vect(a,b,">");
+ gr->SubPlot(3,2,4,""); gr->Title("'<' style"); gr->Box(); gr->Vect(a,b,"<");
+ mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
+ gr->SubPlot(3,2,5); gr->Title("3d variant"); gr->Rotate(50,60);
+ gr->Box(); gr->Vect(ex,ey,ez);
}
//-----------------------------------------------------------------------------
-void smgl_vectl(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Box(); gr->Vect(a,b,"","value 49");
-}
-//-----------------------------------------------------------------------------
-void smgl_vectc(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Box(); gr->Vect(a,b,"","value 50");
-}
-//-----------------------------------------------------------------------------
+const char *mmgl_flow="subplot 2 2 0 '':title 'Flow plot (default)':box:flow a b\n"
+"subplot 2 2 1 '':title '\\\'v\\\' style':box:flow a b 'v'\n"
+"subplot 2 2 2 '':title 'from edges only':box:flow a b; value -5\n"
+"subplot 2 2 3:title '3d variant':rotate 50 60:box:flow ex ey ez\n";
void smgl_flow(mglGraph *gr)
{
mglData a,b; mgls_prepare2v(&a,&b);
+ if(!mini) {gr->SubPlot(2,2,0,""); gr->Title("Flow plot (default)");}
gr->Box(); gr->Flow(a,b);
+ if(mini) return;
+ gr->SubPlot(2,2,1,""); gr->Title("'v' style"); gr->Box(); gr->Flow(a,b,"v");
+ gr->SubPlot(2,2,2,""); gr->Title("from edges only"); gr->Box(); gr->Flow(a,b,"","value -5");
+ mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
+ gr->SubPlot(2,2,3); gr->Title("3d variant"); gr->Rotate(50,60);
+ gr->Box(); gr->Flow(ex,ey,ez);
}
//-----------------------------------------------------------------------------
-void smgl_pipe2(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Box(); gr->Pipe(a,b);
-}
-//-----------------------------------------------------------------------------
+const char *mmgl_pipe="subplot 2 2 0 '':title 'Pipe plot (default)':light on:box:pipe a b\n"
+"subplot 2 2 1 '':title '\\\'i\\\' style':box:pipe a b 'i'\n"
+"subplot 2 2 2 '':title 'from edges only':box:pipe a b; value -5\n"
+"subplot 2 2 3:title '3d variant':rotate 50 60:box:pipe ex ey ez '' 0.1\n";
void smgl_pipe(mglGraph *gr)
{
mglData a,b; mgls_prepare2v(&a,&b);
- gr->Light(true); gr->Compression(true); // try to save space
- gr->Box(); gr->Pipe(a,b);
- gr->Compression(false); //put setting back
+ if(!mini) {gr->SubPlot(2,2,0,""); gr->Title("Flow plot (default)");}
+ gr->Light(true); gr->Box(); gr->Pipe(a,b);
+ if(mini) return;
+ gr->SubPlot(2,2,1,""); gr->Title("'i' style"); gr->Box(); gr->Pipe(a,b,"i");
+ gr->SubPlot(2,2,2,""); gr->Title("from edges only"); gr->Box(); gr->Pipe(a,b,"",0.05,"value -5");
+ mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
+ gr->SubPlot(2,2,3); gr->Title("3d variant"); gr->Rotate(50,60);
+ gr->Box(); gr->Pipe(ex,ey,ez,"",0.1);
}
//-----------------------------------------------------------------------------
+const char *mmgl_dew="subplot 1 1 0 '':title 'Dew plot':light on:box:dew a b\n";
void smgl_dew(mglGraph *gr)
{
mglData a,b; mgls_prepare2v(&a,&b);
- gr->Light(true); gr->Compression(true); // try to save space
- gr->DoubleSided(false); // try to improve performance
- gr->Box(); gr->SetMeshNum(20); gr->Dew(a,b);
- gr->DoubleSided(true);
- gr->Compression(false); //put setting back
+ if(!mini) {gr->SubPlot(1,1,0,""); gr->Title("Dew plot");}
+ gr->Box(); gr->Light(true); gr->Dew(a,b);
}
//-----------------------------------------------------------------------------
-void smgl_dew2(mglGraph *gr)
+const char *mmgl_grad="subplot 1 1 0 '':title 'Grad plot':box:grad a:dens a '{u8}w{q8}'\n";
+void smgl_grad(mglGraph *gr)
{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Rotate(40,60); gr->Light(true); gr->Compression(true); // try to save space
- gr->DoubleSided(false); // try to improve performance
- gr->Box(); gr->SetMeshNum(10); gr->Dew(a,b);
- gr->DoubleSided(true);
- gr->Compression(false); //put setting back
+ mglData a; mgls_prepare2d(&a);
+ if(!mini) {gr->SubPlot(1,1,0,""); gr->Title("Grad plot");}
+ gr->Box(); gr->Grad(a); gr->Dens(a,"{u8}w{q8}");
}
//-----------------------------------------------------------------------------
-void smgl_flow3(mglGraph *gr)
+const char *mmgl_cones="new ys 10 3 '0.8*sin(pi*(x+y/4+1.25))+0.2*rnd'"
+"title 'Cones plot':rotate 50 60:light on:origin 0 0 0:box:cones ys\n";
+void smgl_cones(mglGraph *gr)
{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60);
- gr->Box(); gr->Box(); gr->Flow(ex,ey,ez,"bwr");
-}
-//-----------------------------------------------------------------------------
-void smgl_vect3(mglGraph *gr)
+ mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
+ if(!mini) gr->Title("Cones plot");
+ gr->Rotate(50,60); gr->Light(true);
+ gr->SetOrigin(0,0,0); gr->Box(); gr->Cones(ys);
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_aspect="subplot 2 2 0:box:text -1 1.1 'Just box' ':L'\ninplot 0.2 0.5 0.7 1:box:text 0 1.2 'InPlot example'\n"
+"subplot 2 2 1:title 'Rotate only':rotate 50 60:box\nsubplot 2 2 2:title 'Rotate and Aspect':rotate 50 60:aspect 1 1 2:box\n"
+"subplot 2 2 3:title 'Aspect in other direction':rotate 50 60:aspect 1 2 2:box\n";
+void smgl_aspect(mglGraph *gr) // transformation
+{
+ gr->SubPlot(2,2,0); gr->Box();
+ gr->Puts(mglPoint(-1,1.1),"Just box",":L");
+ gr->InPlot(0.2,0.5,0.7,1,false); gr->Box();
+ gr->Puts(mglPoint(0,1.2),"InPlot example");
+ gr->SubPlot(2,2,1); gr->Title("Rotate only");
+ gr->Rotate(50,60); gr->Box();
+ gr->SubPlot(2,2,2); gr->Title("Rotate and Aspect");
+ gr->Rotate(50,60); gr->Aspect(1,1,2); gr->Box();
+ gr->SubPlot(2,2,3); gr->Title("Aspect in other direction");
+ gr->Rotate(50,60); gr->Aspect(1,2,2); gr->Box();
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_inplot="subplot 3 2 0:title 'StickPlot'\nstickplot 3 0 20 30:box 'r':text 0 0 '0' 'r'\n"
+"stickplot 3 1 20 30:box 'g':text 0 0 '1' 'g'\nstickplot 3 2 20 30:box 'b':text 0 0 '2' 'b'\n"
+"subplot 3 2 3 '':title 'ColumnPlot'\ncolumnplot 3 0:box 'r':text 0 0 '0' 'r'\n"
+"columnplot 3 1:box 'g':text 0 0 '1' 'g'\ncolumnplot 3 2:box 'b':text 0 0 '2' 'b'\n"
+"subplot 3 2 4 '':title 'GridPlot'\ngridplot 2 2 0:box 'r':text 0 0 '0' 'r'\n"
+"gridplot 2 2 1:box 'g':text 0 0 '1' 'g'\ngridplot 2 2 2:box 'b':text 0 0 '2' 'b'\n"
+"gridplot 2 2 3:box 'm':text 0 0 '3' 'm'\nsubplot 3 2 5 '':title 'InPlot':box\n"
+"inplot 0.4 1 0.6 1 on:box 'r'\nmultiplot 3 2 1 2 1 '':title 'MultiPlot':box\n";
+void smgl_inplot(mglGraph *gr)
+{
+ gr->SubPlot(3,2,0); gr->Title("StickPlot");
+ gr->StickPlot(3, 0, 20, 30); gr->Box("r"); gr->Puts(mglPoint(0),"0","r");
+ gr->StickPlot(3, 1, 20, 30); gr->Box("g"); gr->Puts(mglPoint(0),"1","g");
+ gr->StickPlot(3, 2, 20, 30); gr->Box("b"); gr->Puts(mglPoint(0),"2","b");
+ gr->SubPlot(3,2,3,""); gr->Title("ColumnPlot");
+ gr->ColumnPlot(3, 0); gr->Box("r"); gr->Puts(mglPoint(0),"0","r");
+ gr->ColumnPlot(3, 1); gr->Box("g"); gr->Puts(mglPoint(0),"1","g");
+ gr->ColumnPlot(3, 2); gr->Box("b"); gr->Puts(mglPoint(0),"2","b");
+ gr->SubPlot(3,2,4,""); gr->Title("GridPlot");
+ gr->GridPlot(2, 2, 0); gr->Box("r"); gr->Puts(mglPoint(0),"0","r");
+ gr->GridPlot(2, 2, 1); gr->Box("g"); gr->Puts(mglPoint(0),"1","g");
+ gr->GridPlot(2, 2, 2); gr->Box("b"); gr->Puts(mglPoint(0),"2","b");
+ gr->GridPlot(2, 2, 3); gr->Box("m"); gr->Puts(mglPoint(0),"3","m");
+ gr->SubPlot(3,2,5,""); gr->Title("InPlot"); gr->Box();
+ gr->InPlot(0.4, 1, 0.6, 1, true); gr->Box("r");
+ gr->MultiPlot(3,2,1, 2, 1,""); gr->Title("MultiPlot"); gr->Box();
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_combined="new v 10:fill v -0.5 1:copy d sqrt(a^2+b^2)\n"
+"subplot 2 2 0:title 'Surf + Cont':rotate 50 60:light on:box:surf a:cont a 'y'\n"
+"subplot 2 2 1 '':title 'Flow + Dens':box:flow a b 'br':dens d\n"
+"subplot 2 2 2:title 'Mesh + Cont':rotate 50 60:box:mesh a:cont a '_'\n"
+"subplot 2 2 3:title 'Surf3 + ContF3':rotate 50 60:light on\n"
+"box:contf3 v c 'z' 0:contf3 v c 'x':contf3 v c\ncut 0 -1 -1 1 0 1.1\ncontf3 v c 'z' c.nz-1:surf3 -0.5 c\n";
+void smgl_combined(mglGraph *gr) // flow threads and density plot
{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60);
- gr->Box(); gr->Box(); gr->Vect(ex,ey,ez,"bwr");
-}
-//-----------------------------------------------------------------------------
-void smgl_vectl3(mglGraph *gr)
+ mglData a,b,d; mgls_prepare2v(&a,&b); d = a;
+ for(int i=0;i<a.nx*a.ny;i++) d.a[i] = hypot(a.a[i],b.a[i]);
+ mglData c; mgls_prepare3d(&c);
+ mglData v(10); v.Fill(-0.5,1);
+ gr->SubPlot(2,2,1,""); gr->Title("Flow + Dens");
+ gr->Flow(a,b,"br"); gr->Dens(d,"BbcyrR"); gr->Box();
+ gr->SubPlot(2,2,0); gr->Title("Surf + Cont"); gr->Rotate(50,60);
+ gr->Light(true); gr->Surf(a); gr->Cont(a,"y"); gr->Box();
+ gr->SubPlot(2,2,2); gr->Title("Mesh + Cont"); gr->Rotate(50,60);
+ gr->Box(); gr->Mesh(a); gr->Cont(a,"_");
+ gr->SubPlot(2,2,3); gr->Title("Surf3 + ContF3");gr->Rotate(50,60);
+ gr->Box(); gr->ContF3(v,c,"z",0); gr->ContF3(v,c,"x"); gr->ContF3(v,c);
+ gr->SetCutBox(mglPoint(0,-1,-1), mglPoint(1,0,1.1));
+ gr->ContF3(v,c,"z",c.nz-1); gr->Surf3(-0.5,c);
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_axis="subplot 2 2 0:title 'Axis origin, Grid':origin 0 0:axis:grid:fplot 'x^3'\n"
+"subplot 2 2 1:title '2 axis':ranges -1 1 -1 1:origin -1 -1:axis:ylabel 'axis_1':fplot 'sin(pi*x)'\n"
+"ranges 0 1 0 1:origin 1 1:axis:ylabel 'axis_2':fplot 'cos(pi*x)'\n"
+"subplot 2 2 3:title 'More axis':origin nan nan:xrange -1 1:axis:xlabel 'x':ylabel 'y':fplot 'x^2' 'k'\n"
+"yrange -1 1:origin -1.3 -1:axis 'y' 'r':ylabel '#r{y_2}' 0.2:fplot 'x^3' 'r'\n\n"
+"subplot 2 2 2:title '4 segments, inverted axis':origin 0 0:\n"
+"inplot 0.5 1 0.5 1:ranges 0 10 0 2:axis\nfplot 'sqrt(x/2)':xlabel 'W' 1:ylabel 'U' 1\n"
+"inplot 0 0.5 0.5 1:ranges 1 0 0 2:axis 'x':fplot 'sqrt(x)+x^3':xlabel '\\tau' 1\n"
+"inplot 0.5 1 0 0.5:ranges 0 10 4 0:axis 'y':fplot 'x/4':ylabel 'L' -1\n"
+"inplot 0 0.5 0 0.5:ranges 1 0 4 0:fplot '4*x^2'\n";
+void smgl_axis(mglGraph *gr)
+{
+ gr->SubPlot(2,2,0); gr->Title("Axis origin, Grid"); gr->SetOrigin(0,0);
+ gr->Axis(); gr->Grid(); gr->FPlot("x^3");
+
+ gr->SubPlot(2,2,1); gr->Title("2 axis");
+ gr->SetRanges(-1,1,-1,1); gr->SetOrigin(-1,-1,-1); // first axis
+ gr->Axis(); gr->Label('y',"axis 1",0); gr->FPlot("sin(pi*x)");
+ gr->SetRanges(0,1,0,1); gr->SetOrigin(1,1,1); // second axis
+ gr->Axis(); gr->Label('y',"axis 2",0); gr->FPlot("cos(pi*x)");
+
+ gr->SubPlot(2,2,3); gr->Title("More axis"); gr->SetOrigin(NAN,NAN); gr->SetRange('x',-1,1);
+ gr->Axis(); gr->Label('x',"x",0); gr->Label('y',"y_1",0); gr->FPlot("x^2","k");
+ gr->SetRanges(-1,1,-1,1); gr->SetOrigin(-1.3,-1); // second axis
+ gr->Axis("y","r"); gr->Label('y',"#r{y_2}",0.2); gr->FPlot("x^3","r");
+
+ gr->SubPlot(2,2,2); gr->Title("4 segments, inverted axis"); gr->SetOrigin(0,0);
+ gr->InPlot(0.5,1,0.5,1); gr->SetRanges(0,10,0,2); gr->Axis();
+ gr->FPlot("sqrt(x/2)"); gr->Label('x',"W",1); gr->Label('y',"U",1);
+ gr->InPlot(0,0.5,0.5,1); gr->SetRanges(1,0,0,2); gr->Axis("x");
+ gr->FPlot("sqrt(x)+x^3"); gr->Label('x',"\\tau",-1);
+ gr->InPlot(0.5,1,0,0.5); gr->SetRanges(0,10,4,0); gr->Axis("y");
+ gr->FPlot("x/4"); gr->Label('y',"L",-1);
+ gr->InPlot(0,0.5,0,0.5); gr->SetRanges(1,0,4,0); gr->FPlot("4*x^2");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_ticks="subplot 3 2 0:title 'Usual axis':axis\n"
+"subplot 3 2 2:title 'Too big/small range':ranges -1000 1000 0 0.001:axis\n"
+"subplot 3 2 3:title 'Too narrow range':ranges 100 100.1 10 10.01:axis\n"
+"subplot 3 2 4:title 'Disable ticks tuning':tuneticks off:axis\n"
+"subplot 3 2 1:title 'Manual ticks':ranges -pi pi 0 2:\nxtick -pi '\\pi' -pi/2 '-\\pi/2' 0 '0' 0.886 'x^*' pi/2 '\\pi/2' pi 'pi':axis\n"
+"# or you can use: list v -pi -pi/2 0 0.886 pi/2 pi:xtick v '-\\pi\n-\\pi/2\n0\nx^*\n\\pi/2\n\\pi':axis\n"
+"subplot 3 2 5:title 'Time ticks':xrange 0 3e5:ticktime 'x':axis\n";
+void smgl_ticks(mglGraph *gr)
+{
+ gr->SubPlot(3,2,0); gr->Title("Usual axis"); gr->Axis();
+ gr->SubPlot(3,2,2); gr->Title("Too big/small range");
+ gr->SetRanges(-1000,1000,0,0.001); gr->Axis();
+ gr->SubPlot(3,2,3); gr->Title("Too narrow range");
+ gr->SetRanges(100,100.1,10,10.01); gr->Axis();
+ gr->SubPlot(3,2,4); gr->Title("Disable ticks tuning");
+ gr->SetTuneTicks(false); gr->Axis();
+
+ gr->SubPlot(3,2,1); gr->Title("Manual ticks"); gr->SetRanges(-M_PI,M_PI, 0, 2);
+ float val[]={-M_PI, -M_PI/2, 0, 0.886, M_PI/2, M_PI};
+ gr->SetTicksVal('x', mglData(6,val), "-\\pi\n-\\pi/2\n0\nx^*\n\\pi/2\n\\pi");
+ gr->Axis(); gr->Grid(); gr->FPlot("2*cos(x^2)^2", "r2");
+
+ gr->SubPlot(3,2,5); gr->Title("Time ticks"); gr->SetRange('x',0,3e5);
+ gr->SetTickTime('x',0); gr->Axis();
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_box="subplot 2 2 0:title 'Box (default)':rotate 50 60:box\n"
+"subplot 2 2 0:title 'colored':rotate 50 60:box 'r'\n"
+"subplot 2 2 0:title 'with faces':rotate 50 60:box '@'\n"
+"subplot 2 2 0:title 'both':rotate 50 60:box '@cm'\n";
+void smgl_box(mglGraph *gr)
+{
+ gr->SubPlot(2,2,0); gr->Title("Box (default)"); gr->Rotate(50,60); gr->Box();
+ gr->SubPlot(2,2,1); gr->Title("colored"); gr->Rotate(50,60); gr->Box("r");
+ gr->SubPlot(2,2,2); gr->Title("with faces"); gr->Rotate(50,60); gr->Box("@");
+ gr->SubPlot(2,2,3); gr->Title("both"); gr->Rotate(50,60); gr->Box("@cm");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_loglog="subplot 2 2 0 '<_':title 'Semi-log axis':ranges 0.01 100 -1 1:axis 'lg(x)' ''\n"
+"axis:fplot 'sin(1/x)':xlabel 'x':ylabel 'y = sin 1/x'\n"
+"subplot 2 2 1 '<_':title 'Log-log axis':ranges 0.01 100 0.1 100:axis 'lg(x)' 'lg(y)'\n"
+"axis:fplot 'sqrt(1+x^2)':xlabel 'x':ylabel 'y = \\sqrt{1+x^2}'\n"
+"subplot 2 2 2 '<_':title 'Minus-log axis':ranges -100 -0.01 -100 -0.1:axis '-lg(-x)' '-lg(-y)'\n"
+"axis:fplot '-sqrt(1+x^2)':xlabel 'x':ylabel 'y = -\\sqrt{1+x^2}'\n"
+"subplot 2 2 3 '<_':title 'Log-ticks':ranges 0.01 100 0 100:axis 'sqrt(x)' ''\n"
+"axis:fplot 'x':xlabel 'x':ylabel 'y = x'\n";
+void smgl_loglog(mglGraph *gr) // log-log axis
{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60);
- gr->Box(); gr->Box(); gr->Vect(ex,ey,ez,"bwr","value 49");
+ gr->SubPlot(2,2,0,"<_"); gr->Title("Semi-log axis"); gr->SetRanges(0.01,100,-1,1); gr->SetFunc("lg(x)","");
+ gr->Axis(); gr->FPlot("sin(1/x)"); gr->Label('x',"x",0); gr->Label('y', "y = sin 1/x",0);
+ gr->SubPlot(2,2,1,"<_"); gr->Title("Log-log axis"); gr->SetRanges(0.01,100,0.1,100); gr->SetFunc("lg(x)","lg(y)");
+ gr->Axis(); gr->FPlot("sqrt(1+x^2)"); gr->Label('x',"x",0); gr->Label('y', "y = \\sqrt{1+x^2}",0);
+ gr->SubPlot(2,2,2,"<_"); gr->Title("Minus-log axis"); gr->SetRanges(-100,-0.01,-100,-0.1); gr->SetFunc("-lg(-x)","-lg(-y)");
+ gr->Axis(); gr->FPlot("-sqrt(1+x^2)"); gr->Label('x',"x",0); gr->Label('y', "y = -\\sqrt{1+x^2}",0);
+ gr->SubPlot(2,2,3,"<_"); gr->Title("Log-ticks"); gr->SetRanges(0.1,100,0,100); gr->SetFunc("sqrt(x)","");
+ gr->Axis(); gr->FPlot("x"); gr->Label('x',"x",1); gr->Label('y', "y = x",0);
}
//-----------------------------------------------------------------------------
-void smgl_vectc3(mglGraph *gr)
+const char *mmgl_venn="list x -0.3 0 0.3:list y 0.3 -0.3 0.3:list e 0.7 0.7 0.7\n"
+"subplot 1 1 0 '':title 'Venn-like diagram':alpha on:error x y e e '!rgb@#o'";
+void smgl_venn(mglGraph *gr)
{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60);
- gr->Box(); gr->Box(); gr->Vect(ex,ey,ez,"bwr","value 50");
+ double xx[3]={-0.3,0,0.3}, yy[3]={0.3,-0.3,0.3}, ee[3]={0.7,0.7,0.7};
+ mglData x(3,xx), y(3,yy), e(3,ee);
+ gr->SubPlot(1,1,0); gr->Title("Venn-like diagram"); gr->Alpha(true); gr->Error(x,y,e,e,"!rgb@#o");
}
//-----------------------------------------------------------------------------
-void smgl_pipe3(mglGraph *gr)
+const char *mmgl_stereo="light on subplot 2 1 0:rotate 50 60+3:box:surf a\nsubplot 2 1 1:rotate 50 60-3:box:surf a\n";
+void smgl_stereo(mglGraph *gr)
{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60); gr->Light(true);
- gr->Compression(true); // try to save space
- gr->Clf(); gr->Box(); gr->Pipe(ex,ey,ez);
- gr->Compression(false); // put setting back
+ mglData a; mgls_prepare2d(&a);
+ gr->Light(true);
+ gr->SubPlot(2,1,0); gr->Rotate(50,60+3);
+ gr->Box(); gr->Surf(a);
+ gr->SubPlot(2,1,1); gr->Rotate(50,60-3);
+ gr->Box(); gr->Surf(a);
}
//-----------------------------------------------------------------------------
-void smgl_crust(mglGraph *gr)
+const char *mmgl_hist="new x 10000 '2*rnd-1':new y 10000 '2*rnd-1':copy z x 'exp(-6*(u^2+v^2))' y\n"
+"hist xx x z:norm xx 0 1:hist yy y z:norm yy 0 1\nmultiplot 3 3 3 2 2 '':ranges -1 1 -1 1 0 1:box:dots x y z 'wyrRk'\n"
+"multiplot 3 3 0 2 1 '':ranges -1 1 0 1:box:bars xx\nmultiplot 3 3 5 1 2 '':ranges 0 1 -1 1:box:barh yy\n"
+"subplot 3 3 2:text 0 0 'Hist and\\nMultiPlot\\nsample' 'a' -6\n";
+void smgl_hist(mglGraph *gr)
{
- mglData pnts("hotdogs.pts"); pnts.Norm(-1,1,true);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->Clf(); gr->Box(); gr->Crust(pnts.SubData(0),pnts.SubData(1),pnts.SubData(2));
+ mglData x(10000), y(10000), z(10000); gr->Fill(x,"2*rnd-1"); gr->Fill(y,"2*rnd-1"); gr->Fill(z,"exp(-6*(v^2+w^2))",x,y);
+ mglData xx=gr->Hist(x,z), yy=gr->Hist(y,z); xx.Norm(0,1); yy.Norm(0,1);
+ gr->MultiPlot(3,3,3,2,2,""); gr->SetRanges(-1,1,-1,1,0,1); gr->Box(); gr->Dots(x,y,z,"wyrRk");
+ gr->MultiPlot(3,3,0,2,1,""); gr->SetRanges(-1,1,0,1); gr->Box(); gr->Bars(xx);
+ gr->MultiPlot(3,3,5,1,2,""); gr->SetRanges(0,1,-1,1); gr->Box(); gr->Barh(yy);
+ gr->SubPlot(3,3,2); gr->Puts(mglPoint(0.5,0.5),"Hist and\nMultiPlot\nsample","a",-6);
}
//-----------------------------------------------------------------------------
-void smgl_dots(mglGraph *gr)
+const char *mmgl_primitives=""; // TODO add later
+void smgl_primitives(mglGraph *gr) // flag #
{
- mglData pnts("hotdogs.pts"); pnts.Norm(-1,1,true);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->Clf(); gr->Box(); gr->Dots(pnts.SubData(0),pnts.SubData(1),pnts.SubData(2));
-}
-//-----------------------------------------------------------------------------
+ gr->SubPlot(2,2,0,""); gr->Title("Line, Curve, Rhomb, Ellipse");
+ gr->Line(mglPoint(-1,-1),mglPoint(-0.5,1),"qAI");
+ gr->Curve(mglPoint(-0.6,-1),mglPoint(1,1),mglPoint(0,1),mglPoint(1,1),"rA");
+ gr->Rhomb(mglPoint(0,0.4),mglPoint(1,0.9),0.2,"b#");
+ gr->Rhomb(mglPoint(0,0),mglPoint(1,0.4),0.2,"cg@");
+ gr->Ellipse(mglPoint(0,-0.5),mglPoint(1,-0.1),0.2,"u#");
+ gr->Ellipse(mglPoint(0,-1),mglPoint(1,-0.6),0.2,"m@");
+ gr->Mark(mglPoint(0,-0.5),"*"); gr->Mark(mglPoint(1,-0.1),"*");
+
+ gr->Light(true);
+ gr->SubPlot(2,2,1); gr->Title("Face[xyz]"); gr->Rotate(50,60); gr->Box();
+ gr->FaceX(mglPoint(1,0,-1),1,1,"r");
+ gr->FaceY(mglPoint(-1,-1,-1),1,1,"g");
+ gr->FaceZ(mglPoint(1,-1,-1),-1,1,"b");
+ gr->Face(mglPoint(-1,-1,1),mglPoint(-1,1,1),mglPoint(1,-1,0),mglPoint(1,1,1),"m");
+
+ gr->SubPlot(2,2,3,""); gr->Title("Cone");
+ gr->Cone(mglPoint(-0.7,-0.3),mglPoint(-0.7,0.7,0.5),0.2,0.1,"b");
+ gr->Puts(mglPoint(-0.7,-0.7),"no edges\n(default)");
+ gr->Cone(mglPoint(0,-0.3),mglPoint(0,0.7,0.5),0.2,0.1,"g@");
+ gr->Puts(mglPoint(0,-0.7),"with edges\n('\\@' style)");
+ gr->Cone(mglPoint(0.7,-0.3),mglPoint(0.7,0.7,0.5),0.2,0,"ry");
+ gr->Puts(mglPoint(0.7,-0.7),"'arrow' with\ngradient");
+
+ gr->SubPlot(2,2,2,""); gr->Title("Sphere and Drop");
+ gr->Alpha(false);
+ gr->Puts(mglPoint(-0.9,-0.7),"sh=0");
+ gr->Drop(mglPoint(-0.9,0),mglPoint(0,1),0.5,"r",0);
+ gr->Puts(mglPoint(-0.3,-0.7),"sh=0.33");
+ gr->Drop(mglPoint(-0.3,0),mglPoint(0,1),0.5,"r",0.33);
+ gr->Puts(mglPoint(0.3,-0.7),"sh=0.67");
+ gr->Drop(mglPoint(0.3,0),mglPoint(0,1),0.5,"r",0.67);
+ gr->Puts(mglPoint(0.9,-0.7),"sh=1");
+ gr->Drop(mglPoint(0.9,0),mglPoint(0,1),0.5,"r",1);
+ gr->Ball(mglPoint(-0.9,0,1),'k');
+ gr->Ball(mglPoint(-0.3,0,1),'k');
+ gr->Ball(mglPoint(0.3,0,1),'k');
+ gr->Ball(mglPoint(0.9,0,1),'k');
+ gr->Line(mglPoint(-0.9,0,1),mglPoint(0.9,0,1),"b");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_label="new ys 10 '0.2*rnd-0.8*sin(pi*x)'\n"
+"subplot 1 1 0 '':title 'Label plot':box:plot ys ' *':label ys 'y=%y'\n";
+void smgl_label(mglGraph *gr)
+{
+ mglData ys(10); ys.Modify("0.8*sin(pi*2*x)+0.2*rnd");
+ if(!mini) { gr->SubPlot(1,1,0,""); gr->Title("Label plot"); }
+ gr->Box(); gr->Plot(ys," *"); gr->Label(ys,"y=%y");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_colorbar="subplot 2 2 0:title 'Colorbar out of box':box\n"
+"colorbar '<':colorbar '>':colorbar '_':colorbar '^'\n"
+"subplot 2 2 0:title 'Colorbar near box':box\n"
+"colorbar '<I':colorbar '>I':colorbar '_I':colorbar '^I'\n"
+"subplot 2 2 0:title 'manual colors':box:contd v a\n"
+"colorbar v '<':colorbar v '>':colorbar v '_':colorbar v '^'\n"
+"subplot 2 2 0:title 'log-scale'\n"
+"colorbar '>' 0.5 0:text 0 1.2 'Normal scale':colorbar '>':text 1.3 1.2 'Log scale'\n";
+void smgl_colorbar(mglGraph *gr)
+{
+ gr->SubPlot(2,2,0); gr->Title("Colorbar out of box"); gr->Box();
+ gr->Colorbar("<"); gr->Colorbar(">"); gr->Colorbar("_"); gr->Colorbar("^");
+ gr->SubPlot(2,2,1); gr->Title("Colorbar near box"); gr->Box();
+ gr->Colorbar("<I"); gr->Colorbar(">I"); gr->Colorbar("_I"); gr->Colorbar("^I");
+ gr->SubPlot(2,2,2); gr->Title("manual colors");
+ mglData a,v; mgls_prepare2d(&a,0,&v);
+ gr->Box(); gr->ContD(v,a);
+ gr->Colorbar(v,"<"); gr->Colorbar(v,">"); gr->Colorbar(v,"_"); gr->Colorbar(v,"^");
+ gr->SubPlot(2,2,3); gr->Title("log-scale");
+ gr->SetRange('c',0.01,1e3);
+ gr->Colorbar(">",0.5,0); gr->Puts(mglPoint(0,1.2),"Normal scale");
+ gr->SetFunc("","","","lg(c)");
+ gr->Colorbar(">"); gr->Puts(mglPoint(1.3,1.2),"Log scale");
+}
+//-----------------------------------------------------------------------------
+const char *mmgl_legend="addlegend 'sin(\\pi {x^2})' 'b':addlegend 'sin(\\pi x)' 'g*'\n"
+"addlegend 'sin(\\pi \\sqrt{x})' 'rd':addlegend 'jsut text' ' ':addlegend 'no indent for this' ''\n"
+"subplot 2 2 0 '':title 'Legend (default)':box:legend\n"
+"legend 3 'A#':text 0.75 0.65 'Absolute position' 'A'\n"
+"subplot 2 2 2 '':title 'coloring':box:legend 0 'r#':legend 1 'Wb#':legend 2 'ygr#'\n"
+"subplot 2 2 3 '':title 'manual position':box:legend 0.5 0.5\n";
void smgl_legend(mglGraph *gr)
{
- mglData f(50,3);
- float x;
- for(int i=0;i<50;i++)
- {
- x=i/49.;
- f.a[i]=sin(2*M_PI*x*x);
- f.a[i+50]=sin(2*M_PI*x);
- f.a[i+100]=sin(2*M_PI*sqrt(x));
- }
- gr->SetRanges(mglPoint(0), mglPoint(1));
- gr->Box(); gr->Plot(f); gr->Axis("xy");
- gr->AddLegend("sin(\\pi {x^2})","b"); gr->AddLegend("sin(\\pi x)","g*");
- gr->AddLegend("sin(\\pi \\sqrt{x})","r+"); gr->Legend();
+ gr->AddLegend("sin(\\pi {x^2})","b");
+ gr->AddLegend("sin(\\pi x)","g*");
+ gr->AddLegend("sin(\\pi \\sqrt{x})","rd");
+ gr->AddLegend("just text"," ");
+ gr->AddLegend("no indent for this","");
+ if(!mini) {gr->SubPlot(2,2,0,""); gr->Title("Legend (default)");}
+ gr->Box(); gr->Legend();
+ if(mini) return;
+ gr->Legend(3,"A#");
+ gr->Puts(mglPoint(0.75,0.65),"Absolute position","A");
+ gr->SubPlot(2,2,2,""); gr->Title("coloring"); gr->Box();
+ gr->Legend(0,"r#"); gr->Legend(1,"Wb#"); gr->Legend(2,"ygr#");
+ gr->SubPlot(2,2,3,""); gr->Title("manual position"); gr->Box(); gr->Legend(0.5,0.5);
}
//-----------------------------------------------------------------------------
-void smgl_type0(mglGraph *gr) // TranspType = 0
+const char *mmgl_data_diff=""; // TODO add later
+void smgl_dat_diff(mglGraph *gr) // differentiate
{
- if(type==5 || type==9 || type==10) return;
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a; mgls_prepare2d(&a);
- gr->SetTranspType(0); gr->Clf();
- gr->SubPlot(2,2,0); gr->Rotate(40,60); gr->Surf(a); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60); gr->Dens(a); gr->Box();
- gr->SubPlot(2,2,2); gr->Rotate(40,60); gr->Cont(a); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60); gr->Axial(a); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_type1(mglGraph *gr) // TranspType = 1
-{
- if(type==5 || type==9 || type==10) return;
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a; mgls_prepare2d(&a);
- gr->SetTranspType(1); gr->Clf();
- gr->SubPlot(2,2,0); gr->Rotate(40,60); gr->Surf(a); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60); gr->Dens(a); gr->Box();
- gr->SubPlot(2,2,2); gr->Rotate(40,60); gr->Cont(a); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60); gr->Axial(a); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_type2(mglGraph *gr) // TranspType = 2
-{
- if(type==5 || type==9 || type==10) return;
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a; mgls_prepare2d(&a);
- gr->SetTranspType(2); gr->Clf();
- gr->SubPlot(2,2,0); gr->Rotate(40,60); gr->Surf(a); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60); gr->Dens(a); gr->Box();
- gr->SubPlot(2,2,2); gr->Rotate(40,60); gr->Cont(a); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60); gr->Axial(a); gr->Box();
+ gr->SetRanges(0,1,0,1,0,1);
+ mglData a(30,40); a.Modify("x*y");
+ gr->SubPlot(2,2,0); gr->Rotate(60,40);
+ gr->Surf(a); gr->Box();
+ gr->Puts(mglPoint(0.7,1,1.2),"a(x,y)");
+ gr->SubPlot(2,2,1); gr->Rotate(60,40);
+ a.Diff("x"); gr->Surf(a); gr->Box();
+ gr->Puts(mglPoint(0.7,1,1.2),"da/dx");
+ gr->SubPlot(2,2,2); gr->Rotate(60,40);
+ a.Integral("xy"); gr->Surf(a); gr->Box();
+ gr->Puts(mglPoint(0.7,1,1.2),"\\int da/dx dxdy");
+ gr->SubPlot(2,2,3); gr->Rotate(60,40);
+ a.Diff2("y"); gr->Surf(a); gr->Box();
+ gr->Puts(mglPoint(0.7,1,1.2),"\\int {d^2}a/dxdy dx");
}
//-----------------------------------------------------------------------------
-void smgl_molecule(mglGraph *gr) // example of moleculas
+const char *mmgl_data_extra=""; // TODO add later
+void smgl_dat_exta(mglGraph *gr) // differentiate
{
- gr->VertexColor(false); gr->Compression(false); // per-vertex colors and compression are detrimental to transparency
- gr->DoubleSided(false); // we do not get into atoms, while rendering internal surface has negative impact on trasparency
- gr->Alpha(true); gr->Light(true);
+ gr->SubPlot(2,2,0,""); gr->Title("Envelop sample");
+ mglData d1(1000); gr->Fill(d1,"exp(-8*x^2)*sin(10*pi*x)");
+ gr->Axis(); gr->Plot(d1, "b");
+ d1.Envelop('x'); gr->Plot(d1, "r");
- gr->SubPlot(2,2,0);
- gr->StartGroup("Methane");
- gr->StartGroup("MetaneLabel");
- gr->Puts(mglPoint(0,1.2),"Methane, CH_4",0,-2);
- gr->EndGroup();
- gr->Rotate(60,120);
- gr->Sphere(mglPoint(0,0,0),0.25,"k");
- gr->Drop(mglPoint(0,0,0),mglPoint(0,0,1),0.35,"h",1,2);
- gr->Sphere(mglPoint(0,0,0.7),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(-0.94,0,-0.33),0.35,"h",1,2);
- gr->Sphere(mglPoint(-0.66,0,-0.23),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.47,0.82,-0.33),0.35,"h",1,2);
- gr->Sphere(mglPoint(0.33,0.57,-0.23),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.47,-0.82,-0.33),0.35,"h",1,2);
- gr->Sphere(mglPoint(0.33,-0.57,-0.23),0.25,"g");
- gr->EndGroup();
+ gr->SubPlot(2,2,1,""); gr->Title("Smooth sample");
+ mglData y0(30),y1,y2,y3;
+ gr->SetRanges(0,1,0,1);
+ gr->Fill(y0, "0.4*sin(pi*x) + 0.3*cos(1.5*pi*x) - 0.4*sin(2*pi*x)+0.5*rnd");
- gr->SubPlot(2,2,1);
- gr->StartGroup("Water");
- gr->StartGroup("WaterLabel");
- gr->Puts(mglPoint(0,1.2),"Water, H_{2}O",0,-2);
- gr->EndGroup();
- gr->Rotate(60,100);
- gr->StartGroup("Water_O");
- gr->Sphere(mglPoint(0,0,0),0.25,"r");
- gr->EndGroup();
- gr->StartGroup("Water_Bond_1");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.3,0.5,0),0.3,"m",1,2);
- gr->EndGroup();
- gr->StartGroup("Water_H_1");
- gr->Sphere(mglPoint(0.3,0.5,0),0.25,"g");
- gr->EndGroup();
- gr->StartGroup("Water_Bond_2");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.3,-0.5,0),0.3,"m",1,2);
- gr->EndGroup();
- gr->StartGroup("Water_H_2");
- gr->Sphere(mglPoint(0.3,-0.5,0),0.25,"g");
- gr->EndGroup();
- gr->EndGroup();
+ y1=y0; y1.Smooth("x3");
+ y2=y0; y2.Smooth("x5");
+ y3=y0; y3.Smooth("x");
- gr->SubPlot(2,2,2);
- gr->StartGroup("Oxygen");
- gr->StartGroup("OxygenLabel");
- gr->Puts(mglPoint(0,1.2),"Oxygen, O_2",0,-2);
- gr->EndGroup();
- gr->Rotate(60,120);
- gr->Drop(mglPoint(0,0.5,0),mglPoint(0,-0.3,0),0.3,"m",1,2);
- gr->Sphere(mglPoint(0,0.5,0),0.25,"r");
- gr->Drop(mglPoint(0,-0.5,0),mglPoint(0,0.3,0),0.3,"m",1,2);
- gr->Sphere(mglPoint(0,-0.5,0),0.25,"r");
- gr->EndGroup();
+ gr->Plot(y0,"{m7}:s", "legend 'none'"); //gr->AddLegend("none","k");
+ gr->Plot(y1,"r", "legend ''3' style'");
+ gr->Plot(y2,"g", "legend ''5' style'");
+ gr->Plot(y3,"b", "legend 'default'");
+ gr->Legend(); gr->Box();
- gr->SubPlot(2,2,3);
- gr->StartGroup("Ammonia");
- gr->StartGroup("AmmoniaLabel");
- gr->Puts(mglPoint(0,1.2),"Ammonia, NH_3",0,-2);
- gr->EndGroup();
- gr->Rotate(60,120);
- gr->Sphere(mglPoint(0,0,0),0.25,"b");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.33,0.57,0),0.32,"n",1,2);
- gr->Sphere(mglPoint(0.33,0.57,0),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.33,-0.57,0),0.32,"n",1,2);
- gr->Sphere(mglPoint(0.33,-0.57,0),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(-0.65,0,0),0.32,"n",1,2);
- gr->Sphere(mglPoint(-0.65,0,0),0.25,"g");
- gr->EndGroup();
- gr->DoubleSided( true ); // put back
-}
-//-----------------------------------------------------------------------------
-void smgl_quaternary(mglGraph *gr) // flag #
-{
- mglData x(50),y(50),z(50),rx(10),ry(10), a(20,30);
- a.Modify("x*y*(1-x-y)^2*30");
- x.Modify("0.25*(1-x)*(1+cos(2*pi*x))");
- y.Modify("0.25*(1-x)*(1+sin(2*pi*x))");
- z.Modify("x");
+ gr->SubPlot(2,2,2); gr->Title("Sew sample");
+ mglData d2(100, 100); gr->Fill(d2, "mod((y^2-(1-x)^2)/2,0.1)");
+ gr->Rotate(50, 60); gr->Light(true); gr->Alpha(true);
+ gr->Box(); gr->Surf(d2, "b");
+ d2.Sew("xy", 0.1); gr->Surf(d2, "r");
- gr->Puts(mglPoint(0,1.3), "Quaternary plot (x+y+z+t=1)");
- gr->Rotate(60,70); gr->Light(true);
- gr->Ternary(2); gr->SetCut(true);
- gr->Plot(x,y,z,"r2"); gr->Surf(a,"BbcyrR#");
- gr->Axis(); gr->Grid(); gr->Box();
- gr->SetRotatedText(false);
- gr->Label('t',"A",1); gr->Label('x',"B",1);
- gr->Label('y',"C",1); gr->Label('z',"D",1);
- gr->Ternary(0);
+ gr->SubPlot(2,2,3); gr->Title("Resize sample (interpolation)");
+ mglData x0(10), v0(10), x1, v1;
+ gr->Fill(x0,"rnd"); gr->Fill(v0,"rnd");
+ x1 = x0.Resize(100); v1 = v0.Resize(100);
+ gr->Plot(x0,v0,"b+ "); gr->Plot(x1,v1,"r-");
+ gr->Label(x0,v0,"%n");
}
//-----------------------------------------------------------------------------
+const char *mmgl_ternary=""; // TODO add later
void smgl_ternary(mglGraph *gr) // flag #
{
- mglData x(50),y(50),rx(10),ry(10), a(20,30);
- a.Modify("4*x*y");
+ gr->SetRanges(0,1,0,1,0,1);
+ mglData x(50),y(50),z(50),rx(10),ry(10), a(20,30);
+ a.Modify("30*x*y*(1-x-y)^2*(x+y<1)");
x.Modify("0.25*(1+cos(2*pi*x))");
y.Modify("0.25*(1+sin(2*pi*x))");
rx.Modify("rnd"); ry.Modify("(1-v)*rnd",rx);
+ z.Modify("x");
+
+ gr->SubPlot(2,2,0); gr->Title("Ordinary axis 3D");
+ gr->Rotate(50,60); gr->Light(true);
+ gr->Plot(x,y,z,"r2"); gr->Surf(a,"BbcyrR#");
+ gr->Axis(); gr->Grid(); gr->Box();
+ gr->Label('x',"B",1); gr->Label('y',"C",1); gr->Label('z',"Z",1);
- gr->Puts(mglPoint(-0.8,1.3), "Ternary plot (x+y+t=1)");
- gr->Ternary(true);
- gr->Plot(x,y,"r2");
- gr->Plot(rx,ry,"q^ ");
- gr->Cont(a,"BbcyrR");
+ gr->SubPlot(2,2,1); gr->Title("Ternary axis (x+y+t=1)");
+ gr->Ternary(1);
+ gr->Plot(x,y,"r2"); gr->Plot(rx,ry,"q^ "); gr->Cont(a,"BbcyrR");
gr->Line(mglPoint(0.5,0), mglPoint(0,0.75), "g2");
gr->Axis(); gr->Grid("xyz","B;");
- gr->Label('x',"x comp.");
- gr->Label('y',"y comp.");
- gr->Label('t',"t comp.");
- gr->Ternary(false);
-}
-//-----------------------------------------------------------------------------
-void smgl_drops(mglGraph *gr) // flag #
-{
- gr->VertexColor(false); // not strictly required, but looks better imho
- gr->Light(true); gr->Alpha(false);
- gr->Puts(mglPoint(-1,1.2),"sh=0");
- gr->Drop(mglPoint(-1,0),mglPoint(0,1),0.5,"r",0);
- gr->Puts(mglPoint(-0.33,1.2),"sh=0.33");
- gr->Drop(mglPoint(-0.33,0),mglPoint(0,1),0.5,"r",0.33);
- gr->Puts(mglPoint(0.33,1.2),"sh=0.67");
- gr->Drop(mglPoint(0.33,0),mglPoint(0,1),0.5,"r",0.67);
- gr->Puts(mglPoint(1,1.2),"sh=1");
- gr->Drop(mglPoint(1,0),mglPoint(0,1),0.5,"r",1);
- gr->Ball(mglPoint(-1,0,1),'k');
- gr->Ball(mglPoint(-0.33,0,1),'k');
- gr->Ball(mglPoint(0.33,0,1),'k');
- gr->Ball(mglPoint(1,0,1),'k');
- gr->Line(mglPoint(-1,0,1),mglPoint(1,0,1),"b");
-}
-//-----------------------------------------------------------------------------
-void smgl_fish(mglGraph *gr) // flag #
-{
- gr->VertexColor(false); // the model is big even without information on point colors
- gr->Compression(true); // fishes are important, not their scales
- gr->DoubleSided(false); // we do not get into drops, while rendering internal surfaces may have negative impact on performace
- gr->Light(true); gr->Alpha(false);
- mglData a(10,10), b(10,10), x(10,10), y(10,10);
- a.Modify("0.3*x+rnd"); x.Modify("x+0.1*rnd");
- b.Modify("0.3*y+rnd"); y.Modify("y+0.1*rnd");
+ gr->Label('x',"B"); gr->Label('y',"C"); gr->Label('t',"A");
- gr->Clf();
- gr->SetRanges(mglPoint(0,0),mglPoint(1.1,1.1));
- gr->Light(true);
- gr->Dew(x,y,a,b,"BbcyrR");
- gr->Compression(false); gr->DoubleSided(true);
-}
-//-----------------------------------------------------------------------------
-void smgl_mirror(mglGraph *gr) // flag #
-{
- gr->VertexColor(true); gr->TextureColor(false); // Let us use pre-lighting for this example
- mglData a(30,40),x(30),y1(40),y2(40);
- a.Modify("pi*(1-2*x)*exp(-4*y^2-4*(2*x-1)^2)");
- x.Fill(-1,1); y1.Fill(0,1); y2.Fill(0,-1);
+ gr->SubPlot(2,2,2); gr->Title("Quaternary axis 3D");
+ gr->Rotate(50,60); gr->Light(true);
+ gr->Ternary(2);
+ gr->Plot(x,y,z,"r2"); gr->Surf(a,"BbcyrR#");
+ gr->Axis(); gr->Grid(); gr->Box();
+ gr->Label('t',"A",1); gr->Label('x',"B",1);
+ gr->Label('y',"C",1); gr->Label('z',"D",1);
- gr->Alpha(false); gr->Rotate(40,60);
- gr->Light(true); gr->Box();
- gr->Surf(x,y1,a,"r"); gr->Surf(x,y2,a,"b");
- gr->VertexColor(false); gr->TextureColor(true); // set settings back
+ gr->SubPlot(2,2,3); gr->Title("Ternary axis 3D");
+ gr->Rotate(50,60); gr->Light(true);
+ gr->Ternary(1);
+ gr->Plot(x,y,z,"r2"); gr->Surf(a,"BbcyrR#");
+ gr->Axis(); gr->Grid(); gr->Box();
+ gr->Label('t',"A",1); gr->Label('x',"B",1);
+ gr->Label('y',"C",1); gr->Label('z',"Z",1);
}
//-----------------------------------------------------------------------------
-void smgl_semilog(mglGraph *gr) // semi-log axis
-{
- mglData x(2000), y(2000);
- x.Modify("0.01/(x+10^(-5))"); y.Modify("sin(1/v)",x);
-
- gr->SetRanges(mglPoint(0.01,-1),mglPoint(1000,1));
- gr->SetFunc("lg(x)",0,0); gr->SetTicks('x', 0); gr->Box();
- gr->Plot(x,y,"b2");
- gr->Axis(); gr->Grid("xy","g");
- gr->Label('x',"x",0); gr->Label('y', "y = sin 1/x",0);
-}
//-----------------------------------------------------------------------------
-void smgl_loglog(mglGraph *gr) // log-log axis
-{
- mglData x(2000), y(2000);
- x.Modify("pow(10,6*x-3)"); y.Modify("sqrt(1+v^2)",x);
-
- gr->SetRanges(mglPoint(0.001,0.1),mglPoint(1000,1000));
- gr->SetFunc("lg(x)","lg(y)",0);
- gr->SetTicks('x', 0);
- gr->SetTicks('y', 0);
- gr->Box(); gr->Axis(); gr->Grid("xy","g;");
- gr->Plot(x,y,"b2");
- gr->Label('x',"x",0); gr->Label('y', "y=\\sqrt{1+x^2}",0);
-}
//-----------------------------------------------------------------------------
-void smgl_fit(mglGraph *gr) // nonlinear fitting
-{
- mglData rnd(100), in(100), res;
- gr->Fill(rnd,"0.4*rnd+0.1+sin(2*pi*x)");
- gr->Fill(in,"0.3+sin(2*pi*x)");
-
- gr->SetRanges(mglPoint(-1,-2), mglPoint(1,2));
- gr->Plot(rnd, ". ");
- gr->Box();
-
- float ini[3] = {1,1,3};
- mglData Ini(3,ini);
- gr->Fit(res, rnd, "a+b*sin(c*x)", "abc", Ini);
- gr->Plot(res, "r");
- gr->Plot(in, "b");
- gr->Puts(mglPoint(-1, -1.3), "fitted:", "r:L", -1);
- gr->PutsFit(mglPoint(0, -1.8), "y = ", "r:C", -1);
- gr->Puts(mglPoint(0, 2.2), "initial: y = 0.3+sin(2\\pi x)", "b:C", -1);
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(0,0,0);
-}
//-----------------------------------------------------------------------------
-#include "mgl/parser.h"
-void smgl_parser(mglGraph *gr) // example of MGL parsing
-{
- float a[100]; // let a_i = sin(4*pi*x), x=0...1
- for(int i=0;i<100;i++)a[i]=sin(4*M_PI*i/99);
- mglParse *parser = new mglParse;
- mglData d = parser->AddVar("dat");
- d.Set(a,100); // set data to variable
- parser->Execute(gr, "plot dat; xrange 0 1\nbox\naxis");
- // you may break script at any line do something
- // and continue after that
- parser->Execute(gr, "xlabel 'x'\nylabel 'y'\nbox");
- // also you may use cycles or conditions in script
- parser->Execute(gr, "for $0 -1 1 0.1\nline 0 0 -1 $0 'r'\nnext");
- delete parser;
-}
//-----------------------------------------------------------------------------
-void smgl_2_axis(mglGraph *gr) // 2 axis
-{
- mglData y1,y2; mgls_prepare1d(0,&y2,&y1);
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(-1,-1,-1);
- gr->Axis(); gr->Label('y',"axis 1",0); gr->Plot(y1,"b");
- // set up second axis
- gr->SetRanges(mglPoint(0,0,0),mglPoint(1,1,1)); gr->SetOrigin(1,1,1);
- gr->Axis(); gr->Label('y',"axis 2",0); gr->Stem(y2,"r");
-}
//-----------------------------------------------------------------------------
-void smgl_flow_dens(mglGraph *gr) // flow threads and density plot
-{
- mglData a,b,d; mgls_prepare2v(&a,&b); d = a;
- for(int i=0;i<a.nx*a.ny;i++) d.a[i] = hypot(a.a[i],b.a[i]);
- gr->Flow(a,b,"br"); gr->Dens(d,"BbcyrR"); gr->Box();
-}
//-----------------------------------------------------------------------------
-void smgl_surf_cont(mglGraph *gr) // contour lines over surface
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60);
- gr->Box(); gr->Surf(a,"kw");
- gr->SetRange('c',-1,0); gr->Cont(a,"w");
- gr->SetRange('c', 0,1); gr->Cont(a,"k");
-}
//-----------------------------------------------------------------------------
-void smgl_mesh_cont(mglGraph *gr) // contours under mesh
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60);
- gr->Box(); gr->Mesh(a); gr->Cont(a, "_");
-// gr->Cont(a, 0, "zrange -1 -1"); // Also possible variant
-}
//-----------------------------------------------------------------------------
-void smgl_surf_cont_y(mglGraph *gr) // contours on the surface
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true);
- gr->Box(); gr->Surf(a); gr->Cont(a,"y");
-}
//-----------------------------------------------------------------------------
-void smgl_surf_cont_fog(mglGraph *gr) // contours on the surface in fog
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true); gr->Fog(1,0.1);
- gr->Box(); gr->Surf(a); gr->Cont(a,"y");
-}
+// Sample functions
//-----------------------------------------------------------------------------
-void smgl_surf_caxis(mglGraph *gr) // caxis and the surface
+//-----------------------------------------------------------------------------
+//-----------------------------------------------------------------------------
+/*void smgl_surf3_rgbd(mglGraph *gr)
{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true);
- gr->SetRange('c',0,1); gr->Box(); gr->Surf(a);
-}
+ mglData c; mgls_prepare3d(&c);
+ gr->Rotate(40,60); gr->VertexColor(true);
+ gr->Box(); gr->Surf3(c,"bgrd");
+}*/
//-----------------------------------------------------------------------------
-void smgl_surf_cut(mglGraph *gr) // cutting
+void smgl_mirror(mglGraph *gr) // flag #
{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true);
- gr->SetRanges(mglPoint(-1,-1,0),mglPoint(1,1,1)); gr->SetCut(false);
- gr->Box(); gr->Surf(a);
+ gr->VertexColor(true); gr->TextureColor(false); // Let us use pre-lighting for this example
+ mglData a(30,40),x(30),y1(40),y2(40);
+ a.Modify("pi*(1-2*x)*exp(-4*y^2-4*(2*x-1)^2)");
+ x.Fill(-1,1); y1.Fill(0,1); y2.Fill(0,-1);
+
+ gr->Alpha(false); gr->Rotate(40,60);
+ gr->Light(true); gr->Box();
+ gr->Surf(x,y1,a,"r"); gr->Surf(x,y2,a,"b");
+ gr->VertexColor(false); gr->TextureColor(true); // set settings back
}
//-----------------------------------------------------------------------------
-void smgl_several_light(mglGraph *gr) // several light sources
+//=============================================================================
+struct mglSample /// Structure for list of samples
{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true);
- gr->AddLight(1,mglPoint(0,1,0),'c'); gr->AddLight(2,mglPoint(1,0,0),'y');
- gr->AddLight(3,mglPoint(0,-1,0),'m');
- gr->Box(); gr->Surf(a,"h");
-// gr->Light(1,false); gr->Light(2,false); gr->Light(3,false);
-}
+ const char *name;
+ void (*func)(mglGraph*);
+};
+extern mglSample samp[];
//-----------------------------------------------------------------------------
-void smgl_cutminmax2(mglGraph *gr) // CutMin CutMax example
+int mgl_cmd_smp(const void *a, const void *b)
{
- mglData c; mgls_prepare3d(&c);
- mglData v(10); v.Fill(-0.5,1);
- gr->Rotate(40,60); gr->Light(true);
- gr->VertexColor(false); gr->Compression(false);
- gr->SetCutBox(mglPoint(0,-1,-1), mglPoint(1,0,1.1));
- gr->Box(); gr->Surf3(-0.5,c);
- gr->ContF3(v,c,'x',-1); gr->ContF3(v,c,'y',-1);
- gr->ContF3(v,c,'z',0); gr->ContF3(v,c,'z',39);
+ const mglSample *aa = (const mglSample *)a;
+ const mglSample *bb = (const mglSample *)b;
+ return strcmp(aa->name, bb->name);
}
//-----------------------------------------------------------------------------
-void smgl_cutminmax(mglGraph *gr) // CutMin CutMax example
+static struct option longopts[] =
{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false); gr->Compression(false);
- gr->SetCutBox(mglPoint(0,-1,-1), mglPoint(1,0,1.1));
- gr->Box(); gr->Surf3(c);
-}
+ { "test", no_argument, &dotest, 1 },
+ { "srnd", no_argument, &srnd, 1 },
+ { "width", required_argument, NULL, 'w' },
+ { "height", required_argument, NULL, 'h' },
+ { "list", no_argument, NULL, 'l' },
+ { "kind", required_argument, NULL, 'k' },
+ { "thread", required_argument, NULL, 't' },
+ { "mini", no_argument, &mini, 1 },
+ { "big", no_argument, &big, 1 },
+ { "png", no_argument, &type, 0 },
+ { "eps", no_argument, &type, 1 },
+ { "svg", no_argument, &type, 2 },
+ { "solid", no_argument, &type, 3 },
+ { "jpeg", no_argument, &type, 4 },
+ { "idtf", no_argument, &type, 5 },
+ { "gif", no_argument, &type, 6 },
+ { "none", no_argument, &type, 7 },
+ { "bps", no_argument, &type, 8 },
+ { "u3d", no_argument, &type, 9 },
+ { "pdf", no_argument, &type, 10 },
+ { "help", no_argument, NULL, '?' },
+ { NULL, 0, NULL, 0 }
+};
//-----------------------------------------------------------------------------
-void smgl_surf3_cutoff(mglGraph *gr) // CutMin CutMax example
+void usage()
{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false); gr->Compression(false);
- gr->CutOff("(z>(x+0.5*y-1)^2-1) & (z>(x-0.5*y-1)^2-1)");
- gr->Box(); gr->Surf3(c);
-}
+ puts (
+ "-png - output png\n"
+ "-width=num - png picture width\n"
+ "-height=num - png picture height\n"
+ "-mini - png picture is 200x150\n"
+ "-big - png picture is 1920x1440\n"
+ "-idtf - output idtf\n"
+ "-u3d - output u3d\n"
+ "-pdf - output pdf\n"
+ "-eps - output EPS\n"
+ "-jpeg - output JPEG\n"
+ "-solid - output solid PNG\n"
+ "-svg - output SVG\n"
+ "-none - none output\n"
+ "-srnd - use the same random numbers in any run\n"
+ "-kind=name - produce only this picture"
+ "-thread=num - number of threads used"
+ "-test - perform test\n"
+ );
+};
//-----------------------------------------------------------------------------
-void smgl_boxplot(mglGraph *gr) // flow threads and density plot
+void save(mglGraph *gr,const char *name,const char *suf="")
{
- mglData a(10,7); a.Modify("(2*rnd-1)^3/2");
- gr->Box(); gr->BoxPlot(a); gr->Plot(a," ko");
+ // return;
+ char buf[128];
+ printf("%s ",name); fflush(stdout);
+ switch(type)
+ {
+ case 1: // EPS
+ sprintf(buf,"%s%s.eps",name,suf);
+ gr->WriteEPS(buf);
+ break;
+ case 2: // SVG
+ sprintf(buf,"%s%s.svg",name,suf);
+ gr->WriteSVG(buf); break;
+ case 3: // PNG
+ sprintf(buf,"%s%s.png",name,suf);
+ gr->WritePNG(buf,0,true); break;
+ case 4: // JPEG
+ sprintf(buf,"%s%s.jpg",name,suf);
+ gr->WriteJPEG(buf); break;
+ case 5: // IDTF
+ sprintf(buf,"%s%s.idtf",name,suf);
+ gr->WriteIDTF(buf); break;
+ case 6: // GIF
+ sprintf(buf,"%s%s.gif",name,suf);
+ gr->WriteGIF(buf); break;
+ case 7: // none
+ break;
+ case 8: // EPS to PNG
+ sprintf(buf,"%s%s.png",name,suf);
+ gr->WritePNG(buf,0,false);
+ break;
+ case 9: // U3D
+ sprintf(buf,"%s%s.u3d",name,suf);
+ //gr->WriteU3D(buf); break; // TODO: Add IDTF support
+ case 10: // PDF
+ sprintf(buf,"%s%s.pdf",name,suf);
+ //gr->WritePDF(buf); break; // TODO: Add IDTF support
+ default:// PNG (no alpha)
+ sprintf(buf,"%s%s.png",name,suf);
+ gr->WritePNG(buf,0,false); break;
+ }
}
//-----------------------------------------------------------------------------
int main(int argc,char **argv)
@@ -1706,9 +2022,9 @@ int main(int argc,char **argv)
gr = new mglGraph;
// if(type==5 || type==9 || type==10) { u3d.unrotate_flag = true; gr = &u3d; }
- if(mini) { gr->SetSize(200,133); suf = "_sm"; }
+ if(mini) { gr->SetSize(200,150); suf = "_sm"; }
else if(big)
- { gr->SetSize(1200,800); suf = "_lg"; }
+ { gr->SetSize(1920,1440); suf = "_lg"; }
else gr->SetSize(width,height);
if(dotest)
@@ -1746,127 +2062,91 @@ int main(int argc,char **argv)
}
//-----------------------------------------------------------------------------
mglSample samp[] = {
- {"2_axis", smgl_2_axis},
+ {"alpha", smgl_alpha},
{"area", smgl_area},
- {"area_2", smgl_area_2},
+ {"aspect", smgl_aspect},
{"axial", smgl_axial},
+ {"axis", smgl_axis},
{"barh", smgl_barh},
{"bars", smgl_bars},
- {"bars_2", smgl_bars_2},
- {"bars_a", smgl_bars_a},
- {"bars_f", smgl_bars_f},
{"belt", smgl_belt},
{"boxplot", smgl_boxplot},
+ {"box", smgl_box},
{"boxs", smgl_boxs},
{"candle", smgl_candle},
{"chart", smgl_chart},
{"cloud", smgl_cloud},
- {"color_schemes", smgl_color_schemes},
- {"colors", smgl_colors},
- {"column", smgl_column},
+ {"colorbar", smgl_colorbar},
+ {"combined", smgl_combined},
+ {"cones", smgl_cones},
{"cont", smgl_cont},
{"cont_xyz", smgl_cont_xyz},
{"conta", smgl_conta},
{"contd", smgl_contd},
{"contf", smgl_contf},
+ {"contf_xyz", smgl_contf_xyz},
{"contfa", smgl_contfa},
- {"contt", smgl_contt},
+ {"contv", smgl_contv},
// {"crust", smgl_crust}, // TODO: open after triangulation
- {"cutminmax", smgl_cutminmax},
- {"cutminmax2", smgl_cutminmax2},
+ {"curvcoor", smgl_curvcoor},
+ {"dat_diff", smgl_dat_diff},
+ {"dat_exta", smgl_dat_exta},
{"dens", smgl_dens},
{"dens_xyz", smgl_dens_xyz},
{"densa", smgl_densa},
{"dew", smgl_dew},
- {"dew2", smgl_dew2},
- {"dots", smgl_dots},
- {"drops", smgl_drops},
- {"envelop", smgl_envelop},
{"error", smgl_error},
{"fall", smgl_fall},
- {"fish", smgl_fish},
{"fit", smgl_fit},
{"flow", smgl_flow},
- {"flow3", smgl_flow3},
- {"flow_dens", smgl_flow_dens},
- {"fonts", smgl_fonts},
+ {"fog", smgl_fog},
+// {"fonts", smgl_fonts}, // TODO enable later
{"grad", smgl_grad},
+ {"hist", smgl_hist},
+ {"inplot", smgl_inplot},
+ {"label", smgl_label},
{"legend", smgl_legend},
{"loglog", smgl_loglog},
{"map", smgl_map},
{"mark", smgl_mark},
{"mesh", smgl_mesh},
- {"mesh_cont", smgl_mesh_cont},
{"mirror", smgl_mirror},
{"molecule", smgl_molecule},
- {"parser", smgl_parser}, // TODO: enable later
+ {"parser", smgl_parser},
{"pde", smgl_pde},
- {"pie_chart", smgl_pie_chart},
{"pipe", smgl_pipe},
- {"pipe2", smgl_pipe2},
- {"pipe3", smgl_pipe3},
{"plot", smgl_plot},
- {"quaternary", smgl_quaternary},
+ {"primitives", smgl_primitives},
{"qo2d", smgl_qo2d},
{"radar", smgl_radar},
{"region", smgl_region},
- {"region_2", smgl_region_2},
- {"ring_chart", smgl_ring_chart},
- {"sample1", smgl_sample1},
- {"sample2", smgl_sample2},
- {"sample3", smgl_sample3},
- {"sample4", smgl_sample4},
- {"sample5", smgl_sample5},
- {"sample6", smgl_sample6},
- {"sample7", smgl_sample7},
- {"sample8", smgl_sample8},
- {"sample9", smgl_sample9},
- {"samplea", smgl_samplea},
- {"sampleb", smgl_sampleb},
- {"samplec", smgl_samplec},
- {"sampled", smgl_sampled},
- {"samplee", smgl_samplee},
- {"semilog", smgl_semilog},
+ {"schemes", smgl_schemes},
{"several_light", smgl_several_light},
- {"sew", smgl_sew},
{"stem", smgl_stem},
{"step", smgl_step},
{"stereo", smgl_stereo},
{"stfa", smgl_stfa},
- {"stick", smgl_stick},
+ {"style", smgl_style},
{"surf", smgl_surf},
{"surf3", smgl_surf3},
- {"surf3_cutoff", smgl_surf3_cutoff},
{"surf3a", smgl_surf3a},
{"surf3c", smgl_surf3c},
- {"surf_alpha", smgl_surf_alpha},
- {"surf_caxis", smgl_surf_caxis},
- {"surf_cont", smgl_surf_cont},
- {"surf_cont_fog", smgl_surf_cont_fog},
- {"surf_cont_y", smgl_surf_cont_y},
- {"surf_cut", smgl_surf_cut},
- {"surf_fog", smgl_surf_fog},
- {"surf_sl", smgl_surf_sl},
{"surfa", smgl_surfa},
{"surfc", smgl_surfc},
+ {"tape", smgl_tape},
{"tens", smgl_tens},
{"ternary", smgl_ternary},
{"text", smgl_text},
{"textmark", smgl_textmark},
+ {"ticks", smgl_ticks},
{"tile", smgl_tile},
{"tiles", smgl_tiles},
{"torus", smgl_torus},
{"traj", smgl_traj},
{"tube", smgl_tube},
- {"tube_3d", smgl_tube_3d},
- {"tval", smgl_tval},
{"type0", smgl_type0},
{"type1", smgl_type1},
{"type2", smgl_type2},
{"vect", smgl_vect},
- {"vect3", smgl_vect3},
- {"vectc", smgl_vectc},
- {"vectc3", smgl_vectc3},
- {"vectl", smgl_vectl},
- {"vectl3", smgl_vectl3},
- {"", NULL}};
+ {"venn", smgl_venn},
+{"", NULL}};
diff --git a/examples/glut_example.cpp b/examples/glut_example.cpp
index 24ccd3d..b4d6c97 100644
--- a/examples/glut_example.cpp
+++ b/examples/glut_example.cpp
@@ -31,7 +31,7 @@ int main(int argc,char **argv)
{
char key = 0;
if(argc>1) key = argv[1][0]!='-' ? argv[1][0] : argv[1][1];
- else printf("You may specify argument '1', '2', '3' or 'd' for viewing examples of 1d, 2d, 3d or dual plotting");
+ else printf("You may specify argument '1', '2', '3' or 'd' for viewing examples of 1d, 2d, 3d or dual plotting\n");
const char *desc;
draw_func func;
diff --git a/examples/qt_example.cpp b/examples/qt_example.cpp
index 8101335..10fdcfd 100644
--- a/examples/qt_example.cpp
+++ b/examples/qt_example.cpp
@@ -18,8 +18,7 @@
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#include <stdio.h>
-#include "mgl/mgl.h"
-#include "mgl/qt.h"
+#include "mgl/window.h"
//-----------------------------------------------------------------------------
int test_wnd(mglGraph *gr);
int sample(mglGraph *gr);
@@ -36,8 +35,7 @@ void *mgl_qt_tmp(void *);
int main(int argc,char **argv)
{
#ifdef PTHREAD_SAMPLE
- mglGraphQT gr;
- gr.Window(argc,argv,NULL,"test",0,0); // create window
+ mglWindow gr(1,NULL,"test"); // create window
gr.ClfOnUpdate = false;
static pthread_t tmp;
pthread_create(&tmp, 0, mgl_qt_tmp, 0);
@@ -54,20 +52,20 @@ int main(int argc,char **argv)
}
return 0; // finish calculations and close the window
#else
- mglCanvasQT gr;
+ mglWindow *gr;
char key = 0;
if(argc>1 && argv[1][0]!='-') key = argv[1][0];
else printf("You may specify argument '1', '2', '3' or 'd' for viewing examples of 1d, 2d, 3d or dual plotting\n");
switch(key)
{
- case '1': gr.Window(argc,argv,sample_1,"1D plots"); break;
- case '2': gr.Window(argc,argv,sample_2,"2D plots"); break;
- case '3': gr.Window(argc,argv,sample_3,"3D plots"); break;
- case 'd': gr.Window(argc,argv,sample_d,"Dual plots"); break;
- case 't': gr.Window(argc,argv,test_wnd,"Testing"); break;
- default: gr.Window(argc,argv,sample,"Example of molecules"); break;
+ case '1': gr = new mglWindow(1,sample_1,"1D plots"); break;
+ case '2': gr = new mglWindow(1,sample_2,"2D plots"); break;
+ case '3': gr = new mglWindow(1,sample_3,"3D plots"); break;
+ case 'd': gr = new mglWindow(1,sample_d,"Dual plots"); break;
+ case 't': gr = new mglWindow(1,test_wnd,"Testing"); break;
+ default: gr = new mglWindow(1,sample,"Drop and waves"); break;
}
- mgl_qt_run(); return 0;
+ gr->Run(); return 0;
#endif
}
//-----------------------------------------------------------------------------
diff --git a/examples/wnd_samples.cpp b/examples/wnd_samples.cpp
index 95d5b22..a2856d2 100644
--- a/examples/wnd_samples.cpp
+++ b/examples/wnd_samples.cpp
@@ -37,7 +37,7 @@ mgl_set_test_mode(true);
gr->SubPlot(2,2,0);
gr->Rotate(60,70); gr->Ternary(2);
- gr->Axis();
+ gr->Axis();
gr->Box();
// gr->SetRotatedText(false);
gr->Label('t',"A",1); gr->Label('x',"B",1);
@@ -50,10 +50,10 @@ mgl_set_test_mode(true);
gr->Label('x',"x comp.");
gr->Label('y',"y comp.");
gr->Label('t',"t comp.");
-
+
gr->SubPlot(2,2,3);
gr->Rotate(60,70); gr->Ternary(0);
- gr->Axis();
+ gr->Axis();
gr->Box();
// gr->SetRotatedText(false);
gr->Label('t',"A",1); gr->Label('x',"X",1);
@@ -63,6 +63,15 @@ mgl_set_test_mode(true);
//-----------------------------------------------------------------------------
int sample(mglGraph *gr)
{
+ gr->Rotate(20,40);
+ gr->SetRanges(-2,2,-2,2,-1,3);
+ gr->FSurf("cos(2*pi*(x^2+y^2))/(x^2+y^2+1)^2/(x^2+y^2<4)");
+ gr->Drop(mglPoint(0,0,3),mglPoint(0,0,-1),0.7,"b");
+ return 0;
+}
+//-----------------------------------------------------------------------------
+int sample_m(mglGraph *gr)
+{
// gr->Rotate(0,0); gr->Axis(); gr->Box(); return 0;
// gr->Alpha(true); gr->Light(true);
@@ -364,14 +373,14 @@ int sample_3(mglGraph *gr)
gr->Puts(mglPoint(0,1.2,1),"Density at central slices");
gr->Rotate(40,60);
gr->Box(); gr->Axis();
- gr->Dens3(a,'x'); gr->Dens3(a,'y'); gr->Dens3(a,'z');
+ gr->Dens3(a,"x"); gr->Dens3(a); gr->Dens3(a,"z");
gr->EndFrame();
gr->NewFrame();
gr->Puts(mglPoint(0,1.2,1),"Contours at central slices");
gr->Rotate(40,60);
gr->Box(); gr->Axis();
- gr->Cont3(a,'x'); gr->Cont3(a,'y'); gr->Cont3(a,'z');
+ gr->Cont3(a,"x"); gr->Cont3(a); gr->Cont3(a,"z");
gr->EndFrame();
gr->NewFrame();
@@ -462,7 +471,7 @@ void mgls_prepare2d(mglData *a, mglData *b, mglData *v)
//-----------------------------------------------------------------------------
void mgls_prepare3d(mglData *a, mglData *b)
{
- register long i,j,k,n=60,m=50,l=40,i0;
+ register long i,j,k,n=61,m=50,l=40,i0;
if(a) a->Create(n,m,l); if(b) b->Create(n,m,l);
float x,y,z;
for(i=0;i<n;i++) for(j=0;j<m;j++) for(k=0;k<l;k++)
@@ -495,8 +504,15 @@ void mgls_prepare3v(mglData *ex, mglData *ey, mglData *ez)
for(i=0;i<n;i++) for(j=0;j<n;j++) for(k=0;k<n;k++)
{
x=2*i/(n-1.)-1; y=2*j/(n-1.)-1; z=2*k/(n-1.)-1; i0 = i+n*(j+k*n);
- r1 = pow(x*x+y*y+(z-0.3)*(z-0.3),1.5);
- r2 = pow(x*x+y*y+(z+0.3)*(z+0.3),1.5);
+/* r1 = 1./(x*x+y*y+z*z+0.01); r2=exp(-0.01/r1/r1)*r1;
+ ex->a[i0]=z*y*r2*r2;
+ ey->a[i0]=x*y*r2*r2+1;
+ ez->a[i0]=y*x*r2*r2;*/
+/* ex->a[i0]=3*z;
+ ey->a[i0]=1;
+ ez->a[i0]=-3*x;*/
+ r1 = pow(x*x+y*y+(z-0.3)*(z-0.3)+0.03,1.5);
+ r2 = pow(x*x+y*y+(z+0.3)*(z+0.3)+0.03,1.5);
ex->a[i0]=0.2*x/r1 - 0.2*x/r2;
ey->a[i0]=0.2*y/r1 - 0.2*y/r2;
ez->a[i0]=0.2*(z-0.3)/r1 - 0.2*(z+0.3)/r2;
diff --git a/include/Makefile.in b/include/Makefile.in
deleted file mode 100644
index d3bd7ac..0000000
--- a/include/Makefile.in
+++ /dev/null
@@ -1,522 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = include
-DIST_COMMON = $(am__nobase_include_HEADERS_DIST) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/config/autotroll.m4 \
- $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/mgl/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-SOURCES =
-DIST_SOURCES =
-am__nobase_include_HEADERS_DIST = mgl/fltk.h mgl/qt.h mgl/base_cf.h \
- mgl/opengl.h mgl/config.h mgl/data.h mgl/fit.h mgl/plot.h \
- mgl/vect.h mgl/base.h mgl/canvas.h mgl/define.h mgl/font.h \
- mgl/mgl.h mgl/other.h mgl/prim.h mgl/volume.h mgl/canvas_cf.h \
- mgl/cont.h mgl/eval.h mgl/mgl_cf.h mgl/parser.h mgl/surf.h \
- mgl/window.h
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
- $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
- *) f=$$p;; \
- esac;
-am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
-am__install_max = 40
-am__nobase_strip_setup = \
- srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
-am__nobase_strip = \
- for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
-am__nobase_list = $(am__nobase_strip_setup); \
- for p in $$list; do echo "$$p $$p"; done | \
- sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
- $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
- if (++n[$$2] == $(am__install_max)) \
- { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
- END { for (dir in files) print dir, files[dir] }'
-am__base_list = \
- sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
- sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
-am__installdirs = "$(DESTDIR)$(includedir)"
-HEADERS = $(nobase_include_HEADERS)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_CXXFLAGS = @AM_CXXFLAGS@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FLTK_FLAGS = @FLTK_FLAGS@
-FLTK_LIBS = @FLTK_LIBS@
-GL_LIBS = @GL_LIBS@
-GREP = @GREP@
-GSL_FLAGS = @GSL_FLAGS@
-GSL_LIBS = @GSL_LIBS@
-HAVE_SWIG = @HAVE_SWIG@
-HDF4_FLAGS = @HDF4_FLAGS@
-HDF4_LIBS = @HDF4_LIBS@
-HDF5_FLAGS = @HDF5_FLAGS@
-HDF5_LIBS = @HDF5_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-JPEG_FLAGS = @JPEG_FLAGS@
-JPEG_LIBS = @JPEG_LIBS@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
-MGL_AGE = @MGL_AGE@
-MGL_CURRENT = @MGL_CURRENT@
-MGL_RELEASE = @MGL_RELEASE@
-MGL_REVISION = @MGL_REVISION@
-MKDIR_P = @MKDIR_P@
-MOC = @MOC@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OCTAVE = @OCTAVE@
-OCTAVE_ARCH = @OCTAVE_ARCH@
-OCTAVE_INCFLAGS = @OCTAVE_INCFLAGS@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PNG_LIBS = @PNG_LIBS@
-PTHREAD_FLAGS = @PTHREAD_FLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-PYTHON = @PYTHON@
-PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
-PYTHON_HEADERS = @PYTHON_HEADERS@
-PYTHON_PLATFORM = @PYTHON_PLATFORM@
-PYTHON_PREFIX = @PYTHON_PREFIX@
-PYTHON_VERSION = @PYTHON_VERSION@
-QMAKE = @QMAKE@
-QT_CFLAGS = @QT_CFLAGS@
-QT_CPPFLAGS = @QT_CPPFLAGS@
-QT_CXXFLAGS = @QT_CXXFLAGS@
-QT_DEFINES = @QT_DEFINES@
-QT_INCPATH = @QT_INCPATH@
-QT_LDFLAGS = @QT_LDFLAGS@
-QT_LFLAGS = @QT_LFLAGS@
-QT_LIBS = @QT_LIBS@
-QT_PATH = @QT_PATH@
-QT_VERSION = @QT_VERSION@
-QT_VERSION_MAJOR = @QT_VERSION_MAJOR@
-RANLIB = @RANLIB@
-RCC = @RCC@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-TMPDIR = @TMPDIR@
-U3D_LIBS = @U3D_LIBS@
-UIC = @UIC@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-lt_ECHO = @lt_ECHO@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-pkgpyexecdir = @pkgpyexecdir@
-pkgpythondir = @pkgpythondir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-pyexecdir = @pyexecdir@
-pythondir = @pythondir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
- at USE_FLTK_TRUE@FLTK_INC = mgl/fltk.h
- at USE_QT_TRUE@QT_INC = mgl/qt.h
-nobase_include_HEADERS = $(FLTK_INC) $(QT_INC) \
-mgl/base_cf.h mgl/opengl.h mgl/config.h mgl/data.h \
-mgl/fit.h mgl/plot.h mgl/vect.h \
-mgl/base.h mgl/canvas.h mgl/define.h mgl/font.h mgl/mgl.h \
-mgl/other.h mgl/prim.h mgl/volume.h \
-mgl/canvas_cf.h mgl/cont.h mgl/eval.h mgl/mgl_cf.h \
-mgl/parser.h mgl/surf.h mgl/window.h
-
-all: all-am
-
-.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu include/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-install-nobase_includeHEADERS: $(nobase_include_HEADERS)
- @$(NORMAL_INSTALL)
- test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
- @list='$(nobase_include_HEADERS)'; test -n "$(includedir)" || list=; \
- $(am__nobase_list) | while read dir files; do \
- xfiles=; for file in $$files; do \
- if test -f "$$file"; then xfiles="$$xfiles $$file"; \
- else xfiles="$$xfiles $(srcdir)/$$file"; fi; done; \
- test -z "$$xfiles" || { \
- test "x$$dir" = x. || { \
- echo "$(MKDIR_P) '$(DESTDIR)$(includedir)/$$dir'"; \
- $(MKDIR_P) "$(DESTDIR)$(includedir)/$$dir"; }; \
- echo " $(INSTALL_HEADER) $$xfiles '$(DESTDIR)$(includedir)/$$dir'"; \
- $(INSTALL_HEADER) $$xfiles "$(DESTDIR)$(includedir)/$$dir" || exit $$?; }; \
- done
-
-uninstall-nobase_includeHEADERS:
- @$(NORMAL_UNINSTALL)
- @list='$(nobase_include_HEADERS)'; test -n "$(includedir)" || list=; \
- $(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(includedir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(includedir)" && rm -f $$files
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(HEADERS)
-installdirs:
- for dir in "$(DESTDIR)$(includedir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-am
- -rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am: install-nobase_includeHEADERS
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-nobase_includeHEADERS
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool ctags distclean distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-nobase_includeHEADERS \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-nobase_includeHEADERS
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/include/mgl/opengl.h b/include/mgl/addon.h
similarity index 52%
copy from include/mgl/opengl.h
copy to include/mgl/addon.h
index bb123cf..9589f82 100644
--- a/include/mgl/opengl.h
+++ b/include/mgl/addon.h
@@ -1,7 +1,7 @@
-/***************************************************************************
- * opengl.h is part of Math Graphic Library
- * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
- * *
+/***************************************************************************
+ * addon.h is part of Math Graphic Library
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
+ * *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU Library General Public License as *
* published by the Free Software Foundation; either version 3 of the *
@@ -17,52 +17,51 @@
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
-#ifndef MGL_CANVAS_GL_H
-#define MGL_CANVAS_GL_H
-/*****************************************************************************/
+#ifndef _MGL_ADDON_H_
+#define _MGL_ADDON_H_
+/***************************************************************************/
+#include <stdio.h>
+#ifdef __cplusplus
+/***************************************************************************/
+#include <complex>
+#ifndef dual
+#define dual std::complex<double>
+#endif
+//---------------------------------------------------------------------------
+dual mgl_ipowc(dual x,int n);
+dual expi(dual a);
+dual expi(double a);
+//---------------------------------------------------------------------------
+/// Explicit scheme for 1 step of axial diffraction
+bool mgl_difr_axial(dual *a, int n, dual q, int Border,dual *b, dual *d, int kk, double di);
+/// Explicit scheme for 1 step of plane diffraction
+bool mgl_difr_grid(dual *a,int n,dual q,int Border,dual *b,dual *d,int kk);
+/***************************************************************************/
+extern "C" {
+#endif
+/***************************************************************************/
+double mgl_gauss_rnd();
+void mgl_fft_freq(double *freq,unsigned nn);
+/***************************************************************************/
+/** Remove double spaces from the string */
+void mgl_strcls(char *str);
+/** Get position of substring or return -1 if not found */
+int mgl_strpos(const char *str,char *fnd);
+/** Get position of symbol or return -1 if not found */
+int mgl_chrpos(const char *str,char fnd);
+/***************************************************************************/
+/** Get uncommented string from file (NOTE: it is not thread safe!!!) */
+char *mgl_fgetstr(FILE *fp);
+/** Check if symbol denote true */
+bool mgl_istrue(char ch);
+/** Print test message */
+void mgl_test(const char *str, ...);
+/** Print info message */
+void mgl_info(const char *str, ...);
+/** Locate next data block (block started by -----) */
+FILE *mgl_next_data(const char *fname,int p);
+/***************************************************************************/
#ifdef __cplusplus
-#include "mgl/canvas.h"
-
-class mglCanvasGL : public mglCanvas
-{
-public:
- mglCanvasGL();
- ~mglCanvasGL();
-
- void SetQuality(int =0) { Quality=2; }
- void Finish();
- void SetSize(int ,int ) {}
- void View(float tetX,float tetY,float tetZ);
- int NewFrame();
- void EndFrame();
-
- bool Alpha(bool enable);
- void Fog(float d, float dz=0.25);
- bool Light(bool enable);
- void Light(int n, bool enable);
- void AddLight(int n,mglPoint p, char c='w', float bright=0.5, bool infty=true, float ap=0);
- void Clf(mglColor Back=WC);
-
-protected:
- void line_draw(long p1, long p2, mglDrawReg *d);
- void trig_draw(long p1, long p2, long p3, bool anorm, mglDrawReg *d);
- void quad_draw(long p1, long p2, long p3, long p4, mglDrawReg *d);
- void pnt_draw(long p, mglDrawReg *d);
-
- unsigned char **GetRGBLines(long &w, long &h, unsigned char *&f, bool solid=true);
- void LightScale();
- void set_pen(unsigned style,float width);
};
-extern "C" {
-#endif
-/*****************************************************************************/
-HMGL mgl_create_graph_gl();
-/*****************************************************************************/
-uintptr_t mgl_create_graph_gl_();
-/*****************************************************************************/
-#ifdef __cplusplus
-}
#endif
-/*****************************************************************************/
#endif
-
diff --git a/include/mgl/base.h b/include/mgl/base.h
index 96b7cfd..bc7b77f 100644
--- a/include/mgl/base.h
+++ b/include/mgl/base.h
@@ -39,19 +39,19 @@
class mglDataA
{
public:
- virtual float v(long i,long j=0,long k=0) const = 0;
- virtual float vthr(long i) const = 0;
+ virtual mreal v(long i,long j=0,long k=0) const = 0;
+ virtual mreal vthr(long i) const = 0;
virtual long GetNx() const = 0;
virtual long GetNy() const = 0;
virtual long GetNz() const = 0;
inline long GetNN() const { return GetNx()*GetNy()*GetNz(); }
virtual float Maximal() const = 0;
virtual float Minimal() const = 0;
- virtual float dvx(long i,long j=0,long k=0) const = 0;
+ virtual mreal dvx(long i,long j=0,long k=0) const = 0;
// { return i>0 ? (i<GetNx()-1 ? (v(i+1,j,k)-v(i-1,j,k))/2 : v(i,j,k)-v(i-1,j,k)) : v(1,j,k)-v(0,j,k); }
- virtual float dvy(long i,long j=0,long k=0) const = 0;
+ virtual mreal dvy(long i,long j=0,long k=0) const = 0;
// { return j>0 ? (j<GetNy()-1 ? (v(i,j+1,k)-v(i,j-1,k))/2 : v(i,j,k)-v(i,j-1,k)) : v(i,1,k)-v(i,0,k); }
- virtual float dvz(long i,long j=0,long k=0) const = 0;
+ virtual mreal dvz(long i,long j=0,long k=0) const = 0;
// { return k>0 ? (k<GetNz()-1 ? (v(i,j,k+1)-v(i,j,k-1))/2 : v(i,j,k)-v(i,j,k-1)) : v(i,j,1)-v(i,j,0); }
};
//-----------------------------------------------------------------------------
@@ -67,14 +67,52 @@ inline mglPoint GetY(const mglDataA &y, int i, int j, int k=0)
inline mglPoint GetZ(const mglDataA &z, int i, int j, int k=0)
{ return GetZ(&z,i,j,k); }
//-----------------------------------------------------------------------------
+/// Structure for simplest primitives
+struct mglPrim
+{
+ // NOTE: n4 is used as mark; n3 -- as pen style for type=0,1,4
+ // NOTE: n3 is used as position of txt,font in Ptxt for type=6
+ long n1,n2,n3,n4; ///< coordinates of corners
+ int type; ///< primitive type (0-point, 1-line, 2-trig, 3-quad, 4-glyph, 6-text)
+ int id; ///< object id
+ float z; ///< z-position
+ float s; ///< size (if applicable) or fscl
+ float w; ///< width (if applicable) or ftet
+ float p;
+
+ mglPrim(int t=0) { n1=n2=n3=n4=id=0; z=s=w=p=0; type = t; }
+};
+bool operator<(const mglPrim &a,const mglPrim &b);
+bool operator>(const mglPrim &a,const mglPrim &b);
+//-----------------------------------------------------------------------------
+/// Structure for group of primitives
+struct mglGroup
+{
+ std::vector<long> p;///< list of primitives (not filled!!!)
+ int Id; ///< Current list of primitives
+ std::string Lbl; ///< Group label
+ mglGroup(const char *lbl="", int id=0) { Lbl=lbl; Id=id; }
+};
+//-----------------------------------------------------------------------------
+/// Structure for text label
+struct mglText
+{
+ std::wstring text;
+ std::string stl;
+ float val;
+ mglText(const wchar_t *txt=0, const char *fnt=0, float v=0) { text=txt; stl=fnt; val=v; }
+ mglText(const std::wstring &txt, float v=0) { text=txt; val=v; }
+};
+//-----------------------------------------------------------------------------
/// Structure for internal point represenatation
struct mglPnt
{
+ float xx,yy,zz; // original coordinates
float x,y,z; // coordinates
float c,t; // index in color scheme
float u,v,w; // normales
float r,g,b,a; // RGBA color
- mglPnt() { x=y=z=c=t=u=v=w=r=g=b=a=0; }
+ mglPnt() { xx=yy=zz=x=y=z=c=t=u=v=w=r=g=b=a=0; }
};
inline mglPnt operator+(const mglPnt &a, const mglPnt &b)
{ mglPnt c;
@@ -115,6 +153,7 @@ const mglColor NC(-1,-1,-1);
const mglColor BC( 0, 0, 0);
const mglColor WC( 1, 1, 1);
const mglColor RC( 1, 0, 0);
+long mgl_have_color(const char *stl);
//-----------------------------------------------------------------------------
/// Structure for color ID
struct mglColorID
@@ -131,10 +170,13 @@ public:
mglBase();
virtual ~mglBase();
+ bool Stop; ///< Flag that execution should be terminated.
mglPoint Min; ///< Lower edge of bounding box for graphics.
mglPoint Max; ///< Upper edge of bounding box for graphics.
- char *Message; ///< Buffer for receiving messages
+ std::string Mess; ///< Buffer for receiving messages
int ObjId; ///< object id for mglPrim
+ std::vector<mglGroup> Grp; ///< List of groups with names -- need for export
+ std::string PlotId; ///< Id of plot for saving filename (in GLUT window for example)
float CDef; ///< Default (current) color in texture
float AlphaDef; ///< Default value of alpha channel (transparency)
@@ -155,16 +197,16 @@ public:
void SetRanges(mglPoint v1, mglPoint v2);
/// Set values of mglGraph::Cmin and mglGraph::Cmax as minimal and maximal values of data a
void CRange(const mglDataA &a, bool add = false, float fact=0);
- inline void CRange(float v1,float v2) { Min.c=v1; Max.c=v2; RecalcCRange(); }
+ inline void CRange(float v1,float v2) { if(v1!=v2) {Min.c=v1; Max.c=v2; RecalcCRange();} }
/// Set values of mglGraph::Min.x and mglGraph::Max.x as minimal and maximal values of data a
void XRange(const mglDataA &a, bool add = false, float fact=0);
- inline void XRange(float v1,float v2) { Min.x=v1; Max.x=v2; RecalcBorder(); }
+ inline void XRange(float v1,float v2) { if(v1!=v2) {Min.x=v1; Max.x=v2; RecalcBorder();} }
/// Set values of mglGraph::Min.x and mglGraph::Max.x as minimal and maximal values of data a
void YRange(const mglDataA &a, bool add = false, float fact=0);
- inline void YRange(float v1,float v2) { Min.y=v1; Max.y=v2; RecalcBorder(); }
+ inline void YRange(float v1,float v2) { if(v1!=v2) {Min.y=v1; Max.y=v2; RecalcBorder();} }
/// Set values of mglGraph::Min.x and mglGraph::Max.x as minimal and maximal values of data a
void ZRange(const mglDataA &a, bool add = false, float fact=0);
- inline void ZRange(float v1,float v2) { Min.z=v1; Max.z=v2; RecalcBorder(); }
+ inline void ZRange(float v1,float v2) { if(v1!=v2) {Min.z=v1; Max.z=v2; RecalcBorder();} }
/// Set ranges for automatic variables
void SetAutoRanges(float x1, float x2, float y1=0, float y2=0, float z1=0, float z2=0, float c1=0, float c2=0);
/// Set axis origin
@@ -172,8 +214,6 @@ public:
{ Org=mglPoint(x0,y0,z0,c0); }
/// Save ranges into internal variable and put parsed
float SaveState(const char *opt);
- /// Return previous value of SaveState()
- inline float PrevValue() { return prev_val; };
/// Load ranges from internal variable
void LoadState();
@@ -193,17 +233,25 @@ public:
{ CutMin=mglPoint(x1,y1,z1); CutMax=mglPoint(x2,y2,z2); }
inline void SetCutBox(mglPoint v1, mglPoint v2) { CutMin=v1; CutMax=v2; }
+ /// Set the using of light on/off.
+ virtual bool Light(bool enable)
+ { bool t=get(MGL_ENABLE_LIGHT); set(enable,MGL_ENABLE_LIGHT); return t; }
/// Set ambient light brightness
virtual void SetAmbient(float bright=0.5);
+ /// Use diffusive light (only for local light sources)
+ inline void SetDifLight(bool dif) { set(dif,MGL_DIFFUSIVE); }
+ /// Set the transparency on/off.
+ virtual bool Alpha(bool enable)
+ { bool t=get(MGL_ENABLE_ALPHA); set(enable,MGL_ENABLE_ALPHA); return t; }
/// Set default value of alpha-channel
inline void SetAlphaDef(float val) { AlphaDef=val; };
/// Set default palette
inline void SetPalette(const char *colors)
- { Txt[0].Set((colors && *colors)?colors:MGL_DEF_PAL,-1); }
+ { Txt[0].Set(mgl_have_color(colors)?colors:MGL_DEF_PAL,-1); }
inline long GetNumPal(long id) { return Txt[abs(id)/256].n; }
/// Set default color scheme
inline void SetDefScheme(const char *colors)
- { Txt[1].Set((colors && *colors)?colors:"BbcyrR"); }
+ { Txt[1].Set(mgl_have_color(colors)?colors:"BbcyrR"); }
/// Set number of mesh lines
inline void SetMeshNum(int val) { MeshNum=val; };
@@ -221,6 +269,8 @@ public:
virtual void StartAutoGroup (const char *)=0;
void StartGroup(const char *name, int id);
virtual void EndGroup()=0; // { LoadState(); }
+ /// Highlight next group
+ inline void Highlight() { set(MGL_HIGHLIGHT); }
/// Set FontSize by size in pt and picture DPI (default is 16 pt for dpi=72)
virtual void SetFontSizePT(float pt, int dpi=72){ FontSize = pt*27.f/dpi; }
@@ -257,23 +307,37 @@ public:
/// Set to use or not text rotation
inline void SetTickSkip(bool val) { set(val,MGL_TICKS_SKIP); }
+ /// Add string to legend
+ void AddLegend(const char *text,const char *style);
+ void AddLegend(const wchar_t *text,const char *style);
+ /// Clear saved legend string
+ inline void ClearLegend() { Leg.clear(); }
+
/// Set plot quality
virtual void SetQuality(int qual=MGL_DRAW_NORM) { Quality=qual; }
inline int GetQuality() { return Quality; }
// ~~~~~~~~~~~~~~~~~~~~~~ Developer functions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- // NOTE! Following 3 functions are NOT thread-safe!!!
/// Add point to the pntN and return its position
long AddPnt(mglPoint p, float c=-1, mglPoint n=mglPoint(NAN), float a=-1, int scl=1);
long CopyNtoC(long k, float c);
- long CopyProj(long from, mglPoint p, mglPoint n); // NOTE: this is not-thread-safe!!!
+ long CopyProj(long from, mglPoint p, mglPoint n);
virtual void Reserve(long n); ///< Allocate n-cells for pntC and return current position
+ /// Set to reduce accuracy of points (to reduc size of output files)
+ inline void SetReduceAcc(bool val) { set(val, MGL_REDUCEACC); }
// inline long GetPos() { return Pnt.size()-1; }
- inline mglPoint GetPnt(long i)
+ inline mglPoint GetPntP(long i)
{ const mglPnt &p=Pnt[i]; return mglPoint(p.x,p.y,p.z); }
inline float GetClrC(long i) { return Pnt[i].c; }
inline long GetPntNum() { return Pnt.size(); }
+ inline mglPnt GetPnt(long i) { return Pnt[i]; }
+ inline mglPrim &GetPrm(long i) { return Prm[i]; }
+ inline long GetPrmNum() { return Prm.size(); }
+ inline mglText GetPtx(long i) { return Ptx[i]; }
+ inline long GetPtxNum() { return Ptx.size(); }
+ inline mglTexture GetTxt(long i){ return Txt[i]; }
+ inline long GetTxtNum() { return Txt.size(); }
/// Scale coordinates and cut off some points
virtual bool ScalePoint(mglPoint &p, mglPoint &n, bool use_nan=true);
@@ -283,7 +347,7 @@ public:
/// Get color depending on single variable z, which should be scaled if scale=true
inline float GetC(long s,float z,bool scale = true)
- { return s+(scale?GetA(z):z); }
+ { return s+(scale?GetA(z):(z>0?z/MGL_FLT_EPS:0)); }
/// Get alpha value depending on single variable \a a
float GetA(float a);
/// Set pen/palette
@@ -302,8 +366,10 @@ public:
virtual void trig_plot(long p1, long p2, long p3)=0;
virtual void quad_plot(long p1, long p2, long p3, long p4)=0;
virtual void Glyph(float x, float y, float f, int style, long icode, float col)=0;
- virtual float text_plot(long p,const wchar_t *text,const char *fnt,float size=-1,float sh=0,float col=-('k'))=0;
+ virtual float text_plot(long p,const wchar_t *text,const char *fnt,float size=-1,float sh=0,float col=-('k'),bool rot=true)=0;
void vect_plot(long p1, long p2, float s=1);
+ inline float mark_size() { return MarkSize*font_factor; }
+ inline char last_color() { return *last_style; }
protected:
mglPoint FMin; ///< Actual lower edge after transformation formulas.
@@ -311,15 +377,19 @@ protected:
mglPoint Org; ///< Center of axis cross section.
int WarnCode; ///< Warning code
std::vector<mglPnt> Pnt; ///< Internal points
+ std::vector<mglPrim> Prm; ///< Primitives (lines, triangles and so on) -- need for export
+ std::vector<mglPrim> Sub; ///< InPlot regions {n1=x1,n2=x2,n3=y1,n4=y2,id}
+ std::vector<mglText> Ptx; ///< Text labels for mglPrim
+ std::vector<mglText> Leg; ///< Text labels for legend
+ std::vector<mglTexture> Txt;///< Pointer to textures
#ifdef HAVE_PTHREAD
- pthread_mutex_t mutexPnt, mutexTxt;
+ pthread_mutex_t mutexPnt, mutexTxt, mutexLeg;
#endif
int TernAxis; ///< Flag that Ternary axis is used
unsigned PDef; ///< Pen bit mask
float pPos; ///< Current position in pen mask
float PenWidth; ///< Pen width for further line plotting (must be >0 !!!)
- std::vector<mglTexture> Txt; ///< Pointer to textures
// long numT; ///< Number of textures
float AmbBr; ///< Default ambient light brightness
@@ -345,9 +415,10 @@ protected:
private:
mglPoint MinS; ///< Saved lower edge of bounding box for graphics.
mglPoint MaxS; ///< Saved upper edge of bounding box for graphics.
- float MSS, ASS, FSS, ADS, MNS, CSS, LSS; ///< Saved state
+ float MSS, ASS, FSS, ADS, MNS, LSS; ///< Saved state
+ long CSS; ///< Saved flags
bool saved; ///< State is saved
- float prev_val; ///< previous value or zero (if no one)
+ std::string leg_str;///< text to be save in legend
mglPoint CutMin; ///< Lower edge of bounding box for cut off.
mglPoint CutMax; ///< Upper edge of bounding box for cut off.
diff --git a/include/mgl/base_cf.h b/include/mgl/base_cf.h
index 31d525a..b00492a 100644
--- a/include/mgl/base_cf.h
+++ b/include/mgl/base_cf.h
@@ -27,17 +27,20 @@ extern "C" {
/*****************************************************************************/
int mgl_get_warn(HMGL gr);
void mgl_set_warn(HMGL gr, int code, const char *text);
-void mgl_buf_warn(HMGL gr, char *buf);
+const char *mgl_get_mess(HMGL gr);
long mgl_use_graph(HMGL gr, int inc);
void mgl_start_group(HMGL gr, const char *);
void mgl_end_group(HMGL gr);
+void mgl_highlight(HMGL gr);
void mgl_set_palette(HMGL gr, const char *colors);
void mgl_set_alpha_default(HMGL graph, float alpha);
void mgl_set_bar_width(HMGL graph, float width);
void mgl_set_meshnum(HMGL graph, int num);
void mgl_set_ambbr(HMGL gr, float i);
+void mgl_set_light_dif(HMGL gr, int enable);
+void mgl_set_rdc_acc(HMGL graph, int reduce);
void mgl_set_cut(HMGL graph, int cut);
void mgl_set_cut_box(HMGL gr, float x1,float y1,float z1,float x2,float y2,float z2);
void mgl_set_ranges(HMGL graph, float x1, float x2, float y1, float y2, float z1, float z2);
@@ -72,6 +75,7 @@ void mgl_set_warn_(uintptr_t *gr, int *code, const char *text,int);
long mgl_use_graph_(uintptr_t *gr, int *inc);
void mgl_start_group_(uintptr_t *gr, const char *,int);
void mgl_end_group_(uintptr_t *gr);
+void mgl_highlight_(uintptr_t *gr);
void mgl_set_palette_(uintptr_t *gr, const char *colors, int);
void mgl_set_pal_color_(uintptr_t *graph, int *n, float *r, float *g, float *b);
@@ -80,7 +84,9 @@ void mgl_set_alpha_default_(uintptr_t *graph, float *alpha);
void mgl_set_bar_width_(uintptr_t *graph, float *width);
void mgl_set_meshnum_(uintptr_t *graph, int *num);
void mgl_set_ambbr_(uintptr_t *gr, float *i);
+void mgl_set_light_dif_(uintptr_t *graph, int *enable);
+void mgl_set_rdc_acc_(uintptr_t *graph, int *reduce);
void mgl_set_cut_(uintptr_t *graph, int *cut);
void mgl_set_cut_box_(uintptr_t *gr, float *x1,float *y1,float *z1,float *x2,float *y2,float *z2);
void mgl_set_ranges_(uintptr_t *graph, float *x1, float *x2, float *y1, float *y2, float *z1, float *z2);
diff --git a/include/mgl/canvas.h b/include/mgl/canvas.h
index c6e83f3..165064b 100644
--- a/include/mgl/canvas.h
+++ b/include/mgl/canvas.h
@@ -31,50 +31,15 @@
struct GifFileType;
#endif
//-----------------------------------------------------------------------------
-/// Structure for simplest primitives
-struct mglPrim
-{
- // NOTE: n4 is used as mark; n3 -- as pen style for type=0,1,4
- // NOTE: n3 is used as position of txt,font in Ptxt for type=6
- long n1,n2,n3,n4; ///< coordinates of corners
- int type; ///< primitive type (0-point, 1-line, 2-trig, 3-quad, 4-glyph, 5-arrow, 6-text)
- int id; ///< object id
- float z; ///< z-position
- float s; ///< size (if applicable) or fscl
- float w; ///< width (if applicable) or ftet
- float p;
-
- mglPrim(int t=0) { n1=n2=n3=n4=id=0; z=s=w=p=0; type = t; }
-};
-bool operator<(const mglPrim &a,const mglPrim &b);
-bool operator>(const mglPrim &a,const mglPrim &b);
-//-----------------------------------------------------------------------------
/// Structure for transformation matrix
struct mglMatrix
{
float b[9];
float x,y,z,pf;
mglMatrix() { clear(); }
- inline void clear() { x=y=z=pf=0; memset(b,0,9*sizeof(float)); }
-};
-//-----------------------------------------------------------------------------
-/// Structure for group of primitives
-struct mglGroup
-{
- std::vector<long> p;///< list of primitives (not filled!!!)
- int Id; ///< Current list of primitives
- std::string Lbl; ///< Group label
- mglGroup(const char *lbl="", int id=0) { Lbl=lbl; Id=id; }
-};
-//-----------------------------------------------------------------------------
-/// Structure for text label
-struct mglText
-{
- std::wstring text;
- std::string stl;
- float val;
- mglText(const wchar_t *txt=0, const char *fnt=0, float v=0) { text=txt; stl=fnt; val=v; }
- mglText(const std::wstring &txt, float v=0) { text=txt; val=v; }
+ inline void clear() { x=y=z=pf=0; memset(b,0,9*sizeof(float)); b[0]=b[4]=b[8]=1; }
+ inline mglMatrix &operator=(mglMatrix &a)
+ { x=a.x; y=a.y; z=a.z; pf=a.pf; memcpy(b,a.b,9*sizeof(float)); return *this; }
};
//-----------------------------------------------------------------------------
/// Structure for drawing axis and ticks
@@ -98,7 +63,9 @@ struct mglAxis
mglPoint dir; ///< Axis direction
mglPoint a,b; ///< Directions of over axis
mglPoint org;
- float v0,v1,v2; ///< Center of axis cross section and its range.
+ float v0; ///< Center of axis cross section
+ float v1; ///< Minimal axis range.
+ float v2; ///< Maximal axis range.
float o; ///< Point of starting ticks numbering (if NAN then Org is used).
int f; ///< Flag 0x1 - time, 0x2 - manual, 0x4 - fixed dv
std::vector<mglText> txt; ///< Axis labels
@@ -108,39 +75,58 @@ struct mglAxis
/// Structure for light source
struct mglLight
{
- mglLight() { n=i=false; a=b=0; }
+ mglLight() { n=false; a=b=0; }
bool n; ///< Availability of light sources
- bool i; ///< Infinity/local position of light sources
- mglPoint r; ///< Position of light sources
- mglPoint p; ///< Actual position of light sources (filled by LightScale() function)
+ mglPoint d; ///< Direction of light sources
+ mglPoint r; ///< Position of light sources (NAN for infinity)
+ mglPoint q; ///< Actual position of light sources (filled by LightScale() function)
+ mglPoint p; ///< Actual direction of light sources (filled by LightScale() function)
float a; ///< Aperture of light sources
float b; ///< Brightness of light sources
mglColor c; ///< Color of light sources
};
//-----------------------------------------------------------------------------
-/// Structure for light source
class mglCanvas;
+/// Structure for light source
struct mglDrawReg
{
int x1,x2,y1,y2;
void set(mglCanvas *gr, int nx, int ny, int m);
};
//-----------------------------------------------------------------------------
+/// Structure contains everything for drawing
+struct mglDrawDat
+{
+ std::vector<mglGroup> Grp; ///< List of groups with names -- need for export
+ std::vector<mglPnt> Pnt; ///< Internal points
+ std::vector<mglPrim> Prm; ///< Primitives (lines, triangles and so on) -- need for export
+ std::vector<mglPrim> Sub; ///< InPlot regions {n1=x1,n2=x2,n3=y1,n4=y2,id}
+ std::vector<mglText> Ptx; ///< Text labels for mglPrim
+ std::vector<mglText> Leg; ///< Text labels for legend
+ std::vector<mglTexture> Txt;///< Pointer to textures
+};
+//-----------------------------------------------------------------------------
/// Class contains all functionality for creating different mathematical plots
class mglCanvas : public mglBase
{
friend struct mglPrim;
public:
+using mglBase::Light;
mglPoint LastMousePos; ///< Last mouse position
- std::string PlotId; ///< Id of plot for saving filename (in GLUT window for example)
mglCanvas(int w=800, int h=600);
virtual ~mglCanvas();
/// Set default parameter for plotting
void DefaultPlotParam();
- /// Set angle of view indepently from mglCanvas::Rotate().
+
+ /// Set angle of view indepently from mglCanvas::Rotate()
virtual void View(float tetx,float tetz,float tety=0);
+ /// Zoom in or zoom out (if Zoom(0, 0, 1, 1)) a part of picture
+ virtual void Zoom(float x1, float y1, float x2, float y2);
+ /// Restore image after View() and Zoom()
+ virtual void Restore() { Bp.clear(); }
+
/// Clear transformation matrix.
inline void Identity(bool rel=false) { InPlot(0,1,0,1,rel); }
/// Push transformation matrix into stack
@@ -148,22 +134,18 @@ public:
/// Set PlotFactor
inline void SetPlotFactor(float val)
{ if(val<=0) {B.pf=1.55; set(MGL_AUTO_FACTOR);} else {B.pf=val; clr(MGL_AUTO_FACTOR);} }
+ /// Get PlotFactor
+ inline float GetPlotFactor() { return B.pf; }
/// Pop transformation matrix from stack
inline void Pop() { B = stack.back(); stack.pop_back(); }
/// Clear up the frame
virtual void Clf(mglColor back=WC);
- /// Put further plotting in some region of whole frame surface.
- void SubPlot(int nx, int ny, int m, float dx=0, float dy=0);
- void SubPlot(int nx, int ny, int m, const char *style);
- /// Like SubPlot bot "join" several cells
- void MultiPlot(int nx,int ny,int m, int dx, int dy, const char *style);
- /// Put further plotting in column cell of previous subplot
- void ColumnPlot(int num, int i, float d=0);
/// Put further plotting in cell of stick rotated on angles tet, phi
void StickPlot(int num, int i, float tet, float phi);
/// Put further plotting in some region of whole frame surface.
void InPlot(float x1,float x2,float y1,float y2,bool rel=true);
+ void InPlot(float x1,float x2,float y1,float y2, const char *style);
/// Add title for current subplot/inplot
void Title(const char *title,const char *stl="#",float size=-2);
void Title(const wchar_t *title,const char *stl="#",float size=-2);
@@ -174,26 +156,30 @@ public:
/// Rotate a further plotting around vector {x,y,z}.
void RotateN(float Tet,float x,float y,float z);
/// Set perspective (in range [0,1)) for plot. Set to zero for switching off.
- void Perspective(float a);
+ void Perspective(float a) { Bp.pf = fabs(a); }
/// Set size of frame in pixels. Normally this function is called internaly.
virtual void SetSize(int w,int h);
/// Get ratio (float width)/(float height).
float GetRatio();
+ /// Get bitmap data prepared for saving to file
+ virtual unsigned char **GetRGBLines(long &w, long &h, unsigned char *&f, bool alpha=false);
/// Get RGB bitmap of current state image.
- const unsigned char *GetBits();
+ virtual const unsigned char *GetBits();
/// Get RGBA bitmap of current state image.
- const unsigned char *GetRGBA();
+ const unsigned char *GetRGBA() { Finish(); return G4; }
/// Get width of the image
- int GetWidth() { return Width; };
+ int GetWidth() { return Width; }
/// Get height of the image
- int GetHeight() { return Height; };
+ int GetHeight() { return Height; }
/// Combine plots from 2 canvases. Result will be saved into this.
void Combine(const mglCanvas *gr);
/// Send graphical information to node id using MPI
void MPI_Send(int /*id*/) {} // TODO: add later
/// Receive graphical information from node id using MPI
void MPI_Recv(int /*id*/) {} // TODO: add later
+ inline float GetDelay() { return Delay; }
+ inline void SetDelay(float d) { Delay=d; }
/// Calculate 3D coordinate {x,y,z} for screen point {xs,ys}
mglPoint CalcXYZ(int xs, int ys);
@@ -207,39 +193,6 @@ public:
/// Get subplot id
int GetSplId(long x,long y);
- /// Write the frame in file using JPEG format
- void WriteJPEG(const char *fname,const char *descr=0);
- /// Write the frame in file using BMP format
- void WriteBMP(const char *fname,const char *descr=0);
- /// Write the frame in file using PNG format with transparency
- void WritePNG(const char *fname,const char *descr=0);
- /// Write the frame in file using PNG format no transparency
- void WritePNGs(const char *fname,const char *descr=0);
- /// Write the frame in file using PostScript format as bitmap
- void WriteBPS(const char *fname,const char *descr=0);
- /// Write the frame in file using PostScript format
- void WriteEPS(const char *fname,const char *descr=0);
- /// Write the frame in file using SVG format
- void WriteSVG(const char *fname,const char *descr=0);
- /// Write the frame in file using IDTF format
- void WriteIDTF(const char *fname,const char *descr=0);
- /// Write the frame in file using GIF format (only for current frame!)
- void WriteGIF(const char *fname,const char *descr=0);
- /// Write the frame in file (depending extension, write current frame if fname is empty)
- void WriteFrame(const char *fname=0, const char *descr=0);
- /// Show currently produced image by Qt or FLTK library
- void ShowImage(const char *viewer=0, bool keep=false);
-
- /// Write the frame in file using TeX (pgf/tikz) format
- void WriteTeX(const char *fname,const char *descr=0);
- /// Write the frame in file using WebGL (javascript) format
- void WriteWGL(const char *fname,const char *descr=0);
- /// Write the frame in file using OBJ/MTL format
- void WriteOBJ(const char *fname,const char *descr=0);
- /// Write the frame in file using TGA format
- void WriteTGA(const char *fname,const char *descr=0);
-
-
/// Create new frame.
virtual int NewFrame();
/// Finish frame drawing
@@ -247,27 +200,30 @@ public:
/// Get the number of created frames
inline int GetNumFrame() { return CurFrameId; }
/// Reset frames counter (start it from zero)
- inline void ResetFrames() { CurFrameId=0; }
+ inline void ResetFrames() { CurFrameId=0; DrwDat.clear(); }
+
/// Start write frames to cinema using GIF format
void StartGIF(const char *fname, int ms=100);
/// Stop writing cinema using GIF format
void CloseGIF();
/// Finish plotting. Normally this function is called internaly.
- virtual void Finish();
+ virtual void Finish(bool fast=true);
+ /// Export points and primitives in file using MGLD format
+ bool ExportMGLD(const char *fname, const char *descr=0);
+ /// Import points and primitives from file using MGLD format
+ bool ImportMGLD(const char *fname, bool add=false);
- /// Set the transparency on/off.
- virtual bool Alpha(bool enable);
/// Set the transparency type
inline void SetTranspType(int val)
{ Flag=(Flag&(~3)) + (val&3); SetAxisStl(val==2?"w-":"k-"); }
/// Set the fog distance or switch it off (if d=0).
virtual void Fog(float d, float dz=0.25);
- /// Set the using of light on/off.
- virtual bool Light(bool enable);
/// Switch on/off the specified light source.
virtual void Light(int n, bool enable);
/// Add a light source.
- virtual void AddLight(int n,mglPoint p, char c='w', float bright=0.5, bool infty=true, float ap=0);
+ virtual void AddLight(int n,mglPoint r, mglPoint d, char c='w', float bright=0.5, float ap=0);
+ inline void AddLight(int n,mglPoint d, char c='w', float bright=0.5, float ap=0)
+ { AddLight(n,mglPoint(NAN),d,c,bright,ap); }
/// Set ticks position and text (\n separated). Use n=0 to disable this feature.
void SetTicksVal(char dir, const char *lbl, bool add=false);
@@ -280,7 +236,7 @@ public:
void SetTickTempl(char dir, const wchar_t *t);
void SetTickTempl(char dir, const char *t);
/// Set time templates for ticks
- void SetTickTime(char dir, float d, const char *t="");
+ void SetTickTime(char dir, float d=0, const char *t="");
/// Set the ticks parameters
void SetTicks(char dir, float d=0, int ns=0, float org=NAN);
/// Auto adjust ticks
@@ -296,7 +252,7 @@ public:
/// Draws bounding box outside the plotting volume with color \a c.
void Box(const char *col=0, bool ticks=true);
/// Draw axises with ticks in directions determined by string parameter \a dir.
- void Axis(const char *dir="xyzt", bool adjust=false);
+ void Axis(const char *dir="xyzt", const char *stl="");
/// Draw grid lines perpendicular to direction determined by string parameter \a dir.
void Grid(const char *dir="xyzt",const char *pen="B-");
/// Print the label \a text for axis \a dir.
@@ -311,18 +267,12 @@ public:
// void Title(const char *text,const char *font=0);
/// Draw colorbar at edge of axis
- void Colorbar(const char *sch=0,int where=0);
- void inline Colorbar(const char *sch, int where, float x, float y, float w, float h)
- { Colorbar(where,x,y,w,h,AddTexture(sch)); };
+ void Colorbar(const char *sch=0);
+ void Colorbar(const char *sch, float x, float y, float w, float h);
/// Draw colorbar at edge of axis for manual colors
- void Colorbar(HCDT v, const char *sch=0,int where=0);
- void Colorbar(HCDT v, const char *sch, int where, float x, float y, float w, float h);
+ void Colorbar(HCDT v, const char *sch=0);
+ void Colorbar(HCDT v, const char *sch, float x, float y, float w, float h);
- /// Add string to legend
- void AddLegend(const char *text,const char *style);
- void AddLegend(const wchar_t *text,const char *style);
- /// Clear saved legend string
- inline void ClearLegend() { Leg.clear(); }
/// Draw legend of accumulated strings at position (x, y) by \a font with \a size
inline void Legend(float x, float y, const char *font="#", float size=-0.8, float llen=0.1)
{ Legend(Leg,x,y,font,size,llen); }
@@ -339,21 +289,19 @@ public:
void StartAutoGroup (const char *);
void EndGroup();
+ /// Retur color for primitive depending lighting
+ mglColor GetColor(const mglPrim &p);
protected:
+ float Delay; ///< Delay for animation in seconds
float *Z; ///< Height for given level in Z-direction
unsigned char *C; ///< Picture for given level in Z-direction
int *OI; ///< ObjId arrays
unsigned char *G4; ///< Final picture in RGBA format. Prepared in Finish().
unsigned char *G; ///< Final picture in RGB format. Prepared in Finish().
-
- std::vector<mglPrim> Sub; ///< InPlot regions {n1=x1,n2=x2,n3=y1,n4=y2,id}
- std::vector<mglPrim> Prm; ///< Primitives (lines, triangles and so on)
- std::vector<mglText> Ptx; ///< Text labels for mglPrim
- std::vector<mglText> Leg; ///< Text labels for legend
- std::vector<mglGroup> Grp; ///< List of groups with names
+ std::vector<mglDrawDat> DrwDat; ///< Set of ALL drawing data for each frames
#ifdef HAVE_PTHREAD
- pthread_mutex_t mutexSub, mutexPrm, mutexPtx, mutexLeg, mutexStk, mutexGrp;
+ pthread_mutex_t mutexSub, mutexPrm, mutexPtx, mutexStk, mutexGrp;
#endif
int LegendMarks; ///< Number of marks in the Legend
@@ -369,10 +317,10 @@ protected:
float st_t; ///< Subtick-to-tick ratio (ls=lt/sqrt(1+st_t)). Default is 1.
int CurFrameId; ///< Number of automaticle created frames
- float Persp; ///< Perspective factor (=0 is perspective off)
int Width; ///< Width of the image
int Height; ///< Height of the image
int Depth; ///< Depth of the image
+ mglMatrix Bp; ///< Transformation matrix for View() and Zoom()
mglMatrix B; ///< Transformation matrix
mglMatrix B1; ///< Transformation matrix for colorbar
float inW, inH; ///< Width and height of last InPlot
@@ -380,14 +328,12 @@ protected:
float FogDist; ///< Inverse fog distance (fog ~ exp(-FogDist*Z))
float FogDz; ///< Relative shift of fog
- /// Draw colorbar at edge of axis
- void Colorbar(int where, float x, float y, float w, float h, long s=0);
/// Auto adjust ticks
void AdjustTicks(mglAxis &aa, bool ff);
/// Prepare labels for ticks
void LabelTicks(mglAxis &aa);
/// Draw axis
- void DrawAxis(mglAxis &aa, bool text=true, char arr=0);
+ void DrawAxis(mglAxis &aa, bool text=true, char arr=0,const char *stl="");
/// Draw axis grid lines
void DrawGrid(mglAxis &aa);
/// Update axis ranges
@@ -395,10 +341,18 @@ protected:
{ ax.v0=Org.x; ay.v0=Org.y; az.v0=Org.z; ac.v0=Org.c;
ax.v1=Min.x; ay.v1=Min.y; az.v1=Min.z; ac.v1=Min.c;
ax.v2=Max.x; ay.v2=Max.y; az.v2=Max.z; ac.v2=Max.c; }
+
+ /// Clear ZBuffer only
+ void ClfZB();
/// Scale coordinates and cut off some points
bool ScalePoint(mglPoint &p, mglPoint &n, bool use_nan=true);
void LightScale(); ///< Additionally scale positions of light sources
+ /// Push drawing data (for frames only). NOTE: can be VERY large
+ long PushDrwDat();
+ /// Get drawing data for i-th frame.
+ void GetDrwDat(long i);
+
float GetOrgX(char dir); ///< Get Org.x (parse NAN value)
float GetOrgY(char dir); ///< Get Org.y (parse NAN value)
float GetOrgZ(char dir); ///< Get Org.z (parse NAN value)
@@ -409,7 +363,7 @@ protected:
void trig_plot(long p1, long p2, long p3); // position in pntN
void quad_plot(long p1, long p2, long p3, long p4); // position in pntN
void Glyph(float x, float y, float f, int style, long icode, float col);
- float text_plot(long p,const wchar_t *text,const char *fnt,float size=-1,float sh=0,float col=-('k')); // position in pntN
+ float text_plot(long p,const wchar_t *text,const char *fnt,float size=-1,float sh=0,float col=-('k'), bool rot=true); // position in pntN
void add_prim(mglPrim &a); ///< add primitive to list
void mark_draw(long p, char type, float size, mglDrawReg *d);
@@ -419,11 +373,10 @@ protected:
virtual void quad_draw(long p1, long p2, long p3, long p4, mglDrawReg *d);
virtual void pnt_draw(long p, mglDrawReg *d);
void glyph_draw(const mglPrim *P, mglDrawReg *d);
- virtual unsigned char **GetRGBLines(long &w, long &h, unsigned char *&f, bool alpha=false);
bool IsSame(const mglPrim &pr,float wp,mglColor cp,int st);
private:
- float _tetx,_tety,_tetz; // extra angles
+// float _tetx,_tety,_tetz; // extra angles
std::vector<mglMatrix> stack; ///< stack for transformation matrixes
int dr_nx1, dr_nx2, dr_ny1, dr_ny2; // Allowed drawing region
GifFileType *gif;
@@ -434,7 +387,7 @@ private:
/// Draw labels for ticks
void DrawLabels(mglAxis &aa);
/// Draw tick
- void tick_draw(mglPoint o, mglPoint d1, mglPoint d2, int f);
+ void tick_draw(mglPoint o, mglPoint d1, mglPoint d2, int f, const char *stl);
/// Plot point \a p with color \a c
void pnt_plot(long x,long y,float z,const unsigned char c[4]);
float FindOptOrg(char dir, int ind);
@@ -451,18 +404,19 @@ private:
long ProjScale(int nface, long p);
inline void PostScale(mglPoint *p,long n) { for(long i=0;i<n;i++) PostScale(p[i]); }
- void InPlot(float x1,float x2,float y1,float y2, const char *style);
- void put_line(void *fp, bool gz, long i, float wp,mglColor cp,int st, const char *ifmt, const char *nfmt, bool neg);
- void put_desc(void *fp, bool gz, const char *pre, const char *ln1, const char *ln2, const char *ln3, const char *suf);
- mglColor put_color(const mglPrim &p);
-
+ // functions for glyph drawing
void glyph_fill(const mglPnt &p, float f, int nt, const short *trig, mglDrawReg *d);
void glyph_wire(const mglPnt &p, float f, int nl, const short *line, mglDrawReg *d);
void glyph_line(const mglPnt &p, float f, bool solid, mglDrawReg *d);
- void pxl_combine(unsigned long id, unsigned long n);
- void pxl_memcpy(unsigned long id, unsigned long n);
- void pxl_backgr(unsigned long id, unsigned long n);
- void pxl_primdr(unsigned long id, unsigned long n);
+ // functions for multi-threading
+ void pxl_combine(unsigned long id, unsigned long n, const void *);
+ void pxl_memcpy(unsigned long id, unsigned long n, const void *);
+ void pxl_backgr(unsigned long id, unsigned long n, const void *);
+ void pxl_primdr(unsigned long id, unsigned long n, const void *);
+ void pxl_transform(unsigned long id, unsigned long n, const void *);
+ void pxl_setz(unsigned long id, unsigned long n, const void *);
+ void pxl_setz_adv(unsigned long id, unsigned long n, const void *);
+ void pxl_other(unsigned long id, unsigned long n, const void *p);
/// Put drawing from other mglCanvas (for multithreading, like subplots)
void PutDrawReg(mglDrawReg *d, const mglCanvas *gr);
};
@@ -470,9 +424,10 @@ private:
struct mglThreadG
{
mglCanvas *gr; // grapher
- void (mglCanvas::*f)(unsigned long i, unsigned long n);
+ void (mglCanvas::*f)(unsigned long i, unsigned long n, const void *);
unsigned id; // thread id
unsigned long n; // total number of iteration
+ const void *p; // external parameter
};
/// Start several thread for the task
void mglStartThread(void (mglCanvas::*func)(unsigned long i, unsigned long n), mglCanvas *gr, unsigned long n);
diff --git a/include/mgl/canvas_cf.h b/include/mgl/canvas_cf.h
index 9bf6cfa..41ca369 100644
--- a/include/mgl/canvas_cf.h
+++ b/include/mgl/canvas_cf.h
@@ -47,23 +47,23 @@ void mgl_set_tick_time(HMGL gr, char dir, float d, const char *t);
void mgl_box(HMGL graph);
void mgl_box_str(HMGL gr, const char *col, int ticks);
-void mgl_axis(HMGL gr, const char *dir, int adj);
+void mgl_axis(HMGL gr, const char *dir, const char *stl);
void mgl_axis_grid(HMGL gr, const char *dir,const char *pen);
void mgl_label(HMGL gr, char dir, const char *text);
void mgl_label_ext(HMGL gr, char dir, const char *text, float pos, float shift);
void mgl_labelw_ext(HMGL gr, char dir, const wchar_t *text, float pos, float shift);
-void mgl_label_xy(HMGL gr, float x, float y, const char *text, const char *fnt);
-void mgl_labelw_xy(HMGL gr, float x, float y, const wchar_t *text, const char *fnt);
+void mgl_label_pos(HMGL gr, float x, float y, const char *text, const char *fnt);
+void mgl_labelw_pos(HMGL gr, float x, float y, const wchar_t *text, const char *fnt);
-void mgl_colorbar(HMGL gr, const char *sch,int where);
-void mgl_colorbar_ext(HMGL gr, const char *sch, int where, float x, float y, float w, float h);
-void mgl_colorbar_val(HMGL gr, HCDT dat, const char *sch,int where);
-void mgl_colorbar_val_ext(HMGL gr, HCDT dat, const char *sch,int where,float x, float y, float w, float h);
+void mgl_colorbar(HMGL gr, const char *sch);
+void mgl_colorbar_ext(HMGL gr, const char *sch, float x, float y, float w, float h);
+void mgl_colorbar_val(HMGL gr, HCDT dat, const char *sch);
+void mgl_colorbar_val_ext(HMGL gr, HCDT dat, const char *sch,float x, float y, float w, float h);
void mgl_add_legend(HMGL gr, const char *text,const char *style);
void mgl_add_legendw(HMGL gr, const wchar_t *text,const char *style);
void mgl_clear_legend(HMGL graph);
-void mgl_legend_xy(HMGL gr, float x, float y, const char *font, float size, float llen);
+void mgl_legend_pos(HMGL gr, float x, float y, const char *font, float size, float llen);
void mgl_legend(HMGL gr, int where, const char *font, float size, float llen);
void mgl_set_legend_marks(HMGL gr, int num);
@@ -79,13 +79,20 @@ void mgl_write_bps(HMGL gr, const char *fname,const char *descr);
void mgl_write_eps(HMGL gr, const char *fname,const char *descr);
void mgl_write_svg(HMGL gr, const char *fname,const char *descr);
void mgl_write_tex(HMGL gr, const char *fname,const char *descr);
-void mgl_write_obj(HMGL gr, const char *fname,const char *descr);
+void mgl_write_obj(HMGL gr, const char *fname,const char *descr, int use_png);
+void mgl_write_stl(HMGL gr, const char *fname,const char *descr);
+void mgl_write_off(HMGL gr, const char *fname,const char *descr);
+void mgl_write_xyz(HMGL gr, const char *fname,const char *descr);
+void mgl_write_wrl(HMGL gr, const char *fname,const char *descr);
+void mgl_write_x3d(HMGL gr, const char *fname,const char *descr);
void mgl_write_wgl(HMGL gr, const char *fname,const char *descr);
void mgl_write_idtf(HMGL gr, const char *fname,const char *descr);
void mgl_write_gif(HMGL gr, const char *fname,const char *descr);
void mgl_start_gif(HMGL gr, const char *fname,int ms);
void mgl_close_gif(HMGL graph);
void mgl_set_plotid(HMGL gr, const char *id);
+void mgl_export_mgld(HMGL gr, const char *fname,const char *descr);
+void mgl_import_mgld(HMGL gr, const char *fname, int add);
const unsigned char *mgl_get_rgb(HMGL graph);
const unsigned char *mgl_get_rgba(HMGL graph);
@@ -119,8 +126,8 @@ void mgl_subplot_s(HMGL gr, int nx,int ny,int m,const char *style);
void mgl_multiplot(HMGL gr, int nx,int ny,int m,int dx,int dy,const char *style);
void mgl_inplot(HMGL gr, float x1,float x2,float y1,float y2);
void mgl_relplot(HMGL gr, float x1,float x2,float y1,float y2);
-void mgl_columnplot(HMGL gr, int num, int ind);
-void mgl_columnplot_d(HMGL gr, int num, int ind, float d);
+void mgl_columnplot(HMGL gr, int num, int ind, float d);
+void mgl_gridplot(HMGL gr, int nx, int ny, int m, float d);
void mgl_stickplot(HMGL gr, int num, int ind, float tet, float phi);
void mgl_title(HMGL gr, const char *title, const char *stl, float size);
void mgl_titlew(HMGL gr, const wchar_t *title, const char *stl, float size);
@@ -128,6 +135,7 @@ void mgl_titlew(HMGL gr, const wchar_t *title, const char *stl, float size);
void mgl_aspect(HMGL gr, float Ax,float Ay,float Az);
void mgl_rotate(HMGL gr, float TetX,float TetZ,float TetY);
void mgl_view(HMGL gr, float TetX,float TetZ,float TetY);
+void mgl_zoom(HMGL gr, float x1, float y1, float x2, float y2);
void mgl_rotate_vector(HMGL gr, float Tet,float x,float y,float z);
void mgl_perspective(HMGL gr, float val);
@@ -151,20 +159,20 @@ void mgl_set_tick_templ_(uintptr_t *gr, const char *dir, const char *templ,int,i
void mgl_set_tick_time_(uintptr_t *gr, const char *dir, float *d, const char *t,int,int l);
void mgl_box_(uintptr_t *gr);
void mgl_box_str_(uintptr_t *gr, const char *col, int *ticks, int l);
-void mgl_axis_(uintptr_t *gr, const char *dir, int *adj,int l);
+void mgl_axis_(uintptr_t *gr, const char *dir, const char *stl,int,int);
void mgl_axis_grid_(uintptr_t *gr, const char *dir,const char *pen,int l,int n);
void mgl_label_(uintptr_t *gr, const char *dir, const char *text,int,int l);
void mgl_label_ext_(uintptr_t *gr, const char *dir, const char *text, float *pos, float *shift,int,int l);
-void mgl_label_xy_(uintptr_t *gr, float *x, float *y, const char *txt, const char *fnt,int l,int n);
+void mgl_label_pos_(uintptr_t *gr, float *x, float *y, const char *txt, const char *fnt,int l,int n);
/*****************************************************************************/
-void mgl_colorbar_(uintptr_t *gr, const char *sch,int *where,int l);
-void mgl_colorbar_ext_(uintptr_t *gr, const char *sch,int *where, float *x, float *y, float *w, float *h, int l);
-void mgl_colorbar_val_(uintptr_t *gr, uintptr_t *dat, const char *sch,int *where,int l);
-void mgl_colorbar_val_ext_(uintptr_t *gr, uintptr_t *dat, const char *sch,int *where, float *x, float *y, float *w, float *h, int l);
+void mgl_colorbar_(uintptr_t *gr, const char *sch,int l);
+void mgl_colorbar_ext_(uintptr_t *gr, const char *sch, float *x, float *y, float *w, float *h, int l);
+void mgl_colorbar_val_(uintptr_t *gr, uintptr_t *dat, const char *sch,int l);
+void mgl_colorbar_val_ext_(uintptr_t *gr, uintptr_t *dat, const char *sch, float *x, float *y, float *w, float *h, int l);
void mgl_add_legend_(uintptr_t *gr, const char *text,const char *style,int l,int n);
void mgl_clear_legend_(uintptr_t *gr);
-void mgl_legend_xy_(uintptr_t *gr, float *x, float *y, const char *font, float *size, float *llen,int l);
+void mgl_legend_pos_(uintptr_t *gr, float *x, float *y, const char *font, float *size, float *llen,int l);
void mgl_legend_(uintptr_t *gr, int *where, const char *font, float *size, float *llen,int l);
void mgl_set_legend_marks_(uintptr_t *gr, int *num);
@@ -182,11 +190,17 @@ void mgl_write_idtf_(uintptr_t *graph, const char *fname,const char *descr,int l
void mgl_write_gif_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
void mgl_start_gif_(uintptr_t *graph, const char *fname,int *ms,int l);
void mgl_close_gif_(uintptr_t *graph);
-void mgl_write_tga_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
void mgl_write_obj_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
+void mgl_write_stl_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
+void mgl_write_off_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
+void mgl_write_xyz_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
+void mgl_write_wrl_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
+void mgl_write_x3d_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
void mgl_write_tex_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
void mgl_write_wgl_(uintptr_t *graph, const char *fname,const char *descr,int lf,int ld);
void mgl_set_plotid_(uintptr_t *gr, const char *id,int l);
+void mgl_export_mgld_(uintptr_t *gr, const char *fname,const char *descr,int l,int n);
+void mgl_import_mgld_(uintptr_t *gr, const char *fname, int *add, int l);
const unsigned char *mgl_get_rgb_(uintptr_t *graph);
const unsigned char *mgl_get_rgba_(uintptr_t *graph);
@@ -208,10 +222,12 @@ void mgl_set_alpha_(uintptr_t *graph, int *enable);
void mgl_set_fog_(uintptr_t *graph, float *dist, float *dz);
void mgl_set_light_(uintptr_t *graph, int *enable);
void mgl_set_light_n_(uintptr_t *gr, int *n, int *enable);
-void mgl_add_light_(uintptr_t *graph, int *n, float *x, float *y, float *z, char *c, int);
-void mgl_add_light(HMGL gr, int n, float x, float y, float z, char c);
-void mgl_add_light_ext_(uintptr_t *graph, int *n, float *x, float *y, float *z, char *c, float *br, int *inf, float *ap, int);
-void mgl_add_light_ext(HMGL gr, int n, float x, float y, float z, char c, float br, int inf, float ap);
+void mgl_add_light_(uintptr_t *graph, int *n, float *x, float *y, float *z);
+void mgl_add_light(HMGL gr, int n, float x, float y, float z);
+void mgl_add_light_ext_(uintptr_t *graph, int *n, float *x, float *y, float *z, char *c, float *br, float *ap, int);
+void mgl_add_light_ext(HMGL gr, int n, float x, float y, float z, char c, float br, float ap);
+void mgl_add_light_loc_(uintptr_t *graph, int *n, float *x, float *y, float *z, float *dx, float *dy, float *dz, char *c, float *br, float *ap, int);
+void mgl_add_light_loc(HMGL gr, int n, float x, float y, float z, float dx, float dy, float dz, char c, float br, float ap);
void mgl_mat_push_(uintptr_t *gr);
void mgl_mat_pop_(uintptr_t *gr);
@@ -224,14 +240,15 @@ void mgl_subplot_s_(uintptr_t *graph, int *nx,int *ny,int *m, const char *s,int)
void mgl_multiplot_(uintptr_t *graph, int *nx,int *ny,int *m,int *dx,int *dy, const char *s,int);
void mgl_inplot_(uintptr_t *graph, float *x1,float *x2,float *y1,float *y2);
void mgl_relplot_(uintptr_t *graph, float *x1,float *x2,float *y1,float *y2);
-void mgl_columnplot_(uintptr_t *graph, int *num, int *i);
-void mgl_columnplot_d_(uintptr_t *graph, int *num, int *i, float *d);
+void mgl_columnplot_(uintptr_t *graph, int *num, int *i, float *d);
+void mgl_gridplot_(uintptr_t *graph, int *nx, int *ny, int *i, float *d);
void mgl_stickplot_(uintptr_t *graph, int *num, int *i, float *tet, float *phi);
void mgl_title_(uintptr_t *gr, const char *title, const char *stl, float *size, int,int);
void mgl_aspect_(uintptr_t *graph, float *Ax,float *Ay,float *Az);
void mgl_rotate_(uintptr_t *graph, float *TetX,float *TetZ,float *TetY);
void mgl_view_(uintptr_t *graph, float *TetX,float *TetZ,float *TetY);
+void mgl_zoom_(uintptr_t *graph, float *x1, float *y1, float *x2, float *y2);
void mgl_rotate_vector_(uintptr_t *graph, float *Tet,float *x,float *y,float *z);
void mgl_perspective_(uintptr_t *graph, float val);
/*****************************************************************************/
@@ -250,7 +267,7 @@ void mgl_wnd_set_delay(HMGL gr, float dt);
void mgl_setup_window(HMGL gr, int autoclf, int showpos, int clf_upd);
void mgl_wnd_toggle_alpha(HMGL gr);
void mgl_wnd_toggle_light(HMGL gr);
-//void mgl_wnd_toggle_zoom(HMGL gr);
+void mgl_wnd_toggle_zoom(HMGL gr);
void mgl_wnd_toggle_rotate(HMGL gr);
void mgl_wnd_toggle_no(HMGL gr);
void mgl_wnd_update(HMGL gr);
@@ -266,7 +283,7 @@ void mgl_wnd_set_delay_(uintptr_t *gr, float *dt);
void mgl_setup_window_(uintptr_t *gr, int *autoclf, int *showpos, int *clf_upd);
void mgl_wnd_toggle_alpha_(uintptr_t *gr);
void mgl_wnd_toggle_light_(uintptr_t *gr);
-//void mgl_wnd_toggle_zoom_(uintptr_t *gr);
+void mgl_wnd_toggle_zoom_(uintptr_t *gr);
void mgl_wnd_toggle_rotate_(uintptr_t *gr);
void mgl_wnd_toggle_no_(uintptr_t *gr);
void mgl_wnd_update_(uintptr_t *gr);
@@ -282,6 +299,7 @@ void mgl_mpi_send_(uintptr_t *gr, int *id);
void mgl_mpi_recv_(uintptr_t *gr, int *id);
/*****************************************************************************/
HMPR mgl_create_parser();
+long mgl_use_parser(HMPR p, int inc);
void mgl_delete_parser(HMPR p);
void mgl_add_param(HMPR p, int id, const char *str);
void mgl_add_paramw(HMPR p, int id, const wchar_t *str);
@@ -293,13 +311,18 @@ void mgl_del_var(HMPR p, const char *name);
int mgl_parse(HMGL gr, HMPR p, const char *str, int pos);
int mgl_parsew(HMGL gr, HMPR p, const wchar_t *str, int pos);
void mgl_parse_file(HMGL gr, HMPR p, FILE *fp, int print);
-void mgl_parse_text(HMGL gr, HMPR p, const char *str, void (*error)(int line, int kind, char *mes));
-void mgl_parsew_text(HMGL gr, HMPR p, const wchar_t *str, void (*error)(int line, int kind, char *mes));
+void mgl_parse_text(HMGL gr, HMPR p, const char *str, void (*error)(const char *mes, void *par), int high, void *par);
+void mgl_parsew_text(HMGL gr, HMPR p, const wchar_t *str, void (*error)(const char *mes, void *par), int high, void *par);
void mgl_restore_once(HMPR p);
void mgl_parser_allow_setsize(HMPR p, int a);
void mgl_parser_stop(HMPR p);
+int mgl_cmd_type(HMPR pr, const char *name);
+const char *mgl_cmd_desc(HMPR pr, const char *name);
+const char *mgl_cmd_frmt(HMPR pr, const char *name);
+//int mgl_parser_find_cmdw(HMPR pr, const wchar_t *name);
/*****************************************************************************/
uintptr_t mgl_create_parser_();
+long mgl_use_parser_(uintptr_t* , int *inc);
void mgl_delete_parser_(uintptr_t* p);
void mgl_add_param_(uintptr_t* p, int *id, const char *str, int l);
/*===!!! NOTE !!! You must not delete obtained data arrays !!!===============*/
@@ -312,6 +335,7 @@ void mgl_parse_text_(uintptr_t* gr, uintptr_t* p, const char *str, int l);
void mgl_restore_once_(uintptr_t* p);
void mgl_parser_allow_setsize_(uintptr_t* p, int *a);
void mgl_parser_stop_(uintptr_t* p);
+int mgl_cmd_type_(uintptr_t* p, const char *name, int l);
/*****************************************************************************/
#ifdef __cplusplus
}
diff --git a/include/mgl/cont.h b/include/mgl/cont.h
index d0b4138..0dc20ab 100644
--- a/include/mgl/cont.h
+++ b/include/mgl/cont.h
@@ -2,39 +2,39 @@
* cont.h is part of Math Graphic Library
* Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
* *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Library General Public License as *
- * published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
#ifndef _MGL_CONT_H_
-#define _MGL_CONT_H_
+#define _MGL_CONT_H_
#include "mgl/base.h"
/*****************************************************************************/
-#ifdef __cplusplus
+#ifdef __cplusplus
extern "C" {
#endif
/*****************************************************************************/
-void mgl_textw_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const wchar_t *text, const char *font, const char *opt);
-void mgl_textw_xy(HMGL gr, HCDT x, HCDT y, const wchar_t *text, const char *font, const char *opt);
-void mgl_textw_y(HMGL gr, HCDT y, const wchar_t *text, const char *font, const char *opt);
-void mgl_text_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *text, const char *font, const char *opt);
-void mgl_text_xy(HMGL gr, HCDT x, HCDT y, const char *text, const char *font, const char *opt);
-void mgl_text_y(HMGL gr, HCDT y, const char *text, const char *font, const char *opt);
-
-void mgl_cont_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, const char *stl);
-void mgl_contf_gen(HMGL gr, float v1, float v2, HCDT a, HCDT x, HCDT y, HCDT z, const char *stl);
-
+void mgl_textw_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const wchar_t *text, const char *font, const char *opt);
+void mgl_textw_xy(HMGL gr, HCDT x, HCDT y, const wchar_t *text, const char *font, const char *opt);
+void mgl_textw_y(HMGL gr, HCDT y, const wchar_t *text, const char *font, const char *opt);
+void mgl_text_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *text, const char *font, const char *opt);
+void mgl_text_xy(HMGL gr, HCDT x, HCDT y, const char *text, const char *font, const char *opt);
+void mgl_text_y(HMGL gr, HCDT y, const char *text, const char *font, const char *opt);
+
+void mgl_cont_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, const char *stl);
+void mgl_contf_gen(HMGL gr, float v1, float v2, HCDT a, HCDT x, HCDT y, HCDT z, const char *stl);
+
void mgl_cont_xy_val(HMGL graph, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt);
void mgl_cont_val(HMGL graph, HCDT v, HCDT z, const char *sch, const char *opt);
void mgl_cont_xy(HMGL graph, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt);
@@ -50,33 +50,38 @@ void mgl_contd_val(HMGL graph, HCDT v, HCDT z, const char *sch, const char *opt)
void mgl_contd_xy(HMGL graph, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt);
void mgl_contd(HMGL graph, HCDT z, const char *sch, const char *opt);
+void mgl_contv_xy_val(HMGL graph, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt);
+void mgl_contv_val(HMGL graph, HCDT v, HCDT z, const char *sch, const char *opt);
+void mgl_contv_xy(HMGL graph, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt);
+void mgl_contv(HMGL graph, HCDT z, const char *sch, const char *opt);
+
void mgl_axial_xy_val(HMGL graph, HCDT v, HCDT x, HCDT y, HCDT a, const char *sch, const char *opt);
void mgl_axial_val(HMGL graph, HCDT v, HCDT a, const char *sch, const char *opt);
void mgl_axial_xy(HMGL graph, HCDT x, HCDT y, HCDT a, const char *sch, const char *opt);
-void mgl_axial(HMGL graph, HCDT a, const char *sch, const char *opt);
-
+void mgl_axial(HMGL graph, HCDT a, const char *sch, const char *opt);
+
void mgl_torus(HMGL graph, HCDT r, HCDT z, const char *col, const char *opt);
-
-void mgl_grid3_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *stl, const char *opt);
-void mgl_grid3(HMGL graph, HCDT a, char dir, float sVal, const char *stl, const char *opt);
-
-void mgl_dens3_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *stl, const char *opt);
-void mgl_dens3(HMGL graph, HCDT a, char dir, float sVal, const char *stl, const char *opt);
-
-void mgl_cont3_xyz_val(HMGL graph, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt);
-void mgl_cont3_val(HMGL graph, HCDT v, HCDT a, char dir, float sVal, const char *sch, const char *opt);
-void mgl_cont3_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt);
-void mgl_cont3(HMGL graph, HCDT a, char dir, float sVal, const char *sch, const char *opt);
-
-void mgl_contf3_xyz_val(HMGL graph, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt);
-void mgl_contf3_val(HMGL graph, HCDT v, HCDT a, char dir, float sVal, const char *sch, const char *opt);
-void mgl_contf3_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt);
-void mgl_contf3(HMGL graph, HCDT a, char dir, float sVal, const char *sch, const char *opt);
-
-/*****************************************************************************/
-void mgl_text_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z,const char *text,const char *font, const char *opt,int,int l,int n);
-void mgl_text_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, const char *text, const char *font, const char *opt,int, int l,int n);
-void mgl_text_y_(uintptr_t *gr, uintptr_t *y, const char *text, const char *font, const char *opt,int, int l,int n);
+
+void mgl_grid3_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT a, const char *stl, float sVal, const char *opt);
+void mgl_grid3(HMGL graph, HCDT a, const char *stl, float sVal, const char *opt);
+
+void mgl_dens3_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT a, const char *stl, float sVal, const char *opt);
+void mgl_dens3(HMGL graph, HCDT a, const char *stl, float sVal, const char *opt);
+
+void mgl_cont3_xyz_val(HMGL graph, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt);
+void mgl_cont3_val(HMGL graph, HCDT v, HCDT a, const char *sch, float sVal, const char *opt);
+void mgl_cont3_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt);
+void mgl_cont3(HMGL graph, HCDT a, const char *sch, float sVal, const char *opt);
+
+void mgl_contf3_xyz_val(HMGL graph, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt);
+void mgl_contf3_val(HMGL graph, HCDT v, HCDT a, const char *sch, float sVal, const char *opt);
+void mgl_contf3_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt);
+void mgl_contf3(HMGL graph, HCDT a, const char *sch, float sVal, const char *opt);
+
+/*****************************************************************************/
+void mgl_text_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z,const char *text,const char *font, const char *opt,int,int l,int n);
+void mgl_text_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, const char *text, const char *font, const char *opt,int, int l,int n);
+void mgl_text_y_(uintptr_t *gr, uintptr_t *y, const char *text, const char *font, const char *opt,int, int l,int n);
void mgl_cont_xy_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *sch, const char *opt,int,int);
void mgl_cont_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *z, const char *sch, const char *opt,int,int);
@@ -93,32 +98,37 @@ void mgl_contd_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *z, const char *sc
void mgl_contd_xy_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *sch, const char *opt,int,int);
void mgl_contd_(uintptr_t *graph, uintptr_t *z, const char *sch, const char *opt,int,int);
+void mgl_contv_xy_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *sch, const char *opt,int,int);
+void mgl_contv_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *z, const char *sch, const char *opt,int,int);
+void mgl_contv_xy_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *sch, const char *opt,int,int);
+void mgl_contv_(uintptr_t *graph, uintptr_t *z, const char *sch, const char *opt,int,int);
+
void mgl_axial_xy_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int,int);
void mgl_axial_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *a, const char *sch, const char *opt,int,int);
void mgl_axial_xy_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int,int);
-void mgl_axial_(uintptr_t *graph, uintptr_t *a, const char *sch, const char *opt,int,int);
-
+void mgl_axial_(uintptr_t *graph, uintptr_t *a, const char *sch, const char *opt,int,int);
+
void mgl_torus_(uintptr_t *graph, uintptr_t *r, uintptr_t *z, const char *pen, const char *opt,int,int);
-
-void mgl_grid3_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *stl, const char *opt,int,int,int);
-void mgl_grid3_(uintptr_t *graph, uintptr_t *a, const char *dir, float *sVal, const char *stl, const char *opt,int,int,int);
-
-void mgl_dens3_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *stl, const char *opt,int,int,int);
-void mgl_dens3_(uintptr_t *graph, uintptr_t *a, const char *dir, float *sVal, const char *stl, const char *opt,int,int,int);
-
-void mgl_cont3_xyz_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int,int);
-void mgl_cont3_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int,int);
-void mgl_cont3_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int,int);
-void mgl_cont3_(uintptr_t *graph, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int,int);
-
-void mgl_contf3_xyz_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int,int);
-void mgl_contf3_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int,int);
-void mgl_contf3_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int,int);
-void mgl_contf3_(uintptr_t *graph, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int,int);
+
+void mgl_grid3_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+void mgl_grid3_(uintptr_t *graph, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+
+void mgl_dens3_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+void mgl_dens3_(uintptr_t *graph, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+
+void mgl_cont3_xyz_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+void mgl_cont3_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+void mgl_cont3_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+void mgl_cont3_(uintptr_t *graph, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+
+void mgl_contf3_xyz_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+void mgl_contf3_val_(uintptr_t *graph, uintptr_t *v, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+void mgl_contf3_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
+void mgl_contf3_(uintptr_t *graph, uintptr_t *a, const char *sch, float *sVal, const char *opt,int,int);
/*****************************************************************************/
#ifdef __cplusplus
}
-#endif
+#endif
/*****************************************************************************/
-#endif
+#endif
diff --git a/include/mgl/data.h b/include/mgl/data.h
index 0a64a71..8ab4dc0 100644
--- a/include/mgl/data.h
+++ b/include/mgl/data.h
@@ -52,7 +52,7 @@ void mgl_delete_data_(uintptr_t *dat);
/* Data creation functions */
/*****************************************************************************/
void mgl_data_rearrange(HMDT dat, long mx,long my,long mz);
-void mgl_data_link(HMDT dat, float *A,long mx,long my,long mz);
+void mgl_data_link(HMDT dat, mreal *A,long mx,long my,long mz);
void mgl_data_set_float(HMDT dat, const float *A,long mx,long my,long mz);
void mgl_data_set_double(HMDT dat, const double *A,long mx,long my,long mz);
void mgl_data_set_float2(HMDT d, const float **A,long N1,long N2);
@@ -93,20 +93,20 @@ void mgl_data_put_dat(HMDT dat, HCDT val, long i, long j, long k);
void mgl_data_modify(HMDT dat, const char *eq,long dim);
void mgl_data_modify_vw(HMDT dat, const char *eq,HCDT vdat,HCDT wdat);
void mgl_data_squeeze(HMDT dat, long rx,long ry,long rz,long smooth);
-mreal mgl_data_max(HCDT dat);
-mreal mgl_data_min(HCDT dat);
+float mgl_data_max(HCDT dat);
+float mgl_data_min(HCDT dat);
float *mgl_data_value(HMDT dat, long i,long j,long k);
-const float *mgl_data_data(HCDT dat);
+mreal *mgl_data_data(HMDT dat);
float mgl_data_first(HCDT dat, const char *cond, long *i, long *j, long *k);
float mgl_data_last(HCDT dat, const char *cond, long *i, long *j, long *k);
long mgl_data_find(HCDT dat, const char *cond, char dir, long i, long j, long k);
int mgl_data_find_any(HCDT dat, const char *cond);
-mreal mgl_data_max_int(HCDT dat, long *i, long *j, long *k);
-mreal mgl_data_max_real(HCDT dat, mreal *x, mreal *y, mreal *z);
-mreal mgl_data_min_int(HCDT dat, long *i, long *j, long *k);
-mreal mgl_data_min_real(HCDT dat, mreal *x, mreal *y, mreal *z);
-mreal mgl_data_momentum_val(HCDT d, char dir, mreal *m, mreal *w, mreal *s, mreal *k);
+float mgl_data_max_int(HCDT dat, long *i, long *j, long *k);
+float mgl_data_max_real(HCDT dat, mreal *x, mreal *y, mreal *z);
+float mgl_data_min_int(HCDT dat, long *i, long *j, long *k);
+float mgl_data_min_real(HCDT dat, mreal *x, mreal *y, mreal *z);
+float mgl_data_momentum_val(HCDT d, char dir, mreal *m, mreal *w, mreal *s, mreal *k);
HMDT mgl_data_combine(HCDT dat1, HCDT dat2);
void mgl_data_extend(HMDT dat, long n1, long n2);
@@ -127,6 +127,7 @@ void mgl_data_diff2(HMDT dat, const char *dir);
void mgl_data_swap(HMDT dat, const char *dir);
void mgl_data_roll(HMDT dat, char dir, long num);
void mgl_data_mirror(HMDT dat, const char *dir);
+void mgl_data_sort(HMDT dat, long idx, long idy);
void mgl_data_hankel(HMDT dat, const char *dir);
void mgl_data_sinfft(HMDT dat, const char *dir);
@@ -209,7 +210,6 @@ void mgl_data_modify_vw_(uintptr_t *dat, const char *eq, uintptr_t *vdat, uintpt
void mgl_data_squeeze_(uintptr_t *dat, int *rx,int *ry,int *rz,int *smooth);
float mgl_data_max_(uintptr_t *dat);
float mgl_data_min_(uintptr_t *dat);
-const float *mgl_data_data_(uintptr_t *dat);
float mgl_data_first_(uintptr_t *dat, const char *cond, int *i, int *j, int *k, int);
float mgl_data_last_(uintptr_t *dat, const char *cond, int *i, int *j, int *k, int);
@@ -240,6 +240,7 @@ void mgl_data_diff2_(uintptr_t *dat, const char *dir,int);
void mgl_data_swap_(uintptr_t *dat, const char *dir,int);
void mgl_data_roll_(uintptr_t *dat, const char *dir, int *num, int);
void mgl_data_mirror_(uintptr_t *dat, const char *dir,int);
+void mgl_data_sort_(uintptr_t *dat, int *idx, int *idy);
void mgl_data_hankel_(uintptr_t *dat, const char *dir,int);
void mgl_data_sinfft_(uintptr_t *dat, const char *dir,int);
@@ -314,7 +315,8 @@ public:
inline mglData(const mglData &d) { a=0; mgl_data_set(this,&d); }
inline mglData(const mglDataA *d) { a=0; mgl_data_set(this, d); }
inline mglData(bool, mglData *d) // NOTE: Variable d will be deleted!!!
- { memcpy(this,d,sizeof(mglData)); d->id=0; d->link=true; delete d; }
+ { if(d) {memcpy(this,d,sizeof(mglData)); d->id=0; d->link=true; delete d; }
+ else { a=0; Create(1); } }
/// Initiate by flat array
inline mglData(int size, const float *d) { a=0; Set(d,size); }
inline mglData(int rows, int cols, const float *d) { a=0; Set(d,cols,rows); }
@@ -329,25 +331,13 @@ public:
/// Delete the array
virtual ~mglData() { if(id && a) delete []id; if(!link && a) delete []a; }
/// Get sizes
- inline mreal GetVal(long i) { return a[i];}
- inline void SetVal(mreal f, long i) { a[i]=f; }
+ inline mreal GetVal(long i, long j=0, long k=0)
+ { return mgl_data_get_value(this,i,j,k);}
+ inline void SetVal(mreal f, long i, long j=0, long k=0)
+ { mgl_data_set_value(this,f,i,j,k); }
inline long GetNx() const { return nx; }
inline long GetNy() const { return ny; }
inline long GetNz() const { return nz; }
- /// Get the value in given cell of the data without border checking
- inline mreal v(long i,long j=0,long k=0) const
- { return a[i+nx*(j+ny*k)]; }
- inline mreal vthr(long i) const { return a[i]; }
- // add for speeding up !!!
- inline float dvx(long i,long j=0,long k=0) const
- { register long i0=i+nx*(j+ny*k);
- return i>0? (i<nx-1? (a[i0+1]-a[i0-1])/2:a[i0]-a[i0-1]) : a[i0+1]-a[i0]; }
- inline float dvy(long i,long j=0,long k=0) const
- { register long i0=i+nx*(j+ny*k);
- return j>0? (j<ny-1? (a[i0+nx]-a[i0-nx])/2:a[i0]-a[i0-nx]) : a[i0+nx]-a[i0];}
- inline float dvz(long i,long j=0,long k=0) const
- { register long i0=i+nx*(j+ny*k), n=nx*ny;
- return k>0? (k<nz-1? (a[i0+n]-a[i0-n])/2:a[i0]-a[i0-n]) : a[i0+n]-a[i0]; }
/// Link external data array (don't delete it at exit)
inline void Link(mreal *A, long NX, long NY=1, long NZ=1)
@@ -543,11 +533,14 @@ public:
inline void Diff2(const char *dir) { mgl_data_diff2(this,dir); }
/// Swap left and right part of the data in given direction (useful for fourier spectrums)
- inline void Swap(const char *dir) { mgl_data_swap(this,dir); }
+ inline void Swap(const char *dir) { mgl_data_swap(this,dir); }
/// Roll data along direction \a dir by \a num slices
inline void Roll(char dir, long num) { mgl_data_roll(this,dir,num); }
/// Mirror the data in given direction (useful for fourier spectrums)
- inline void Mirror(const char *dir) { mgl_data_mirror(this,dir); }
+ inline void Mirror(const char *dir) { mgl_data_mirror(this,dir); }
+ /// Sort rows (or slices) by values of specified column
+ inline void Sort(long idx, long idy=-1) { mgl_data_sort(this,idx,idy); }
+
/// Set as the data envelop
inline void Envelop(char dir='x')
{ mgl_data_envelop(this,dir); }
@@ -649,6 +642,26 @@ public:
/// Substract the number
inline void operator-=(mreal d) { mgl_data_sub_num(this,d); }
// NOTE see 13.10 for operator(), operator[] -- m.b. I should add it ???
+protected:
+ /// Get the value in given cell of the data without border checking
+ inline mreal v(long i,long j=0,long k=0) const
+#ifdef DEBUG
+ { if(i<0 || j<0 || k<0 || i>=nx || j>=ny || k>=nz) printf("Wrong index in mglData");
+ return a[i+nx*(j+ny*k)]; }
+#else
+ { return a[i+nx*(j+ny*k)]; }
+#endif
+ inline mreal vthr(long i) const { return a[i]; }
+ // add for speeding up !!!
+ inline mreal dvx(long i,long j=0,long k=0) const
+ { register long i0=i+nx*(j+ny*k);
+ return i>0? (i<nx-1? (a[i0+1]-a[i0-1])/2:a[i0]-a[i0-1]) : a[i0+1]-a[i0]; }
+ inline mreal dvy(long i,long j=0,long k=0) const
+ { register long i0=i+nx*(j+ny*k);
+ return j>0? (j<ny-1? (a[i0+nx]-a[i0-nx])/2:a[i0]-a[i0-nx]) : a[i0+nx]-a[i0];}
+ inline mreal dvz(long i,long j=0,long k=0) const
+ { register long i0=i+nx*(j+ny*k), n=nx*ny;
+ return k>0? (k<nz-1? (a[i0+n]-a[i0-n])/2:a[i0]-a[i0-n]) : a[i0+n]-a[i0]; }
};
//-----------------------------------------------------------------------------
inline mglData operator*(const mglData &b, const mglData &d)
diff --git a/include/mgl/define.h b/include/mgl/define.h
index bdb11a1..247cb40 100644
--- a/include/mgl/define.h
+++ b/include/mgl/define.h
@@ -17,7 +17,6 @@
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
-//-----------------------------------------------------------------------------
#ifndef _MGL_DEFINE_H_
#define _MGL_DEFINE_H_
//-----------------------------------------------------------------------------
@@ -129,16 +128,6 @@ enum{ // types of predefined curvelinear coordinate systems
#define MGL_DRAW_NORM 2 // high quality, slower
#define MGL_DRAW_LMEM 4 // low memory usage (direct to pixel)
//-----------------------------------------------------------------------------
-// types of vector plot
-#define MGL_VEC_COL 1 // use 2 colors only
-#define MGL_VEC_LEN 2 // use fixed length
-#define MGL_VEC_END 4 // draw vector to point
-#define MGL_VEC_MID 8 // draw vector with point at center
-#define MGL_VEC_DOT 16 // draw dot instead of vector
-#define MGL_VEC_GRD 32 // enable color gradient along vector/dash
-#define MGL_VECTC MGL_VEC_LEN|MGL_VEC_DOT|MGL_VEC_GRD
-#define MGL_VECTL MGL_VEC_COL|MGL_VEC_DOT|MGL_VEC_GRD
-//-----------------------------------------------------------------------------
enum{ // Codes for warnings/messages
mglWarnNone = 0,// Everything OK
mglWarnDim, // Data dimension(s) is incompatible
@@ -163,23 +152,28 @@ enum{ // Codes for warnings/messages
#ifndef MGL_DEF_PAL
#define MGL_DEF_PAL "bgrcmyhlnqeupH" // default palette
#endif
-//-----------------------------------------------------------------------------
-#define MGL_TRANSP_NORM 0x0000
-#define MGL_TRANSP_GLASS 0x0001
-#define MGL_TRANSP_LAMP 0x0002
-#define MGL_ENABLE_CUT 0x0004 ///< Flag which determines how points outside bounding box are drown.
-#define MGL_ENABLE_RTEXT 0x0008 ///< Use text rotation along axis
-#define MGL_AUTO_FACTOR 0x0010 ///< Enable autochange PlotFactor
-#define MGL_ENABLE_ALPHA 0x0020 ///< Flag that Alpha is used
-#define MGL_ENABLE_LIGHT 0x0040 ///< Flag of using lightning
-#define MGL_TICKS_ROTATE 0x0080 ///< Allow ticks rotation
-#define MGL_TICKS_SKIP 0x0100 ///< Allow ticks rotation
+#define MGL_COLORS "kwrgbcymhWRGBCYMHlenpquLENPQU"
+//-----------------------------------------------------------------------------
+#define MGL_TRANSP_NORM 0x000000
+#define MGL_TRANSP_GLASS 0x000001
+#define MGL_TRANSP_LAMP 0x000002
+#define MGL_ENABLE_CUT 0x000004 ///< Flag which determines how points outside bounding box are drown.
+#define MGL_ENABLE_RTEXT 0x000008 ///< Use text rotation along axis
+#define MGL_AUTO_FACTOR 0x000010 ///< Enable autochange PlotFactor
+#define MGL_ENABLE_ALPHA 0x000020 ///< Flag that Alpha is used
+#define MGL_ENABLE_LIGHT 0x000040 ///< Flag of using lightning
+#define MGL_TICKS_ROTATE 0x000080 ///< Allow ticks rotation
+#define MGL_TICKS_SKIP 0x000100 ///< Allow ticks rotation
// flags for internal use only
-#define MGL_DISABLE_SCALE 0x0200 ///< Temporary flag for disable scaling (used for axis)
-#define MGL_FINISHED 0x0400 ///< Flag that final picture \a mglCanvas::G is ready
-#define MGL_AUTO_CLF 0x0800 ///< Clear canvas between drawing
-#define MGL_SHOW_POS 0x1000 ///< Switch to show or not mouse click position
-#define MGL_CLF_ON_UPD 0x2000 ///< Clear plot before Update()
+#define MGL_DISABLE_SCALE 0x000200 ///< Temporary flag for disable scaling (used for axis)
+#define MGL_FINISHED 0x000400 ///< Flag that final picture (i.e. mglCanvas::G) is ready
+#define MGL_AUTO_CLF 0x000800 ///< Clear canvas between drawing
+#define MGL_SHOW_POS 0x001000 ///< Switch to show or not mouse click position
+#define MGL_CLF_ON_UPD 0x002000 ///< Clear plot before Update()
+#define MGL_HIGHLIGHT 0x004000 ///< Highlight plot
+#define MGL_DIFFUSIVE 0x008000 ///< Use diffusive light instead of specular
+#define MGL_USEDRWDAT 0x010000 ///< Use DrwDat to remember all data of frames
+#define MGL_REDUCEACC 0x020000 ///< Reduce accuracy of points (to reduc size of output files)
//-----------------------------------------------------------------------------
//#define mgl_realloc(T,o,no,nn) {T *_tmp = new T[nn]; memcpy(_tmp,o,(no)*sizeof(T)); delete []o; o=_tmp;}
//-----------------------------------------------------------------------------
@@ -208,8 +202,8 @@ class mglBase;
/// Make inherited class and redefine Draw() function if you don't want to use function pointers.
struct mglDraw
{
- virtual int Draw(mglGraph *) { return 0; };
- virtual void Reload() {};
+ virtual int Draw(mglGraph *)=0;
+ virtual void Reload(){}
};
int mgl_draw_class(mglBase *gr, void *p);
void mgl_reload_class(void *p);
@@ -220,6 +214,14 @@ extern "C" {
#endif
void mgl_test_txt(const char *str, ...);
void mgl_set_test_mode(int enable);
+/** Duplicate string (returned pointer must be free() after usage) */
+char *mgl_strdup(const char *s);
+wchar_t *mgl_wcsdup(const wchar_t *s);
+/** Remove spaces at begining and at the end of the string */
+void mgl_strtrim(char *str);
+void mgl_wcstrim(wchar_t *str);
+/** Change register to lowercase (only for ANSI symbols) */
+void mgl_strlwr(char *str);
#ifdef __cplusplus
}
#endif
diff --git a/include/mgl/eval.h b/include/mgl/eval.h
index cc829eb..988d112 100644
--- a/include/mgl/eval.h
+++ b/include/mgl/eval.h
@@ -1,72 +1,64 @@
-/***************************************************************************
- * eval.h is part of Math Graphic Library
- * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Library General Public License as *
- * published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-//---------------------------------------------------------------------------
-#ifdef _MGL_W_H_
-#warning "MathGL wrapper was enabled. So disable original MathGL classes"
-#else
-#ifndef _MGL_EVAL_H_
-#define _MGL_EVAL_H_
-//---------------------------------------------------------------------------
-#include <math.h>
-#include "mgl/define.h"
-/// types of errors
-#define MGL_ERR_LOG 1
-#define MGL_ERR_ARC 2
-#define MGL_ERR_SQRT 3
-/// size of \a var array
-const int MGL_VS = 'z'-'a'+1;
-//---------------------------------------------------------------------------
-/// Class for evaluating formula specified by the string
-class mglFormula // îáúåêò äëÿ ââîäà è âû÷èñëåÃèÿ ôîðìóë
-{
-public:
- /// Evaluates the formula for 'x','r'=\a x, 'y','n'=\a y, 'z','t'=\a z, 'u'=\a u
- float Calc(float x,float y=0,float z=0,float u=0) const;
- /// Evaluates the formula for 'x, y, z, u, v, w'
- float Calc(float x,float y,float z,float u,float v,float w) const;
- /// Evaluates the formula for variables \a var
- float Calc(const float var[MGL_VS]) const;
- /// Evaluates the formula for 'x','r'=\a x, 'y','n'=\a y, 'z','t'=\a z, 'u'=\a u
- float CalcD(char diff, float x,float y=0,float z=0,float u=0) const;
- /// Evaluates the formula for 'x, y, z, u, v, w'
- float CalcD(char diff, float x,float y,float z,float u,float v,float w) const;
- /// Evaluates the derivates of the formula for variables \a var respect to variable \a diff
- float CalcD(const float var[MGL_VS], char diff) const;
- /// Return error code
- int GetError() const;
- /// Parse the formula \a str and create formula-tree
- mglFormula(const char *str);
- /// Clean up formula-tree
- ~mglFormula();
-protected:
- float CalcIn(const float *a1) const;
- float CalcDIn(int id, const float *a1) const;
- mglFormula *Left,*Right; // first and second argument of the function
- int Kod; // the function ID
- float Res; // the number or the variable ID
- static int Error;
-};
-//---------------------------------------------------------------------------
-char *mgl_strdup(const char *s);
-void mgl_strtrim(char *str);
-void mgl_strlwr(char *str);
-//-----------------------------------------------------------------------------
-#endif
-#endif
+/***************************************************************************
+ * eval.h is part of Math Graphic Library
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+//---------------------------------------------------------------------------
+#ifndef _MGL_EVAL_H_
+#define _MGL_EVAL_H_
+//---------------------------------------------------------------------------
+#include <math.h>
+#include "mgl/define.h"
+/// types of errors
+#define MGL_ERR_LOG 1
+#define MGL_ERR_ARC 2
+#define MGL_ERR_SQRT 3
+/// size of \a var array
+const int MGL_VS = 'z'-'a'+1;
+//---------------------------------------------------------------------------
+/// Class for evaluating formula specified by the string
+class mglFormula // îáúåêò äëÿ ââîäà è âû÷èñëåÃèÿ ôîðìóë
+{
+public:
+ /// Evaluates the formula for 'x','r'=\a x, 'y','n'=\a y, 'z','t'=\a z, 'u'=\a u
+ mreal Calc(mreal x,mreal y=0,mreal z=0,mreal u=0) const;
+ /// Evaluates the formula for 'x, y, z, u, v, w'
+ mreal Calc(mreal x,mreal y,mreal z,mreal u,mreal v,mreal w) const;
+ /// Evaluates the formula for variables \a var
+ mreal Calc(const mreal var[MGL_VS]) const;
+ /// Evaluates the formula for 'x','r'=\a x, 'y','n'=\a y, 'z','t'=\a z, 'u'=\a u
+ mreal CalcD(char diff, mreal x,mreal y=0,mreal z=0,mreal u=0) const;
+ /// Evaluates the formula for 'x, y, z, u, v, w'
+ mreal CalcD(char diff, mreal x,mreal y,mreal z,mreal u,mreal v,mreal w) const;
+ /// Evaluates the derivates of the formula for variables \a var respect to variable \a diff
+ mreal CalcD(const mreal var[MGL_VS], char diff) const;
+ /// Return error code
+ int GetError() const;
+ /// Parse the formula \a str and create formula-tree
+ mglFormula(const char *str);
+ /// Clean up formula-tree
+ ~mglFormula();
+protected:
+ mreal CalcIn(const mreal *a1) const;
+ mreal CalcDIn(int id, const mreal *a1) const;
+ mglFormula *Left,*Right; // first and second argument of the function
+ int Kod; // the function ID
+ mreal Res; // the number or the variable ID
+ static int Error;
+};
+//---------------------------------------------------------------------------
+#endif
diff --git a/include/mgl/eval.h b/include/mgl/evalc.h
similarity index 59%
copy from include/mgl/eval.h
copy to include/mgl/evalc.h
index cc829eb..5b095c2 100644
--- a/include/mgl/eval.h
+++ b/include/mgl/evalc.h
@@ -1,72 +1,54 @@
-/***************************************************************************
- * eval.h is part of Math Graphic Library
- * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Library General Public License as *
- * published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-//---------------------------------------------------------------------------
-#ifdef _MGL_W_H_
-#warning "MathGL wrapper was enabled. So disable original MathGL classes"
-#else
-#ifndef _MGL_EVAL_H_
-#define _MGL_EVAL_H_
-//---------------------------------------------------------------------------
-#include <math.h>
-#include "mgl/define.h"
-/// types of errors
-#define MGL_ERR_LOG 1
-#define MGL_ERR_ARC 2
-#define MGL_ERR_SQRT 3
-/// size of \a var array
-const int MGL_VS = 'z'-'a'+1;
-//---------------------------------------------------------------------------
-/// Class for evaluating formula specified by the string
-class mglFormula // îáúåêò äëÿ ââîäà è âû÷èñëåÃèÿ ôîðìóë
-{
-public:
- /// Evaluates the formula for 'x','r'=\a x, 'y','n'=\a y, 'z','t'=\a z, 'u'=\a u
- float Calc(float x,float y=0,float z=0,float u=0) const;
- /// Evaluates the formula for 'x, y, z, u, v, w'
- float Calc(float x,float y,float z,float u,float v,float w) const;
- /// Evaluates the formula for variables \a var
- float Calc(const float var[MGL_VS]) const;
- /// Evaluates the formula for 'x','r'=\a x, 'y','n'=\a y, 'z','t'=\a z, 'u'=\a u
- float CalcD(char diff, float x,float y=0,float z=0,float u=0) const;
- /// Evaluates the formula for 'x, y, z, u, v, w'
- float CalcD(char diff, float x,float y,float z,float u,float v,float w) const;
- /// Evaluates the derivates of the formula for variables \a var respect to variable \a diff
- float CalcD(const float var[MGL_VS], char diff) const;
- /// Return error code
- int GetError() const;
- /// Parse the formula \a str and create formula-tree
- mglFormula(const char *str);
- /// Clean up formula-tree
- ~mglFormula();
-protected:
- float CalcIn(const float *a1) const;
- float CalcDIn(int id, const float *a1) const;
- mglFormula *Left,*Right; // first and second argument of the function
- int Kod; // the function ID
- float Res; // the number or the variable ID
- static int Error;
-};
-//---------------------------------------------------------------------------
-char *mgl_strdup(const char *s);
-void mgl_strtrim(char *str);
-void mgl_strlwr(char *str);
-//-----------------------------------------------------------------------------
-#endif
-#endif
+/***************************************************************************
+ * evalc.h is part of Math Graphic Library
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+//---------------------------------------------------------------------------
+#ifndef _MGL_EVALC_H_
+#define _MGL_EVALC_H_
+//---------------------------------------------------------------------------
+#include <complex>
+#ifndef dual
+#define dual std::complex<double> ///< short name for complex numbers
+#endif
+#include "mgl/eval.h"
+//---------------------------------------------------------------------------
+/// Class for evaluating formula specified by the string
+class mglFormulaC // îáúåêò äëÿ ââîäà è âû÷èñëåíèÿ ôîðìóë
+{
+public:
+ /// Evaluates the formula for 'x','r'=\a x, 'y','n'=\a y, 'z','t'=\a z, 'u'=\a u
+ dual Calc(dual x,dual y=0,dual z=0,dual u=0) const;
+ /// Evaluates the formula for 'x, y, z, u, v, w'
+ dual Calc(dual x,dual y,dual z,dual u,dual v,dual w) const;
+ /// Evaluates the formula for variables \a var
+ dual Calc(const dual var[MGL_VS]) const;
+ /// Return error code
+ int GetError() const;
+ /// Parse the formula \a str and create formula-tree
+ mglFormulaC(const char *str);
+ /// Clean up formula-tree
+ virtual ~mglFormulaC();
+protected:
+ dual CalcIn(const dual *a1) const;
+ mglFormulaC *Left,*Right; // first and second argument of the function
+ int Kod; // the function ID
+ dual Res; // the number or the variable ID
+ static int Error;
+};
+//---------------------------------------------------------------------------
+#endif
diff --git a/include/mgl/fltk.h b/include/mgl/fltk.h
index 21bf669..fb13a71 100644
--- a/include/mgl/fltk.h
+++ b/include/mgl/fltk.h
@@ -29,6 +29,7 @@
#endif
#include <FL/Fl.H>
+#include <Fl/Fl_Window.H>
#include <Fl/Fl_Scroll.H>
#include <FL/Fl_Button.H>
#include <FL/Fl_Counter.H>
@@ -45,7 +46,7 @@ public:
~Fl_MathGL();
/// Update (redraw) plot
- void update(mglCanvas *gr=0);
+ virtual void update();
/// Set angles for additional plot rotation
inline void set_angle(float t, float p){ tet = t; phi = p; }
/// Set bitwise flags for general state (1-Alpha, 2-Light)
@@ -55,7 +56,7 @@ public:
inline void set_graph(mglGraph *gr)
{ set_graph(dynamic_cast<mglCanvas *>(gr->Self())); }
/// Get pointer to grapher
- inline HMGL get_graph() { return graph; }
+ inline HMGL get_graph() { return gr; }
/// Set drawing functions and its parameter
inline void set_draw(int (*func)(mglBase *gr, void *par), void *par=0)
{ draw_func = func; draw_par = par; }
@@ -63,13 +64,19 @@ public:
{ set_draw(mgl_draw_class,(void*)dr); }
inline void set_draw(int (*dr)(mglGraph *gr))
{ set_draw(mgl_draw_graph,(void*)dr); }
- void set_state(bool r) { rotate = r; }
+ void set_state(bool z, bool r) { zoom = z; rotate = r; }
+ /// Set zoom in/out region
+ inline void set_zoom(mreal X1, mreal Y1, mreal X2, mreal Y2)
+ { x1 = X1; x2 = X2; y1 = Y1; y2 = Y2; update(); };
+ /// Get zoom region
+ inline void get_zoom(mreal *X1, mreal *Y1, mreal *X2, mreal *Y2)
+ { *X1 = x1; *X2 = x2; *Y1 = y1; *Y2 = y2; };
/// Set popup menu pointer
inline void set_popup(const Fl_Menu_Item *pmenu, Fl_Widget *wdg, void *v)
{ popup = pmenu; wpar = wdg; vpar = v; }
protected:
- mglCanvas *graph; ///< pointer to grapher
- void *draw_par; ///< Parameters for drawing function mglCanvasW::DrawFunc.
+ mglCanvas *gr; ///< pointer to grapher
+ void *draw_par; ///< Parameters for drawing function mglCanvasW::DrawFunc.
/// Drawing function for window procedure. It should return the number of frames.
int (*draw_func)(mglBase *gr, void *par);
@@ -78,24 +85,63 @@ protected:
void *vpar; ///< parameter for popup menu
float tet,phi; ///< rotation angles
bool rotate; ///< flag for handle mouse
+ bool zoom; ///< flag for zoom by mouse
+ bool wire;
+ float x1,x2,y1,y2; ///< zoom region
int flag; ///< bitwise flag for general state (1-Alpha, 2-Light)
int x0,y0,xe,ye; ///< mouse position
char pos[128];
- void draw(); ///< quick drawing function
+ virtual void draw(); ///< quick drawing function
int handle(int code); ///< handle mouse events
void resize(int x, int y, int w, int h); ///< resize control
};
//-----------------------------------------------------------------------------
+class Fl_MGLView : public Fl_Window
+{
+public:
+ Fl_MathGL *FMGL; ///< Control which draw graphics
+ Fl_Scroll *scroll;
+ Fl_Menu_Bar *menu;
+
+ void *par; ///< Parameter for handling animation
+ void (*next)(void*); ///< Callback function for next frame
+ void (*prev)(void*); ///< Callback function for prev frame
+ float (*delay)(void*); ///< Callback function for delay
+ void (*reload)(void*); ///< Callback function for reloading
+
+ void toggle_alpha() { toggle(alpha, alpha_bt, "Graphics/Alpha"); }
+ void toggle_light() { toggle(light, light_bt, "Graphics/Light"); }
+ void toggle_sshow() { toggle(sshow, anim_bt, "Graphics/Slideshow"); }
+ void toggle_wire() { toggle(wire, wire_bt, "Graphics/Wire"); }
+ void toggle_zoom() { toggle(zoom, zoom_bt); }
+ void toggle_rotate(){ toggle(rotate, rotate_bt); }
+ void setoff_zoom() { setoff(zoom,zoom_bt); }
+ void setoff_rotate(){ setoff(rotate, rotate_bt); }
+ bool is_sshow() { return sshow; }
+
+ Fl_MGLView(int x, int y, int w, int h, char *label=0);
+ ~Fl_MGLView();
+ void update(); ///< Update picture by calling user drawing function
+protected:
+ Fl_Button *alpha_bt, *light_bt, *rotate_bt, *anim_bt, *zoom_bt, *wire_bt;
+// Fl_Counter *tet, *phi;
+
+ int wire, alpha, light; ///< Current states of wire, alpha, light switches (toggle buttons)
+ int sshow, rotate, zoom;///< Current states of slideshow, rotate, zoom switches (toggle buttons)
+
+ void toggle(int &val, Fl_Button *b, const char *txt=NULL);
+ void setoff(int &val, Fl_Button *b, const char *txt=NULL);
+};
+//-----------------------------------------------------------------------------
/// Class allows the window creation for displaying plot bitmap with the help of FLTK library
/** NOTE!!! All frames are saved in memory. So animation with many frames require a lot memory and CPU time (for example, for mouse rotation).*/
class mglCanvasFL : public mglCanvasW
{
public:
using mglCanvasW::Window;
- int sshow; ///< Current state of animation switch (toggle button)
- Fl_MathGL *FMGL;///< Control which draw graphics
- Fl_Window *Wnd; ///< Pointer to window
+ Fl_Window *Wnd; ///< Pointer to window
+ Fl_MGLView *mgl; ///< Pointer to MGL widget with buttons
mglCanvasFL();
~mglCanvasFL();
@@ -108,24 +154,16 @@ using mglCanvasW::Window;
void ToggleAlpha();
/// Switch on/off lighting (do not overwrite switches in user drawing function)
void ToggleLight();
- void ToggleRotate();///< Switch on/off rotation by mouse
- void ToggleNo(); ///< Switch off all zooming and rotation
- void Update(); ///< Update picture by calling user drawing function
- void Adjust(); ///< Adjust size of bitmap to window size
- void NextFrame(); ///< Show next frame (if one)
- void PrevFrame(); ///< Show previous frame (if one)
- void Animation(); ///< Run slideshow (animation) of frames
-
-protected:
- Fl_Button *alpha_bt, *light_bt, *rotate_bt, *anim_bt;
- Fl_Counter *tet, *phi;
- Fl_Scroll *scroll;
- Fl_Menu_Bar *menu;
-
- int alpha; ///< Current state of alpha switch (toggle button)
- int light; ///< Current state of light switch (toggle button)
- bool rotate;
+ void ToggleRotate(); ///< Switch on/off rotation by mouse
+ void ToggleZoom(); ///< Switch on/off zooming by mouse
+ void ToggleNo(); ///< Switch off all zooming and rotation
+ void Update(); ///< Update picture by calling user drawing function
+ void Adjust(); ///< Adjust size of bitmap to window size
+ void GotoFrame(int d); ///< Show arbitrary frame (use relative step)
+ void Animation(); ///< Run animation (I'm too lasy to change it)
};
//-----------------------------------------------------------------------------
+void mgl_ask_fltk(const wchar_t *quest, wchar_t *res);
+//-----------------------------------------------------------------------------
#endif
#endif
diff --git a/include/mgl/mgl.h b/include/mgl/mgl.h
index 4cb87fd..56611b6 100644
--- a/include/mgl/mgl.h
+++ b/include/mgl/mgl.h
@@ -22,6 +22,9 @@
#include "mgl/mgl_cf.h"
#include "mgl/data.h"
+#ifndef NO_OPENGL
+#include "mgl/opengl.h"
+#endif
//-----------------------------------------------------------------------------
const float NaN = NAN;
//-----------------------------------------------------------------------------
@@ -33,8 +36,10 @@ protected:
public:
inline mglGraph(int kind=0, int width=600, int height=400)
{
- if(kind==1) gr=mgl_create_graph_gl();
- else if(kind==-1) gr=NULL;
+ if(kind==-1) gr=NULL;
+#ifndef NO_OPENGL
+ else if(kind==1) gr=mgl_create_graph_gl();
+#endif
// else if(kind==2) gr=mgl_create_graph_idtf();
else gr=mgl_create_graph(width, height);
}
@@ -62,9 +67,13 @@ public:
inline void Light(bool enable) { mgl_set_light(gr, enable); }
/// Switch on/off the specified light source.
inline void Light(int n,bool enable) { mgl_set_light_n(gr, n, enable); }
+ /// Use diffusive light (only for local light sources)
+ inline void SetDifLight(bool dif) { mgl_set_light_dif(gr, dif); }
/// Add a light source.
- inline void AddLight(int n, mglPoint p, char col='w', float bright=0.5, bool infty=true, float ap=0)
- { mgl_add_light_ext(gr, n, p.x, p.y, p.z, col, bright, infty, ap); }
+ inline void AddLight(int n, mglPoint p, char col='w', float bright=0.5, float ap=0)
+ { mgl_add_light_ext(gr, n, p.x, p.y, p.z, col, bright, ap); }
+ inline void AddLight(int n, mglPoint r, mglPoint p, char col='w', float bright=0.5, float ap=0)
+ { mgl_add_light_loc(gr, n, r.x, r.y, r.z, p.x, p.y, p.z, col, bright, ap); }
/// Set ambient light brightness
inline void SetAmbient(float i) { mgl_set_ambbr(gr, i); }
/// Set the fog distance or switch it off (if d=0).
@@ -80,7 +89,7 @@ public:
inline void SetMeshNum(int num) { mgl_set_meshnum(gr, num); }
/// Set cutting for points outside of bounding box
- inline void SetCut(bool cut) { mgl_set_cut(gr, cut); }
+ inline void SetCut(bool cut) { mgl_set_cut(gr, cut); }
/// Set additional cutting box
inline void SetCutBox(mglPoint p1, mglPoint p2)
{ mgl_set_cut_box(gr, p1.x, p1.y, p1.z, p2.x, p2.y, p2.z); }
@@ -115,7 +124,7 @@ public:
/// Set warning code ant fill message
inline void SetWarn(int code, const char *info="") { mgl_set_warn(gr,code,info); }
/// Set buffer for warning messages
- inline void Message(char *buf) { mgl_buf_warn(gr, buf); }
+ inline const char *Message() { return mgl_get_mess(gr); }
/// Set range in direction dir as [v1, v2]
inline void SetRange(char dir, float v1, float v2)
@@ -166,7 +175,7 @@ public:
{ mgl_set_axis_stl(gr, stl, tck, sub); }
/// Set time templates for ticks
- inline void SetTickTime(char dir, float d, const char *t="")
+ inline void SetTickTime(char dir, float d=0, const char *t="")
{ mgl_set_tick_time(gr,dir,d,t); }
/// Set ticks text (\n separated). Use "" to disable this feature.
inline void SetTicksVal(char dir, const char *lbl, bool add=false)
@@ -204,19 +213,22 @@ public:
{ mgl_multiplot(gr, nx, ny, m, dx, dy, style); }
/// Put further plotting in some region of whole frame surface.
inline void InPlot(float x1,float x2,float y1,float y2, bool rel=true)
- { if(rel) mgl_inplot(gr, x1, x2, y1, y2);
- else mgl_relplot(gr, x1, x2, y1, y2); }
+ { if(rel) mgl_relplot(gr, x1, x2, y1, y2);
+ else mgl_inplot(gr, x1, x2, y1, y2); }
/// Put further plotting in column cell of previous subplot
inline void ColumnPlot(int num, int ind, float d=0)
- { mgl_columnplot_d(gr,num,ind,d); }
+ { mgl_columnplot(gr,num,ind,d); }
+ /// Put further plotting in matrix cell of previous subplot
+ inline void GridPlot(int nx, int ny, int ind, float d=0)
+ { mgl_gridplot(gr,nx,ny,ind,d); }
/// Put further plotting in cell of stick rotated on angles tet, phi
inline void StickPlot(int num, int i, float tet, float phi)
{ mgl_stickplot(gr,num,i,tet,phi); }
/// Add title for current subplot/inplot
- inline void Title(const char *title,const char *stl="#",float size=-2)
+ inline void Title(const char *title,const char *stl="",float size=-2)
{ mgl_title(gr,title,stl,size); }
- inline void Title(const wchar_t *title,const char *stl="#",float size=-2)
+ inline void Title(const wchar_t *title,const char *stl="",float size=-2)
{ mgl_titlew(gr,title,stl,size); }
/// Set aspect ratio for further plotting.
inline void Aspect(float Ax,float Ay,float Az)
@@ -233,15 +245,20 @@ public:
/// Set angle of view independently from Rotate().
inline void View(float TetX,float TetZ=0,float TetY=0)
{ mgl_view(gr, TetX, TetZ, TetY); }
+ /// Zoom in or zoom out (if Zoom(0, 0, 1, 1)) a part of picture
+ inline void Zoom(float x1, float y1, float x2, float y2)
+ { mgl_zoom(gr, x1, y1, x2, y2); }
/// Set size of frame in pixels. Normally this function is called internaly.
inline void SetSize(int width, int height) { mgl_set_size(gr, width, height); }
/// Set plot quality
inline void SetQuality(int qual=MGL_DRAW_NORM) { mgl_set_quality(gr, qual); }
/// Start group of objects
- inline void StartGroup(const char *name){ mgl_start_group(gr, name); }
+ inline void StartGroup(const char *name) { mgl_start_group(gr, name); }
/// End group of objects
- inline void EndGroup() { mgl_end_group(gr); }
+ inline void EndGroup() { mgl_end_group(gr); }
+ /// Highlight next group
+ inline void Highlight() { mgl_highlight(gr); }
/// Show currently produced image
inline void ShowImage(const char *viewer, bool keep=0)
@@ -249,9 +266,6 @@ public:
/// Write the frame in file (depending extension, write current frame if fname is empty)
inline void WriteFrame(const char *fname=0,const char *descr="")
{ mgl_write_frame(gr, fname, descr); }
- /// Write the frame in file using IDTF format
- inline void WriteIDTF(const char *fname,const char *descr="")
- { mgl_write_idtf(gr, fname, descr); }
/// Write the frame in file using JPEG format
inline void WriteJPEG(const char *fname,const char *descr="")
{ mgl_write_jpg(gr, fname, descr); }
@@ -268,8 +282,11 @@ public:
/// Write the frame in file using PostScript format
inline void WriteEPS(const char *fname,const char *descr="")
{ mgl_write_eps(gr, fname, descr); }
+ /// Write the frame in file using PostScript format
+ inline void WriteTEX(const char *fname,const char *descr="")
+ { mgl_write_tex(gr, fname, descr); }
/// Write the frame in file using PostScript format as bitmap
- void WriteBPS(const char *fname,const char *descr="")
+ inline void WriteBPS(const char *fname,const char *descr="")
{ mgl_write_bps(gr, fname, descr); }
/// Write the frame in file using SVG format
inline void WriteSVG(const char *fname,const char *descr="")
@@ -278,6 +295,28 @@ public:
inline void WriteGIF(const char *fname,const char *descr="")
{ mgl_write_gif(gr, fname, descr); }
+ /// Write the frame in file using OBJ format
+ inline void WriteOBJ(const char *fname,const char *descr="",bool use_png=false)
+ { mgl_write_obj(gr, fname, descr, use_png); }
+ /// Write the frame in file using XYZ format
+ inline void WriteXYZ(const char *fname,const char *descr="")
+ { mgl_write_xyz(gr, fname, descr); }
+ /// Write the frame in file using STL format (faces only)
+ inline void WriteSTL(const char *fname,const char *descr="")
+ { mgl_write_stl(gr, fname, descr); }
+ /// Write the frame in file using OFF format
+ inline void WriteOFF(const char *fname,const char *descr="")
+ { mgl_write_off(gr, fname, descr); }
+ /// Write the frame in file using STL format (faces only)
+ inline void WriteWRL(const char *fname,const char *descr="")
+ { mgl_write_wrl(gr, fname, descr); }
+ /// Write the frame in file using OFF format
+ inline void WriteX3D(const char *fname,const char *descr="")
+ { mgl_write_x3d(gr, fname, descr); }
+ /// Write the frame in file using IDTF format
+ inline void WriteIDTF(const char *fname,const char *descr="")
+ { mgl_write_idtf(gr, fname, descr); }
+
/// Create new frame.
inline void NewFrame() { mgl_new_frame(gr); }
/// Finish frame drawing
@@ -291,27 +330,31 @@ public:
{ mgl_start_gif(gr, fname,ms); }
/// Stop writing cinema using GIF format
inline void CloseGIF() { mgl_close_gif(gr); }
+ /// Export points and primitives in file using MGLD format
+ inline bool ExportMGLD(const char *fname, const char *descr=0)
+ { mgl_export_mgld(gr, fname, descr); }
+ /// Import points and primitives from file using MGLD format
+ inline bool ImportMGLD(const char *fname, bool add=false)
+ { mgl_import_mgld(gr, fname, add); }
/// Copy RGB values into array which is allocated by user
inline void GetRGB(char *imgdata, int imglen)
{
- int w=mgl_get_width(gr);
- int h=mgl_get_height(gr);
+ long w=mgl_get_width(gr), h=mgl_get_height(gr);
if(imglen>=3*w*h) memcpy(imgdata, mgl_get_rgb(gr),3*w*h);
}
+ inline const unsigned char *GetRGB() { return mgl_get_rgb(gr); }
/// Copy RGBA values into array which is allocated by user
inline void GetRGBA(char *imgdata, int imglen)
{
- int w=mgl_get_width(gr);
- int h=mgl_get_height(gr);
+ long w=mgl_get_width(gr), h=mgl_get_height(gr);
if(imglen>=4*w*h) memcpy(imgdata, mgl_get_rgba(gr),4*w*h);
}
+ inline const unsigned char *GetRGBA() { return mgl_get_rgba(gr); }
/// Copy BGRN values into array which is allocated by user
inline void GetBGRN(unsigned char *imgdata, int imglen)
{
- int w,h,i;
- w=mgl_get_width(gr);
- h=mgl_get_height(gr);
+ long w=mgl_get_width(gr), h=mgl_get_height(gr), i;
const unsigned char *buf=mgl_get_rgb(gr);
if(imglen>=4*w*h) for(i=0;i<w*h;i++)
{
@@ -328,7 +371,7 @@ public:
/// Calculate 3D coordinate {x,y,z} for screen point {xs,ys}
inline mglPoint CalcXYZ(int xs, int ys)
{
- mreal x,y,z;
+ float x,y,z;
mgl_calc_xyz(gr,xs,ys,&x,&y,&z);
return mglPoint(x,y,z);
}
@@ -391,8 +434,8 @@ public:
inline void Sphere(mglPoint p, float r, const char *col="r")
{ mgl_sphere(gr, p.x, p.y, p.z, r, col); }
/// Draws the cone between points p1,p2 with radius r1,r2 with style stl
- inline void Cone(mglPoint p1, mglPoint p2, float r1, float r2=-1, const char *stl="B", bool edge=false)
- { mgl_cone(gr, p1.x, p1.y, p1.z, p2.x, p2.y, p2.z,r1,r2,stl,edge); }
+ inline void Cone(mglPoint p1, mglPoint p2, float r1, float r2=-1, const char *stl="r@")
+ { mgl_cone(gr, p1.x, p1.y, p1.z, p2.x, p2.y, p2.z,r1,r2,stl); }
/// Draws the ellipse between points p1,p2 with color stl and width r
inline void Ellipse(mglPoint p1, mglPoint p2, float r, const char *stl="r")
{ mgl_ellipse(gr, p1.x, p1.y, p1.z, p2.x, p2.y, p2.z, r,stl); }
@@ -408,6 +451,10 @@ public:
{ mgl_putsw(gr, p.x, p.y, p.z, text, font, size); }
inline void Puts(mglPoint p,const char *text,const char *font=":C",float size=-1)
{ mgl_puts(gr, p.x, p.y, p.z, text, font, size); }
+ inline void Putsw(float x, float y,const wchar_t *text,const char *font=":AC",float size=-1)
+ { mgl_putsw(gr, x, y, 0, text, font, size); }
+ inline void Puts(float x, float y,const char *text,const char *font=":AC",float size=-1)
+ { mgl_puts(gr, x, y, 0, text, font, size); }
/// Print text in position p along direction d with specified font
inline void Putsw(mglPoint p, mglPoint d, const wchar_t *text, const char *font=":L", float size=-1)
{ mgl_putsw_dir(gr, p.x, p.y, p.z, d.x, d.y, d.z, text, font, size); }
@@ -415,9 +462,9 @@ public:
{ mgl_puts_dir(gr, p.x, p.y, p.z, d.x, d.y, d.z, text, font, size); }
/// Print the label \a text at arbitrary position {x,y} of plot.
void Label(double x, double y, const char *text, const char *fnt=0)
- { mgl_label_xy(gr,x,y,text,fnt); }
+ { mgl_label_pos(gr,x,y,text,fnt); }
void Label(double x, double y, const wchar_t *text, const char *fnt=0)
- { mgl_labelw_xy(gr,x,y,text,fnt); }
+ { mgl_labelw_pos(gr,x,y,text,fnt); }
/// Print text along the curve
inline void Text(const mglDataA &x, const mglDataA &y, const mglDataA &z, const char *text, const char *font="", const char *opt="")
@@ -434,11 +481,11 @@ public:
{ mgl_textw_y(gr, &y, text, font, opt); }
/// Draws bounding box outside the plotting volume with color \a c.
- inline void Box(const char *col="k", bool ticks=true)
+ inline void Box(const char *col="", bool ticks=true)
{ mgl_box_str(gr, col, ticks); }
/// Draw axises with ticks in directions determined by string parameter \a dir.
- inline void Axis(const char *dir="xyzt", bool adjust=false)
- { mgl_axis(gr, dir,adjust); }
+ inline void Axis(const char *dir="xyzt", const char *stl="")
+ { mgl_axis(gr, dir,stl); }
/// Draw grid lines perpendicular to direction determined by string parameter \a dir.
inline void Grid(const char *dir="xyzt",const char *pen="B")
{ mgl_axis_grid(gr, dir, pen); }
@@ -449,17 +496,15 @@ public:
{ mgl_labelw_ext(gr, dir, text, pos, shift); }
/// Draw colorbar at edge of axis
- inline void Colorbar(const char *sch="",int where=0)
- { mgl_colorbar(gr, sch, where); }
- inline void Colorbar(const char *sch,int where,float x,float y,float w,float h)
- { mgl_colorbar_ext(gr, sch, where,x,y,w,h); }
- inline void Colorbar(int where,float x,float y,float w,float h)
- { mgl_colorbar_ext(gr, 0, where,x,y,w,h); }
+ inline void Colorbar(const char *sch="")
+ { mgl_colorbar(gr, sch); }
+ inline void Colorbar(const char *sch,float x,float y,float w=1,float h=1)
+ { mgl_colorbar_ext(gr, sch, x,y,w,h); }
/// Draw colorbar with manual colors at edge of axis
- inline void Colorbar(const mglDataA &val, const char *sch="",int where=0)
- { mgl_colorbar_val(gr, &val, sch, where); }
- inline void Colorbar(const mglDataA &val, const char *sch,int where,float x,float y,float w,float h)
- { mgl_colorbar_val_ext(gr, &val, sch, where, x,y,w,h); }
+ inline void Colorbar(const mglDataA &val, const char *sch="")
+ { mgl_colorbar_val(gr, &val, sch); }
+ inline void Colorbar(const mglDataA &val, const char *sch,float x,float y,float w=1,float h=1)
+ { mgl_colorbar_val_ext(gr, &val, sch, x,y,w,h); }
/// Add string to legend
inline void AddLegend(const char *text,const char *style)
@@ -471,7 +516,7 @@ public:
{ mgl_clear_legend(gr); }
/// Draw legend of accumulated strings at position {x,y}
inline void Legend(float x, float y, const char *font="#", float size=-0.8, float llen=0)
- { mgl_legend_xy(gr, x, y, font, size, llen); }
+ { mgl_legend_pos(gr, x, y, font, size, llen); }
/// Draw legend of accumulated strings
inline void Legend(int where=3, const char *font="#", float size=-0.8, float llen=0)
{ mgl_legend(gr, where, font, size, llen); }
@@ -485,6 +530,13 @@ public:
{ mgl_plot_xy(gr, &x, &y, pen,opt); }
inline void Plot(const mglDataA &y, const char *pen="", const char *opt="")
{ mgl_plot(gr, &y, pen,opt); }
+ /// Draw tape(s) which rotates as (bi-)normales of curve {x,y,z}
+ inline void Tape(const mglDataA &x, const mglDataA &y, const mglDataA &z, const char *pen="", const char *opt="")
+ { mgl_tape_xyz(gr, &x, &y, &z, pen, opt); }
+ inline void Tape(const mglDataA &x, const mglDataA &y, const char *pen="", const char *opt="")
+ { mgl_tape_xy(gr, &x, &y, pen,opt); }
+ inline void Tape(const mglDataA &y, const char *pen="", const char *opt="")
+ { mgl_tape(gr, &y, pen,opt); }
/// Draw radar chart (plot in curved coordinates)
inline void Radar(const mglDataA &a, const char *pen="", const char *opt="")
{ mgl_radar(gr, &a, pen, opt); }
@@ -553,6 +605,13 @@ public:
{ mgl_candle(gr, &y, &y1, &y2, pen, opt); }
inline void Candle(const mglDataA &y, const char *pen="", const char *opt="")
{ mgl_candle(gr, &y, NULL, NULL, pen, opt); }
+ /// Draw cones from points {x,y,z} to axis plane
+ inline void Cones(const mglDataA &x, const mglDataA &y, const mglDataA &z, const char *pen="@", const char *opt="")
+ { mgl_cones_xyz(gr, &x, &y, &z, pen, opt); }
+ inline void Cones(const mglDataA &x, const mglDataA &z, const char *pen="@", const char *opt="")
+ { mgl_cones_xz(gr, &x, &z, pen, opt); }
+ inline void Cones(const mglDataA &z, const char *pen="@", const char *opt="")
+ { mgl_cones(gr, &z, pen, opt); }
/// Draw error boxes {ex,ey} at points {x,y}
inline void Error(const mglDataA &y, const mglDataA &ey, const char *pen="", const char *opt="")
@@ -586,6 +645,20 @@ public:
inline void TextMark(const mglDataA &y, const wchar_t *text, const char *fnt="", const char *opt="")
{ mgl_textmarkw(gr, &y, text, fnt, opt); }
+ /// Draw labels for points coordinate(s) at points {x,y,z}
+ inline void Label(const mglDataA &x, const mglDataA &y, const mglDataA &z, const char *text, const char *fnt="", const char *opt="")
+ { mgl_label_xyz(gr, &x, &y, &z, text, fnt, opt); }
+ inline void Label(const mglDataA &x, const mglDataA &y, const char *text, const char *fnt="", const char *opt="")
+ { mgl_label_xy(gr, &x, &y, text, fnt, opt); }
+ inline void Label(const mglDataA &y, const char *text, const char *fnt="", const char *opt="")
+ { mgl_label_y(gr, &y, text, fnt, opt); }
+ inline void Label(const mglDataA &x, const mglDataA &y, const mglDataA &z, const wchar_t *text, const char *fnt="", const char *opt="")
+ { mgl_labelw_xyz(gr, &x, &y, &z, text, fnt, opt); }
+ inline void Label(const mglDataA &x, const mglDataA &y, const wchar_t *text, const char *fnt="", const char *opt="")
+ { mgl_labelw_xy(gr, &x, &y, text, fnt, opt); }
+ inline void Label(const mglDataA &y, const wchar_t *text, const char *fnt="", const char *opt="")
+ { mgl_labelw_y(gr, &y, text, fnt, opt); }
+
/// Draw tube with radius r for points in arrays {x,y,z}
inline void Tube(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &r, const char *pen="", const char *opt="")
{ mgl_tube_xyzr(gr, &x, &y, &z, &r, pen, opt); }
@@ -671,6 +744,15 @@ public:
{ mgl_contd_xy(gr, &x, &y, &z, sch, opt); }
inline void ContD(const mglDataA &z, const char *sch="", const char *opt="")
{ mgl_contd(gr, &z, sch, opt); }
+ /// Draw contour lines for 2d data specified parametrically
+ inline void ContV(const mglDataA &v, const mglDataA &x, const mglDataA &y, const mglDataA &z, const char *sch="", const char *opt="")
+ { mgl_contv_xy_val(gr, &v, &x, &y, &z, sch, opt); }
+ inline void ContV(const mglDataA &v, const mglDataA &z, const char *sch="", const char *opt="")
+ { mgl_contv_val(gr, &v, &z, sch, opt); }
+ inline void ContV(const mglDataA &x, const mglDataA &y, const mglDataA &z, const char *sch="", const char *opt="")
+ { mgl_contv_xy(gr, &x, &y, &z, sch, opt); }
+ inline void ContV(const mglDataA &z, const char *sch="", const char *opt="")
+ { mgl_contv(gr, &z, sch, opt); }
/// Draw axial-symmetric isosurfaces for 2d data specified parametrically
inline void Axial(const mglDataA &v, const mglDataA &x, const mglDataA &y, const mglDataA &z, const char *sch="", const char *opt="")
{ mgl_axial_xy_val(gr, &v, &x, &y, &z, sch,opt); }
@@ -682,15 +764,15 @@ public:
{ mgl_axial(gr, &z, sch, opt); }
/// Draw grid lines for density plot at slice for 3d data specified parametrically
- inline void Grid3(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, char dir, float sVal=-1, const char *stl="", const char *opt="")
- { mgl_grid3_xyz(gr, &x, &y, &z, &a, dir, sVal, stl, opt); }
- inline void Grid3(const mglDataA &a, char dir, float sVal=-1, const char *stl="", const char *opt="")
- { mgl_grid3(gr, &a, dir, sVal, stl, opt); }
+ inline void Grid3(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, const char *stl="", float sVal=-1, const char *opt="")
+ { mgl_grid3_xyz(gr, &x, &y, &z, &a, stl, sVal, opt); }
+ inline void Grid3(const mglDataA &a, const char *stl="", float sVal=-1, const char *opt="")
+ { mgl_grid3(gr, &a, stl, sVal, opt); }
/// Draw density plot at slice for 3d data specified parametrically
- inline void Dens3(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, char dir, float sVal=-1, const char *stl="", const char *opt="")
- { mgl_dens3_xyz(gr, &x, &y, &z, &a, dir, sVal, stl, opt); }
- inline void Dens3(const mglDataA &a, char dir, float sVal=-1, const char *stl="", const char *opt="")
- { mgl_dens3(gr, &a, dir, sVal, stl, opt); }
+ inline void Dens3(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, const char *stl="", float sVal=-1, const char *opt="")
+ { mgl_dens3_xyz(gr, &x, &y, &z, &a, stl, sVal, opt); }
+ inline void Dens3(const mglDataA &a, const char *stl="", float sVal=-1, const char *opt="")
+ { mgl_dens3(gr, &a, stl, sVal, opt); }
/// Draw isosurface(s) for 3d data specified parametrically
inline void Surf3(float Val, const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, const char *stl="", const char *opt="")
@@ -709,24 +791,24 @@ public:
{ mgl_cloud(gr, &a, stl, opt); }
/// Draw contour lines at slice for 3d data specified parametrically
- inline void Cont3(const mglDataA &v, const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, char dir, float sVal=-1, const char *sch="", const char *opt="")
- { mgl_cont3_xyz_val(gr, &v, &x, &y, &z, &a, dir, sVal, sch, opt); }
- inline void Cont3(const mglDataA &v, const mglDataA &a, char dir, float sVal=-1, const char *sch="", const char *opt="")
- { mgl_cont3_val(gr, &v, &a, dir, sVal, sch, opt); }
- inline void Cont3(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, char dir, float sVal=-1, const char *sch="", const char *opt="")
- { mgl_cont3_xyz(gr, &x, &y, &z, &a, dir, sVal, sch, opt); }
- inline void Cont3(const mglDataA &a, char dir, float sVal=-1, const char *sch="", const char *opt="")
- { mgl_cont3(gr, &a, dir, sVal, sch, opt); }
+ inline void Cont3(const mglDataA &v, const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, const char *sch="", float sVal=-1, const char *opt="")
+ { mgl_cont3_xyz_val(gr, &v, &x, &y, &z, &a, sch, sVal, opt); }
+ inline void Cont3(const mglDataA &v, const mglDataA &a, const char *sch="", float sVal=-1, const char *opt="")
+ { mgl_cont3_val(gr, &v, &a, sch, sVal, opt); }
+ inline void Cont3(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, const char *sch="", float sVal=-1, const char *opt="")
+ { mgl_cont3_xyz(gr, &x, &y, &z, &a, sch, sVal, opt); }
+ inline void Cont3(const mglDataA &a, const char *sch="", float sVal=-1, const char *opt="")
+ { mgl_cont3(gr, &a, sch, sVal, opt); }
/// Draw solid contours at slice for 3d data specified parametrically
- inline void ContF3(const mglDataA &v, const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, char dir, float sVal=-1, const char *sch="", const char *opt="")
- { mgl_contf3_xyz_val(gr, &v, &x, &y, &z, &a, dir, sVal, sch, opt); }
- inline void ContF3(const mglDataA &v, const mglDataA &a, char dir, float sVal=-1, const char *sch="", const char *opt="")
- { mgl_contf3_val(gr, &v, &a, dir, sVal, sch, opt); }
- inline void ContF3(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, char dir, float sVal=-1, const char *sch="", const char *opt="")
- { mgl_contf3_xyz(gr, &x, &y, &z, &a, dir, sVal, sch, opt); }
- inline void ContF3(const mglDataA &a, char dir, float sVal=-1, const char *sch="", const char *opt="")
- { mgl_contf3(gr, &a, dir, sVal, sch, opt); }
+ inline void ContF3(const mglDataA &v, const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, const char *sch="", float sVal=-1, const char *opt="")
+ { mgl_contf3_xyz_val(gr, &v, &x, &y, &z, &a, sch, sVal, opt); }
+ inline void ContF3(const mglDataA &v, const mglDataA &a, const char *sch="", float sVal=-1, const char *opt="")
+ { mgl_contf3_val(gr, &v, &a, sch, sVal, opt); }
+ inline void ContF3(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, const char *sch="", float sVal=-1, const char *opt="")
+ { mgl_contf3_xyz(gr, &x, &y, &z, &a, sch, sVal, opt); }
+ inline void ContF3(const mglDataA &a, const char *sch="", float sVal=-1, const char *opt="")
+ { mgl_contf3(gr, &a, sch, sVal, opt); }
/// Draw several isosurfaces for 3d beam in curvilinear coordinates
inline void Beam(const mglDataA &tr, const mglDataA &g1, const mglDataA &g2, const mglDataA &a, float r, const char *stl=0, int flag=0, int num=3)
@@ -980,11 +1062,6 @@ public:
inline const char *GetFit()
{ return mgl_get_fit(gr); }
-
-
-
-
-
/// Solve PDE with x,y,z in range [Min, Max]
inline mglData PDE(const char *ham, const mglDataA &ini_re, const mglDataA &ini_im, float dz=0.1, float k0=100, const char *opt="")
{ return mglData(true,mgl_pde_solve(gr,ham,&ini_re,&ini_im,dz,k0, opt)); }
@@ -1004,32 +1081,42 @@ public:
inline mglData Hist(const mglDataA &x, const mglDataA &y, const mglDataA &z, const mglDataA &a, const char *opt="")
{ return mglData(true, mgl_hist_xyz(gr, &x, &y, &z, &a, opt)); }
-
-
-
inline void Compression(bool){} // NOTE: Add later -- IDTF
inline void VertexColor(bool){} // NOTE: Add later -- IDTF
inline void DoubleSided(bool){} // NOTE: Add later -- IDTF
inline void TextureColor(bool){} // NOTE: Add later -- IDTF
};
//-----------------------------------------------------------------------------
+/// Callback function for asking user a question. Result shouldn't exceed 1024.
+extern void (*mgl_ask_func)(const wchar_t *quest, wchar_t *res);
+//-----------------------------------------------------------------------------
+/// Wrapper class for MGL parsing
class mglParse
{
HMPR pr;
public:
+ mglParse(HMPR p) { pr = p; mgl_use_parser(pr,1); }
+ mglParse(mglParse &p) { pr = p.pr; mgl_use_parser(pr,1); }
mglParse(bool setsize=false)
{ pr=mgl_create_parser(); mgl_parser_allow_setsize(pr, setsize); }
- ~mglParse() { mgl_delete_parser(pr); }
+ ~mglParse() { if(mgl_use_parser(pr,-1)<1) mgl_delete_parser(pr); }
+ inline HMPR Self() { return pr; }
inline int Parse(mglGraph *gr, const char *str, int pos)
{ return mgl_parse(gr->Self(), pr, str, pos); }
inline int Parse(mglGraph *gr, const wchar_t *str, int pos)
{ return mgl_parsew(gr->Self(), pr, str, pos); }
- inline void Execute(mglGraph *gr, const char *str, void (*error)(int line, int kind, char *mes)=NULL)
- { mgl_parse_text(gr->Self(), pr, str, error); }
- inline void Execute(mglGraph *gr, const wchar_t *str, void (*error)(int line, int kind, char *mes)=NULL)
- { mgl_parsew_text(gr->Self(), pr, str, error); }
+ inline void Execute(mglGraph *gr, const char *str, void (*error)(const char *mes, void *par)=NULL, int high=-1, void *par=NULL)
+ { mgl_parse_text(gr->Self(), pr, str, error, high, par); }
+ inline void Execute(mglGraph *gr, const wchar_t *str, void (*error)(const char *mes, void *par)=NULL, int high=-1, void *par=NULL)
+ { mgl_parsew_text(gr->Self(), pr, str, error, high, par); }
inline void Execute(mglGraph *gr, FILE *fp, bool print=false)
{ mgl_parse_file(gr->Self(), pr, fp, print); }
+ inline int CmdType(const char *name)
+ { return mgl_cmd_type(pr, name); }
+ inline const char *CmdFormat(const char *name)
+ { return mgl_cmd_frmt(pr, name); }
+ inline const char *CmdDesc(const char *name)
+ { return mgl_cmd_desc(pr, name); }
inline void AddParam(int id, const char *str) { mgl_add_param(pr, id, str); }
inline void AddParam(int id, const wchar_t *str){ mgl_add_paramw(pr, id, str); }
diff --git a/include/mgl/mgl_cf.h b/include/mgl/mgl_cf.h
index 21f4e9e..b4a37c0 100644
--- a/include/mgl/mgl_cf.h
+++ b/include/mgl/mgl_cf.h
@@ -1,36 +1,35 @@
-/***************************************************************************
- * mgl_cf.cpp is part of Math Graphic Library
- * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Library General Public License as *
- * published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
+/***************************************************************************
+ * mgl_cf.cpp is part of Math Graphic Library
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
#ifndef _MGL_CF_H_
-#define _MGL_CF_H_
+#define _MGL_CF_H_
/*****************************************************************************/
-#include "mgl/base_cf.h"
-#include "mgl/data.h"
-#include "mgl/cont.h"
-#include "mgl/fit.h"
-#include "mgl/plot.h"
-#include "mgl/surf.h"
-#include "mgl/volume.h"
-#include "mgl/vect.h"
-#include "mgl/prim.h"
-#include "mgl/other.h"
-#include "mgl/canvas_cf.h"
-#include "mgl/opengl.h"
+#include "mgl/base_cf.h"
+#include "mgl/data.h"
+#include "mgl/cont.h"
+#include "mgl/fit.h"
+#include "mgl/plot.h"
+#include "mgl/surf.h"
+#include "mgl/volume.h"
+#include "mgl/vect.h"
+#include "mgl/prim.h"
+#include "mgl/other.h"
+#include "mgl/canvas_cf.h"
/*****************************************************************************/
-#endif
+#endif
diff --git a/include/mgl/opengl.h b/include/mgl/opengl.h
index bb123cf..2245a36 100644
--- a/include/mgl/opengl.h
+++ b/include/mgl/opengl.h
@@ -2,67 +2,67 @@
* opengl.h is part of Math Graphic Library
* Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
* *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Library General Public License as *
- * published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-#ifndef MGL_CANVAS_GL_H
-#define MGL_CANVAS_GL_H
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+#ifndef MGL_CANVAS_GL_H
+#define MGL_CANVAS_GL_H
/*****************************************************************************/
-#ifdef __cplusplus
-#include "mgl/canvas.h"
-
-class mglCanvasGL : public mglCanvas
-{
-public:
- mglCanvasGL();
- ~mglCanvasGL();
-
- void SetQuality(int =0) { Quality=2; }
- void Finish();
- void SetSize(int ,int ) {}
- void View(float tetX,float tetY,float tetZ);
- int NewFrame();
- void EndFrame();
-
- bool Alpha(bool enable);
- void Fog(float d, float dz=0.25);
- bool Light(bool enable);
- void Light(int n, bool enable);
- void AddLight(int n,mglPoint p, char c='w', float bright=0.5, bool infty=true, float ap=0);
- void Clf(mglColor Back=WC);
-
-protected:
- void line_draw(long p1, long p2, mglDrawReg *d);
- void trig_draw(long p1, long p2, long p3, bool anorm, mglDrawReg *d);
- void quad_draw(long p1, long p2, long p3, long p4, mglDrawReg *d);
- void pnt_draw(long p, mglDrawReg *d);
-
- unsigned char **GetRGBLines(long &w, long &h, unsigned char *&f, bool solid=true);
- void LightScale();
- void set_pen(unsigned style,float width);
-};
+#ifdef __cplusplus
+#include "mgl/canvas.h"
+
+class mglCanvasGL : public mglCanvas
+{
+public:
+ mglCanvasGL();
+ ~mglCanvasGL();
+
+ void SetQuality(int =0) { Quality=2; }
+ void Finish();
+ void SetSize(int ,int ) {}
+ void View(float tetX,float tetY,float tetZ);
+ int NewFrame();
+ void EndFrame();
+
+ bool Alpha(bool enable);
+ void Fog(float d, float dz=0.25);
+ bool Light(bool enable);
+ void Light(int n, bool enable);
+ void AddLight(int n,mglPoint r,mglPoint d, char c='w', float bright=0.5, float ap=0);
+ void Clf(mglColor Back=WC);
+
+protected:
+ void line_draw(long p1, long p2, mglDrawReg *d);
+ void trig_draw(long p1, long p2, long p3, bool anorm, mglDrawReg *d);
+ void quad_draw(long p1, long p2, long p3, long p4, mglDrawReg *d);
+ void pnt_draw(long p, mglDrawReg *d);
+
+ unsigned char **GetRGBLines(long &w, long &h, unsigned char *&f, bool solid=true);
+ void LightScale();
+ void set_pen(unsigned style,float width);
+};
extern "C" {
#endif
/*****************************************************************************/
-HMGL mgl_create_graph_gl();
-/*****************************************************************************/
+HMGL mgl_create_graph_gl();
+/*****************************************************************************/
uintptr_t mgl_create_graph_gl_();
/*****************************************************************************/
#ifdef __cplusplus
}
-#endif
+#endif
/*****************************************************************************/
-#endif
-
+#endif
+
diff --git a/include/mgl/parser.h b/include/mgl/parser.h
index bfffe05..9ec33a6 100644
--- a/include/mgl/parser.h
+++ b/include/mgl/parser.h
@@ -32,22 +32,20 @@ struct mglArg
std::wstring w; ///< String with parameters
std::string s; ///< String with parameters
mreal v; ///< Numerical value (used if type==2)
- mglArg() { type=-1; d=0; v=0; s[0]=0; w[0]=0; };
+ mglArg() { type=-1; d=0; v=0; };
};
//-----------------------------------------------------------------------------
/// Structure for MGL command
struct mglCommand
{
- const wchar_t *name; ///< Name of command
- const wchar_t *desc; ///< Short command description (can be NULL)
- const wchar_t *form; ///< Format of command arguments (can be NULL)
+ const char *name; ///< Name of command
+ const char *desc; ///< Short command description (can be NULL)
+ const char *form; ///< Format of command arguments (can be NULL)
/// Function for executing (plotting)
int (*exec)(mglGraph *gr, long n, mglArg *a, int k[10], const char *opt);
/// Function for exporting in C++ (can be NULL)
void (*save)(wchar_t out[1024], long n, mglArg *a, int k[10], const char *opt);
- bool create; ///< Should parser create 1st the array automatically
- int type; ///< Type of command: 0 - data plot, 1 - other plot,
- /// 2 - setup, 3 - data handle, 4 - subplot, 5 - program
+ int type; ///< Type of command: 0 - data plot, 1 - other plot, 2 - setup, 3 - data handle, 4 - data create, 5 - subplot, 6 - program
};
extern mglCommand mgls_base_cmd[];
//-----------------------------------------------------------------------------
@@ -99,23 +97,27 @@ struct mglFnStack
wchar_t *par[9];
};
//-----------------------------------------------------------------------------
+/// Function for asking question in console mode
+void mgl_ask_gets(const wchar_t *quest, wchar_t *res);
+//-----------------------------------------------------------------------------
/// Structure for the command argument (see mglGraph::Exec()).
class mglParser
{
friend void mgl_export(wchar_t *out, const wchar_t *in, int type);
public:
- static mglCommand Prg[]; ///< List of program flow commands (parsed by itself)
mglVar *DataList; ///< List with data and its names
mglNum *NumList; ///< List with numbers and its names
bool AllowSetSize; ///< Allow using setsize command
bool Stop; ///< Stop command was. Flag prevent further execution
- mglCommand *Cmd; ///< Table of recognizable MGL commands (can be changed by user). It MUST be sorted by 'name' field !!!
+ mglCommand *Cmd; ///< Table of MGL commands (can be changed by user). It MUST be sorted by 'name'!!!
wchar_t *op1, *op2; ///< Buffer for options (are used if out!=NULL)
+ long InUse; ///< Smart pointer (number of users)
mglParser(bool setsize=false);
~mglParser();
/// Find the command by the keyword name
- mglCommand *FindCommand(const wchar_t *name, bool prog=false);
+ mglCommand *FindCommand(const char *name);
+ mglCommand *FindCommand(const wchar_t *name);
/// Parse and execute the string of MGL script
inline int Parse(HMGL gr, const char *str, long pos=0)
{ mglGraph GR(gr); return Parse(&GR,str,pos); }
@@ -133,17 +135,17 @@ public:
{ mglGraph GR(gr); Execute(&GR,fp,print); }
void Execute(mglGraph *gr, FILE *fp, bool print=false);
/// Execute MGL script from array of lines
- inline void Execute(HMGL gr, int num, const wchar_t **text, void (*error)(int line, int kind, char *mes)=NULL)
- { mglGraph GR(gr); Execute(&GR,num,text,error); }
- void Execute(mglGraph *gr, int num, const wchar_t **text, void (*error)(int line, int kind, char *mes)=NULL);
+ inline void Execute(HMGL gr, int num, const wchar_t **text, void (*error)(const char *mes, void *par)=NULL, int high=-1, void *par=NULL)
+ { mglGraph GR(gr); Execute(&GR,num,text,error,high); }
+ void Execute(mglGraph *gr, int num, const wchar_t **text, void (*error)(const char *mes, void *par)=NULL, int high=-1, void *par=NULL);
/// Execute MGL script text with '\n' separated lines
- inline void Execute(HMGL gr, const wchar_t *text, void (*error)(int line, int kind, char *mes)=NULL)
- { mglGraph GR(gr); Execute(&GR,text,error); }
- void Execute(mglGraph *gr, const wchar_t *text, void (*error)(int line, int kind, char *mes)=NULL);
+ inline void Execute(HMGL gr, const wchar_t *text, void (*error)(const char *mes, void *par)=NULL, int high=-1, void *par=NULL)
+ { mglGraph GR(gr); Execute(&GR,text,error,high); }
+ void Execute(mglGraph *gr, const wchar_t *text, void (*error)(const char *mes, void *par)=NULL, int high=-1, void *par=NULL);
/// Execute MGL script text with '\n' separated lines
- inline void Execute(HMGL gr, const char *text, void (*error)(int line, int kind, char *mes)=NULL)
- { mglGraph GR(gr); Execute(&GR,text,error); }
- void Execute(mglGraph *gr, const char *text, void (*error)(int line, int kind, char *mes)=NULL);
+ inline void Execute(HMGL gr, const char *text, void (*error)(const char *mes, void *par)=NULL, int high=-1, void *par=NULL)
+ { mglGraph GR(gr); Execute(&GR,text,error,high); }
+ void Execute(mglGraph *gr, const char *text, void (*error)(const char *mes, void *par)=NULL, int high=-1, void *par=NULL);
/// Scan for functions (use NULL for reset)
void ScanFunc(const wchar_t *line);
/// Check if name is function and return its address (or 0 if no)
diff --git a/include/mgl/plot.h b/include/mgl/plot.h
index 10e8ea1..4c3fbef 100644
--- a/include/mgl/plot.h
+++ b/include/mgl/plot.h
@@ -2,37 +2,37 @@
* plot.h is part of Math Graphic Library
* Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
* *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Library General Public License as *
- * published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
#ifndef _MGL_1D_H_
-#define _MGL_1D_H_
+#define _MGL_1D_H_
#include "mgl/base.h"
/*****************************************************************************/
-#ifdef __cplusplus
+#ifdef __cplusplus
extern "C" {
#endif
/*****************************************************************************/
void mgl_fplot(HMGL gr, const char *eqY, const char *pen, const char *opt);
void mgl_fplot_xyz(HMGL gr, const char *eqX, const char *eqY, const char *eqZ, const char *pen, const char *opt);
-void mgl_fplot_(uintptr_t *gr, const char *fy, const char *stl, const char *opt, int ly, int ls, int lo);
+void mgl_fplot_(uintptr_t *gr, const char *fy, const char *stl, const char *opt, int ly, int ls, int lo);
void mgl_fplot_xyz_(uintptr_t *gr, const char *fx, const char *fy, const char *fz, const char *stl, const char *opt, int lx, int ly, int lz, int ls, int lo);
/*****************************************************************************/
-void mgl_radar(HMGL graph, HCDT a, const char *pen, const char *opt);
-void mgl_radar_(uintptr_t *gr, uintptr_t *a, const char *pen, const char *opt, int l,int lo);
-/*****************************************************************************/
+void mgl_radar(HMGL graph, HCDT a, const char *pen, const char *opt);
+void mgl_radar_(uintptr_t *gr, uintptr_t *a, const char *pen, const char *opt, int l,int lo);
+/*****************************************************************************/
void mgl_plot_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, const char *pen, const char *opt);
void mgl_plot_xy(HMGL graph, HCDT x, HCDT y, const char *pen, const char *opt);
void mgl_plot(HMGL graph, HCDT y, const char *pen, const char *opt);
@@ -40,13 +40,20 @@ void mgl_plot_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, c
void mgl_plot_xy_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, const char *pen, const char *opt,int,int);
void mgl_plot_(uintptr_t *graph, uintptr_t *y, const char *pen, const char *opt,int,int);
/*****************************************************************************/
-void mgl_tens_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT c, const char *pen, const char *opt);
-void mgl_tens_xy(HMGL graph, HCDT x, HCDT y, HCDT c, const char *pen, const char *opt);
-void mgl_tens(HMGL graph, HCDT y, HCDT c, const char *pen, const char *opt);
+void mgl_tens_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT c, const char *pen, const char *opt);
+void mgl_tens_xy(HMGL graph, HCDT x, HCDT y, HCDT c, const char *pen, const char *opt);
+void mgl_tens(HMGL graph, HCDT y, HCDT c, const char *pen, const char *opt);
void mgl_tens_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *c, const char *pen, const char *opt,int,int);
void mgl_tens_xy_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *c, const char *pen, const char *opt,int,int);
void mgl_tens_(uintptr_t *graph, uintptr_t *y, uintptr_t *c, const char *pen, const char *opt,int,int);
-/*****************************************************************************/
+/*****************************************************************************/
+void mgl_tape_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, const char *pen, const char *opt);
+void mgl_tape_xy(HMGL graph, HCDT x, HCDT y, const char *pen, const char *opt);
+void mgl_tape(HMGL graph, HCDT y, const char *pen, const char *opt);
+void mgl_tape_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *pen, const char *opt,int,int);
+void mgl_tape_xy_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, const char *pen, const char *opt,int,int);
+void mgl_tape_(uintptr_t *graph, uintptr_t *y, const char *pen, const char *opt,int,int);
+/*****************************************************************************/
void mgl_boxplot_xy(HMGL graph, HCDT x, HCDT a, const char *pen, const char *opt);
void mgl_boxplot(HMGL graph, HCDT a, const char *pen, const char *opt);
/*****************************************************************************/
@@ -75,8 +82,8 @@ void mgl_barh(HMGL graph, HCDT v, const char *pen, const char *opt);
void mgl_chart(HMGL graph, HCDT a, const char *col, const char *opt);
/*****************************************************************************/
void mgl_error_exy(HMGL graph, HCDT x, HCDT y, HCDT ex, HCDT ey, const char *pen, const char *opt);
-void mgl_error_xy(HMGL graph, HCDT x, HCDT y, HCDT ey, const char *pen, const char *opt);
-void mgl_error(HMGL graph, HCDT y, HCDT ey, const char *pen, const char *opt);
+void mgl_error_xy(HMGL graph, HCDT x, HCDT y, HCDT ey, const char *pen, const char *opt);
+void mgl_error(HMGL graph, HCDT y, HCDT ey, const char *pen, const char *opt);
/*****************************************************************************/
void mgl_mark_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT r, const char *pen, const char *opt);
void mgl_mark_xy(HMGL graph, HCDT x, HCDT y, HCDT r, const char *pen, const char *opt);
@@ -89,8 +96,8 @@ void mgl_tube_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, float r, const char *pen,
void mgl_tube_xy(HMGL graph, HCDT x, HCDT y, float r, const char *penl, const char *opt);
void mgl_tube(HMGL graph, HCDT y, float r, const char *pen, const char *opt);
/*****************************************************************************/
-void mgl_candle_xyv(HMGL gr, HCDT x, HCDT v1, HCDT v2, HCDT y1, HCDT y2, const char *pen, const char *opt);
-void mgl_candle_yv(HMGL gr, HCDT v1, HCDT v2, HCDT y1, HCDT y2, const char *pen, const char *opt);
+void mgl_candle_xyv(HMGL gr, HCDT x, HCDT v1, HCDT v2, HCDT y1, HCDT y2, const char *pen, const char *opt);
+void mgl_candle_yv(HMGL gr, HCDT v1, HCDT v2, HCDT y1, HCDT y2, const char *pen, const char *opt);
void mgl_candle(HMGL gr, HCDT v, HCDT y1, HCDT y2, const char *pen, const char *opt);
/*****************************************************************************/
void mgl_boxplot_xy_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, const char *pen, const char *opt,int,int);
@@ -131,6 +138,6 @@ void mgl_candle_(uintptr_t *gr, uintptr_t *y, uintptr_t *y1, uintptr_t *y2, cons
/*****************************************************************************/
#ifdef __cplusplus
}
-#endif
+#endif
/*****************************************************************************/
-#endif
+#endif
diff --git a/include/mgl/prim.h b/include/mgl/prim.h
index c2453ac..f27180a 100644
--- a/include/mgl/prim.h
+++ b/include/mgl/prim.h
@@ -2,57 +2,61 @@
* prim.h is part of Math Graphic Library
* Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
* *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Library General Public License as *
- * published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
#ifndef _MGL_PRIM_H_
-#define _MGL_PRIM_H_
+#define _MGL_PRIM_H_
#include "mgl/base.h"
/*****************************************************************************/
-#ifdef __cplusplus
+#ifdef __cplusplus
extern "C" {
#endif
/*****************************************************************************/
void mgl_mark(HMGL gr, float x,float y,float z,const char *mark);
void mgl_ball(HMGL gr, float x,float y,float z);
-
+/*****************************************************************************/
void mgl_line(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z2, const char *pen,int n);
-void mgl_curve(HMGL gr, float x1, float y1, float z1, float dx1, float dy1, float dz1, float x2, float y2, float z2, float dx2, float dy2, float dz2, const char *pen,int n);
-
-void mgl_error_box(HMGL gr, float x, float y, float z, float ex, float ey, float ez, const char *pen);
-
-void mgl_face(HMGL gr, float x0, float y0, float z0, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, const char *stl);
+void mgl_curve(HMGL gr, float x1, float y1, float z1, float dx1, float dy1, float dz1, float x2, float y2, float z2, float dx2, float dy2, float dz2, const char *pen,int n);
+/*****************************************************************************/
+void mgl_error_box(HMGL gr, float x, float y, float z, float ex, float ey, float ez, const char *pen);
+/*****************************************************************************/
+void mgl_face(HMGL gr, float x0, float y0, float z0, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, const char *stl);
void mgl_facex(HMGL gr, float x0, float y0, float z0, float wy, float wz, const char *stl, float dx, float dy);
void mgl_facey(HMGL gr, float x0, float y0, float z0, float wx, float wz, const char *stl, float dx, float dy);
void mgl_facez(HMGL gr, float x0, float y0, float z0, float wx, float wy, const char *stl, float dx, float dy);
-
+/*****************************************************************************/
void mgl_sphere(HMGL gr, float x, float y, float z, float r, const char *stl);
void mgl_drop(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z2, float r, const char *stl, float shift, float ap);
-void mgl_cone(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z2, float r1, float r2, const char *stl, int edge);
+void mgl_cone(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z2, float r1, float r2, const char *stl);
void mgl_ellipse(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z2, float r, const char *stl);
void mgl_rhomb(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z2, float r, const char *stl);
-
+/*****************************************************************************/
+void mgl_cones_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, const char *pen, const char *opt);
+void mgl_cones_xz(HMGL graph, HCDT x, HCDT z, const char *pen, const char *opt);
+void mgl_cones(HMGL graph, HCDT z, const char *pen, const char *opt);
+/*****************************************************************************/
void mgl_dew_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, const char *opt);
void mgl_dew_2d(HMGL gr, HCDT ax, HCDT ay, const char *sch, const char *optl);
-
+/*****************************************************************************/
void mgl_puts(HMGL graph, float x, float y, float z,const char *text, const char *font, float size);
void mgl_putsw(HMGL graph, float x, float y, float z,const wchar_t *text, const char *font, float size);
-
+/*****************************************************************************/
void mgl_puts_dir(HMGL graph, float x, float y, float z, float dx, float dy, float dz, const char *text, const char *font, float size);
void mgl_putsw_dir(HMGL graph, float x, float y, float z, float dx, float dy, float dz, const wchar_t *text, const char *font, float size);
-
+/*****************************************************************************/
void mgl_textmark_xyzr(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT r, const char *text, const char *fnt, const char *opt);
void mgl_textmark_xyr(HMGL graph, HCDT x, HCDT y, HCDT r, const char *text, const char *fnt, const char *opt);
void mgl_textmark_yr(HMGL graph, HCDT y, HCDT r, const char *text, const char *fnt, const char *opt);
@@ -60,45 +64,60 @@ void mgl_textmark(HMGL graph, HCDT y, const char *text, const char *fnt, const c
void mgl_textmarkw_xyzr(HMGL graph, HCDT x, HCDT y, HCDT z, HCDT r, const wchar_t *text, const char *fnt, const char *opt);
void mgl_textmarkw_xyr(HMGL graph, HCDT x, HCDT y, HCDT r, const wchar_t *text, const char *fnt, const char *opt);
void mgl_textmarkw_yr(HMGL graph, HCDT y, HCDT r, const wchar_t *text, const char *fnt, const char *opt);
-void mgl_textmarkw(HMGL graph, HCDT y, const wchar_t *text, const char *fnt, const char *opt);
-
-void mgl_puts_fit(HMGL gr, float x, float y, float z, const char *prefix, const char *font, float size);
-
+void mgl_textmarkw(HMGL graph, HCDT y, const wchar_t *text, const char *fnt, const char *opt);
+/*****************************************************************************/
+void mgl_puts_fit(HMGL gr, float x, float y, float z, const char *prefix, const char *font, float size);
+/*****************************************************************************/
+void mgl_label_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, const char *text, const char *fnt, const char *opt);
+void mgl_labelw_xyz(HMGL graph, HCDT x, HCDT y, HCDT z, const wchar_t *text, const char *fnt, const char *opt);
+void mgl_label_xy(HMGL graph, HCDT x, HCDT y, const char *text, const char *fnt, const char *opt);
+void mgl_labelw_xy(HMGL graph, HCDT x, HCDT y, const wchar_t *text, const char *fnt, const char *opt);
+void mgl_label_y(HMGL graph, HCDT y, const char *text, const char *fnt, const char *opt);
+void mgl_labelw_y(HMGL graph, HCDT y, const wchar_t *text, const char *fnt, const char *opt);
+/*****************************************************************************/
/*****************************************************************************/
void mgl_mark_(uintptr_t *gr, float *x,float *y,float *z,const char *mark,int);
void mgl_ball_(uintptr_t *gr, float *x,float *y,float *z);
-
+/*****************************************************************************/
void mgl_line_(uintptr_t *gr, float *x1, float *y1, float *z1, float *x2, float *y2, float *z2, const char *pen,int *n,int);
-void mgl_curve_(uintptr_t* gr, float *x1, float *y1, float *z1, float *dx1, float *dy1, float *dz1, float *x2, float *y2, float *z2, float *dx2, float *dy2, float *dz2, const char *pen,int *n, int l);
-
-void mgl_error_box_(uintptr_t* gr, float *x, float *y, float *z, float *ex, float *ey, float *ez, const char *pen, int);
-
-void mgl_face_(uintptr_t* gr, float *x0, float *y0, float *z0, float *x1, float *y1, float *z1, float *x2, float *y2, float *z2, float *x3, float *y3, float *z3, const char *stl, int);
+void mgl_curve_(uintptr_t* gr, float *x1, float *y1, float *z1, float *dx1, float *dy1, float *dz1, float *x2, float *y2, float *z2, float *dx2, float *dy2, float *dz2, const char *pen,int *n, int l);
+/*****************************************************************************/
+void mgl_error_box_(uintptr_t* gr, float *x, float *y, float *z, float *ex, float *ey, float *ez, const char *pen, int);
+/*****************************************************************************/
+void mgl_face_(uintptr_t* gr, float *x0, float *y0, float *z0, float *x1, float *y1, float *z1, float *x2, float *y2, float *z2, float *x3, float *y3, float *z3, const char *stl, int);
void mgl_facex_(uintptr_t* gr, float *x0, float *y0, float *z0, float *wy, float *wz, const char *stl, float *dx, float *dy, int l);
void mgl_facey_(uintptr_t* gr, float *x0, float *y0, float *z0, float *wx, float *wz, const char *stl, float *dx, float *dy, int l);
void mgl_facez_(uintptr_t* gr, float *x0, float *y0, float *z0, float *wx, float *wy, const char *stl, float *dx, float *dy, int l);
-
+/*****************************************************************************/
void mgl_sphere_(uintptr_t* gr, float *x, float *y, float *z, float *r, const char *stl, int);
void mgl_drop_(uintptr_t* gr, float *x1, float *y1, float *z1, float *x2, float *y2, float *z2, float *r, const char *stl, float *shift, float *ap, int);
-void mgl_cone_(uintptr_t* gr, float *x1, float *y1, float *z1, float *x2, float *y2, float *z2, float *r1, float *r2, const char *stl, int *edge, int);
+void mgl_cone_(uintptr_t* gr, float *x1, float *y1, float *z1, float *x2, float *y2, float *z2, float *r1, float *r2, const char *stl, int);
void mgl_ellipse_(uintptr_t* gr, float *x1, float *y1, float *z1, float *x2, float *y2, float *z2, float *r, const char *stl, int);
void mgl_rhomb_(uintptr_t* gr, float *x1, float *y1, float *z1, float *x2, float *y2, float *z2, float *r, const char *stl, int);
-
+/*****************************************************************************/
+void mgl_cones_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *pen, const char *opt,int,int);
+void mgl_coners_xz_(uintptr_t *graph, uintptr_t *x, uintptr_t *z, const char *pen, const char *opt,int,int);
+void mgl_cones_(uintptr_t *graph, uintptr_t *z, const char *pen, const char *opt,int,int);
+/*****************************************************************************/
void mgl_puts_(uintptr_t *graph, float *x, float *y, float *z,const char *text, const char *font, float *size, int, int);
void mgl_puts_dir_(uintptr_t *graph, float *x, float *y, float *z, float *dx, float *dy, float *dz, const char *text, const char *font, float *size, int, int);
-
+/*****************************************************************************/
void mgl_textmark_xyzr_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *r, const char *text, const char *fnt, const char *opt,int,int,int);
void mgl_textmark_xyr_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *r, const char *text, const char *fnt, const char *opt,int,int,int);
void mgl_textmark_yr_(uintptr_t *graph, uintptr_t *y, uintptr_t *r, const char *text, const char *fnt, const char *opt,int,int,int);
void mgl_textmark_(uintptr_t *graph, uintptr_t *y, const char *text, const char *fnt, const char *opt,int,int,int);
-
+/*****************************************************************************/
void mgl_puts_fit_(uintptr_t* gr, float *x, float *y, float *z, const char *prefix, const char *font, float *size, int l, int n);
-
-void mgl_dew_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *ax, uintptr_t *ay, const char *sch, const char *opt,int,int);
-void mgl_dew_2d_(uintptr_t *gr, uintptr_t *ax, uintptr_t *ay, const char *sch, const char *opt,int,int l);
+/*****************************************************************************/
+void mgl_label_xyz_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *text, const char *fnt, const char *opt,int,int,int);
+void mgl_label_xy_(uintptr_t *graph, uintptr_t *x, uintptr_t *y, const char *text, const char *fnt, const char *opt,int,int,int);
+void mgl_label_y_(uintptr_t *graph, uintptr_t *y, const char *text, const char *fnt, const char *opt,int,int,int);
+/*****************************************************************************/
+void mgl_dew_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *ax, uintptr_t *ay, const char *sch, const char *opt,int,int);
+void mgl_dew_2d_(uintptr_t *gr, uintptr_t *ax, uintptr_t *ay, const char *sch, const char *opt,int,int l);
/*****************************************************************************/
#ifdef __cplusplus
}
-#endif
+#endif
/*****************************************************************************/
-#endif
+#endif
diff --git a/include/mgl/qt.h b/include/mgl/qt.h
index 09f3a82..40d9d25 100644
--- a/include/mgl/qt.h
+++ b/include/mgl/qt.h
@@ -17,7 +17,6 @@
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
-//-----------------------------------------------------------------------------
#ifndef _MGL_QT_H_
#define _MGL_QT_H_
/*****************************************************************************/
@@ -44,13 +43,14 @@ public:
QMathGL(QWidget *parent = 0, Qt::WindowFlags f = 0);
~QMathGL();
- double getRatio() { return double(graph->GetWidth())/graph->GetHeight(); };
+ double getRatio() { return double(gr->GetWidth())/gr->GetHeight(); };
void setPopup(QMenu *p) { popup = p; }; ///< Set popup menu pointer
void setSize(int w, int h); ///< Set window/picture sizes
- void setGraph(mglCanvas *gr); ///< Set grapher object
- inline void setGraph(mglGraph *gr)
- { setGraph(dynamic_cast<mglCanvas *>(gr->Self())); }
- inline HMGL getGraph() { return graph; }
+ void setGraph(mglCanvas *GR) ///< Set grapher object
+ { if(gr) { delete gr; gr=GR; } }
+ inline void setGraph(mglGraph *GR)
+ { setGraph(dynamic_cast<mglCanvas *>(GR->Self())); }
+ inline HMGL getGraph() { return gr; }
/// Set drawing functions and its parameter
inline void setDraw(int (*func)(mglBase *gr, void *par), void *par=0)
{ draw_func = func; draw_par = par; }
@@ -59,7 +59,6 @@ public:
inline void setDraw(int (*draw)(mglGraph *gr))
{ setDraw(mgl_draw_graph,(void*)draw); }
-
int getPer() {return int(per);}; ///< Get perspective value
int getPhi() {return int(phi);}; ///< Get Phi-angle value
int getTet() {return int(tet);}; ///< Get Theta-angle value
@@ -70,41 +69,71 @@ public:
public slots:
void refresh();
- void update(mglCanvas *gr=0); ///< Update picture
+ void update(); ///< Update picture
void copy(); ///< copy graphics to clipboard
+ void copyClickCoor(); ///< copy click coordinates to clipboard
void print(); ///< Print plot
-// void stop(); ///< Stop execution
+ void stop(); ///< Stop execution
void setPer(int p); ///< Set perspective value
void setPhi(int p); ///< Set Phi-angle value
void setTet(int t); ///< Set Theta-angle value
void setAlpha(bool a); ///< Switch on/off transparency
void setLight(bool l); ///< Switch on/off lightning
+ void setGrid(bool r); ///< Switch on/off grid drawing
+ void imgSize(int w, int h); ///< Set image size
+
+ void setZoom(bool z); ///< Switch on/off mouse zooming
void setRotate(bool r); ///< Switch on/off mouse rotation
+ void zoomIn(); ///< Zoom in graphics
+ void zoomOut(); ///< Zoom out graphics
void restore(); ///< Restore zoom and rotation to default values
// void reload(); ///< Reload data and execute script
+ void shiftLeft(); ///< Shift graphics to left direction
+ void shiftRight(); ///< Shift graphics to right direction
+ void shiftUp(); ///< Shift graphics to up direction
+ void shiftDown(); ///< Shift graphics to down direction
+
void exportPNG(QString fname=""); ///< export to PNG file
void exportPNGs(QString fname=""); ///< export to PNG file (no transparency)
+ void exportGIF(QString fname=""); ///< export to GIF file
void exportJPG(QString fname=""); ///< export to JPEG file
void exportBPS(QString fname=""); ///< export to bitmap EPS file
void exportEPS(QString fname=""); ///< export to vector EPS file
void exportSVG(QString fname=""); ///< export to SVG file
+ void exportTEX(QString fname=""); ///< export to SVG file
+ void exportTGA(QString fname=""); ///< export to TGA file
+
+ void exportXYZ(QString fname=""); ///< export to XYZ file
+ void exportOBJ(QString fname=""); ///< export to OBJ file
+ void exportSTL(QString fname=""); ///< export to STL file
+ void exportOFF(QString fname=""); ///< export to OFF file
+ void exportWRL(QString fname=""); ///< export to WRL file
+ void exportX3D(QString fname=""); ///< export to XYZ file
void exportIDTF(QString fname=""); ///< export to IDTF file
void setMGLFont(QString path); ///< restore/load font for graphics
- /* //----These functions are executed only if graph is mglCanvasQT instance----
- * void adjust(); ///< Adjust plot size to fill entire window
- * void nextSlide(); ///< Show next slide
- * void prevSlide(); ///< Show previous slide
- * void animation(bool st=true); ///< Start animation*/
+
+ void adjust(); ///< Adjust plot size to fill entire window
+ void nextSlide(); ///< Show next slide
+ void prevSlide(); ///< Show previous slide
+ void animation(bool st=true); ///< Start animation
void about(); ///< Show about information
void aboutQt(); ///< Show information about Qt version
signals:
- void phiChanged(int); ///< Phi angle changed (by mouse or by toolbar)
- void tetChanged(int); ///< Tet angle changed (by mouse or by toolbar)
- void perChanged(int); ///< Perspective changed (by mouse or by toolbar)
+ void gridChanged(int); ///< Grid drawing changed (by mouse or by toolbar)
+ void phiChanged(int); ///< Phi angle changed (by mouse or by toolbar)
+ void tetChanged(int); ///< Tet angle changed (by mouse or by toolbar)
+ void perChanged(int); ///< Perspective changed (by mouse or by toolbar)
void alphaChanged(bool); ///< Transparency changed (by toolbar)
void lightChanged(bool); ///< Lighting changed (by toolbar)
+ void zoomChanged(bool); ///< Zooming changed (by toolbar)
void rotateChanged(bool); ///< Rotation changed (by toolbar)
void mouseClick(float,float,float); ///< Position of mouse click
+ void frameChanged(int); ///< Need another frame to show
+ void showWarn(QString); ///< Show warnings
+ void posChanged(QString message); ///< user click to show mouse position
+ void objChanged(int objId); ///< User double-click to select object/line
+ void refreshData();
+
protected:
void paintEvent(QPaintEvent *);
void resizeEvent(QResizeEvent *);
@@ -112,7 +141,7 @@ protected:
void mouseReleaseEvent(QMouseEvent *);
void mouseMoveEvent(QMouseEvent *);
- mglCanvas *graph; ///< Built-in mglCanvasQT-er instance (used by default)
+ mglCanvas *gr; ///< Built-in mglCanvasQT-er instance (used by default)
void *draw_par; ///< Parameters for drawing function mglCanvasW::DrawFunc.
/// Drawing function for window procedure. It should return the number of frames.
int (*draw_func)(mglBase *gr, void *par);
@@ -123,6 +152,7 @@ protected:
bool alpha; ///< Transparency state
bool light; ///< Lightning state
bool zoom; ///< Mouse zoom state
+ bool grid; ///< Grid drawing state
bool rotate; ///< Mouse rotation state
float x1,x2,y1,y2; ///< Zoom in region
bool showMessage; ///< Flag for showing messages (enabled by each execute())
@@ -153,25 +183,36 @@ using mglCanvasW::Window;
/// Switch on/off lighting (do not overwrite switches in user drawing function)
void ToggleLight();
void ToggleRotate();///< Switch on/off rotation by mouse
+ void ToggleZoom(); ///< Switch on/off zooming by mouse
void ToggleNo(); ///< Switch off all zooming and rotation
void Update(); ///< Update picture by calling user drawing function
void Adjust(); ///< Adjust size of bitmap to window size
- void NextFrame(); ///< Show next frame (if one)
- void PrevFrame(); ///< Show previous frame (if one)
- void Animation(); ///< Run slideshow (animation) of frames
+ void GotoFrame(int d); ///< Show arbitrary frame (use relative step)
+ void Animation(); ///< Run slideshow (animation) of frames
protected:
QScrollArea *scroll; ///< Scrolling area
QMenu *popup; ///< Popup menu
QSpinBox *tet, *phi; ///< Spin box for angles
- QAction *anim;
- QTimer *timer;
-
- void makeMenu(); ///< Create menu, toolbar and popup menu
+};
+//-----------------------------------------------------------------------------
+/// Class for drawing the MGL script
+struct mglDrawScript : public mglDraw
+{
+ HMPR par; ///< Parser to be used
+ QString text; ///< Script to be drawn
+ long line; ///< Line which will be highlited
+ mglDrawScript(HMPR p) { par=p; line=-1; }
+ int Draw(mglGraph *gr)
+ { mgl_parse_text(gr->Self(),par,text.toAscii(),NULL,line,NULL); return 0; }
};
//-----------------------------------------------------------------------------
/// Convert bitmap from mglCanvasW to QPixmap
-void convertFromGraph(QPixmap &pic, mglCanvas *gr, uchar **buf);
+void mglConvertFromGraph(QPixmap &pic, mglCanvas *gr, uchar **buf);
+/// Make menu, toolbars and return popup menu for MainWindow
+QMenu *mglMakeMenu(QMainWindow *Wnd, QMathGL *QMGL, QSpinBox *tet, QSpinBox *phi);
+//-----------------------------------------------------------------------------
+void mgl_ask_qt(const wchar_t *quest, wchar_t *res);
//-----------------------------------------------------------------------------
#endif
#endif
diff --git a/include/mgl/type.h b/include/mgl/type.h
index e68006a..600af80 100644
--- a/include/mgl/type.h
+++ b/include/mgl/type.h
@@ -46,6 +46,8 @@ inline mglPoint operator+(const mglPoint &a, const mglPoint &b)
{ return mglPoint(a.x+b.x, a.y+b.y, a.z+b.z, a.c+b.c); }
inline mglPoint operator-(const mglPoint &a, const mglPoint &b)
{ return mglPoint(a.x-b.x, a.y-b.y, a.z-b.z, a.c-b.c); }
+inline mglPoint operator-(const mglPoint &a)
+{ return mglPoint(-a.x, -a.y, -a.z, -a.c); }
inline mglPoint operator*(float b, const mglPoint &a)
{ return mglPoint(a.x*b, a.y*b, a.z*b); }
inline mglPoint operator*(const mglPoint &a, float b)
@@ -93,6 +95,8 @@ struct mglColor
/// Get maximal spectral component
inline float Norm()
{ return r>g ? r : (g>b ? g : b); }
+ inline float NormS()
+ { return r*r+g*g+b*b; }
/// Set color from symbolic id
void Set(char p, float bright=1);
/// Copy color from other one
diff --git a/include/mgl/window.h b/include/mgl/window.h
index 44eff28..c084ae3 100644
--- a/include/mgl/window.h
+++ b/include/mgl/window.h
@@ -53,8 +53,8 @@ public:
{ mgl_wnd_toggle_alpha(gr); }
inline void ToggleLight() ///< Switch on/off lighting (do not overwrite user settings)
{ mgl_wnd_toggle_light(gr); }
-// inline void ToggleZoom() ///< Switch on/off zooming by mouse
-// { mgl_wnd_toggle_zoom(gr); }
+ inline void ToggleZoom() ///< Switch on/off zooming by mouse
+ { mgl_wnd_toggle_zoom(gr); }
inline void ToggleRotate() ///< Switch on/off rotation by mouse
{ mgl_wnd_toggle_rotate(gr); }
inline void ToggleNo() ///< Switch off all zooming and rotation
@@ -93,9 +93,8 @@ public:
void Clf(mglColor Back=NC);
inline int GetNumFig() { return NumFig; }
inline int GetCurFig() { return CurFig; }
- inline void SetCurFig(int c) { CurFig=c; } // stupid thing to pass G++ bug
- inline float GetDelay() { return Delay; }
- inline void SetDelay(float d) { Delay=d; }
+ void SetCurFig(int c);
+ void ClearFrames();
inline mglPoint GetMousePos() { return LastMousePos;} // stupid thing to pass G++ bug
inline void SetMousePos(mglPoint p) { LastMousePos=p; }
inline void Setup(bool autoclf, bool showpos, bool clf_upd)
@@ -103,15 +102,16 @@ public:
virtual void ToggleAlpha()=0; ///< Switch on/off transparency (do not overwrite user settings)
virtual void ToggleLight()=0; ///< Switch on/off lighting (do not overwrite user settings)
- // virtual void ToggleZoom()=0; ///< Switch on/off zooming by mouse
+ virtual void ToggleZoom()=0; ///< Switch on/off zooming by mouse
virtual void ToggleRotate()=0; ///< Switch on/off rotation by mouse
virtual void ToggleNo()=0; ///< Switch off all zooming and rotation
virtual void Update()=0; ///< Update picture by calling user drawing function
virtual void Adjust()=0; ///< Adjust size of bitmap to window size
- virtual void NextFrame()=0; ///< Show next frame (if one)
- virtual void PrevFrame()=0; ///< Show previous frame (if one)
+ virtual void GotoFrame(int d)=0;///< Show arbitrary frame (use relative step)
+ virtual void NextFrame() {GotoFrame(+1);} ///< Show next frame (if one)
+ virtual void PrevFrame() {GotoFrame(-1);} ///< Show previous frame (if one)
virtual void Animation()=0; ///< Run slideshow (animation) of frames
- void ReLoad(); ///< Reload user data and update picture
+ void ReLoad(); ///< Reload user data and update picture
/// Create a window for plotting based on callback function (can be NULL).
virtual void Window(int argc, char **argv, int (*draw)(mglBase *gr, void *p),
const char *title, void *par=NULL,
@@ -124,7 +124,6 @@ public:
void SetDrawFunc(int (*draw)(mglBase *gr, void *p), void *par=NULL, void (*reload)(void *p)=NULL);
private:
- float Delay; ///< Delay for animation in seconds
mglPoint LastMousePos; ///< Last mouse position
int CurFig; ///< Current figure in the list.
diff --git a/udav/xpm/accessories-calculator.png b/include/xpm/accessories-calculator.png
similarity index 100%
copy from udav/xpm/accessories-calculator.png
copy to include/xpm/accessories-calculator.png
diff --git a/include/xpm/accessories-calculator.xpm b/include/xpm/accessories-calculator.xpm
new file mode 100644
index 0000000..7a35ccb
--- /dev/null
+++ b/include/xpm/accessories-calculator.xpm
@@ -0,0 +1,112 @@
+/* XPM */
+static const char * accessories_calculator_xpm[] = {
+"16 16 93 2",
+" c None",
+". c #555753",
+"+ c #B8BBB3",
+"@ c #858971",
+"# c #787C66",
+"$ c #83876F",
+"% c #7A7E68",
+"& c #7D816A",
+"* c #777B5E",
+"= c #555843",
+"- c #585B45",
+"; c #474938",
+"> c #393B2D",
+", c #717559",
+"' c #989C8A",
+") c #969A88",
+"! c #979B89",
+"~ c #44494A",
+"{ c #3A4041",
+"] c #3F4446",
+"^ c #383D3F",
+"/ c #303638",
+"( c #303537",
+"_ c #2F3537",
+": c #313739",
+"< c #9C9FA1",
+"[ c #5B5C5C",
+"} c #595A5C",
+"| c #737678",
+"1 c #5B5C5E",
+"2 c #595A5B",
+"3 c #66696B",
+"4 c #595A5A",
+"5 c #585858",
+"6 c #616365",
+"7 c #626567",
+"8 c #515354",
+"9 c #535555",
+"0 c #535455",
+"a c #5E605C",
+"b c #6B6D6B",
+"c c #808080",
+"d c #7F7F7F",
+"e c #535353",
+"f c #7E7E7E",
+"g c #818181",
+"h c #555555",
+"i c #575757",
+"j c #565758",
+"k c #848484",
+"l c #898989",
+"m c #696A69",
+"n c #545454",
+"o c #555556",
+"p c #787878",
+"q c #545657",
+"r c #878787",
+"s c #888888",
+"t c #87898A",
+"u c #505051",
+"v c #505152",
+"w c #646667",
+"x c #535354",
+"y c #515151",
+"z c #616364",
+"A c #515252",
+"B c #606365",
+"C c #5B5B5B",
+"D c #5A5A5A",
+"E c #7D7D7D",
+"F c #828282",
+"G c #545455",
+"H c #585859",
+"I c #696A68",
+"J c #858585",
+"K c #565656",
+"L c #838383",
+"M c #8A8A8A",
+"N c #8D8D8D",
+"O c #858788",
+"P c #646666",
+"Q c #525353",
+"R c #616262",
+"S c #555757",
+"T c #5E5F5F",
+"U c #9B9B9B",
+"V c #858686",
+"W c #888989",
+"X c #868686",
+"Y c #878888",
+"Z c #6C6D6B",
+"` c #757674",
+" . c #787977",
+". . . . . . . . . . . . . . . . ",
+". + + + + + + + + + + + + + + . ",
+". + @ @ @ @ @ @ @ # $ % & @ + . ",
+". + * * * * * * * = - ; > , + . ",
+". + ' ' ' ' ' ' ' ) ! ) ! ' + . ",
+". ~ + + + + + + + + + + + + { . ",
+". ] ^ / / ( _ _ _ _ _ _ _ _ : . ",
+". < [ } | 1 2 3 4 5 6 7 8 9 0 . ",
+"a b c d e f g h d g i j k l k . ",
+". m d f n f f o p d i q r s r . ",
+". t u v w x y z A y 6 B 5 C D . ",
+". m c d 9 E g n F k G H r s s . ",
+". I k E y c J K L J K 5 M N M . ",
+". O n G P Q K R S K T 5 M U M . ",
+". O V V W V X Y X X Y Z ` .` . ",
+". . . . . . . . . . . . . . . . "};
diff --git a/udav/xpm/alpha.png b/include/xpm/alpha.png
similarity index 100%
copy from udav/xpm/alpha.png
copy to include/xpm/alpha.png
diff --git a/udav/xpm/arrow_a.xpm b/include/xpm/arrow_a.xpm
similarity index 100%
copy from udav/xpm/arrow_a.xpm
copy to include/xpm/arrow_a.xpm
diff --git a/udav/xpm/arrow_d.xpm b/include/xpm/arrow_d.xpm
similarity index 100%
copy from udav/xpm/arrow_d.xpm
copy to include/xpm/arrow_d.xpm
diff --git a/udav/xpm/arrow_i.xpm b/include/xpm/arrow_i.xpm
similarity index 100%
copy from udav/xpm/arrow_i.xpm
copy to include/xpm/arrow_i.xpm
diff --git a/udav/xpm/arrow_k.xpm b/include/xpm/arrow_k.xpm
similarity index 100%
copy from udav/xpm/arrow_k.xpm
copy to include/xpm/arrow_k.xpm
diff --git a/udav/xpm/arrow_n.xpm b/include/xpm/arrow_n.xpm
similarity index 100%
copy from udav/xpm/arrow_n.xpm
copy to include/xpm/arrow_n.xpm
diff --git a/udav/xpm/arrow_o.xpm b/include/xpm/arrow_o.xpm
similarity index 100%
copy from udav/xpm/arrow_o.xpm
copy to include/xpm/arrow_o.xpm
diff --git a/udav/xpm/arrow_s.xpm b/include/xpm/arrow_s.xpm
similarity index 100%
copy from udav/xpm/arrow_s.xpm
copy to include/xpm/arrow_s.xpm
diff --git a/udav/xpm/arrow_t.xpm b/include/xpm/arrow_t.xpm
similarity index 100%
copy from udav/xpm/arrow_t.xpm
copy to include/xpm/arrow_t.xpm
diff --git a/udav/xpm/arrow_v.xpm b/include/xpm/arrow_v.xpm
similarity index 100%
copy from udav/xpm/arrow_v.xpm
copy to include/xpm/arrow_v.xpm
diff --git a/udav/xpm/cons.xpm b/include/xpm/cons.xpm
similarity index 100%
copy from udav/xpm/cons.xpm
copy to include/xpm/cons.xpm
diff --git a/udav/xpm/crop.xpm b/include/xpm/crop.xpm
similarity index 100%
copy from udav/xpm/crop.xpm
copy to include/xpm/crop.xpm
diff --git a/udav/xpm/dash_d.xpm b/include/xpm/dash_d.xpm
similarity index 100%
copy from udav/xpm/dash_d.xpm
copy to include/xpm/dash_d.xpm
diff --git a/udav/xpm/dash_e.xpm b/include/xpm/dash_e.xpm
similarity index 100%
copy from udav/xpm/dash_e.xpm
copy to include/xpm/dash_e.xpm
diff --git a/udav/xpm/dash_i.xpm b/include/xpm/dash_i.xpm
similarity index 100%
copy from udav/xpm/dash_i.xpm
copy to include/xpm/dash_i.xpm
diff --git a/udav/xpm/dash_j.xpm b/include/xpm/dash_j.xpm
similarity index 100%
copy from udav/xpm/dash_j.xpm
copy to include/xpm/dash_j.xpm
diff --git a/udav/xpm/dash_l.xpm b/include/xpm/dash_l.xpm
similarity index 100%
copy from udav/xpm/dash_l.xpm
copy to include/xpm/dash_l.xpm
diff --git a/udav/xpm/dash_m.xpm b/include/xpm/dash_m.xpm
similarity index 100%
copy from udav/xpm/dash_m.xpm
copy to include/xpm/dash_m.xpm
diff --git a/udav/xpm/dash_s.xpm b/include/xpm/dash_s.xpm
similarity index 100%
copy from udav/xpm/dash_s.xpm
copy to include/xpm/dash_s.xpm
diff --git a/udav/xpm/dialog-information.png b/include/xpm/dialog-information.png
similarity index 100%
copy from udav/xpm/dialog-information.png
copy to include/xpm/dialog-information.png
diff --git a/udav/xpm/diff.xpm b/include/xpm/diff.xpm
similarity index 100%
copy from udav/xpm/diff.xpm
copy to include/xpm/diff.xpm
diff --git a/udav/xpm/diff2.xpm b/include/xpm/diff2.xpm
similarity index 100%
copy from udav/xpm/diff2.xpm
copy to include/xpm/diff2.xpm
diff --git a/udav/xpm/document-export.png b/include/xpm/document-export.png
similarity index 100%
copy from udav/xpm/document-export.png
copy to include/xpm/document-export.png
diff --git a/include/xpm/document-export.xpm b/include/xpm/document-export.xpm
new file mode 100644
index 0000000..489a4f4
--- /dev/null
+++ b/include/xpm/document-export.xpm
@@ -0,0 +1,166 @@
+/* XPM */
+static const char * document_export_xpm[] = {
+"16 16 147 2",
+" c None",
+". c #38678B",
+"+ c #3D698A",
+"@ c #4A7180",
+"# c #58787A",
+"$ c #B1CEE6",
+"% c #D0DFEF",
+"& c #C5DBEC",
+"* c #9BC2DF",
+"= c #688BA0",
+"- c #436E88",
+"; c #6B7F88",
+"> c #667173",
+", c #627075",
+"' c #4A6D85",
+") c #41749A",
+"! c #44789F",
+"~ c #9EBFD9",
+"{ c #C1D9EB",
+"] c #5186AF",
+"^ c #4E6A7D",
+"/ c #6E99B6",
+"( c #ABCBE2",
+"_ c #92B7D3",
+": c #547D9B",
+"< c #D5DFE5",
+"[ c #7798B0",
+"} c #79A7CA",
+"| c #8FB3CE",
+"1 c #3D6B8E",
+"2 c #ACBCC3",
+"3 c #5892BD",
+"4 c #EF9800",
+"5 c #ECA307",
+"6 c #BDD552",
+"7 c #98BFDC",
+"8 c #719FBF",
+"9 c #739FC0",
+"0 c #96BBD8",
+"a c #95A9AF",
+"b c #02ABF0",
+"c c #0074F6",
+"d c #F97200",
+"e c #FE3C00",
+"f c #FF3500",
+"g c #CAC6AC",
+"h c #ABC8DF",
+"i c #92A6AC",
+"j c #BFE6E5",
+"k c #1CFFDF",
+"l c #32FFCA",
+"m c #F99A00",
+"n c #FF7400",
+"o c #FDA917",
+"p c #E4E822",
+"q c #9DE4A5",
+"r c #37698D",
+"s c #ACCBE3",
+"t c #3B6B8F",
+"u c #8BA4AF",
+"v c #9EDEE9",
+"w c #8CFDCB",
+"x c #BBFF41",
+"y c #ECEA10",
+"z c #F2C505",
+"A c #B2FA4B",
+"B c #53F8BE",
+"C c #3BC4F1",
+"D c #328AFE",
+"E c #AABCD1",
+"F c #3F6C8E",
+"G c #9AAEB4",
+"H c #BBF8EA",
+"I c #A0FE7E",
+"J c #EEEEEE",
+"K c #FAC004",
+"L c #FDB701",
+"M c #DDE01B",
+"N c #49FEB4",
+"O c #00AEFF",
+"P c #0039FF",
+"Q c #0024B3",
+"R c #0029CA",
+"S c #0057FF",
+"T c #03BDFB",
+"U c #28FFD3",
+"V c #85FE79",
+"W c #E3FF18",
+"X c #DDFE1F",
+"Y c #C7FF34",
+"Z c #8BFF72",
+"` c #F0CA07",
+" . c #AFFA4D",
+".. c #59FEA3",
+"+. c #2FE6CE",
+"@. c #21CBDE",
+"#. c #17CDE7",
+"$. c #13DBEB",
+"%. c #13FFE9",
+"&. c #16FFE5",
+"*. c #43FABA",
+"=. c #3DF5C0",
+"-. c #2BECD2",
+";. c #08D3F4",
+">. c #009FFF",
+",. c #F89A00",
+"'. c #FE5F00",
+"). c #FB4D00",
+"!. c #FC5500",
+"~. c #FE7E00",
+"{. c #F8C805",
+"]. c #BDFB3F",
+"^. c #51FFAC",
+"/. c #0BDAF2",
+"(. c #0082FF",
+"_. c #0045FC",
+":. c #0037EC",
+"<. c #003DFE",
+"[. c #0041FF",
+"}. c #F86B00",
+"|. c #E60000",
+"1. c #B60000",
+"2. c #B30000",
+"3. c #BB0000",
+"4. c #EE1200",
+"5. c #FF9A00",
+"6. c #AAFF53",
+"7. c #0BEBF1",
+"8. c #006DFF",
+"9. c #0035F2",
+"0. c #0037E9",
+"a. c #006CFF",
+"b. c #0ED7F0",
+"c. c #F88F01",
+"d. c #F94100",
+"e. c #E92400",
+"f. c #E21D00",
+"g. c #EA2400",
+"h. c #FA4200",
+"i. c #FF9100",
+"j. c #F2D10B",
+"k. c #B7F746",
+"l. c #80F87D",
+"m. c #6EF18E",
+"n. c #75F389",
+"o. c #94FB69",
+"p. c #D2EA2B",
+" . . . + @ # ",
+" $ % & * = - ",
+"; > , ' ) ! ~ { ] ^ ",
+" / . ( _ : < ",
+" [ . } | 1 2 ",
+" . . . . } 3 . . . . ",
+" 4 5 6 . 7 8 8 8 9 0 . a b c ",
+" d e f g . 7 9 9 h . i j k l ",
+" m n o p q r s 7 t u v w x y ",
+" z A B C D E F . G H I J K L ",
+" M N O P Q R S T U V W X Y Z ",
+" ` ...+. at .#.$.%.&.*.=.-.;.>. ",
+" ,.'.).!.~.{.].^./.(._.:.<.[. ",
+" }.|.1.2.3.4.5.6.7.8.9.0.a.b. ",
+" c.d.e.f.g.h.i.j.k.l.m.n.o.p. ",
+" "};
diff --git a/udav/xpm/document-import.png b/include/xpm/document-import.png
similarity index 100%
copy from udav/xpm/document-import.png
copy to include/xpm/document-import.png
diff --git a/include/xpm/document-import.xpm b/include/xpm/document-import.xpm
new file mode 100644
index 0000000..39c5113
--- /dev/null
+++ b/include/xpm/document-import.xpm
@@ -0,0 +1,189 @@
+/* XPM */
+static const char * document_import_xpm[] = {
+"16 16 170 2",
+" c None",
+". c #FB6801",
+"+ c #FF3F00",
+"@ c #FF6200",
+"# c #EDDE11",
+"$ c #58FFA6",
+"% c #07C2F8",
+"& c #0070FF",
+"* c #0064FF",
+"= c #0195FF",
+"- c #0AD3F4",
+"; c #2CFFD1",
+"> c #5CFEA1",
+", c #7A7A7A",
+"' c #797979",
+") c #FAA302",
+"! c #F1B50D",
+"~ c #BFE240",
+"{ c #61F29D",
+"] c #10BFEE",
+"^ c #0066FF",
+"/ c #0043FF",
+"( c #0170FF",
+"_ c #0EC8F0",
+": c #59FCA5",
+"< c #C6FB38",
+"[ c #F5CE09",
+"} c #787878",
+"| c #C9C9C9",
+"1 c #C7C7C7",
+"2 c #DFE11A",
+"3 c #56FAA8",
+"4 c #08A6F7",
+"5 c #004EE6",
+"6 c #0032C9",
+"7 c #0041FF",
+"8 c #0297FD",
+"9 c #27F0D6",
+"0 c #91FF6C",
+"a c #E1FF1B",
+"b c #EDEC10",
+"c c #E5E019",
+"d c #737373",
+"e c #C5C5C5",
+"f c #B0B0B0",
+"g c #DDE31D",
+"h c #0FB6F0",
+"i c #047CF5",
+"j c #0374F4",
+"k c #049DFB",
+"l c #0FE8EF",
+"m c #43FFBB",
+"n c #7EFF81",
+"o c #8CFF72",
+"p c #65FA99",
+"q c #2CE1D3",
+"r c #6E6E6E",
+"s c #C1C1C0",
+"t c #ACACAC",
+"u c #F9A502",
+"v c #F5A10A",
+"w c #E0A31C",
+"x c #CCB833",
+"y c #B3DD4C",
+"z c #83FC7B",
+"A c #2DFFD0",
+"B c #0DDEF1",
+"C c #059FF9",
+"D c #0279F8",
+"E c #0062FD",
+"F c #004DFF",
+"G c #6A6A6A",
+"H c #BDBDBD",
+"I c #A9A9A9",
+"J c #FA6201",
+"K c #E00600",
+"L c #C00000",
+"M c #C40100",
+"N c #ED1C00",
+"O c #FAA205",
+"P c #85FF79",
+"Q c #08C2F6",
+"R c #004CFC",
+"S c #0030BE",
+"T c #0051EC",
+"U c #0AA6F5",
+"V c #656565",
+"W c #B7B7B7",
+"X c #A6A6A6",
+"Y c #FB7E01",
+"Z c #F32E00",
+"` c #DE1A00",
+" . c #DE1900",
+".. c #F42F00",
+"+. c #FF8400",
+"@. c #E6DE18",
+"#. c #91F96D",
+"$. c #60EA9E",
+"%. c #5AE5A4",
+"&. c #73F18B",
+"*. c #B7F047",
+"=. c #5F5F5F",
+"-. c #B3B3B3",
+";. c #406CA5",
+">. c #3868A5",
+",. c #3768A5",
+"'. c #3666A5",
+"). c #3566A5",
+"!. c #3566A4",
+"~. c #3465A4",
+"{. c #3767A6",
+"]. c #5B5B5B",
+"^. c #AEAEAE",
+"/. c #C0D5EA",
+"(. c #C1D5EA",
+"_. c #C1D6EA",
+":. c #BBD2E8",
+"<. c #3465A5",
+"[. c #565656",
+"}. c #C3D6EA",
+"|. c #92B5DB",
+"1. c #95B8DC",
+"2. c #B9D0E7",
+"3. c #3466A4",
+"4. c #515151",
+"5. c #A5A5A4",
+"6. c #3666A4",
+"7. c #C5D7EB",
+"8. c #98B9DD",
+"9. c #95B7DC",
+"0. c #B8CEE7",
+"a. c #4C4C4C",
+"b. c #A1A1A1",
+"c. c #3767A5",
+"d. c #BFD2E9",
+"e. c #9BBADD",
+"f. c #9ABADD",
+"g. c #96B7DC",
+"h. c #8FB2DA",
+"i. c #8BB0D8",
+"j. c #B1C9E4",
+"k. c #484848",
+"l. c #9B9B9B",
+"m. c #A5C1E1",
+"n. c #8EB2D9",
+"o. c #8AAFD8",
+"p. c #85ACD7",
+"q. c #83AAD6",
+"r. c #81A9D5",
+"s. c #7EA7D4",
+"t. c #79A3D3",
+"u. c #77A2D2",
+"v. c #7BA5D3",
+"w. c #95B6DB",
+"x. c #3567A6",
+"y. c #494949",
+"z. c #999999",
+"A. c #3968A5",
+"B. c #94B5DB",
+"C. c #82AAD5",
+"D. c #7DA6D4",
+"E. c #7FA8D4",
+"F. c #85ABD5",
+"G. c #7E8896",
+"H. c #5588BF",
+"I. c #5689C0",
+"J. c #4B7EB7",
+"K. c #3667A6",
+"L. c #454A51",
+"M. c #3565A4",
+" . + @ # $ % & * = - ; > ",
+", ' ' ) ! ~ { ] ^ / ( _ : < [ ",
+"} | 1 2 3 4 5 6 7 8 9 0 a b c ",
+"d e f g 3 h i j k l m n o p q ",
+"r s t u v w x y z A B C D E F ",
+"G H I J K L M N O P Q R S T U ",
+"V W X Y Z ` ...+. at .#.$.%.&.*. ",
+"=.-.;.>.>.,.'.'.).!.!.!.~.~.~.{.",
+"].^.)././././././.(._._._._.:.<.",
+"[.I !.}.|.|.|.|.|.|.|.|.|.1.2.3.",
+"4.5.6.7.8.8.8.8.8.8.8.8.8.9.0.).",
+"a.b.c.d.e.f.f.f.f.f.f.g.h.i.j.).",
+"k.l.>.m.n.o.p.q.r.s.t.u.u.v.w.x.",
+"y.z.A.B.C.D.D.D.D.D.D.D.D.E.F.'.",
+"k.G.A.H.I.I.I.I.I.I.I.I.I.I.J.K.",
+"L.~.~.~.~.~.~.~.~.~.~.~.~.~.M. "};
diff --git a/udav/xpm/document-new.png b/include/xpm/document-new.png
similarity index 100%
copy from udav/xpm/document-new.png
copy to include/xpm/document-new.png
diff --git a/include/xpm/document-new.xpm b/include/xpm/document-new.xpm
new file mode 100644
index 0000000..6336507
--- /dev/null
+++ b/include/xpm/document-new.xpm
@@ -0,0 +1,78 @@
+/* XPM */
+static const char * document_new_xpm[] = {
+"16 16 59 1",
+" c None",
+". c #9E9E9E",
+"+ c #818181",
+"@ c #8C8C7C",
+"# c #9F9F72",
+"$ c #AFAE6A",
+"% c #EDE436",
+"& c #FFFFFF",
+"* c #F2EE9B",
+"= c #F7F069",
+"- c #FAF24D",
+"; c #F7EF46",
+"> c #F4EB28",
+", c #ECECEC",
+"' c #EAEAEA",
+") c #EBEBEB",
+"! c #F0EDB4",
+"~ c #F7F06A",
+"{ c #FCF43A",
+"] c #FDF668",
+"^ c #FDF66A",
+"/ c #FBF23C",
+"( c #F9EF1E",
+"_ c #F2EE9C",
+": c #FAF24E",
+"< c #FDF667",
+"[ c #FEFAB5",
+"} c #FEFAB8",
+"| c #FDF56B",
+"1 c #FAEF22",
+"2 c #F3EF9B",
+"3 c #FEFABB",
+"4 c #FEFBBF",
+"5 c #FDF66E",
+"6 c #FAF022",
+"7 c #EDEDED",
+"8 c #F1EEB1",
+"9 c #F8F167",
+"0 c #FDF440",
+"a c #FDF771",
+"b c #FDF772",
+"c c #FCF343",
+"d c #F6EC24",
+"e c #EFEEE0",
+"f c #F4EF96",
+"g c #F8F163",
+"h c #FBF346",
+"i c #FBF345",
+"j c #F7EF5D",
+"k c #EEEEEE",
+"l c #EEEEE2",
+"m c #F3F0B1",
+"n c #F5F092",
+"o c #F5F09A",
+"p c #969677",
+"q c #EFEFEF",
+"r c #F0F0F0",
+"s c #F1F1F1",
+"t c #F2F2F2",
+".++++++++@#$% ",
+"+&&&&&&&&*=-;> ",
+"+&,'')))!~{]^/( ",
+"+&'')),,_:<[}|1 ",
+"+&')),,,2:^3456 ",
+"+&)),,,7890abcd ",
+"+&)),,77efghij ",
+"+&),,77kklmnop ",
+"+&,,77kkqqqr&+ ",
+"+&,,77kkqqrr&+ ",
+"+&,7kkqqrsss&+ ",
+"+&77kkqrrsst&+ ",
+"+&77kqqrrstt&+ ",
+"+&&&&&&&&&&&&+ ",
+".++++++++++++. ",
+" "};
diff --git a/udav/xpm/document-open.png b/include/xpm/document-open.png
similarity index 100%
copy from udav/xpm/document-open.png
copy to include/xpm/document-open.png
diff --git a/include/xpm/document-open.xpm b/include/xpm/document-open.xpm
new file mode 100644
index 0000000..10b148b
--- /dev/null
+++ b/include/xpm/document-open.xpm
@@ -0,0 +1,156 @@
+/* XPM */
+static const char * document_open_xpm[] = {
+"16 16 137 2",
+" c None",
+". c #565854",
+"+ c #575955",
+"@ c #595B57",
+"# c #5A5C58",
+"$ c #5F615D",
+"% c #7A7A7A",
+"& c #797979",
+"* c #F7F7F7",
+"= c #F9F9F9",
+"- c #FAFAFA",
+"; c #FBFBFB",
+"> c #FCFCFC",
+", c #A2A3A2",
+"' c #5B5C58",
+") c #787878",
+"! c #C9C9C9",
+"~ c #C7C7C7",
+"{ c #C4C4C4",
+"] c #555753",
+"^ c #DADADA",
+"/ c #D3D3D3",
+"( c #D2D2D2",
+"_ c #CFCFCF",
+": c #CDCDCD",
+"< c #FEFEFE",
+"[ c #939392",
+"} c #5B5E5A",
+"| c #737373",
+"1 c #C5C5C5",
+"2 c #B0B0B0",
+"3 c #ACACAC",
+"4 c #DCDCDC",
+"5 c #9C9D9C",
+"6 c #D5D5D4",
+"7 c #FDFDFD",
+"8 c #969796",
+"9 c #5B5D59",
+"0 c #6E6E6E",
+"a c #C1C1C0",
+"b c #AAAAAA",
+"c c #E2E2E2",
+"d c #DFDFDF",
+"e c #DEDEDE",
+"f c #DDDDDD",
+"g c #E0E0E0",
+"h c #E9E9E9",
+"i c #E5E5E5",
+"j c #D0D0D0",
+"k c #5D5F5B",
+"l c #6A6A6A",
+"m c #BDBDBD",
+"n c #A9A9A9",
+"o c #A5A5A5",
+"p c #E6E6E6",
+"q c #9FA09E",
+"r c #9C9D9B",
+"s c #E3E3E3",
+"t c #D0D1D0",
+"u c #656565",
+"v c #B7B7B7",
+"w c #A6A6A6",
+"x c #A1A1A1",
+"y c #EBEBEB",
+"z c #EAEAEA",
+"A c #E8E8E8",
+"B c #E7E7E7",
+"C c #D9D9D9",
+"D c #5B5C59",
+"E c #5F5F5F",
+"F c #B3B3B3",
+"G c #406CA5",
+"H c #3868A5",
+"I c #3768A5",
+"J c #3666A5",
+"K c #3566A5",
+"L c #3566A4",
+"M c #3465A4",
+"N c #3767A6",
+"O c #5B5B5B",
+"P c #AEAEAE",
+"Q c #C0D5EA",
+"R c #C1D5EA",
+"S c #C1D6EA",
+"T c #BBD2E8",
+"U c #3465A5",
+"V c #565656",
+"W c #C3D6EA",
+"X c #92B5DB",
+"Y c #95B8DC",
+"Z c #B9D0E7",
+"` c #3466A4",
+" . c #515151",
+".. c #A5A5A4",
+"+. c #3666A4",
+"@. c #C5D7EB",
+"#. c #98B9DD",
+"$. c #95B7DC",
+"%. c #B8CEE7",
+"&. c #4C4C4C",
+"*. c #3767A5",
+"=. c #BFD2E9",
+"-. c #9BBADD",
+";. c #9ABADD",
+">. c #96B7DC",
+",. c #8FB2DA",
+"'. c #8BB0D8",
+"). c #B1C9E4",
+"!. c #484848",
+"~. c #9B9B9B",
+"{. c #A5C1E1",
+"]. c #8EB2D9",
+"^. c #8AAFD8",
+"/. c #85ACD7",
+"(. c #83AAD6",
+"_. c #81A9D5",
+":. c #7EA7D4",
+"<. c #79A3D3",
+"[. c #77A2D2",
+"}. c #7BA5D3",
+"|. c #95B6DB",
+"1. c #3567A6",
+"2. c #494949",
+"3. c #999999",
+"4. c #3968A5",
+"5. c #94B5DB",
+"6. c #82AAD5",
+"7. c #7DA6D4",
+"8. c #7FA8D4",
+"9. c #85ABD5",
+"0. c #7E8896",
+"a. c #5588BF",
+"b. c #5689C0",
+"c. c #4B7EB7",
+"d. c #3667A6",
+"e. c #454A51",
+"f. c #3565A4",
+" . + . + + @ # $ ",
+"% & & & . * = - ; ; > , ' ",
+") ! ~ { ] ^ / / ( _ : < [ } ",
+"| 1 2 3 ] 4 5 5 5 5 6 < 7 8 9 ",
+"0 a 3 b . c d e e f g h i j k ",
+"l m n o . p q r r r f s s t 9 ",
+"u v w x + y z z h h A A B C D ",
+"E F G H H I J J K L L L M M M N ",
+"O P K Q Q Q Q Q Q R S S S S T U ",
+"V n L W X X X X X X X X X Y Z ` ",
+" ...+. at .#.#.#.#.#.#.#.#.#.$.%.K ",
+"&.x *.=.-.;.;.;.;.;.;.>.,.'.).K ",
+"!.~.H {.].^./.(._.:.<.[.[.}.|.1.",
+"2.3.4.5.6.7.7.7.7.7.7.7.7.8.9.J ",
+"!.0.4.a.b.b.b.b.b.b.b.b.b.b.c.d.",
+"e.M M M M M M M M M M M M M f. "};
diff --git a/udav/xpm/document-print.png b/include/xpm/document-print.png
similarity index 100%
copy from udav/xpm/document-print.png
copy to include/xpm/document-print.png
diff --git a/include/xpm/document-print.xpm b/include/xpm/document-print.xpm
new file mode 100644
index 0000000..21170e9
--- /dev/null
+++ b/include/xpm/document-print.xpm
@@ -0,0 +1,86 @@
+/* XPM */
+static const char * document_print_xpm[] = {
+"16 16 67 1",
+" c None",
+". c #AAABA9",
+"+ c #F9F9F9",
+"@ c #888A85",
+"# c #F8F8F8",
+"$ c #C4C4C4",
+"% c #F1F1F1",
+"& c #F3F3F3",
+"* c #F7F7F7",
+"= c #C6C6C6",
+"- c #C7C7C7",
+"; c #E0E0E0",
+"> c #E2E2E2",
+", c #E3E3E3",
+"' c #E5E5E5",
+") c #E6E6E6",
+"! c #E7E7E7",
+"~ c #F6F6F6",
+"{ c #F5F5F5",
+"] c #F5F5F6",
+"^ c #7D7E7C",
+"/ c #858684",
+"( c #ABABAB",
+"_ c #A9A9A9",
+": c #AAAAAA",
+"< c #FCFCFC",
+"[ c #F4F4F4",
+"} c #E8E8E8",
+"| c #FDFDFD",
+"1 c #D4D4D4",
+"2 c #EDEDED",
+"3 c #AEAEAE",
+"4 c #DFDFDF",
+"5 c #E1E1E1",
+"6 c #DCDCDC",
+"7 c #9F9F9F",
+"8 c #CDCCCB",
+"9 c #F0F0F0",
+"0 c #CCCBCB",
+"a c #DDDDDD",
+"b c #DEDEDE",
+"c c #D9D9D9",
+"d c #8C8B8A",
+"e c #C5C5C5",
+"f c #F2F2F2",
+"g c #BEBEBE",
+"h c #868584",
+"i c #7A7978",
+"j c #767574",
+"k c #787675",
+"l c #767472",
+"m c #72716F",
+"n c #747372",
+"o c #B2B2B2",
+"p c #BBBBBB",
+"q c #B9B9B9",
+"r c #B8B8B8",
+"s c #B8B8B7",
+"t c #B6B6B6",
+"u c #B3B3B3",
+"v c #B5B5B5",
+"w c #B7B7B7",
+"x c #ECECEC",
+"y c #D7D7D7",
+"z c #D8D8D8",
+"A c #D5D5D5",
+"B c #D6D6D6",
+" ",
+" ........... ",
+" .++++ at +++#. ",
+" .+$$@@@$$#. ",
+" .+%@@@@@&*. ",
+" .*$$=@=--#. ",
+" .*;>,@')!*. ",
+" .~{{{{]]~*. ",
+" ^^/(_(((((_:/^^",
+" ^<+[[[[[[[[[)}^",
+" ^|123&4,5>;678^",
+" ^90aabbb6aacde^",
+" ^fghiijklmnkoe^",
+" ^fpqqrrstuvwr-^",
+" ^xyzzyyyyyAyB1^",
+" ^^^^^^^^^^^^^^^"};
diff --git a/udav/xpm/document-properties.png b/include/xpm/document-properties.png
similarity index 100%
copy from udav/xpm/document-properties.png
copy to include/xpm/document-properties.png
diff --git a/include/xpm/document-properties.xpm b/include/xpm/document-properties.xpm
new file mode 100644
index 0000000..e12cda1
--- /dev/null
+++ b/include/xpm/document-properties.xpm
@@ -0,0 +1,60 @@
+/* XPM */
+static const char * document_properties_xpm[] = {
+"16 16 41 1",
+" c None",
+". c #999999",
+"+ c #818181",
+"@ c #FFFFFF",
+"# c #ECECEC",
+"$ c #EAEAEA",
+"% c #EBEBEB",
+"& c #EDEDED",
+"* c #F0F0F0",
+"= c #C4C4C4",
+"- c #C5C5C5",
+"; c #C6C6C6",
+"> c #C7C7C7",
+", c #696969",
+"' c #D2D2D2",
+") c #EEEEEE",
+"! c #B0B0B0",
+"~ c #585858",
+"{ c #696966",
+"] c #6A6A6A",
+"^ c #D2D2CC",
+"/ c #D6D6D6",
+"( c #595959",
+"_ c #626262",
+": c #6C6C6C",
+"< c #DCDCDC",
+"[ c #EFEFEF",
+"} c #D4D4D4",
+"| c #777777",
+"1 c #858585",
+"2 c #909090",
+"3 c #9D9D9D",
+"4 c #C8C8C8",
+"5 c #B5B5B5",
+"6 c #929292",
+"7 c #9E9E9E",
+"8 c #ABABAB",
+"9 c #E0E0E0",
+"0 c #ADADAD",
+"a c #BABABA",
+"b c #959595",
+" .++++++++++++ ",
+" +@@@@@@@@@@@@+ ",
+" +@#$$%%%##&*@+ ",
+" +@$=--;;;;>*@+ ",
+" +@$%%,,,'&)*@+ ",
+" +@%-;!~~~;>*@+ ",
+" +@%,'#',{#)*@+ ",
+" +@%~~!~]]^)*@+ ",
+" +@#,,,]]]]/*@+ ",
+" +@#!~~~~(_:<@+ ",
+" +@#&))[}|123 at + ",
+" +@&;>>445678 at + ",
+" +@&&)[[**90a at + ",
+" +@@@@@@@@@@@@+ ",
+" b++++++++++++b ",
+" "};
diff --git a/udav/xpm/document-save.png b/include/xpm/document-save.png
similarity index 100%
copy from udav/xpm/document-save.png
copy to include/xpm/document-save.png
diff --git a/include/xpm/document-save.xpm b/include/xpm/document-save.xpm
new file mode 100644
index 0000000..e651d91
--- /dev/null
+++ b/include/xpm/document-save.xpm
@@ -0,0 +1,126 @@
+/* XPM */
+static const char * document_save_xpm[] = {
+"16 16 107 2",
+" c None",
+". c #38678B",
+"+ c #3D698A",
+"@ c #4A7180",
+"# c #58787A",
+"$ c #B1CEE6",
+"% c #D0DFEF",
+"& c #C5DBEC",
+"* c #9BC2DF",
+"= c #688BA0",
+"- c #436E88",
+"; c #6B7F88",
+"> c #667173",
+", c #627075",
+"' c #4A6D85",
+") c #41749A",
+"! c #44789F",
+"~ c #9EBFD9",
+"{ c #C1D9EB",
+"] c #5186AF",
+"^ c #4E6A7D",
+"/ c #6E706B",
+"( c #6B716E",
+"_ c #E2E6DD",
+": c #FFFFFF",
+"< c #DDE1D6",
+"[ c #C9D6DD",
+"} c #6E99B6",
+"| c #ABCBE2",
+"1 c #92B7D3",
+"2 c #547D9B",
+"3 c #D5DFE5",
+"4 c #F4F4F4",
+"5 c #72756B",
+"6 c #FDFDFD",
+"7 c #EEEEEE",
+"8 c #EDEDED",
+"9 c #DFE2DE",
+"0 c #7798B0",
+"a c #79A7CA",
+"b c #8FB3CE",
+"c c #3D6B8E",
+"d c #ACBCC3",
+"e c #EDEDEE",
+"f c #EDEEEE",
+"g c #EDEEED",
+"h c #F3F4F3",
+"i c #FCFBFC",
+"j c #EBECEC",
+"k c #5892BD",
+"l c #ECECEC",
+"m c #F3F3F3",
+"n c #FAFAFA",
+"o c #E9E9EA",
+"p c #CACFC4",
+"q c #98BFDC",
+"r c #719FBF",
+"s c #739FC0",
+"t c #96BBD8",
+"u c #95A9AF",
+"v c #EAE9EA",
+"w c #F2F2F2",
+"x c #F9F9F9",
+"y c #E4E4E4",
+"z c #C5CBBF",
+"A c #ABC8DF",
+"B c #92A6AC",
+"C c #F1F1F1",
+"D c #ACCBE3",
+"E c #3B6B8F",
+"F c #F7F7F7",
+"G c #E3E3E3",
+"H c #CED4C8",
+"I c #3F6C8E",
+"J c #9AAEB4",
+"K c #FCFCFC",
+"L c #F0F0F0",
+"M c #FEFEFE",
+"N c #EBEBEB",
+"O c #CECECE",
+"P c #C9C9C9",
+"Q c #C5C5C5",
+"R c #D6D6D6",
+"S c #9F9F9F",
+"T c #AFAFAF",
+"U c #BCBCBC",
+"V c #C4C4C4",
+"W c #C8C8C8",
+"X c #D0D0D0",
+"Y c #A9A9A9",
+"Z c #D2D2D2",
+"` c #B9B9B9",
+" . c #CACACA",
+".. c #CDCDCD",
+"+. c #C3C3C3",
+"@. c #AAAAA9",
+"#. c #B4B4B4",
+"$. c #C2C2C2",
+"%. c #CBCBCB",
+"&. c #A8A7A8",
+"*. c #D1D1D1",
+"=. c #A8A7A7",
+"-. c #B7B6B6",
+";. c #DDDDDD",
+">. c #DCDCDC",
+",. c #D5D5D5",
+"'. c #CFCFCF",
+" . . . + @ # ",
+" $ % & * = - ",
+"; > , ' ) ! ~ { ] ^ / / / / / / ",
+"( _ : < [ } . | 1 2 3 : : : 4 / ",
+"5 6 7 8 9 0 . a b c d e f g h / ",
+"/ i j . . . . a k . . . . l m / ",
+"/ n o p . q r r r s t . u v w / ",
+"/ x n y z . q s s A . B y 4 C / ",
+"/ x 7 n y z . D q E B y n 7 C / ",
+"/ F G 7 n n H I . J n K 7 G L / ",
+"/ M : : : : : : : 4 4 N N G L / ",
+"/ O P P P P Q P P Q Q Q Q Q R / ",
+"/ O Q S T U V W X Y Z Y Z ` ./ ",
+"/ ..+. at .#.$.V W %.&.*.=.*.-. ./ ",
+"/ ;.>.>.>.,.,.'.'.'.'.'.'.'. ./ ",
+"/ / / / / / / / / / / / / / / / "};
diff --git a/udav/xpm/edit-copy.png b/include/xpm/edit-copy.png
similarity index 100%
copy from udav/xpm/edit-copy.png
copy to include/xpm/edit-copy.png
diff --git a/include/xpm/edit-copy.xpm b/include/xpm/edit-copy.xpm
new file mode 100644
index 0000000..6c9d2b2
--- /dev/null
+++ b/include/xpm/edit-copy.xpm
@@ -0,0 +1,60 @@
+/* XPM */
+static const char * edit_copy_xpm[] = {
+"16 16 41 1",
+" c None",
+". c #888A85",
+"+ c #FFFFFF",
+"@ c #F0F0EF",
+"# c #EFEFEE",
+"$ c #C8C8C7",
+"% c #9A9B97",
+"& c #8D8F8A",
+"* c #8A8C87",
+"= c #898B86",
+"- c #C7C7C6",
+"; c #C6C6C5",
+"> c #EEEEED",
+", c #EDEDEC",
+"' c #FEFEFE",
+") c #ECECEC",
+"! c #C4C4C3",
+"~ c #FAFAFA",
+"{ c #F3F3F3",
+"] c #F9F9F9",
+"^ c #EBEBEB",
+"/ c #EAEAEA",
+"( c #EEEEEE",
+"_ c #F7F7F6",
+": c #C3C4C3",
+"< c #F3F3F2",
+"[ c #F4F4F3",
+"} c #F2F2F2",
+"| c #8C8E89",
+"1 c #FEFEFD",
+"2 c #989A95",
+"3 c #F8F8F7",
+"4 c #E3E4E2",
+"5 c #FAFAF9",
+"6 c #E3E3E2",
+"7 c #F4F4F4",
+"8 c #F6F6F5",
+"9 c #FCFCFB",
+"0 c #FBFBFB",
+"a c #D4D4D4",
+"b c #989A96",
+" .......... ",
+" ++++++++++. ",
+" +@#####@@+. ",
+" +@$%..........&",
+" +@@*++++++++++.",
+" +@$=+@@@@@@@@+.",
+" +@#*+ at ------@+.",
+" +#;=+@@@@@@@@+.",
+" +>,*+ at -----@@+.",
+" ')!=+@@@@@@@~{.",
+" ]^/*+ at -----(_:.",
+" <[}*+@@@@@||||.",
+" ====1@@@@~2~34.",
+" =5@@@~~2~6..",
+" =7_890ab4.. ",
+" |=........ "};
diff --git a/udav/xpm/edit-cut.png b/include/xpm/edit-cut.png
similarity index 100%
copy from udav/xpm/edit-cut.png
copy to include/xpm/edit-cut.png
diff --git a/include/xpm/edit-cut.xpm b/include/xpm/edit-cut.xpm
new file mode 100644
index 0000000..367226c
--- /dev/null
+++ b/include/xpm/edit-cut.xpm
@@ -0,0 +1,107 @@
+/* XPM */
+static const char * edit_cut_xpm[] = {
+"16 16 88 1",
+" c None",
+". c #8B8D88",
+"+ c #939590",
+"@ c #8F918C",
+"# c #8E908B",
+"$ c #F7F7F7",
+"% c #90918D",
+"& c #D2D3D0",
+"* c #D2D4D0",
+"= c #EFF0EF",
+"- c #92948F",
+"; c #AAACA7",
+"> c #C6C8C3",
+", c #8D8F8A",
+"' c #B3B5B0",
+") c #F7F7F6",
+"! c #CCCEC9",
+"~ c #AEAFAB",
+"{ c #DBDCD9",
+"] c #91938E",
+"^ c #8C8E89",
+"/ c #B6B8B3",
+"( c #CDCECB",
+"_ c #B5B6B2",
+": c #9FA09C",
+"< c #B5B6B3",
+"[ c #B8BAB5",
+"} c #E1E1DF",
+"| c #F5F6F5",
+"1 c #9A9C97",
+"2 c #A8A9A5",
+"3 c #BABBB7",
+"4 c #E7E8E6",
+"5 c #8A8C87",
+"6 c #898984",
+"7 c #C5C6C3",
+"8 c #B3B2AF",
+"9 c #9C2F2C",
+"0 c #AE1818",
+"a c #AB1616",
+"b c #A60606",
+"c c #A34A45",
+"d c #A60202",
+"e c #C71A19",
+"f c #AD1717",
+"g c #A90707",
+"h c #D22020",
+"i c #CE1E1E",
+"j c #B70F0E",
+"k c #A40502",
+"l c #A80403",
+"m c #C91A1A",
+"n c #D12020",
+"o c #CB1F1F",
+"p c #A90A0A",
+"q c #A80606",
+"r c #D01F1F",
+"s c #A80303",
+"t c #C01514",
+"u c #A60101",
+"v c #CD1D1C",
+"w c #C01513",
+"x c #CD1D1D",
+"y c #A70606",
+"z c #AB1414",
+"A c #D52323",
+"B c #CE1D1D",
+"C c #CA1B1A",
+"D c #AB0D0D",
+"E c #CF1D1D",
+"F c #B50B0B",
+"G c #D32121",
+"H c #AA0C0C",
+"I c #AA0909",
+"J c #D62323",
+"K c #B80D0D",
+"L c #D11F1F",
+"M c #AB1111",
+"N c #AB1313",
+"O c #DB2727",
+"P c #A80707",
+"Q c #AA0808",
+"R c #D42222",
+"S c #AA0E0E",
+"T c #AB1010",
+"U c #AA0D0D",
+"V c #AA0B0B",
+"W c #A90B0B",
+" .+ .@ ",
+" #$. %&@ ",
+" .*=- ;>, ",
+" ,'). #!~. ",
+" .{=]^/(. ",
+" ,_$.:<[. ",
+" .}|12. ",
+" ,34;#5 ",
+" 6789 ",
+" 0abcdef0 ",
+" ghijklmnop ",
+" qrstu vwsxy ",
+" zA Bp sC nz ",
+" DE FGH IJK LM ",
+" NOrBP QREBN ",
+" STa UVW "};
diff --git a/udav/xpm/edit-delete.png b/include/xpm/edit-delete.png
similarity index 100%
copy from udav/xpm/edit-delete.png
copy to include/xpm/edit-delete.png
diff --git a/include/xpm/edit-delete.xpm b/include/xpm/edit-delete.xpm
new file mode 100644
index 0000000..1b2b8d4
--- /dev/null
+++ b/include/xpm/edit-delete.xpm
@@ -0,0 +1,155 @@
+/* XPM */
+static const char * edit_delete_xpm[] = {
+"16 16 136 2",
+" c None",
+". c #2E3436",
+"+ c #64696A",
+"@ c #909894",
+"# c #E9EAE3",
+"$ c #EEEFEC",
+"% c #EFF0EE",
+"& c #D2D5D3",
+"* c #BFC1C1",
+"= c #979A9B",
+"- c #424749",
+"; c #D9DBD6",
+"> c #C7CAC4",
+", c #6E7672",
+"' c #424745",
+") c #242727",
+"! c #313432",
+"~ c #7A837E",
+"{ c #B3B8B3",
+"] c #CBCECB",
+"^ c #CBCFCB",
+"/ c #D6D9D3",
+"( c #D2D5CD",
+"_ c #DADCD6",
+": c #AEB3AD",
+"< c #5C6362",
+"[ c #353939",
+"} c #373A38",
+"| c #585E5B",
+"1 c #8D948F",
+"2 c #AAAFA7",
+"3 c #D2D6D2",
+"4 c #B5BAB5",
+"5 c #E5E5E1",
+"6 c #F0F0ED",
+"7 c #ECEDE9",
+"8 c #E3E5E0",
+"9 c #DDDED9",
+"0 c #CBCEC7",
+"a c #B6BBB3",
+"b c #A2A8A0",
+"c c #B3B8B0",
+"d c #BABFB7",
+"e c #ABB0A8",
+"f c #CBCECD",
+"g c #E0E2E2",
+"h c #E6E6DD",
+"i c #F4F4EF",
+"j c #F4F3F1",
+"k c #F4F4F1",
+"l c #F3F4F0",
+"m c #F0F0EB",
+"n c #E5E6E0",
+"o c #D6D9D2",
+"p c #919894",
+"q c #8B8F8D",
+"r c #898D8D",
+"s c #9A9C9C",
+"t c #C2C5C4",
+"u c #BCC0BF",
+"v c #D9DBD2",
+"w c #DFE0D8",
+"x c #D9DBD4",
+"y c #CCD0CF",
+"z c #848C89",
+"A c #969C99",
+"B c #86898A",
+"C c #53585A",
+"D c #5A5F60",
+"E c #8B8F8F",
+"F c #ADAFB0",
+"G c #E4E5E5",
+"H c #E3E5E5",
+"I c #E3E5E4",
+"J c #A1A4A4",
+"K c #686D6E",
+"L c #3C4041",
+"M c #4C5052",
+"N c #6B7171",
+"O c #323838",
+"P c #2E3434",
+"Q c #2B3132",
+"R c #2B3133",
+"S c #292E30",
+"T c #282D2F",
+"U c #272C2E",
+"V c #393D3C",
+"W c #939594",
+"X c #AFB5B3",
+"Y c #B0B6B4",
+"Z c #69706E",
+"` c #979F9B",
+" . c #6A716D",
+".. c #393E3B",
+"+. c #5F6764",
+"@. c #333734",
+"#. c #616866",
+"$. c #989B99",
+"%. c #B7BBBB",
+"&. c #D5D8D6",
+"*. c #818A88",
+"=. c #D1D4D2",
+"-. c #7E8785",
+";. c #515756",
+">. c #899290",
+",. c #434844",
+"'. c #6E7774",
+"). c #A0A3A1",
+"!. c #D6D9D7",
+"~. c #858D8A",
+"{. c #D8DBD8",
+"]. c #A2A8A3",
+"^. c #555B59",
+"/. c #979E9C",
+"(. c #454B47",
+"_. c #6F7875",
+":. c #D4D7D5",
+"<. c #838C89",
+"[. c #D8DBD7",
+"}. c #9B9D9B",
+"|. c #AFB1B0",
+"1. c #CCCFCF",
+"2. c #B9BBBB",
+"3. c #DDDFDC",
+"4. c #A0A7A4",
+"5. c #878B88",
+"6. c #929595",
+"7. c #727373",
+"8. c #575C5E",
+"9. c #9B9C9B",
+"0. c #D5D8D7",
+"a. c #CFD2D0",
+"b. c #BFC0BF",
+"c. c #BEC1BF",
+"d. c #878787",
+"e. c #54595A",
+" . . . . . . ",
+" . + @ # $ % & * = . ",
+" - ; > , ' ) ! ~ { ] ^ . ",
+" . / ( _ : < [ } | 1 2 3 4 . ",
+" . 5 6 7 8 9 0 a b c d e f . ",
+" . g h i j k l m n o p q r . ",
+" . s t u v w x y z A B C . . ",
+" . D E F G H I J K L M . ",
+" . N O P Q R S T U V W . ",
+" . X Y Z ` ...+. at .#.$.. ",
+" . %.&.*.=.-.;.>.,.'.).. ",
+" . %.!.~.{.].^./.(._.).. ",
+" . %.:.<.[.].^./.(.'.}.. ",
+" . |.1.2.3.].^.4.5.6.7.. ",
+" . 8.9.0.a.b.c.d.e.. ",
+" . . . . . . "};
diff --git a/udav/xpm/edit-find.png b/include/xpm/edit-find.png
similarity index 100%
copy from udav/xpm/edit-find.png
copy to include/xpm/edit-find.png
diff --git a/include/xpm/edit-find.xpm b/include/xpm/edit-find.xpm
new file mode 100644
index 0000000..8a8fb2e
--- /dev/null
+++ b/include/xpm/edit-find.xpm
@@ -0,0 +1,96 @@
+/* XPM */
+static const char * edit_find_xpm[] = {
+"16 16 77 1",
+" c None",
+". c #9A9B97",
+"+ c #888A85",
+"@ c #8D8F8A",
+"# c #8A8C87",
+"$ c #FFFFFF",
+"% c #898B86",
+"& c #F0F0EF",
+"* c #C7C7C6",
+"= c #D6D6D5",
+"- c #818380",
+"; c #828480",
+"> c #A8A9A6",
+", c #AEBAC8",
+"' c #A6BCD2",
+") c #A2BAD4",
+"! c #A8B9CD",
+"~ c #D6D7D5",
+"{ c #A8B7C8",
+"] c #8AACD2",
+"^ c #BFD3E7",
+"/ c #C5D7EA",
+"( c #9CBAD9",
+"_ c #90ADCB",
+": c #A3AEBB",
+"< c #85A9CF",
+"[ c #DCE6F2",
+"} c #E8EEF7",
+"| c #E4ECF5",
+"1 c #CADAEC",
+"2 c #8EB2D8",
+"3 c #97AFCB",
+"4 c #A2B8D0",
+"5 c #A5C0DF",
+"6 c #D9E4F1",
+"7 c #E0EAF3",
+"8 c #DDE7F2",
+"9 c #C1D4E9",
+"0 c #A0BEDF",
+"a c #81A6D0",
+"b c #FEFEFD",
+"c c #A9BFD6",
+"d c #A5C1E0",
+"e c #D0DEEE",
+"f c #DAE5F2",
+"g c #CDDCED",
+"h c #C8D9EC",
+"i c #BCD0E8",
+"j c #80A7D1",
+"k c #FAFAF9",
+"l c #A7B5C3",
+"m c #89ABD0",
+"n c #B3CAE5",
+"o c #C3D7EB",
+"p c #C1D4EA",
+"q c #CFDDEE",
+"r c #A3BDDA",
+"s c #93AFCE",
+"t c #CFCFCD",
+"u c #9FB8D1",
+"v c #91B3D6",
+"w c #AFC5DF",
+"x c #B2CAE3",
+"y c #A0BAD6",
+"z c #97B4D3",
+"A c #757673",
+"B c #8C8E89",
+"C c #7E807B",
+"D c #B3C8DC",
+"E c #8BACCF",
+"F c #80A8D1",
+"G c #99B3D0",
+"H c #A3A4A3",
+"I c #6C6E6A",
+"J c #8D8E8C",
+"K c #B8B8B7",
+"L c #848482",
+".++++++++++@ ",
+"#$$$$$$$$$$+ ",
+"%$&&&&&&&&$+ ",
+"#$&******&$+ ",
+"%$&&&&=----; ",
+"#$&**>-,')!- ",
+"%$&&~-{]^/(_- ",
+"#$&*-:<[}|123- ",
+"#$&&-4567890a- ",
+"%b&&-cdefghij- ",
+"%k&&-lmnopqrs- ",
+"%$$$t-uvwxyz-A ",
+"B%+++C-DEFG-HHI ",
+" I----JKHHL",
+" JKHL",
+" JJL"};
diff --git a/udav/xpm/edit-paste.png b/include/xpm/edit-paste.png
similarity index 100%
copy from udav/xpm/edit-paste.png
copy to include/xpm/edit-paste.png
diff --git a/include/xpm/edit-paste.xpm b/include/xpm/edit-paste.xpm
new file mode 100644
index 0000000..333091c
--- /dev/null
+++ b/include/xpm/edit-paste.xpm
@@ -0,0 +1,96 @@
+/* XPM */
+static const char * edit_paste_xpm[] = {
+"16 16 77 1",
+" c None",
+". c #5F5F5E",
+"+ c #5C5C5C",
+"@ c #6D4401",
+"# c #6C4401",
+"$ c #6B4403",
+"% c #5C5C5B",
+"& c #959589",
+"* c #97978A",
+"= c #C08424",
+"- c #A47E3E",
+"; c #706D64",
+"> c #5E5E5E",
+", c #7F7F7C",
+"' c #80807D",
+") c #7E7E7B",
+"! c #6E6C64",
+"~ c #A17C40",
+"{ c #B97F23",
+"] c #6C4301",
+"^ c #6F4602",
+"/ c #C68827",
+"( c #716F64",
+"_ c #F1F1F1",
+": c #E0E0E0",
+"< c #BBBBBB",
+"[ c #F2F2F2",
+"} c #6E6D64",
+"| c #C58727",
+"1 c #6A4200",
+"2 c #666864",
+"3 c #FFFFFF",
+"4 c #F0F0EF",
+"5 c #676964",
+"6 c #C28628",
+"7 c #C58726",
+"8 c #B3B5B5",
+"9 c #EFEFEE",
+"0 c #EFEFED",
+"a c #EDEDEB",
+"b c #6E4602",
+"c c #B2B4B4",
+"d c #B1B2B2",
+"e c #EAEAE8",
+"f c #EDEDEC",
+"g c #EBEBEA",
+"h c #DBDBD9",
+"i c #EEEEED",
+"j c #ECECEB",
+"k c #EBEBE9",
+"l c #E9E9E7",
+"m c #DADAD8",
+"n c #CCCDCA",
+"o c #ECECEA",
+"p c #E8E8E6",
+"q c #CDCECB",
+"r c #B9BAB6",
+"s c #B8B9B5",
+"t c #6E4502",
+"u c #E7E7E5",
+"v c #D9D9D6",
+"w c #B9B9B6",
+"x c #E7E7E4",
+"y c #D8D8D5",
+"z c #C1C2BE",
+"A c #B7B7B4",
+"B c #706D63",
+"C c #EDEEED",
+"D c #FEFEFE",
+"E c #FEFEFD",
+"F c #BA7F23",
+"G c #A77D3B",
+"H c #736F64",
+"I c #6A6C68",
+"J c #A37C3D",
+"K c #B37B22",
+"L c #6B4301",
+" .++++. ",
+" @#$%&**&%$## ",
+" @=-;>,'')>!~{] ",
+" ^/(_:<<<<:[}|1 ",
+" ^/234444443561 ",
+" ^7234888893561 ",
+" ^72344440a3561 ",
+" b723488cde3561 ",
+" b72349fgeh3561 ",
+" b723ijklmn3561 ",
+" b723oepqrs3561 ",
+" t723luvw333561 ",
+" t723xyzA335|61 ",
+" t7BCDDD9E5|||1 ",
+" ]FGHIIIIIJJJKL ",
+" ]##########L "};
diff --git a/udav/xpm/edit-redo.png b/include/xpm/edit-redo.png
similarity index 100%
copy from udav/xpm/edit-redo.png
copy to include/xpm/edit-redo.png
diff --git a/include/xpm/edit-redo.xpm b/include/xpm/edit-redo.xpm
new file mode 100644
index 0000000..c83b376
--- /dev/null
+++ b/include/xpm/edit-redo.xpm
@@ -0,0 +1,66 @@
+/* XPM */
+static const char * edit_redo_xpm[] = {
+"16 16 47 1",
+" c None",
+". c #4E9A06",
+"+ c #AEF36C",
+"@ c #8F9B0C",
+"# c #A9DE49",
+"$ c #AEF16A",
+"% c #AEF26B",
+"& c #B3F573",
+"* c #A6EF61",
+"= c #73D216",
+"- c #ACD945",
+"; c #AFEF67",
+"> c #A1E950",
+", c #A0DB24",
+"' c #A9D846",
+") c #B1EF65",
+"! c #A4DE24",
+"~ c #97DD2A",
+"{ c #AFD71A",
+"] c #75D318",
+"^ c #9DC230",
+"/ c #B1ED60",
+"( c #A5DF26",
+"_ c #C8D009",
+": c #77D014",
+"< c #8AE234",
+"[ c #559F0C",
+"} c #B1E963",
+"| c #BAE031",
+"1 c #CBD417",
+"2 c #9BD622",
+"3 c #A1DA23",
+"4 c #D9DE23",
+"5 c #529D0A",
+"6 c #B2EC64",
+"7 c #CDD624",
+"8 c #93A10B",
+"9 c #CCD41E",
+"0 c #BEE246",
+"a c #99A605",
+"b c #B3D937",
+"c c #B8DD3A",
+"d c #AFC723",
+"e c #919D05",
+"f c #5AA80F",
+"g c #C0D62C",
+"h c #9A9902",
+" . ",
+" .. ",
+" .+. ",
+" ....++. ",
+" .@#$%&*=+. ",
+" .-;>,,,,==+. ",
+" .')!~,,{===]+.",
+" .^/({{_:====<. ",
+" [}|1233334=<. ",
+" 5678.....9<. ",
+" .0a. .<. ",
+" .b. .. ",
+" .c. . ",
+" .de ",
+" fgh ",
+" "};
diff --git a/udav/xpm/edit-select-all.png b/include/xpm/edit-select-all.png
similarity index 100%
copy from udav/xpm/edit-select-all.png
copy to include/xpm/edit-select-all.png
diff --git a/include/xpm/edit-select-all.xpm b/include/xpm/edit-select-all.xpm
new file mode 100644
index 0000000..08ee62a
--- /dev/null
+++ b/include/xpm/edit-select-all.xpm
@@ -0,0 +1,56 @@
+/* XPM */
+static const char * edit_select_all_xpm[] = {
+"16 16 37 1",
+" c None",
+". c #8B8D89",
+"+ c #888A85",
+"@ c #8C8E89",
+"# c #FDFDFD",
+"$ c #FEFEFE",
+"% c #FCFCFC",
+"& c #FBFBFB",
+"* c #FAFAFA",
+"= c #F9F9F9",
+"- c #8B8D88",
+"; c #A8BED6",
+"> c #A9BFD7",
+", c #AAC0D8",
+"' c #ABC1D9",
+") c #F8F8F8",
+"! c #8197AF",
+"~ c #ACC2DA",
+"{ c #ADC3DB",
+"] c #AEC4DC",
+"^ c #EBEBEB",
+"/ c #AFC5DD",
+"( c #ECECEC",
+"_ c #B0C6DE",
+": c #EEEEEE",
+"< c #B1C7DF",
+"[ c #F0F0F0",
+"} c #B2C8E0",
+"| c #F2F2F2",
+"1 c #F7F7F7",
+"2 c #000000",
+"3 c #B3C9E1",
+"4 c #F4F4F4",
+"5 c #F5F5F5",
+"6 c #F6F6F6",
+"7 c #8298B0",
+"8 c #8D8F8A",
+" .++++++++++++@ ",
+" +#$$##%%&&**=- ",
+" +#;>>,,''''')- ",
+" +$>!!!!~!!!~)- ",
+" +#,!!!!{{{{{)- ",
+" +#,!!!!{]]]^)- ",
+" +%'!!!!]!!/()- ",
+" +%~~{]//___:)- ",
+" +%~{]//__<<[)- ",
+" +&~!!!!!!!}|1- ",
+" +&{]/__2}2341- ",
+" +*{]/_<}25661- ",
+" +={7777}21)11- ",
+" +={]/_<}21=)1- ",
+" +))))))2)2)))- ",
+" @++++++++++++8 "};
diff --git a/udav/xpm/edit-undo.png b/include/xpm/edit-undo.png
similarity index 100%
copy from udav/xpm/edit-undo.png
copy to include/xpm/edit-undo.png
diff --git a/include/xpm/edit-undo.xpm b/include/xpm/edit-undo.xpm
new file mode 100644
index 0000000..3bce212
--- /dev/null
+++ b/include/xpm/edit-undo.xpm
@@ -0,0 +1,80 @@
+/* XPM */
+static const char * edit_undo_xpm[] = {
+"16 16 61 1",
+" c None",
+". c #C4A000",
+"+ c #FBF3AD",
+"@ c #FBE425",
+"# c #BEA113",
+"$ c #BB9F15",
+"% c #BBA11B",
+"& c #F6E131",
+"* c #FAE320",
+"= c #FAEC73",
+"- c #FAEB6F",
+"; c #F7E86E",
+"> c #F7E86C",
+", c #BCA114",
+"' c #C1A314",
+") c #F6E02F",
+"! c #F7E232",
+"~ c #F1DB29",
+"{ c #F5E02F",
+"] c #E3CD16",
+"^ c #ECD936",
+"/ c #F6E769",
+"( c #E3CE41",
+"_ c #C1A313",
+": c #F8E232",
+"< c #E8D21D",
+"[ c #E1CD40",
+"} c #BDA116",
+"| c #FBED79",
+"1 c #F4DF2C",
+"2 c #D6C004",
+"3 c #DFC80B",
+"4 c #F3E56A",
+"5 c #C5AB1B",
+"6 c #BCA015",
+"7 c #FBED76",
+"8 c #DAC304",
+"9 c #F9EA69",
+"0 c #F7DD05",
+"a c #DFC80A",
+"b c #D8C207",
+"c c #EBDC6F",
+"d c #BFA31B",
+"e c #C4A901",
+"f c #EEE16E",
+"g c #DFC90F",
+"h c #F2E469",
+"i c #C0A41A",
+"j c #F5E66D",
+"k c #EFE276",
+"l c #C1A319",
+"m c #C8AC02",
+"n c #F2E788",
+"o c #C2A211",
+"p c #CBAA0E",
+"q c #E9DA5D",
+"r c #C0A623",
+"s c #DBC443",
+"t c #D8C543",
+"u c #EADB66",
+"v c #C2A611",
+" . ",
+" .. ",
+" .+. ",
+" .+ at ..#$% ",
+" .+&*=-;>,' ",
+" .+)!~{~]^/(_ ",
+".+):!!{~<<<^[} ",
+" .|:1222<<<3456 ",
+" .78799990abcd ",
+" .77....efghi ",
+" .7. .jkl ",
+" .. mno ",
+" . pqr ",
+" str ",
+" uv ",
+" "};
diff --git a/udav/xpm/film-b.png b/include/xpm/film-b.png
similarity index 100%
copy from udav/xpm/film-b.png
copy to include/xpm/film-b.png
diff --git a/include/xpm/film-b.xpm b/include/xpm/film-b.xpm
new file mode 100644
index 0000000..3f50d46
--- /dev/null
+++ b/include/xpm/film-b.xpm
@@ -0,0 +1,34 @@
+/* XPM */
+static const char * film_b_xpm[] = {
+"16 16 15 1",
+" c None",
+". c #7474D1",
+"+ c #7171D0",
+"@ c #7070CF",
+"# c #6F6FCF",
+"$ c #6A6ACD",
+"% c #6868CD",
+"& c #7373D0",
+"* c #7979D2",
+"= c #7C7CD3",
+"- c #7676D1",
+"; c #7E7ED3",
+"> c #8282D5",
+", c #8585D6",
+"' c #8181D4",
+" ",
+" ",
+" .+@#$$%$%%% ",
+" . &+##$#$ % ",
+" **..++#+##$ ",
+" = *-..+.+ # ",
+" ;==**....&+ ",
+" > ;==**** . ",
+" ,>>'==*=*** ",
+" > ;==**** . ",
+" ;==**....&+ ",
+" = *-..+.+ # ",
+" **..++#+##$ ",
+" . &+##$#$ % ",
+" .+@#$$%$%%% ",
+" "};
diff --git a/include/xpm/film-r.xpm b/include/xpm/film-r.xpm
new file mode 100644
index 0000000..b84f594
--- /dev/null
+++ b/include/xpm/film-r.xpm
@@ -0,0 +1,32 @@
+/* XPM */
+static const char * film_r_xpm[] = {
+"16 16 13 1",
+" c None",
+". c #B53C3C",
+"+ c #B23B3B",
+"@ c #AF3A3A",
+"# c #AE3939",
+"$ c #A63737",
+"% c #A53737",
+"& c #BD3F3F",
+"* c #C04141",
+"= c #BA3E3E",
+"- c #C14444",
+"; c #C24949",
+"> c #C44F4F",
+" ",
+" ",
+" .+@#$$%$%%% ",
+" . .+##$#$ % ",
+" &&..++#+##$ ",
+" * &=..+.+ # ",
+" -**&&.....+ ",
+" ; -**&&&& . ",
+" >;;;**&*&&& ",
+" ; -**&&&& . ",
+" -**&&.....+ ",
+" * &=..+.+ # ",
+" &&..++#+##$ ",
+" . .+##$#$ % ",
+" .+@#$$%$%%% ",
+" "};
diff --git a/udav/xpm/folder.png b/include/xpm/folder.png
similarity index 100%
copy from udav/xpm/folder.png
copy to include/xpm/folder.png
diff --git a/include/xpm/folder.xpm b/include/xpm/folder.xpm
new file mode 100644
index 0000000..6473918
--- /dev/null
+++ b/include/xpm/folder.xpm
@@ -0,0 +1,130 @@
+/* XPM */
+static const char * folder_xpm[] = {
+"16 16 111 2",
+" c None",
+". c #7A7A7A",
+"+ c #797979",
+"@ c #787878",
+"# c #C9C9C9",
+"$ c #C7C7C7",
+"% c #C5C5C5",
+"& c #C4C4C4",
+"* c #B4B4B4",
+"= c #747474",
+"- c #737373",
+"; c #B0B0B0",
+"> c #ADADAD",
+", c #ABABAB",
+"' c #AAAAAA",
+") c #ACACAC",
+"! c #8D8D8D",
+"~ c #8C8C8C",
+"{ c #808080",
+"] c #6C6C6C",
+"^ c #6E6E6E",
+"/ c #C1C1C0",
+"( c #A7A7A7",
+"_ c #A5A5A5",
+": c #A4A4A4",
+"< c #B6B6B6",
+"[ c #B9B9B9",
+"} c #BBBBBB",
+"| c #A2A2A2",
+"1 c #6A6A6A",
+"2 c #BDBDBD",
+"3 c #416DA6",
+"4 c #3666A5",
+"5 c #3566A4",
+"6 c #3465A4",
+"7 c #3768A6",
+"8 c #656565",
+"9 c #B7B7B7",
+"0 c #3566A5",
+"a c #BED3EA",
+"b c #BFD4EA",
+"c c #BED4EA",
+"d c #BED3E9",
+"e c #B8CFE8",
+"f c #3465A5",
+"g c #5F5F5F",
+"h c #B3B3B3",
+"i c #C1D5EA",
+"j c #91B4DB",
+"k c #91B5DB",
+"l c #92B5DB",
+"m c #96B8DC",
+"n c #B7CFE7",
+"o c #3466A4",
+"p c #5B5B5B",
+"q c #AEAEAE",
+"r c #3667A5",
+"s c #C4D7EB",
+"t c #94B7DC",
+"u c #91B4DA",
+"v c #B6CDE6",
+"w c #565656",
+"x c #A9A9A9",
+"y c #3666A4",
+"z c #C6D8EC",
+"A c #99BADD",
+"B c #95B7DC",
+"C c #8EB2DA",
+"D c #8BB0D9",
+"E c #B8CFE7",
+"F c #515151",
+"G c #A5A5A4",
+"H c #3767A5",
+"I c #BED2E9",
+"J c #9BBADD",
+"K c #99B9DD",
+"L c #95B6DC",
+"M c #90B3DA",
+"N c #8EB2D9",
+"O c #89AED8",
+"P c #87ADD7",
+"Q c #8BB0D8",
+"R c #B1C9E5",
+"S c #4C4C4C",
+"T c #A1A1A1",
+"U c #3868A5",
+"V c #A9C4E2",
+"W c #81A8D5",
+"X c #7AA4D3",
+"Y c #7EA7D4",
+"Z c #9CBADD",
+"` c #484848",
+" . c #9B9B9B",
+".. c #3867A4",
+"+. c #85ABD5",
+"@. c #6E9CCE",
+"#. c #6D9CCE",
+"$. c #709ECF",
+"%. c #84ABD5",
+"&. c #494949",
+"*. c #999999",
+"=. c #3968A5",
+"-. c #7EA6D3",
+";. c #78A3D2",
+">. c #79A4D3",
+",. c #7AA5D1",
+"'. c #788697",
+"). c #3A69A5",
+"!. c #5083BA",
+"~. c #4578B2",
+"{. c #464D53",
+" ",
+". + + + + + + ",
+"@ # $ % & & * = ",
+"- % ; > , ' ) ! ! ~ ~ ~ { ] ",
+"^ / ) ' ( _ : : ) < [ } | 1 ",
+"1 2 3 4 4 4 4 4 5 5 5 5 6 6 6 7 ",
+"8 9 0 a b b c c c d d d d d e f ",
+"g h 5 i j j k k l l l l l m n o ",
+"p q r s t t t t t t t t t u v 0 ",
+"w x y z A A A A A A A B C D E 0 ",
+"F G H I J K L l M N O P P Q R 0 ",
+"S T U V W X X X X X X X X Y Z 0 ",
+"` ...+. at .#.#.#.#.#.#.#.#.$.%.0 ",
+"&.*.=.-.;.;.;.;.;.;.;.;.;.>.,.0 ",
+"` '.).!.!.!.!.!.!.!.!.!.!.!.~.4 ",
+"{.6 6 6 6 6 6 6 6 6 6 6 6 6 5 "};
diff --git a/udav/xpm/format-indent-more.png b/include/xpm/format-indent-more.png
similarity index 100%
copy from udav/xpm/format-indent-more.png
copy to include/xpm/format-indent-more.png
diff --git a/include/xpm/format-indent-more.xpm b/include/xpm/format-indent-more.xpm
new file mode 100644
index 0000000..d2193fd
--- /dev/null
+++ b/include/xpm/format-indent-more.xpm
@@ -0,0 +1,53 @@
+/* XPM */
+static const char * format_indent_more_xpm[] = {
+"16 16 34 1",
+" c None",
+". c #4E8FCC",
+"+ c #498DC7",
+"@ c #FFFFFF",
+"# c #4B90CB",
+"$ c #FEFEFE",
+"% c #FABFBA",
+"& c #A22320",
+"* c #F9B7B3",
+"= c #921B18",
+"- c #F9B5B1",
+"; c #FCD2D2",
+"> c #F49A9A",
+", c #E67674",
+"' c #D55653",
+") c #BE3936",
+"! c #F8B3B0",
+"~ c #F49A98",
+"{ c #D45552",
+"] c #F8B2AE",
+"^ c #F39D99",
+"/ c #E67572",
+"( c #F8B0AC",
+"_ c #F39B97",
+": c #E67772",
+"< c #D35653",
+"[ c #F8AEAA",
+"} c #F39795",
+"| c #E57471",
+"1 c #D35451",
+"2 c #F8AEAC",
+"3 c #F8B1AC",
+"4 c #FBCAC7",
+"5 c #4C8ECC",
+" .++++++++++++. ",
+" +@@@@@@@@@@@@# ",
+" +@@@@@@@@@@@$# ",
+" +@@@@@#####@$# ",
+" +@@@@@%@@@@@$# ",
+" +@@@@@&*@@@@@# ",
+" +@@@@@&=-@@@@# ",
+" +;>,')&==!@@@# ",
+" +;~,{)&===]@$# ",
+" +;^/{)&====($# ",
+" +;_:<)&===[@$# ",
+" +;}|1)&==2@@@# ",
+" +@@@@@&=3@@@@# ",
+" +@@@@@&3@@@@@# ",
+" +@@@@@4$$@@@@# ",
+" .############5 "};
diff --git a/udav/xpm/func.xpm b/include/xpm/func.xpm
similarity index 100%
copy from udav/xpm/func.xpm
copy to include/xpm/func.xpm
diff --git a/udav/xpm/go-down.png b/include/xpm/go-down.png
similarity index 100%
copy from udav/xpm/go-down.png
copy to include/xpm/go-down.png
diff --git a/include/xpm/go-down.xpm b/include/xpm/go-down.xpm
new file mode 100644
index 0000000..e11a2cf
--- /dev/null
+++ b/include/xpm/go-down.xpm
@@ -0,0 +1,112 @@
+/* XPM */
+static const char * go_down_xpm[] = {
+"16 16 93 2",
+" c None",
+". c #3A7404",
+"+ c #3A7304",
+"@ c #C7DEB0",
+"# c #C3DCAB",
+"$ c #BFDAA6",
+"% c #B1D291",
+"& c #A3CA7E",
+"* c #C8DFB1",
+"= c #8DBE5F",
+"- c #86BA55",
+"; c #71AE37",
+"> c #4E9A06",
+", c #C7DFB1",
+"' c #78B241",
+") c #8CBD5D",
+"! c #85B954",
+"~ c #7CB447",
+"{ c #3B7504",
+"] c #3B7604",
+"^ c #C5DDAD",
+"/ c #89BC59",
+"( c #82B850",
+"_ c #6FAD34",
+": c #568927",
+"< c #C2DBAA",
+"[ c #C6DEAF",
+"} c #C2DCAA",
+"| c #88BD56",
+"1 c #82BA4D",
+"2 c #63AA1F",
+"3 c #53A208",
+"4 c #A5CE7F",
+"5 c #A4CD7E",
+"6 c #A4CC7E",
+"7 c #9FC778",
+"8 c #4B8218",
+"9 c #3B7404",
+"0 c #7AA54F",
+"a c #B8D69B",
+"b c #8DBE5D",
+"c c #8AC058",
+"d c #87C051",
+"e c #7EBC42",
+"f c #5AAB0C",
+"g c #59AB0B",
+"h c #59AA0A",
+"i c #58A90C",
+"j c #97C768",
+"k c #659A34",
+"l c #99BF75",
+"m c #A9D183",
+"n c #89C252",
+"o c #87C34D",
+"p c #69B61E",
+"q c #5FB40D",
+"r c #5EB30D",
+"s c #89C54E",
+"t c #84B755",
+"u c #40780D",
+"v c #B1D390",
+"w c #98CC65",
+"x c #7DC23B",
+"y c #62B90F",
+"z c #65BC0F",
+"A c #65BD10",
+"B c #7BC532",
+"C c #9FCE71",
+"D c #3F780A",
+"E c #578C26",
+"F c #B7DB94",
+"G c #79C331",
+"H c #67C011",
+"I c #6AC512",
+"J c #73C91F",
+"K c #A8DB78",
+"L c #52891E",
+"M c #7AAA4C",
+"N c #A0D66D",
+"O c #69C412",
+"P c #6ECB14",
+"Q c #A5E06C",
+"R c #72A83F",
+"S c #3C7604",
+"T c #8DBF5D",
+"U c #8DD14C",
+"V c #90D54E",
+"W c #92C55F",
+"X c #427A0E",
+"Y c #A2D174",
+"Z c #A3D375",
+"` c #427B0E",
+" . c #568B24",
+" . + + + + + + . ",
+" + @ # $ % & & + ",
+" + * = - ; > & + ",
+" + , = - ' > & + ",
+" + @ ) ! ~ > & + ",
+"{ + + + ] ^ / ( _ > & ] + + + { ",
+" : < [ ^ } | 1 2 3 4 5 6 7 8 ",
+" 9 0 a b c d e f g h i j k 9 ",
+" . l m n o p q q r s t { ",
+" u v w x y z A B C D ",
+" E F G H I J K L ",
+" { M N O P Q R S ",
+" ] T U V W S ",
+" X Y Z ` ",
+" . . ",
+" S S "};
diff --git a/udav/xpm/go-first.png b/include/xpm/go-first.png
similarity index 100%
copy from udav/xpm/go-first.png
copy to include/xpm/go-first.png
diff --git a/include/xpm/go-first.xpm b/include/xpm/go-first.xpm
new file mode 100644
index 0000000..3687e51
--- /dev/null
+++ b/include/xpm/go-first.xpm
@@ -0,0 +1,119 @@
+/* XPM */
+static const char * go_first_xpm[] = {
+"16 16 100 2",
+" c None",
+". c #3A7304",
+"+ c #3B7504",
+"@ c #3B7404",
+"# c #588B28",
+"$ c #3A7404",
+"% c #81AA58",
+"& c #C4DCAC",
+"* c #457C12",
+"= c #A6C787",
+"- c #BEDAA5",
+"; c #C6DEAF",
+"> c #629135",
+", c #BBD6A1",
+"' c #B0D290",
+") c #91C064",
+"! c #C3DDAB",
+"~ c #3B7604",
+"{ c #3B7506",
+"] c #86AE5F",
+"^ c #BDD9A3",
+"/ c #9DC775",
+"( c #8CBD5D",
+"_ c #8BBE5B",
+": c #C2DDA8",
+"< c #C0DDA5",
+"[ c #BEDBA2",
+"} c #BBD99E",
+"| c #B8D79A",
+"1 c #B4D496",
+"2 c #487E17",
+"3 c #A0C380",
+"4 c #B1D292",
+"5 c #8BBC5D",
+"6 c #86BA55",
+"7 c #87BD54",
+"8 c #87BF52",
+"9 c #87C04F",
+"0 c #85C04C",
+"a c #81BE46",
+"b c #7CBA3F",
+"c c #76B539",
+"d c #B4D594",
+"e c #AECE8F",
+"f c #9CC673",
+"g c #7DB448",
+"h c #7DB549",
+"i c #80B74B",
+"j c #83BC4B",
+"k c #81BF46",
+"l c #79BC37",
+"m c #71BA2A",
+"n c #69B51E",
+"o c #65B31B",
+"p c #65B01D",
+"q c #B0D58E",
+"r c #A1C77E",
+"s c #68A92B",
+"t c #62A523",
+"u c #5FA81A",
+"v c #5DAB11",
+"w c #5CB00C",
+"x c #60B50D",
+"y c #62B80E",
+"z c #61B80E",
+"A c #5FB50D",
+"B c #5CAF0C",
+"C c #A8D280",
+"D c #41790E",
+"E c #85B25A",
+"F c #8FBF62",
+"G c #59A213",
+"H c #55A509",
+"I c #5AAD0B",
+"J c #64BB0F",
+"K c #66BF10",
+"L c #63BB0F",
+"M c #5FB40D",
+"N c #A9D480",
+"O c #6A9C3B",
+"P c #9CC772",
+"Q c #70B42D",
+"R c #62B90E",
+"S c #B0DE83",
+"T c #B2E184",
+"U c #ADDA82",
+"V c #AAD681",
+"W c #50851D",
+"X c #99C66E",
+"Y c #8AC74E",
+"Z c #64BB11",
+"` c #B1E084",
+" . c #3F7B05",
+".. c #3F780A",
+"+. c #87B955",
+"@. c #9FD56C",
+"#. c #6AA136",
+"$. c #ACDB7E",
+"%. c #4E8619",
+"&. c #3C7604",
+". . + ",
+". . @ # . ",
+". . $ % & . ",
+". . * = - ; . ",
+". . @ > , ' ) ! ~ . . . . $ ",
+". . { ] ^ / ( _ : < [ } | 1 . ",
+". . 2 3 4 5 6 7 8 9 0 a b c d . ",
+". . e f g h i j k l m n o p q . ",
+". . r ( s t u v w x y z A B C . ",
+". . D E F G H I A J K K L M N . ",
+". . $ O P Q w R S T T S U V . ",
+". . @ W X Y Z ` .. . . . $ ",
+". . ..+. at .` . ",
+". . + #.$.. ",
+". . ~ %.. ",
+". . &. "};
diff --git a/udav/xpm/go-last.png b/include/xpm/go-last.png
similarity index 100%
copy from udav/xpm/go-last.png
copy to include/xpm/go-last.png
diff --git a/include/xpm/go-last.xpm b/include/xpm/go-last.xpm
new file mode 100644
index 0000000..2103750
--- /dev/null
+++ b/include/xpm/go-last.xpm
@@ -0,0 +1,119 @@
+/* XPM */
+static const char * go_last_xpm[] = {
+"16 16 100 2",
+" c None",
+". c #3B7504",
+"+ c #3A7304",
+"@ c #568927",
+"# c #3A7404",
+"$ c #C0DBA7",
+"% c #7EA955",
+"& c #C3DCAB",
+"* c #BCD8A0",
+"= c #A4C684",
+"- c #447B11",
+"; c #3B7604",
+"> c #C1DBA9",
+", c #8EBE5F",
+"' c #AFD28D",
+") c #BAD6A0",
+"! c #629135",
+"~ c #3B7404",
+"{ c #B2D393",
+"] c #B4D496",
+"^ c #B7D69A",
+"/ c #BAD79E",
+"( c #BDD9A1",
+"_ c #C0DCA4",
+": c #8AC058",
+"< c #8EC25C",
+"[ c #9FCB76",
+"} c #BFDBA4",
+"| c #86AF60",
+"1 c #3B7506",
+"2 c #B0D190",
+"3 c #6CAB30",
+"4 c #71AE37",
+"5 c #76B23D",
+"6 c #7DB845",
+"7 c #83BE4B",
+"8 c #87C150",
+"9 c #8BC353",
+"0 c #8CC356",
+"a c #91C560",
+"b c #B4D694",
+"c c #A2C581",
+"d c #497E17",
+"e c #ACCF8A",
+"f c #59A016",
+"g c #589F14",
+"h c #5EA718",
+"i c #6AB226",
+"j c #76BB35",
+"k c #83C245",
+"l c #88C64B",
+"m c #88C54D",
+"n c #87C34D",
+"o c #84BF4C",
+"p c #B0D092",
+"q c #A3CA7E",
+"r c #4E9A06",
+"s c #509E07",
+"t c #56A609",
+"u c #5AAD0B",
+"v c #5EB30D",
+"w c #61B70E",
+"x c #66BB16",
+"y c #6CBC1F",
+"z c #71BC2A",
+"A c #73B930",
+"B c #92C560",
+"C c #A3C97F",
+"D c #52A108",
+"E c #58A90A",
+"F c #5DB10C",
+"G c #62B80E",
+"H c #66BE10",
+"I c #67C011",
+"J c #6ABB1B",
+"K c #99CE66",
+"L c #89B85B",
+"M c #42790E",
+"N c #A6CF7F",
+"O c #A9D480",
+"P c #ACD881",
+"Q c #AFDC83",
+"R c #6AC412",
+"S c #6CC813",
+"T c #80CC35",
+"U c #A6D777",
+"V c #6EA33D",
+"W c #3D7904",
+"X c #AFDD83",
+"Y c #6DC815",
+"Z c #97DC55",
+"` c #A3D673",
+" . c #52891E",
+".. c #A5DC6E",
+"+. c #8DC459",
+"@. c #3F790A",
+"#. c #AAD97D",
+"$. c #6CA436",
+"%. c #3C7604",
+"&. c #4D8519",
+" . + + ",
+" + @ # + + ",
+" + $ % # + + ",
+" + & * = - + + ",
+"# + + + + ; > , ' ) ! ~ + + ",
+"+ { ] ^ / ( _ : < [ } | 1 + + ",
+"+ 2 3 4 5 6 7 8 9 0 a b c d + + ",
+"+ e f g h i j k l m n o [ p + + ",
+"+ q r s t u v w x y z A B C + + ",
+"+ q r D E F G H I H J K L M + + ",
+"+ q q N O P Q R S T U V . + + ",
+"# + + + + W X Y Z ` .; + + ",
+" + X ..+. at . + + ",
+" + #.$.%. + + ",
+" + &.%. + + ",
+" ; + + "};
diff --git a/udav/xpm/go-next-b.png b/include/xpm/go-next-b.png
similarity index 100%
copy from udav/xpm/go-next-b.png
copy to include/xpm/go-next-b.png
diff --git a/udav/xpm/go-next.png b/include/xpm/go-next.png
similarity index 100%
copy from udav/xpm/go-next.png
copy to include/xpm/go-next.png
diff --git a/include/xpm/go-next.xpm b/include/xpm/go-next.xpm
new file mode 100644
index 0000000..49e0f2f
--- /dev/null
+++ b/include/xpm/go-next.xpm
@@ -0,0 +1,119 @@
+/* XPM */
+static const char * go_next_xpm[] = {
+"16 16 100 2",
+" c None",
+". c #3B7504",
+"+ c #3A7304",
+"@ c #598C2A",
+"# c #3A7404",
+"$ c #CBE1B7",
+"% c #82AB5A",
+"& c #CEE3BB",
+"* c #C3DCAB",
+"= c #A4C684",
+"- c #437A10",
+"; c #3B7604",
+"> c #CBE0B6",
+", c #99C46F",
+"' c #B1D291",
+") c #B7D49C",
+"! c #5F8F31",
+"~ c #3B7404",
+"{ c #C0DBA7",
+"] c #C2DCAA",
+"^ c #C5DDAD",
+"/ c #C6DEAF",
+"( c #C7DEB0",
+"_ c #91C164",
+": c #8FC161",
+"< c #9DC873",
+"[ c #BBD99F",
+"} c #81AB5A",
+"| c #3A7405",
+"1 c #BDD9A3",
+"2 c #85B954",
+"3 c #88BB58",
+"4 c #8BBC5B",
+"5 c #8BBD5C",
+"6 c #8CBE5C",
+"7 c #8DC15C",
+"8 c #8DC25A",
+"9 c #8AC255",
+"0 c #8CC358",
+"a c #AFD48C",
+"b c #9CC37A",
+"c c #467C14",
+"d c #B9D79C",
+"e c #74AF3B",
+"f c #6EAC33",
+"g c #68A92B",
+"h c #6BAC2F",
+"i c #78B63D",
+"j c #82BE49",
+"k c #89C350",
+"l c #88C44D",
+"m c #84C249",
+"n c #80BE44",
+"o c #9BCA6D",
+"p c #AACE89",
+"q c #5E8F30",
+"r c #A3CA7E",
+"s c #4E9A06",
+"t c #52A007",
+"u c #57A709",
+"v c #5BAE0B",
+"w c #5FB20E",
+"x c #66B817",
+"y c #6CBA1F",
+"z c #6FBA26",
+"A c #8DC655",
+"B c #9EC976",
+"C c #568926",
+"D c #4F9C06",
+"E c #54A408",
+"F c #5AAC0B",
+"G c #5EB30D",
+"H c #62B90E",
+"I c #64BC0F",
+"J c #6CBF1C",
+"K c #9CD267",
+"L c #8BBB5D",
+"M c #427A0E",
+"N c #A4CC7E",
+"O c #A7D17F",
+"P c #AAD581",
+"Q c #61B70E",
+"R c #66BF10",
+"S c #7FCB34",
+"T c #A8DA78",
+"U c #71A63E",
+"V c #3C7804",
+"W c #ABD681",
+"X c #64BA11",
+"Y c #92D352",
+"Z c #A5D773",
+"` c #538B1E",
+" . c #3C7604",
+".. c #ABD781",
+"+. c #A0D56C",
+"@. c #8BC158",
+"#. c #40790A",
+"$. c #A6D37B",
+"%. c #6AA136",
+"&. c #4D8418",
+" . ",
+" + @ # ",
+" + $ % # ",
+" + & * = - ",
+"# + + + + ; > , ' ) ! ~ ",
+"+ { ] ^ / ( ( _ : < [ } | ",
+"+ 1 2 3 4 5 6 7 8 9 0 a b c ",
+"+ d e f g h i j k l m n o p q . ",
+"+ r s s s t u v w x y z A B C . ",
+"+ r s s D E F G H I J K L M ",
+"+ r r r N O P Q R S T U ; ",
+"# + + + + V W X Y Z ` . ",
+" + ..+. at .#. ",
+" + $.%. . ",
+" + &.; ",
+" . "};
diff --git a/udav/xpm/go-previous-b.png b/include/xpm/go-previous-b.png
similarity index 100%
copy from udav/xpm/go-previous-b.png
copy to include/xpm/go-previous-b.png
diff --git a/udav/xpm/go-previous.png b/include/xpm/go-previous.png
similarity index 100%
copy from udav/xpm/go-previous.png
copy to include/xpm/go-previous.png
diff --git a/include/xpm/go-previous.xpm b/include/xpm/go-previous.xpm
new file mode 100644
index 0000000..65984e8
--- /dev/null
+++ b/include/xpm/go-previous.xpm
@@ -0,0 +1,117 @@
+/* XPM */
+static const char * go_previous_xpm[] = {
+"16 16 98 2",
+" c None",
+". c #3B7504",
+"+ c #3B7404",
+"@ c #598B29",
+"# c #3A7304",
+"$ c #3A7404",
+"% c #7FA956",
+"& c #C8DFB1",
+"* c #437A10",
+"= c #A0C37E",
+"- c #BDD9A3",
+"; c #CAE0B5",
+"> c #5D8D2E",
+", c #B3D296",
+"' c #AACF88",
+") c #91C064",
+"! c #C7DFB1",
+"~ c #3B7604",
+"{ c #3A7405",
+"] c #7DA855",
+"^ c #B5D497",
+"/ c #94C26A",
+"( c #87BA57",
+"_ c #8BBD5C",
+": c #C4DDAC",
+"< c #C5DEAE",
+"[ c #C6DEAE",
+"} c #C2DCAA",
+"| c #457C13",
+"1 c #97BD72",
+"2 c #A7CD84",
+"3 c #80B64D",
+"4 c #7DB549",
+"5 c #82B74F",
+"6 c #85B954",
+"7 c #88BB58",
+"8 c #89BC59",
+"9 c #8ABC5A",
+"0 c #BFDAA6",
+"a c #5A8C2C",
+"b c #A5C982",
+"c c #90BF63",
+"d c #70AD35",
+"e c #75B23C",
+"f c #7BB642",
+"g c #7FB947",
+"h c #7AB742",
+"i c #71B035",
+"j c #65A827",
+"k c #5EA31D",
+"l c #60A420",
+"m c #68A92B",
+"n c #B8D69B",
+"o c #578927",
+"p c #9DC477",
+"q c #87BB54",
+"r c #66AC22",
+"s c #66AF20",
+"t c #62AF17",
+"u c #5CAD0E",
+"v c #59AC0B",
+"w c #58A90A",
+"x c #55A409",
+"y c #519E07",
+"z c #4E9A06",
+"A c #A3CA7E",
+"B c #41790E",
+"C c #87B65B",
+"D c #96CA65",
+"E c #65B519",
+"F c #60B50D",
+"G c #61B70E",
+"H c #61B60E",
+"I c #5EB30D",
+"J c #5AAD0B",
+"K c #56A609",
+"L c #6EA23D",
+"M c #A5D576",
+"N c #7CC833",
+"O c #69C211",
+"P c #67C111",
+"Q c #AEDB82",
+"R c #ACD881",
+"S c #A9D480",
+"T c #A6CF7F",
+"U c #52891E",
+"V c #A3D572",
+"W c #97DA54",
+"X c #6EC915",
+"Y c #B0DE83",
+"Z c #3D7904",
+"` c #3F790A",
+" . c #8DC459",
+".. c #A5DC6E",
+"+. c #3C7604",
+"@. c #6BA236",
+"#. c #A9D77D",
+"$. c #4D8419",
+" . ",
+" + @ # ",
+" $ % & # ",
+" * = - ; # ",
+" + > , ' ) ! ~ # # # # $ ",
+" { ] ^ / ( _ : < [ < : } # ",
+" | 1 2 3 4 5 6 7 8 9 8 7 0 # ",
+". a b c d e f g h i j k l m n # ",
+". o p q r s t u v w x y z z A # ",
+" B C D E F G H I J K y z A # ",
+" . L M N O P Q R S T A A # ",
+" ~ U V W X Y Z # # # # $ ",
+" ` ...Y # ",
+" +. at .#.# ",
+" ~ $.# ",
+" . "};
diff --git a/udav/xpm/go-up.png b/include/xpm/go-up.png
similarity index 100%
copy from udav/xpm/go-up.png
copy to include/xpm/go-up.png
diff --git a/include/xpm/go-up.xpm b/include/xpm/go-up.xpm
new file mode 100644
index 0000000..d3ae19f
--- /dev/null
+++ b/include/xpm/go-up.xpm
@@ -0,0 +1,124 @@
+/* XPM */
+static const char * go_up_xpm[] = {
+"16 16 105 2",
+" c None",
+". c #3B7504",
+"+ c #578928",
+"@ c #568926",
+"# c #41790F",
+"$ c #A7CA87",
+"% c #A2C77E",
+"& c #41790E",
+"* c #3A7404",
+"= c #96BD72",
+"- c #9AC572",
+"; c #95C26A",
+"> c #86B35B",
+", c #3B7404",
+"' c #78A54E",
+") c #B0D291",
+"! c #7DB448",
+"~ c #76B13F",
+"{ c #6A9C3B",
+"] c #578A28",
+"^ c #BBD7A0",
+"/ c #8CBD5F",
+"( c #80B64D",
+"_ c #7AB344",
+": c #5CA21A",
+"< c #9AC471",
+"[ c #4F841D",
+"} c #40780D",
+"| c #B7D49C",
+"1 c #A0C97A",
+"2 c #8BBE5A",
+"3 c #86BC51",
+"4 c #74B438",
+"5 c #53A308",
+"6 c #6CAF2C",
+"7 c #97C36E",
+"8 c #3E770A",
+"9 c #A1C480",
+"0 c #B5D597",
+"a c #96C569",
+"b c #91C560",
+"c c #8BC356",
+"d c #66B01D",
+"e c #59AC0B",
+"f c #59AB0B",
+"g c #85C14D",
+"h c #84B455",
+"i c #7FA956",
+"j c #C7DFB0",
+"k c #A0CB77",
+"l c #9ACA6C",
+"m c #96CA63",
+"n c #81C143",
+"o c #5EB30D",
+"p c #5FB50D",
+"q c #5FB40D",
+"r c #5FB20F",
+"s c #9BCE6A",
+"t c #679C35",
+"u c #588B28",
+"v c #CAE0B5",
+"w c #D0E5BC",
+"x c #CEE5B8",
+"y c #CBE5B3",
+"z c #97CD63",
+"A c #68BA19",
+"B c #64BC0F",
+"C c #65BE10",
+"D c #AFDC83",
+"E c #AEDB82",
+"F c #ACD982",
+"G c #A6D37B",
+"H c #4C8418",
+"I c #3A7304",
+"J c #3C7804",
+"K c #CBE6B2",
+"L c #89C94B",
+"M c #65BD10",
+"N c #69C311",
+"O c #6BC712",
+"P c #B2E184",
+"Q c #3E7A05",
+"R c #CAE5B0",
+"S c #78C331",
+"T c #67C011",
+"U c #6CC813",
+"V c #71CF15",
+"W c #B4E585",
+"X c #C8E4AD",
+"Y c #6DBD1F",
+"Z c #66BF10",
+"` c #6AC512",
+" . c #6DC913",
+".. c #B3E384",
+"+. c #C5E2A9",
+"@. c #65B616",
+"#. c #63BA0F",
+"$. c #66BE10",
+"%. c #67C111",
+"&. c #B0DE83",
+"*. c #C1DFA5",
+"=. c #AAD581",
+"-. c #ABD781",
+";. c #ADDA82",
+">. c #ADD982",
+" . . ",
+" + @ ",
+" # $ % & ",
+" * = - ; > * ",
+" , ' ) ! ~ ; { * ",
+" ] ^ / ( _ : < [ ",
+" } | 1 2 3 4 5 6 7 8 ",
+" * 9 0 a b c d e f g h . ",
+" , i j k l m n o p q r s t . ",
+" u v w x y z A B C D E F G H ",
+". I I I J K L M N O P Q I I I . ",
+" I R S T U V W I ",
+" I X Y Z ` ...I ",
+" I +. at .#.$.%.&.I ",
+" I *.=.-.F ;.>.I ",
+" * I I I I I I , "};
diff --git a/udav/xpm/help-contents.png b/include/xpm/help-contents.png
similarity index 100%
copy from udav/xpm/help-contents.png
copy to include/xpm/help-contents.png
diff --git a/include/xpm/help-contents.xpm b/include/xpm/help-contents.xpm
new file mode 100644
index 0000000..a307af2
--- /dev/null
+++ b/include/xpm/help-contents.xpm
@@ -0,0 +1,123 @@
+/* XPM */
+static const char * help_contents_xpm[] = {
+"16 16 104 2",
+" c None",
+". c #8D8F8A",
+"+ c #898B86",
+"@ c #888A85",
+"# c #8F918C",
+"$ c #FFFFFF",
+"% c #8A8C87",
+"& c #DEE1DB",
+"* c #C0C3BC",
+"= c #BABDB6",
+"- c #C2C4BE",
+"; c #EAECE8",
+"> c #DFE2DC",
+", c #E3E5E0",
+"' c #E6E9E4",
+") c #EDEEEB",
+"! c #EFF0ED",
+"~ c #F0F1EF",
+"{ c #F0F1EE",
+"] c #EEF0ED",
+"^ c #ECEDEA",
+"/ c #E0E3DD",
+"( c #E4E6E1",
+"_ c #C5ABA8",
+": c #A37A77",
+"< c #A47E7B",
+"[ c #CAB1AE",
+"} c #EDEFEC",
+"| c #E1E3DE",
+"1 c #B17977",
+"2 c #A32827",
+"3 c #D69392",
+"4 c #EEEEEC",
+"5 c #EEEEED",
+"6 c #D79C9B",
+"7 c #A52927",
+"8 c #B57D7B",
+"9 c #C6ABA8",
+"0 c #F08686",
+"a c #EB5757",
+"b c #BAA6A2",
+"c c #EB5C5C",
+"d c #F09F9F",
+"e c #A62A29",
+"f c #D0B4B2",
+"g c #A2837F",
+"h c #D78F8E",
+"i c #EC5757",
+"j c #AB1010",
+"k c #B99390",
+"l c #ED5F5F",
+"m c #DBA4A2",
+"n c #A6827E",
+"o c #F0F0EE",
+"p c #BAA9A6",
+"q c #B68885",
+"r c #F4F5F3",
+"s c #F8F8F7",
+"t c #BD9896",
+"u c #BBA6A3",
+"v c #F2F2F1",
+"w c #BAA8A5",
+"x c #B79693",
+"y c #F8F9F8",
+"z c #BA8D8B",
+"A c #BCAEAB",
+"B c #F5F5F4",
+"C c #A47F7B",
+"D c #E09392",
+"E c #EC8C8C",
+"F c #A21B1B",
+"G c #B89490",
+"H c #BA9694",
+"I c #A11C1B",
+"J c #EDA7A7",
+"K c #E39E9D",
+"L c #A68481",
+"M c #C6ACA8",
+"N c #B21C1C",
+"O c #F69090",
+"P c #EE9897",
+"Q c #BFAEAB",
+"R c #C0AFAC",
+"S c #EFB2B1",
+"T c #F9B1B1",
+"U c #B32020",
+"V c #D0B5B3",
+"W c #E2E5E0",
+"X c #B27774",
+"Y c #B32221",
+"Z c #E6AAA9",
+"` c #F8F8F8",
+" . c #FAFAF9",
+".. c #EAB8B7",
+"+. c #B52626",
+"@. c #B77B79",
+"#. c #F2F3F0",
+"$. c #E2E4DF",
+"%. c #E6E8E4",
+"&. c #C5ADA9",
+"*. c #A47C79",
+"=. c #A57B78",
+"-. c #CDB3B1",
+";. c #F1F2F0",
+" . + @ @ @ @ @ @ @ @ @ @ + # ",
+" + $ $ $ $ $ $ $ $ $ $ $ $ % ",
+" @ $ & * = = = = = = - ; $ @ ",
+" @ $ > , ' ; ) ! ~ { ] ^ $ @ ",
+" @ $ / ( _ : . . < [ ~ } $ @ ",
+" @ $ | 1 2 3 4 5 6 7 8 ! $ @ ",
+" @ $ 9 2 0 a b b c d e f $ @ ",
+" @ $ g h i j k k j l m n $ @ ",
+" @ $ . o p q r s t u v . $ @ ",
+" @ $ . v w x r y z A B . $ @ ",
+" @ $ C D E F G H I J K L $ @ ",
+" @ $ M N O P Q R S T U V $ @ ",
+" @ $ W X Y Z ` ...+. at .#.$ @ ",
+" @ $ $.%.&.*.. . =.-.r ;.$ @ ",
+" + $ $ $ $ $ $ $ $ $ $ $ $ % ",
+" . + @ @ @ @ @ @ @ @ @ @ + # "};
diff --git a/udav/xpm/help-faq.png b/include/xpm/help-faq.png
similarity index 100%
copy from udav/xpm/help-faq.png
copy to include/xpm/help-faq.png
diff --git a/include/xpm/help-faq.xpm b/include/xpm/help-faq.xpm
new file mode 100644
index 0000000..1b8b9fe
--- /dev/null
+++ b/include/xpm/help-faq.xpm
@@ -0,0 +1,92 @@
+/* XPM */
+static const char * help_faq_xpm[] = {
+"16 16 73 1",
+" c None",
+". c #B6B8B4",
+"+ c #93938F",
+"@ c #888A85",
+"# c #8D908A",
+"$ c #BDBEBB",
+"% c #FCFCFC",
+"& c #FFFFFF",
+"* c #BBBCBB",
+"= c #8D8F89",
+"- c #91928E",
+"; c #93968F",
+"> c #B4B5B1",
+", c #EEEEEB",
+"' c #A0BDDA",
+") c #A3BFDB",
+"! c #91B3D5",
+"~ c #DBE2EB",
+"{ c #FCFCFB",
+"] c #BCBDBA",
+"^ c #B8B9B7",
+"/ c #F1F1F1",
+"( c #F2F2F1",
+"_ c #ADC6DE",
+": c #BFD1E2",
+"< c #FEFEFE",
+"[ c #8F918C",
+"} c #8D8E8A",
+"| c #F2F2F0",
+"1 c #EFEFED",
+"2 c #A1BDDA",
+"3 c #91B3D6",
+"4 c #E1E7EC",
+"5 c #92948F",
+"6 c #F5F5F4",
+"7 c #BDD0E5",
+"8 c #ACC6DF",
+"9 c #F4F5F4",
+"0 c #8F908C",
+"a c #F1F1F0",
+"b c #AEC6DE",
+"c c #BFD1E3",
+"d c #F8F8F6",
+"e c #8AAFD5",
+"f c #FBFBFB",
+"g c #F8F8F7",
+"h c #8AAFD6",
+"i c #7AA5D3",
+"j c #8A8C88",
+"k c #FBFBFA",
+"l c #90938E",
+"m c #8E8F8B",
+"n c #FDFDFD",
+"o c #7AA5D2",
+"p c #8B8D88",
+"q c #949591",
+"r c #F6F6F5",
+"s c #969994",
+"t c #C0C1BE",
+"u c #FEFEFD",
+"v c #90928E",
+"w c #90938C",
+"x c #EEEEEC",
+"y c #8D8F8A",
+"z c #939590",
+"A c #979994",
+"B c #90908C",
+"C c #DFDFDE",
+"D c #90928D",
+"E c #EDEDEC",
+"F c #8F908B",
+"G c #DFE0DE",
+"H c #8E908B",
+" ",
+" .+@@@@# ",
+" .$%&&&&%* ",
+" =-@@@@;>,')!~{#",
+" ]%&&&&%]^/(_:<[",
+"}%|12)34{56789<[",
+"0<||a|bc<0dedd&[",
+"[<666789<[ffff&[",
+"[&ggghgg&[<i<<&j",
+"0&kkkkkk&[&&<<%l",
+"mn<<<o<<&pqr&&s ",
+" tu&&&<<%v wx&[ ",
+" ym at zr&&A BC[ ",
+" DE&[ F@ ",
+" 0G[ ",
+" H@ "};
diff --git a/udav/xpm/insert.xpm b/include/xpm/insert.xpm
similarity index 100%
copy from udav/xpm/insert.xpm
copy to include/xpm/insert.xpm
diff --git a/udav/xpm/integr.xpm b/include/xpm/integr.xpm
similarity index 100%
copy from udav/xpm/integr.xpm
copy to include/xpm/integr.xpm
diff --git a/udav/xpm/mark_.xpm b/include/xpm/mark_.xpm
similarity index 100%
copy from udav/xpm/mark_.xpm
copy to include/xpm/mark_.xpm
diff --git a/udav/xpm/mark_a.xpm b/include/xpm/mark_a.xpm
similarity index 100%
copy from udav/xpm/mark_a.xpm
copy to include/xpm/mark_a.xpm
diff --git a/udav/xpm/mark_cf.xpm b/include/xpm/mark_cf.xpm
similarity index 100%
copy from udav/xpm/mark_cf.xpm
copy to include/xpm/mark_cf.xpm
diff --git a/udav/xpm/mark_d.xpm b/include/xpm/mark_d.xpm
similarity index 100%
copy from udav/xpm/mark_d.xpm
copy to include/xpm/mark_d.xpm
diff --git a/udav/xpm/mark_df.xpm b/include/xpm/mark_df.xpm
similarity index 100%
copy from udav/xpm/mark_df.xpm
copy to include/xpm/mark_df.xpm
diff --git a/udav/xpm/mark_l.xpm b/include/xpm/mark_l.xpm
similarity index 100%
copy from udav/xpm/mark_l.xpm
copy to include/xpm/mark_l.xpm
diff --git a/udav/xpm/mark_lf.xpm b/include/xpm/mark_lf.xpm
similarity index 100%
copy from udav/xpm/mark_lf.xpm
copy to include/xpm/mark_lf.xpm
diff --git a/udav/xpm/mark_n.xpm b/include/xpm/mark_n.xpm
similarity index 100%
copy from udav/xpm/mark_n.xpm
copy to include/xpm/mark_n.xpm
diff --git a/udav/xpm/mark_o.xpm b/include/xpm/mark_o.xpm
similarity index 100%
copy from udav/xpm/mark_o.xpm
copy to include/xpm/mark_o.xpm
diff --git a/udav/xpm/mark_of.xpm b/include/xpm/mark_of.xpm
similarity index 100%
copy from udav/xpm/mark_of.xpm
copy to include/xpm/mark_of.xpm
diff --git a/udav/xpm/mark_p.xpm b/include/xpm/mark_p.xpm
similarity index 100%
copy from udav/xpm/mark_p.xpm
copy to include/xpm/mark_p.xpm
diff --git a/udav/xpm/mark_pf.xpm b/include/xpm/mark_pf.xpm
similarity index 100%
copy from udav/xpm/mark_pf.xpm
copy to include/xpm/mark_pf.xpm
diff --git a/udav/xpm/mark_r.xpm b/include/xpm/mark_r.xpm
similarity index 100%
copy from udav/xpm/mark_r.xpm
copy to include/xpm/mark_r.xpm
diff --git a/udav/xpm/mark_rf.xpm b/include/xpm/mark_rf.xpm
similarity index 100%
copy from udav/xpm/mark_rf.xpm
copy to include/xpm/mark_rf.xpm
diff --git a/udav/xpm/mark_s.xpm b/include/xpm/mark_s.xpm
similarity index 100%
copy from udav/xpm/mark_s.xpm
copy to include/xpm/mark_s.xpm
diff --git a/udav/xpm/mark_sf.xpm b/include/xpm/mark_sf.xpm
similarity index 100%
copy from udav/xpm/mark_sf.xpm
copy to include/xpm/mark_sf.xpm
diff --git a/udav/xpm/mark_t.xpm b/include/xpm/mark_t.xpm
similarity index 100%
copy from udav/xpm/mark_t.xpm
copy to include/xpm/mark_t.xpm
diff --git a/udav/xpm/mark_tf.xpm b/include/xpm/mark_tf.xpm
similarity index 100%
copy from udav/xpm/mark_tf.xpm
copy to include/xpm/mark_tf.xpm
diff --git a/udav/xpm/mark_v.xpm b/include/xpm/mark_v.xpm
similarity index 100%
copy from udav/xpm/mark_v.xpm
copy to include/xpm/mark_v.xpm
diff --git a/udav/xpm/mark_vf.xpm b/include/xpm/mark_vf.xpm
similarity index 100%
copy from udav/xpm/mark_vf.xpm
copy to include/xpm/mark_vf.xpm
diff --git a/udav/xpm/mark_x.xpm b/include/xpm/mark_x.xpm
similarity index 100%
copy from udav/xpm/mark_x.xpm
copy to include/xpm/mark_x.xpm
diff --git a/udav/xpm/mark_y.xpm b/include/xpm/mark_y.xpm
similarity index 100%
copy from udav/xpm/mark_y.xpm
copy to include/xpm/mark_y.xpm
diff --git a/udav/xpm/media-seek-backward.png b/include/xpm/media-seek-backward.png
similarity index 100%
copy from udav/xpm/media-seek-backward.png
copy to include/xpm/media-seek-backward.png
diff --git a/include/xpm/media-seek-backward.xpm b/include/xpm/media-seek-backward.xpm
new file mode 100644
index 0000000..c211455
--- /dev/null
+++ b/include/xpm/media-seek-backward.xpm
@@ -0,0 +1,88 @@
+/* XPM */
+static const char * media_seek_backward_xpm[] = {
+"16 16 69 1",
+" c None",
+". c #414140",
+"+ c #3D3F3B",
+"@ c #494A47",
+"# c #3D3D3B",
+"$ c #4A4B48",
+"% c #4E4F4C",
+"& c #747571",
+"* c #FCFCFC",
+"= c #4E504C",
+"- c #4C4C4A",
+"; c #696C68",
+"> c #F9F9F8",
+", c #4D4E4B",
+"' c #5B5E5A",
+") c #6E6F6C",
+"! c #EEEFEE",
+"~ c #FCFDFC",
+"{ c #FBFBFB",
+"] c #595A57",
+"^ c #595A56",
+"/ c #646662",
+"( c #EBEBEA",
+"_ c #575855",
+": c #6A6B67",
+"< c #767874",
+"[ c #EBECEA",
+"} c #FAFAFA",
+"| c #F2F4F1",
+"1 c #F1F1F0",
+"2 c #666763",
+"3 c #E6E7E6",
+"4 c #FAFAF9",
+"5 c #626460",
+"6 c #73756F",
+"7 c #80817C",
+"8 c #D4D6D3",
+"9 c #F1F2F0",
+"0 c #E7E9E4",
+"a c #DFE2DD",
+"b c #FCFCFB",
+"c c #737470",
+"d c #CFD1CE",
+"e c #F2F3F0",
+"f c #E8EAE6",
+"g c #E0E2DD",
+"h c #6D6E6A",
+"i c #82837F",
+"j c #ABAEA8",
+"k c #F0F1EF",
+"l c #F9FAF9",
+"m c #FEFEFE",
+"n c #797B75",
+"o c #7F817C",
+"p c #969791",
+"q c #EEEFED",
+"r c #767973",
+"s c #838581",
+"t c #91928C",
+"u c #C9CBC6",
+"v c #838580",
+"w c #8D9089",
+"x c #AFB0AC",
+"y c #81837D",
+"z c #90938C",
+"A c #9C9E97",
+"B c #9A9D97",
+"C c #ADAFAA",
+"D c #82837E",
+" ",
+" ",
+" ",
+" . . ",
+" +@@ #@$ ",
+" %&*= -;>, ",
+" ')!~{]^/(~{_ ",
+" :<[}|1{234|1{5 ",
+" 67890abcdefgbh ",
+" ijklmnopq4mr ",
+" stulv wxly ",
+" zAB CAo ",
+" D D ",
+" ",
+" ",
+" "};
diff --git a/udav/xpm/media-seek-forward.png b/include/xpm/media-seek-forward.png
similarity index 100%
copy from udav/xpm/media-seek-forward.png
copy to include/xpm/media-seek-forward.png
diff --git a/include/xpm/media-seek-forward.xpm b/include/xpm/media-seek-forward.xpm
new file mode 100644
index 0000000..e386c53
--- /dev/null
+++ b/include/xpm/media-seek-forward.xpm
@@ -0,0 +1,88 @@
+/* XPM */
+static const char * media_seek_forward_xpm[] = {
+"16 16 69 1",
+" c None",
+". c #414140",
+"+ c #4A4B48",
+"@ c #494A47",
+"# c #3D3D3B",
+"$ c #3D3F3B",
+"% c #4D4E4B",
+"& c #F9F9F8",
+"* c #696C68",
+"= c #4C4C4A",
+"- c #4E504C",
+"; c #FCFCFC",
+"> c #747571",
+", c #4E4F4C",
+"' c #575855",
+") c #FBFBFB",
+"! c #FCFDFC",
+"~ c #EBEBEA",
+"{ c #646662",
+"] c #595A56",
+"^ c #595A57",
+"/ c #EEEFEE",
+"( c #6E6F6C",
+"_ c #5B5E5A",
+": c #626460",
+"< c #F1F1F0",
+"[ c #F2F4F1",
+"} c #FAFAF9",
+"| c #E6E7E6",
+"1 c #666763",
+"2 c #FAFAFA",
+"3 c #EBECEA",
+"4 c #767874",
+"5 c #6A6B67",
+"6 c #6D6E6A",
+"7 c #FCFCFB",
+"8 c #E0E2DD",
+"9 c #E8EAE6",
+"0 c #F2F3F0",
+"a c #CFD1CE",
+"b c #737470",
+"c c #DFE2DD",
+"d c #E7E9E4",
+"e c #F1F2F0",
+"f c #D4D6D3",
+"g c #80817C",
+"h c #73756F",
+"i c #767973",
+"j c #FEFEFE",
+"k c #EEEFED",
+"l c #969791",
+"m c #7F817C",
+"n c #797B75",
+"o c #F9FAF9",
+"p c #F0F1EF",
+"q c #ABAEA8",
+"r c #82837F",
+"s c #81837D",
+"t c #AFB0AC",
+"u c #8D9089",
+"v c #838580",
+"w c #C9CBC6",
+"x c #91928C",
+"y c #838581",
+"z c #9C9E97",
+"A c #ADAFAA",
+"B c #9A9D97",
+"C c #90938C",
+"D c #82837E",
+" ",
+" ",
+" ",
+" . . ",
+" +@# @@$ ",
+" %&*= -;>, ",
+" ')!~{]^)!/(_ ",
+" :)<[}|1)<[2345 ",
+" 67890ab7cdefgh ",
+" ij}klmnjopqr ",
+" sotu vowxy ",
+" mzA BzC ",
+" D D ",
+" ",
+" ",
+" "};
diff --git a/udav/xpm/none.xpm b/include/xpm/none.xpm
similarity index 100%
copy from udav/xpm/none.xpm
copy to include/xpm/none.xpm
diff --git a/include/xpm/object-rotate-right-on.xpm b/include/xpm/object-rotate-right-on.xpm
new file mode 100644
index 0000000..978ad9e
--- /dev/null
+++ b/include/xpm/object-rotate-right-on.xpm
@@ -0,0 +1,67 @@
+/* XPM */
+static char * object_rotate_right_on_xpm[] = {
+"16 16 48 1",
+" c None",
+". c #7439AE",
+"+ c #6D36A3",
+"@ c #6C36A2",
+"# c #6F37A6",
+"$ c #7339AC",
+"% c #6E37A5",
+"& c #F7F3FB",
+"* c #F9F5FC",
+"= c #F8F4FB",
+"- c #EFE7F7",
+"; c #D4BEE9",
+"> c #8E55C6",
+", c #7238AB",
+"' c #DECDEE",
+") c #DFCFEF",
+"! c #E1D2F0",
+"~ c #EADFF4",
+"{ c #F5F0FA",
+"] c #D3BCE9",
+"^ c #DAC7EC",
+"/ c #DCCAED",
+"( c #E2D3F0",
+"_ c #EEE5F6",
+": c #D8C4EB",
+"< c #ECE2F5",
+"[ c #D5C0EA",
+"} c #773BB2",
+"| c #B28BD8",
+"1 c #F3ECF9",
+"2 c #F1EAF8",
+"3 c #945EC9",
+"4 c #7138A9",
+"5 c #BE9DDE",
+"6 c #D1BAE8",
+"7 c #7E3FBD",
+"8 c #CEB5E6",
+"9 c #CDB4E6",
+"0 c #CBB1E4",
+"a c #C9AEE3",
+"b c #C8ACE3",
+"c c #FBF8FD",
+"d c #C5A8E2",
+"e c #C3A4E1",
+"f c #C2A3E0",
+"g c #E0D0EF",
+"h c #C0A0DF",
+"i c #F2EBF8",
+" .+@@#$$ ",
+" %&**=-;>, ",
+" @='')!~{]. ",
+" @=^^^^^/-($ ",
+" %{&&{_'::<[. ",
+" ,+@@}|1^;[23 ",
+" 45~66![. ",
+" 7188;<, ",
+" @19081# ",
+" @@,1aba1$@@",
+" @c1)ddd'1c@",
+" @c!efe(c@ ",
+" @cghgc@ ",
+" @cic@ ",
+" @*@ ",
+" @ "};
diff --git a/udav/xpm/object-rotate-right.png b/include/xpm/object-rotate-right.png
similarity index 100%
copy from udav/xpm/object-rotate-right.png
copy to include/xpm/object-rotate-right.png
diff --git a/include/xpm/object-rotate-right.xpm b/include/xpm/object-rotate-right.xpm
new file mode 100644
index 0000000..c9b4357
--- /dev/null
+++ b/include/xpm/object-rotate-right.xpm
@@ -0,0 +1,103 @@
+/* XPM */
+static const char * object_rotate_right_xpm[] = {
+"16 16 84 1",
+" c None",
+". c #D2650C",
+"+ c #CE5D02",
+"@ c #CE5C00",
+"# c #CF5F03",
+"$ c #D1640B",
+"% c #D1640C",
+"& c #CF5D03",
+"* c #FEF7EF",
+"= c #FFF9F1",
+"- c #FEF8F0",
+"; c #FCEFDF",
+"> c #F4D1AE",
+", c #DB8138",
+"' c #D1630A",
+") c #FFF8EF",
+"! c #FDDCAA",
+"~ c #FDDDAB",
+"{ c #FDE0B4",
+"] c #FEE9CA",
+"^ c #FEF6E8",
+"/ c #F3CFAA",
+"( c #D1650C",
+"_ c #FFF8ED",
+": c #FDD8A2",
+"< c #FDDAA7",
+"[ c #FEEED6",
+"} c #F9E1C5",
+"| c #D2640B",
+"1 c #CF5D02",
+"2 c #FEF6EA",
+"3 c #FFF7EC",
+"4 c #FFF5E7",
+"5 c #FEEDD4",
+"6 c #FDD599",
+"7 c #FEEBCE",
+"8 c #F6D1A8",
+"9 c #D2660D",
+"0 c #D2630A",
+"a c #D1680F",
+"b c #E8AA72",
+"c c #FEF2E0",
+"d c #FDD191",
+"e c #FDD294",
+"f c #FEF1DC",
+"g c #DD8A40",
+"h c #D06107",
+"i c #EDB883",
+"j c #FEE9CB",
+"k c #FDCE89",
+"l c #FEDFB3",
+"m c #F6D1A9",
+"n c #D2650B",
+"o c #D5701B",
+"p c #FFF3E3",
+"q c #FDCA81",
+"r c #FDEBD5",
+"s c #D16206",
+"t c #CE5C01",
+"u c #FEF3E2",
+"v c #FCC97D",
+"w c #FCC778",
+"x c #FCCA7F",
+"y c #FEF3E3",
+"z c #CF5E01",
+"A c #D0620A",
+"B c #FCC574",
+"C c #FCC370",
+"D c #FCC473",
+"E c #FEF3E4",
+"F c #D0640C",
+"G c #FEFCF8",
+"H c #FDDDAD",
+"I c #FCC068",
+"J c #FFFCF9",
+"K c #FEDFB2",
+"L c #FCBE61",
+"M c #FCBD5F",
+"N c #FEE0B3",
+"O c #FEDDAD",
+"P c #FCBA5A",
+"Q c #FEDEAF",
+"R c #FEF1DE",
+"S c #FEFAF6",
+" .+@@#$% ",
+" &*==-;>,' ",
+" @)!!~{]^/( ",
+" @_:::::<[}| ",
+" 123345!66789 ",
+" 0+@@abc:defg ",
+" hijkklmn ",
+" opqqdrs ",
+" tuvwxyz ",
+" @@AcBCDEF@@",
+" @GyHIII!yG@",
+" @JKLMLNJ@ ",
+" @JOPQJ@ ",
+" @JRJ@ ",
+" @S@ ",
+" @ "};
diff --git a/udav/xpm/oper.xpm b/include/xpm/oper.xpm
similarity index 100%
copy from udav/xpm/oper.xpm
copy to include/xpm/oper.xpm
diff --git a/udav/xpm/oper_a.xpm b/include/xpm/oper_a.xpm
similarity index 100%
copy from udav/xpm/oper_a.xpm
copy to include/xpm/oper_a.xpm
diff --git a/udav/xpm/oper_d.xpm b/include/xpm/oper_d.xpm
similarity index 100%
copy from udav/xpm/oper_d.xpm
copy to include/xpm/oper_d.xpm
diff --git a/udav/xpm/oper_m.xpm b/include/xpm/oper_m.xpm
similarity index 100%
copy from udav/xpm/oper_m.xpm
copy to include/xpm/oper_m.xpm
diff --git a/udav/xpm/oper_s.xpm b/include/xpm/oper_s.xpm
similarity index 100%
copy from udav/xpm/oper_s.xpm
copy to include/xpm/oper_s.xpm
diff --git a/udav/xpm/option.xpm b/include/xpm/option.xpm
similarity index 100%
copy from udav/xpm/option.xpm
copy to include/xpm/option.xpm
diff --git a/udav/xpm/plot.xpm b/include/xpm/plot.xpm
similarity index 100%
copy from udav/xpm/plot.xpm
copy to include/xpm/plot.xpm
diff --git a/udav/xpm/preferences-system.png b/include/xpm/preferences-system.png
similarity index 100%
copy from udav/xpm/preferences-system.png
copy to include/xpm/preferences-system.png
diff --git a/include/xpm/preferences-system.xpm b/include/xpm/preferences-system.xpm
new file mode 100644
index 0000000..1dc058b
--- /dev/null
+++ b/include/xpm/preferences-system.xpm
@@ -0,0 +1,63 @@
+/* XPM */
+static const char * preferences_system_xpm[] = {
+"16 16 44 1",
+" c None",
+". c #888A85",
+"+ c #ECEBE9",
+"@ c #EFEFEE",
+"# c #F0F0EE",
+"$ c #F0F0F0",
+"% c #FAFAFA",
+"& c #8A8C87",
+"* c #F6F6F5",
+"= c #ABACA9",
+"- c #F7F7F7",
+"; c #E5E3E2",
+"> c #ADADAA",
+", c #EEEEEC",
+"' c #F3F3F3",
+") c #F0F0EF",
+"! c #EEEEED",
+"~ c #ECECEA",
+"{ c #BAB9B6",
+"] c #D2D1D0",
+"^ c #A4A4A3",
+"/ c #B8B7B5",
+"( c #B9B8B7",
+"_ c #204A87",
+": c #7D8385",
+"< c #CAC9C8",
+"[ c #BFBEBD",
+"} c #ADBBCC",
+"| c #7C93B3",
+"1 c #D4D3D3",
+"2 c #BDC8D4",
+"3 c #788DA4",
+"4 c #92A5BE",
+"5 c #E4E3E2",
+"6 c #C6C4C2",
+"7 c #748AA2",
+"8 c #7A95B4",
+"9 c #D4D3D2",
+"0 c #C4C3C2",
+"a c #7D91A7",
+"b c #7A95B5",
+"c c #728BAE",
+"d c #A0A19E",
+"e c #869CB8",
+" ",
+" . . ",
+" .+. . at . ",
+" .#. .$. ",
+" . .%. .& ",
+".*=.-;>, . ",
+" .')!~{. . ",
+" ....]^.. ",
+" /.(. ",
+" ___:><[. ",
+" _}}|_..1[. ",
+" _2334_ .56.. ",
+"_}378|_ .90. ",
+"_}abc_ .d. ",
+"_4ee_ ... ",
+" ___ "};
diff --git a/udav/xpm/preview.xpm b/include/xpm/preview.xpm
similarity index 100%
copy from udav/xpm/preview.xpm
copy to include/xpm/preview.xpm
diff --git a/udav/xpm/process-stop.png b/include/xpm/process-stop.png
similarity index 100%
copy from udav/xpm/process-stop.png
copy to include/xpm/process-stop.png
diff --git a/include/xpm/process-stop.xpm b/include/xpm/process-stop.xpm
new file mode 100644
index 0000000..a5a48e9
--- /dev/null
+++ b/include/xpm/process-stop.xpm
@@ -0,0 +1,152 @@
+/* XPM */
+static const char * process_stop_xpm[] = {
+"16 16 133 2",
+" c None",
+". c #890000",
+"+ c #860000",
+"@ c #AF2222",
+"# c #F68888",
+"$ c #F78B8B",
+"% c #F68A8A",
+"& c #F68787",
+"* c #F58383",
+"= c #B82323",
+"- c #B12222",
+"; c #F38383",
+"> c #DC4242",
+", c #D52F2F",
+"' c #DB3C3C",
+") c #F17575",
+"! c #B41F1F",
+"~ c #B22424",
+"{ c #D53737",
+"] c #DA3B3B",
+"^ c #F06F6F",
+"/ c #B11B1B",
+"( c #B32626",
+"_ c #DB4141",
+": c #D75757",
+"< c #DACDCD",
+"[ c #D75F5F",
+"} c #D85C5C",
+"| c #E6D9D9",
+"1 c #DB5F5F",
+"2 c #D93B3B",
+"3 c #EF6A6A",
+"4 c #B01818",
+"5 c #880202",
+"6 c #F68989",
+"7 c #DB4040",
+"8 c #D89292",
+"9 c #DBDBDB",
+"0 c #DAD6D6",
+"a c #D76060",
+"b c #D85A5A",
+"c c #E6E0E0",
+"d c #EDEDED",
+"e c #E5A5A5",
+"f c #D22F2F",
+"g c #D63B3B",
+"h c #EE6868",
+"i c #890303",
+"j c #D53030",
+"k c #D89999",
+"l c #DFDFDF",
+"m c #E2DEDE",
+"n c #E6DFDF",
+"o c #ECECEC",
+"p c #E6ABAB",
+"q c #D23131",
+"r c #D02F2F",
+"s c #CE2F2F",
+"t c #ED6565",
+"u c #890202",
+"v c #DEACAC",
+"w c #E8E8E8",
+"x c #E8BCBC",
+"y c #D13131",
+"z c #CF2F2F",
+"A c #CC2F2F",
+"B c #EC6161",
+"C c #D85B5B",
+"D c #F1F1F1",
+"E c #F3EDED",
+"F c #DA6464",
+"G c #C92929",
+"H c #E94545",
+"I c #F58585",
+"J c #D75B5B",
+"K c #E5DFDF",
+"L c #E4AAAA",
+"M c #E6A5A5",
+"N c #F9F9F9",
+"O c #FCF7F7",
+"P c #DA6767",
+"Q c #C51A1A",
+"R c #BD0202",
+"S c #E83737",
+"T c #F26969",
+"U c #D52323",
+"V c #D21F1F",
+"W c #DE9292",
+"X c #CE2828",
+"Y c #E9A5A5",
+"Z c #FEFEFE",
+"` c #E39696",
+" . c #BD0000",
+".. c #BD0303",
+"+. c #E63434",
+"@. c #B82424",
+"#. c #EF5A5A",
+"$. c #D31111",
+"%. c #CB0101",
+"&. c #D65858",
+"*. c #C70303",
+"=. c #C50000",
+"-. c #C30000",
+";. c #C10101",
+">. c #D65F5F",
+",. c #BE0404",
+"'. c #DF2B2B",
+"). c #C71D1D",
+"!. c #870000",
+"~. c #B72121",
+"{. c #ED5252",
+"]. c #D01010",
+"^. c #C70000",
+"/. c #C10000",
+"(. c #BF0000",
+"_. c #BE0505",
+":. c #DF2C2C",
+"<. c #C41B1B",
+"[. c #880000",
+"}. c #B41D1D",
+"|. c #EB4C4C",
+"1. c #CC0F0F",
+"2. c #BF0505",
+"3. c #DF2D2D",
+"4. c #BF1919",
+"5. c #B11A1A",
+"6. c #EC4A4A",
+"7. c #ED4747",
+"8. c #EB4343",
+"9. c #EA3F3F",
+"0. c #E83B3B",
+"a. c #E73737",
+"b. c #BC1818",
+" . + + + + + + . ",
+" . @ # $ $ % & * = . ",
+" . - ; > , , , , ' ) ! . ",
+" . ~ ; > { , , , , { ] ^ / . ",
+". ( ; _ : < [ , , } | 1 2 3 4 . ",
+"5 6 7 , 8 9 0 a b c d e f g h 5 ",
+"i # , , j k l m n o p q r s t u ",
+"i # , , , j v w o x y z s A B u ",
+"i # , , , C n o D E F s A G H u ",
+"i I , , J K o L M N O P Q R S u ",
+"5 T U V W o L r X Y Z ` ...+.u ",
+". @.#.$.%.&.*.=.-.;.>.R ,.'.).!.",
+" . ~.{.].^.=.-./.(. ._.:.<.[. ",
+" . }.|.1.-./.(. .2.3.4.[. ",
+" . 5.6.7.8.9.0.a.b.[. ",
+" . + + + + + + [. "};
diff --git a/udav/xpm/size.xpm b/include/xpm/size.xpm
similarity index 100%
copy from udav/xpm/size.xpm
copy to include/xpm/size.xpm
diff --git a/udav/xpm/smth.xpm b/include/xpm/smth.xpm
similarity index 100%
copy from udav/xpm/smth.xpm
copy to include/xpm/smth.xpm
diff --git a/udav/xpm/squize.xpm b/include/xpm/squize.xpm
similarity index 100%
copy from udav/xpm/squize.xpm
copy to include/xpm/squize.xpm
diff --git a/udav/xpm/style.xpm b/include/xpm/style.xpm
similarity index 100%
copy from udav/xpm/style.xpm
copy to include/xpm/style.xpm
diff --git a/udav/xpm/sum.xpm b/include/xpm/sum.xpm
similarity index 100%
copy from udav/xpm/sum.xpm
copy to include/xpm/sum.xpm
diff --git a/udav/xpm/swap.xpm b/include/xpm/swap.xpm
similarity index 100%
copy from udav/xpm/swap.xpm
copy to include/xpm/swap.xpm
diff --git a/udav/xpm/system-file-manager.png b/include/xpm/system-file-manager.png
similarity index 100%
copy from udav/xpm/system-file-manager.png
copy to include/xpm/system-file-manager.png
diff --git a/udav/xpm/table.xpm b/include/xpm/table.xpm
similarity index 100%
copy from udav/xpm/table.xpm
copy to include/xpm/table.xpm
diff --git a/udav/xpm/text-x-generic.png b/include/xpm/text-x-generic.png
similarity index 100%
copy from udav/xpm/text-x-generic.png
copy to include/xpm/text-x-generic.png
diff --git a/udav/xpm/tran.xpm b/include/xpm/tran.xpm
similarity index 100%
copy from udav/xpm/tran.xpm
copy to include/xpm/tran.xpm
diff --git a/udav/udav.png b/include/xpm/udav.png
similarity index 100%
copy from udav/udav.png
copy to include/xpm/udav.png
diff --git a/include/xpm/udav.xpm b/include/xpm/udav.xpm
new file mode 100644
index 0000000..714a7b3
--- /dev/null
+++ b/include/xpm/udav.xpm
@@ -0,0 +1,416 @@
+/* XPM */
+static const char *udav_xpm[]={
+"64 64 349 2",
+"Qt c None",
+"#n c #000080",
+"#h c #010180",
+"#y c #010181",
+"#s c #020281",
+"#c c #020282",
+"dg c #030382",
+".8 c #030383",
+"#r c #040483",
+"#m c #040484",
+"#g c #050584",
+"#M c #050585",
+"#q c #060685",
+"a. c #060686",
+"#p c #070786",
+"ck c #070787",
+"aj c #080887",
+"bm c #080888",
+"aK c #090988",
+"a4 c #090989",
+"aJ c #0a0a89",
+"## c #0a0a8a",
+"#G c #0b0b8a",
+"cx c #0b0b8b",
+"b7 c #0c0c8b",
+"#z c #0c0c8c",
+"b6 c #0d0d8c",
+"b8 c #0d0d8d",
+"#l c #0e0e8d",
+"cj c #0e0e8e",
+"b5 c #0f0f8e",
+"#S c #0f0f8f",
+"ci c #10108f",
+"bE c #101090",
+"b4 c #111190",
+"c2 c #111191",
+"#W c #121291",
+"b9 c #121292",
+"#b c #131392",
+"b3 c #131393",
+"ak c #141493",
+"aD c #141494",
+"bG c #151594",
+"aq c #151595",
+"bF c #161695",
+"#i c #161696",
+"aE c #171796",
+"ae c #171797",
+".5 c #181897",
+"cq c #181898",
+"#L c #191998",
+"bU c #191999",
+"b2 c #1a1a99",
+"aL c #1a1a9a",
+"ds c #1b1b9a",
+"#A c #1b1b9b",
+"#k c #1c1c9b",
+"#f c #1c1c9c",
+"cG c #1d1d9c",
+"bM c #1d1d9d",
+"bN c #1e1e9d",
+"ch c #1e1e9e",
+"bL c #1f1f9e",
+"b1 c #1f1f9f",
+"#j c #20209f",
+"bO c #2020a0",
+"cS c #2121a0",
+"bY c #2121a1",
+"db c #2222a1",
+"bK c #2222a2",
+"bn c #2323a2",
+"a# c #2323a3",
+"bH c #2424a4",
+"bJ c #2525a4",
+"a3 c #2525a5",
+"#o c #2626a5",
+"df c #2626a6",
+"#. c #2727a6",
+"bP c #2727a7",
+"ai c #2828a7",
+"cF c #2828a8",
+"cf c #2929a9",
+"b0 c #2a2aa9",
+"#x c #2a2aaa",
+".7 c #2b2baa",
+"bI c #2b2bab",
+"cy c #2c2cab",
+"a5 c #2c2cac",
+"aI c #2d2dac",
+"#d c #2d2dad",
+"cp c #2e2ead",
+"bo c #2e2eae",
+"ap c #2f2fae",
+"#1 c #3030b0",
+"cg c #3131b1",
+"bZ c #3232b1",
+"de c #3333b2",
+"dw c #3333b3",
+"bQ c #3434b4",
+"bp c #3535b5",
+"c3 c #3636b5",
+"#R c #3636b6",
+"cC c #3737b7",
+"aC c #3838b7",
+"#t c #3838b8",
+"#T c #3939b8",
+"#F c #3939b9",
+"bq c #3a3ab9",
+"#6 c #3a3aba",
+"aM c #3c3cbb",
+"#B c #3d3dbc",
+"cr c #3d3dbd",
+"#N c #3e3ebd",
+"dA c #3e3ebe",
+"ar c #3f3fbe",
+"bA c #3f3fbf",
+"bR c #4040c0",
+"bS c #4141c0",
+"dh c #4141c1",
+"ce c #4242c1",
+"da c #4343c3",
+"br c #4444c3",
+"#X c #4545c4",
+"a6 c #4545c5",
+"cM c #4646c5",
+"bw c #4646c6",
+"#e c #4747c6",
+"bs c #4747c7",
+"bv c #4848c7",
+"aB c #4848c8",
+"bt c #4949c8",
+"bu c #4949c9",
+"bx c #4a4ac9",
+"as c #4a4aca",
+"cs c #4b4bca",
+"ct c #4b4bcb",
+"#u c #4c4ccb",
+"bl c #4c4ccc",
+"dz c #5050cf",
+"c6 c #5151d0",
+"a7 c #5151d1",
+"by c #5252d1",
+"#H c #5353d2",
+"dx c #5454d3",
+"d# c #5454d4",
+"at c #5555d5",
+"aA c #5656d5",
+"cw c #5656d6",
+"dy c #5757d6",
+"bz c #5858d8",
+"#a c #5959d9",
+"cE c #5a5ad9",
+"cL c #5b5bdb",
+"a8 c #5c5cdb",
+"aN c #5c5cdc",
+".6 c #5d5ddd",
+"c5 c #5e5edd",
+"bk c #5e5ede",
+"dt c #5f5fde",
+"cT c #6060df",
+"al c #6262e1",
+"au c #6262e2",
+"az c #6464e4",
+"af c #6565e4",
+"cD c #6565e5",
+"#2 c #6666e6",
+"d. c #6767e7",
+"co c #6868e7",
+".9 c #6868e8",
+"av c #6969e8",
+"cN c #6a6aea",
+"a2 c #6b6bea",
+"c. c #6b6beb",
+"dk c #6c6ceb",
+"aO c #6c6cec",
+"ay c #6d6dec",
+"ad c #6e6eee",
+"ax c #6f6fef",
+"bD c #7070f0",
+"#w c #7171f0",
+"aw c #7171f1",
+"cu c #7272f1",
+"c7 c #7272f2",
+"a9 c #7373f2",
+"aF c #7373f3",
+"dn c #7474f4",
+"b. c #7878f7",
+"#C c #7979f8",
+".4 c #7979f9",
+"aP c #7a7af9",
+"aa c #7b7bfa",
+"b# c #7c7cfb",
+"cd c #7e7efd",
+"bX c #7f7ffe",
+".3 c #800000",
+".1 c #800101",
+"ba c #8080ff",
+".2 c #810101",
+".X c #810202",
+"dp c #8181ff",
+".W c #820202",
+".Y c #820303",
+"#5 c #8282ff",
+".Z c #830303",
+"aH c #8383ff",
+".R c #840505",
+"#v c #8484ff",
+".S c #850606",
+"bb c #8585ff",
+".T c #860707",
+"#K c #8686ff",
+".U c #870808",
+".V c #880808",
+"aQ c #8888ff",
+".Q c #890a0a",
+"dr c #8989ff",
+".K c #8a0a0a",
+"cz c #8a8aff",
+".j c #8b0b0b",
+"cK c #8b8bff",
+"bc c #8c8cff",
+"cU c #8d8dff",
+".B c #8e0e0e",
+".P c #8e0f0f",
+"ao c #8e8eff",
+".L c #8f0f0f",
+"cH c #9090ff",
+"bd c #9292ff",
+".C c #931414",
+"aR c #9393ff",
+".O c #941414",
+"#D c #9494ff",
+"#O c #9595ff",
+"cV c #9696ff",
+".M c #981818",
+"#E c #9898ff",
+".c c #991a1a",
+"cO c #9999ff",
+".N c #9a1b1b",
+".s c #9b1b1b",
+".J c #9d1e1e",
+"be c #9d9dff",
+"aS c #9e9eff",
+"dd c #9f9fff",
+"c8 c #a1a1ff",
+".D c #a32424",
+"#7 c #a3a3ff",
+"#I c #a5a5ff",
+".r c #a72828",
+"aT c #a7a7ff",
+"do c #a8a8ff",
+"cn c #a9a9ff",
+".# c #ab2c2c",
+"c9 c #ababff",
+".A c #ac2c2c",
+"cW c #adadff",
+"#Y c #aeaeff",
+".I c #af2f2f",
+"du c #b0b0ff",
+"#0 c #b1b1ff",
+"c4 c #b2b2ff",
+"bf c #b3b3ff",
+".E c #b43535",
+"cA c #b4b4ff",
+"#Q c #b5b5ff",
+"dv c #b6b6ff",
+"cl c #b7b7ff",
+"cX c #b8b8ff",
+"aU c #b9b9ff",
+"cc c #babaff",
+".i c #bc3c3c",
+"bW c #bcbcff",
+"dm c #bdbdff",
+".H c #be3f3f",
+"aZ c #bebeff",
+"bB c #bfbfff",
+"aV c #c0c0ff",
+".b c #c14141",
+".t c #c14242",
+"bg c #c1c1ff",
+"#V c #c2c2ff",
+".F c #c34343",
+"#9 c #c3c3ff",
+"cY c #c4c4ff",
+"#J c #c5c5ff",
+"cP c #c6c6ff",
+"aW c #c7c7ff",
+"aY c #c8c8ff",
+".a c #c94949",
+"bC c #c9c9ff",
+".k c #ca4a4a",
+"c1 c #cacaff",
+".G c #cb4b4b",
+"aX c #cbcbff",
+"di c #ccccff",
+"dj c #cdcdff",
+"bh c #ceceff",
+"a1 c #d0d0ff",
+"c# c #d1d1ff",
+"c0 c #d2d2ff",
+"cR c #d3d3ff",
+".z c #d45555",
+"cZ c #d4d4ff",
+"bT c #d6d6ff",
+"dl c #d8d8ff",
+"#3 c #dadaff",
+"am c #dbdbff",
+"bi c #dcdcff",
+"ag c #ddddff",
+"#P c #dfdfff",
+"cI c #e1e1ff",
+"bV c #e4e4ff",
+".q c #e66666",
+"dc c #e6e6ff",
+"aG c #e7e7ff",
+".d c #e86969",
+"cb c #e8e8ff",
+"cJ c #eaeaff",
+"ab c #ececff",
+".u c #ed6d6d",
+"bj c #ededff",
+"cB c #efefff",
+"#U c #f0f0ff",
+"cQ c #f1f1ff",
+"cv c #f2f2ff",
+"dq c #f4f4ff",
+"cm c #f5f5ff",
+"ca c #f6f6ff",
+"a0 c #f7f7ff",
+"an c #f9f9ff",
+"ah c #fafaff",
+"#Z c #fbfbff",
+"ac c #fcfcff",
+"#8 c #fdfdff",
+"#4 c #fefeff",
+".y c #ff7f7f",
+".h c #ff8686",
+".v c #ff9292",
+".l c #ff9595",
+".x c #ff9d9d",
+".w c #ffa5a5",
+".p c #ffb0b0",
+".e c #ffb3b3",
+".g c #ffbfbf",
+".f c #ffcece",
+".m c #ffd9d9",
+".o c #ffe8e8",
+".n c #fff8f8",
+".0 c #ffff00",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.#.a.b.cQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.c.d.e.f.g.h.iQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.j.k.l.m.n.o.p.q.rQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.s.t.u.v.w.x.y.z.A.BQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.C.D.E.F.G.a.H.I.J.BQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.K.L.C.M.N.N.M.O.P.QQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.R.S.T.U.V.V.V.U.T.SQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.W.X.W.W.W.W.Y.Y.Z.RQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.1.1.1.1.1.1.2.W.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.3.3.3.3.3.2.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.4.5.2.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.6.7.8.0.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.9#..8.0.0.0.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0###a#b#c.0.0.0.0.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0#d#e#f#g#h.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0#i#j#k#l#m#h#n#o.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0#p#q#r#s#n#n#m#t#u#v#w#x.0.0.0.0.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0#y#h#n#m#r#q#z#A#B#C#D#E#F.0.0.0.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0#r#s#h#h#h#y#r#G#j#H#I#J#K#L.0.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.0#n#n#n#y#M#b#N#O#P#Q#R.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.0.0.0.0#h#n#h#r#S#T#E#U#V#N.0.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0#h#h#r#W#X#Y#Z#0#1.0.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0#y#q#k#2#3#4#5.5.0.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0#c#z#6#7#8#9#X#q.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0a.a#aaabacadae.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0#m.5afagah#Kai.0.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0.0.0.0.0.0.0.0.0#gaj.0.0.0.0.0.0.0.0.0akalamanaoapaj.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt.0.0a.aqa#aparasatauavadawaxayazaAaBaCa#aDaEaFaGanaHaIaJ.0.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtaKaL#xaM#uaNaOaPaQaRaSaT#0aUaVaWaXaXaYaZ#Y#E#.aSa0a1a2a3a4.0.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQt###fa5#Ta6a7a8afaOa9b.b#babbbcbdbeaTbfbgbhbiaGbjbk#3#Z#IblaLajbm.0.0.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtaDbnbobpbqarbrbsbtbuaBbvbw#e#ebx#ubybzaladaaao#7bAbB#8bCbDapbEa.aObqbF.0.0QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtbGbH#dbobI#x.7a5a5#xaibJbK#jbLbMbNbNbObnbP#dbQbRbSaZ#4bTbbarbUa4#ZbVbWbXbr#LQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQt#SbYapbZb0b1b2b2aLbUaEb3b4b5b6b7#G#####Gb7b8#Sb9c.bT#4c#bbbrbL#z#q#Pca#8cbcccdcebFQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQt#icf#taMcgchcicj#Scjb7a4ck#q#g#m#r.8.8.8.8#rblclca#ZaUaF#NbMb8a.#MaQ#0amcmah#Pcncocpa4QtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt#Gcq.7crcsctcra3b6aJbma.#m.8#c#s#y#y#y#hbJcu#Vcvcvcaaocw#1.5cx#q#rcybSalczcA#PcacBaYaQa6aEQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt###ka#cCctaNcDazcEbt#tcFch.5cGb0bRazcHbBcIbjbVcJcKcLaCbLbEbm#m.8##bE#AaIcMcNcOcPcbcQcR#EatcSQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtajcj#L#dcCcscTcu#5cUcVbe#IcWcXcYbhcZc0c1cRcUaycsbZbNc2aJ#M.8#ca..8#q##b9bLc3aAbXc4biab#3#7c5#o#pQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt#qaKb8bGchbSaBc6cE#2c7bX#KbccVc8c9#Qd.d#da#1db#i#laK#M.8#s#sa.#h#y#c#r#pb8cqb0btaF#7a1dccZdda8#o#MQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQt#g#g#paJb8b9.5chbJbI#1c3cC#t#Rde#ddf#jcqb9b6aK#q#r#c#s#y#y.0#h#n#n#h#ydg#M##ak#odhc.dddi#PdjcVd#dbQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQt.8.8#m#M#paK###zcj#SbEbEbE#S#lb7aJaj#q#m.8#c#s#y#h#h#s.0.0.0Qt#m#h#h#y#c#maKb9bndhdkbeaXdldm#vbw#LQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQt#c#c#cdgdg.8#r#m#m#m#m#m#r.8dg#c#s#y#h#h#h#n#h#y.0.0QtQtQtQtQtQtQt#y#y#s#maK#ba3brdndodia1aU#Obyb4QtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQt#s#y#y#y#y#y#y#y#y#y#h#h#h#h#n#n#n#n#n#n#yQtQtQtQtQtQtQtQtQtQtQtQtQt#y#c#maJaDbIa7dpaZdqaha1drbAb3QtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtdg#y#h#h#n#n#n#n#n#n#n#n#n#n#n#n#hdgQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt#s#c#Mcxdsc3dtaodudvaScudhdsQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtdg#y#h#h#h#n#n#n#h#y#cQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtdg#pbEb1dwbwdxdydzdA#xaEQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt#maJb5bGdsbLbOchaLakb8ckQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt#q#qckaKaJ####a4bm#p#pQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt#m#c#cdgdgdg.8.8.8#rQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt#y#h#h#h#h#h#y#s#rQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt#h#n#n#n#n#h#cQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt#h#h#yQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt",
+"QtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt"};
diff --git a/udav/xpm/update.xpm b/include/xpm/update.xpm
similarity index 100%
copy from udav/xpm/update.xpm
copy to include/xpm/update.xpm
diff --git a/udav/xpm/view-refresh.png b/include/xpm/view-refresh.png
similarity index 100%
copy from udav/xpm/view-refresh.png
copy to include/xpm/view-refresh.png
diff --git a/include/xpm/view-refresh.xpm b/include/xpm/view-refresh.xpm
new file mode 100644
index 0000000..32d59ea
--- /dev/null
+++ b/include/xpm/view-refresh.xpm
@@ -0,0 +1,113 @@
+/* XPM */
+static const char * view_refresh_xpm[] = {
+"16 16 94 2",
+" c None",
+". c #3A69A7",
+"+ c #3A6AA7",
+"@ c #3667A5",
+"# c #3969A7",
+"$ c #3868A6",
+"% c #6890C0",
+"& c #8FB0D3",
+"* c #A8C2DF",
+"= c #A8C1DE",
+"- c #93B1D4",
+"; c #5F87B9",
+"> c #3767A5",
+", c #3465A4",
+"' c #3969A6",
+") c #8CADD3",
+"! c #9DBDDC",
+"~ c #A1BEDD",
+"{ c #B4CBE5",
+"] c #BFD3E9",
+"^ c #CCDDEE",
+"/ c #D5E2F0",
+"( c #BFD2E7",
+"_ c #4B77AF",
+": c #4371AB",
+"< c #3566A4",
+"[ c #6990C0",
+"} c #7298C5",
+"| c #3C6BA8",
+"1 c #5D85B7",
+"2 c #A1BBD9",
+"3 c #D8E4F1",
+"4 c #DBE6F2",
+"5 c #DDE8F3",
+"6 c #88A7CE",
+"7 c #C8D8EA",
+"8 c #4170AB",
+"9 c #3C6CA9",
+"0 c #3869A6",
+"a c #6188B9",
+"b c #CDDBEB",
+"c c #E2EBF5",
+"d c #E6EEF6",
+"e c #3565A4",
+"f c #6891C7",
+"g c #C7D7E9",
+"h c #C6D8EB",
+"i c #E3ECF5",
+"j c #3A6AA6",
+"k c #8FACD0",
+"l c #E7EEF6",
+"m c #4774AD",
+"n c #4C77AF",
+"o c #4C78AF",
+"p c #E5EDF5",
+"q c #E5EDF6",
+"r c #E4ECF5",
+"s c #9CB7D7",
+"t c #3768A6",
+"u c #C4D7EB",
+"v c #C9D9EA",
+"w c #3566A5",
+"x c #6C95C9",
+"y c #537FB7",
+"z c #E4EDF5",
+"A c #C1D2E6",
+"B c #4D79B0",
+"C c #3C6BA9",
+"D c #4F7CB6",
+"E c #3768A5",
+"F c #95B2D4",
+"G c #E0E9F4",
+"H c #CCDCED",
+"I c #8FADD2",
+"J c #4C78B0",
+"K c #3D6DA9",
+"L c #5B84B7",
+"M c #4E7AB1",
+"N c #B4CAE3",
+"O c #C9DAEC",
+"P c #BCD1E7",
+"Q c #B0C9E3",
+"R c #A0BEDE",
+"S c #88ABD2",
+"T c #82A5CE",
+"U c #8EAED3",
+"V c #3767A6",
+"W c #5580B5",
+"X c #84A6CE",
+"Y c #97B6D8",
+"Z c #99B9DB",
+"` c #8AACD3",
+" . c #6D94C2",
+".. c #3B6BA7",
+" . + @ # + ",
+" $ % & * = - ; > , ",
+" ' ) ! ~ { ] ^ / ( _ @ : < ",
+" # [ } | < + 1 2 3 4 5 6 7 + ",
+" $ 8 9 + 0 a b c d d + ",
+" e + f > < g h i j ",
+" , $ k l 4 d j ",
+" , , m n n o , ",
+" , , , , , , , ",
+" , p q r s t , ",
+" < d u v , w x y , ",
+" > d i z A B 0 C D + E ",
+" $ 3 F G 5 H I J w ' ' K J + ",
+" > L @ M N O P Q R S T U $ ",
+" , @ V W X Y Z ` .$ ",
+" , + 0 < + .. "};
diff --git a/udav/xpm/weather-clear.png b/include/xpm/weather-clear.png
similarity index 100%
copy from udav/xpm/weather-clear.png
copy to include/xpm/weather-clear.png
diff --git a/include/xpm/weather-clear.xpm b/include/xpm/weather-clear.xpm
new file mode 100644
index 0000000..2b21ab2
--- /dev/null
+++ b/include/xpm/weather-clear.xpm
@@ -0,0 +1,95 @@
+/* XPM */
+static const char * weather_clear_xpm[] = {
+"16 16 76 1",
+" c None",
+". c #FCB03E",
+"+ c #FCB13E",
+"@ c #FCAF3E",
+"# c #FCB23F",
+"$ c #FDCD83",
+"% c #FCCC82",
+"& c #FCC470",
+"* c #FCB953",
+"= c #FCB23E",
+"- c #FCC66D",
+"; c #FDE6BF",
+"> c #FEF9E7",
+", c #FEFCF0",
+"' c #FEF9DF",
+") c #FDEAAD",
+"! c #FBBA57",
+"~ c #FCB33F",
+"{ c #FDE6C1",
+"] c #FEFEFB",
+"^ c #FEFCEF",
+"/ c #FEF8CE",
+"( c #FDF4B0",
+"_ c #FCF4AD",
+": c #FDF0A2",
+"< c #FAB545",
+"[ c #FEF8E7",
+"} c #FEFDF0",
+"| c #FEF9CF",
+"1 c #FDF4AC",
+"2 c #FDF089",
+"3 c #FCEF87",
+"4 c #FCD964",
+"5 c #FCB33E",
+"6 c #FCCD84",
+"7 c #FEFCF1",
+"8 c #FEF8D0",
+"9 c #FEF9D0",
+"0 c #FDF6BE",
+"a c #FDF3A1",
+"b c #FCEF81",
+"c c #FCEC68",
+"d c #FCE768",
+"e c #FBB13E",
+"f c #FCC570",
+"g c #FEFAE3",
+"h c #FDF5B1",
+"i c #FDF4AE",
+"j c #FDF3A2",
+"k c #FDF08C",
+"l c #FCED71",
+"m c #FCE959",
+"n c #FCE459",
+"o c #FBB13F",
+"p c #FCBC57",
+"q c #FDECB4",
+"r c #FCF4AB",
+"s c #FDF08B",
+"t c #FCEF82",
+"u c #FCEA5A",
+"v c #FCEA57",
+"w c #FBD349",
+"x c #FBBD5B",
+"y c #FDF1AA",
+"z c #FCEF84",
+"A c #FCEB65",
+"B c #FCE956",
+"C c #FCE34E",
+"D c #FAB43F",
+"E c #FCB43F",
+"F c #FBB94A",
+"G c #FBDB6C",
+"H c #FCE86E",
+"I c #FCE55D",
+"J c #FCD549",
+"K c #FBB43F",
+" ",
+" .+ ",
+" ++ ",
+" @# $%&* =@ ",
+" =-;>,')!~# ",
+" {]^/(_:< ",
+" $[}}|12345 ",
+" ++67890abcde+. ",
+" .+fghijklmno++ ",
+" pqrstluvw# ",
+" xyzABvCD ",
+" #EFGHIJK5= ",
+" @= #oe5 #@ ",
+" ++ ",
+" +. ",
+" "};
diff --git a/udav/xpm/window.xpm b/include/xpm/window.xpm
similarity index 100%
copy from udav/xpm/window.xpm
copy to include/xpm/window.xpm
diff --git a/udav/xpm/wire.xpm b/include/xpm/wire.xpm
similarity index 100%
copy from udav/xpm/wire.xpm
copy to include/xpm/wire.xpm
diff --git a/udav/xpm/x-office-presentation.png b/include/xpm/x-office-presentation.png
similarity index 100%
copy from udav/xpm/x-office-presentation.png
copy to include/xpm/x-office-presentation.png
diff --git a/udav/xpm/x-office-spreadsheet.png b/include/xpm/x-office-spreadsheet.png
similarity index 100%
copy from udav/xpm/x-office-spreadsheet.png
copy to include/xpm/x-office-spreadsheet.png
diff --git a/include/xpm/x-office-spreadsheet.xpm b/include/xpm/x-office-spreadsheet.xpm
new file mode 100644
index 0000000..8707737
--- /dev/null
+++ b/include/xpm/x-office-spreadsheet.xpm
@@ -0,0 +1,143 @@
+/* XPM */
+static const char * x_office_spreadsheet_xpm[] = {
+"16 16 124 2",
+" c None",
+". c #999999",
+"+ c #818181",
+"@ c #FFFFFF",
+"# c #B7B7B7",
+"$ c #B7B7B8",
+"% c #9E9E9F",
+"& c #B8B8B8",
+"* c #9F9F9F",
+"= c #B8B8B9",
+"- c #9E9E9E",
+"; c #9F9F9E",
+"> c #B7B8B7",
+", c #C3C3C3",
+"' c #EEEEEE",
+") c #C2C2C2",
+"! c #EEEFEE",
+"~ c #EFEEEF",
+"{ c #B1B1B1",
+"] c #B9B8B9",
+"^ c #E0E0E0",
+"/ c #E0E1E0",
+"( c #E1E0E0",
+"_ c #E1E1E1",
+": c #B9B8B8",
+"< c #C4C4C4",
+"[ c #C3C4C4",
+"} c #EEEEEF",
+"| c #EFEFEF",
+"1 c #F0EFEF",
+"2 c #B9B9B8",
+"3 c #B9B9B9",
+"4 c #C9A6A5",
+"5 c #AE3A36",
+"6 c #A50F0C",
+"7 c #A40201",
+"8 c #A40D0A",
+"9 c #B03B37",
+"0 c #8D6969",
+"a c #9E403D",
+"b c #A70A07",
+"c c #C66453",
+"d c #CB715C",
+"e c #C9735D",
+"f c #C5715B",
+"g c #BF6C59",
+"h c #C06E61",
+"i c #AC201D",
+"j c #A73634",
+"k c #B2B2B2",
+"l c #A65C5B",
+"m c #AF2017",
+"n c #CB725D",
+"o c #C7654D",
+"p c #BB5338",
+"q c #B65136",
+"r c #B04E35",
+"s c #B35D47",
+"t c #AE5B45",
+"u c #A95743",
+"v c #AA2F28",
+"w c #9F2523",
+"x c #A51412",
+"y c #CA6F5A",
+"z c #BF5439",
+"A c #BA5237",
+"B c #B44F36",
+"C c #AF4D34",
+"D c #886556",
+"E c #765F5A",
+"F c #715B56",
+"G c #6B5853",
+"H c #77605B",
+"I c #9D0D0C",
+"J c #C76951",
+"K c #B85137",
+"L c #B24E36",
+"M c #AD4C34",
+"N c #AE653A",
+"O c #95995D",
+"P c #1D84A0",
+"Q c #177F99",
+"R c #3D91A5",
+"S c #3B8EA0",
+"T c #A20101",
+"U c #9F1212",
+"V c #CA7E6D",
+"W c #B85F48",
+"X c #AB4C33",
+"Y c #A64932",
+"Z c #B18B44",
+"` c #B8BC50",
+" . c #358086",
+".. c #509CAD",
+"+. c #278397",
+"@. c #496E77",
+"#. c #970909",
+"$. c #BC7878",
+"%. c #9C1D1A",
+"&. c #BD7E6D",
+"*. c #BE7F70",
+"=. c #BD8374",
+"-. c #CDC787",
+";. c #CBD089",
+">. c #B4B48A",
+",. c #5C93A0",
+"'. c #44656D",
+"). c #7B1618",
+"!. c #A12F2F",
+"~. c #959595",
+"{. c #934040",
+"]. c #9E0605",
+"^. c #99463D",
+"/. c #9E624D",
+"(. c #A6A14C",
+"_. c #9F9B4A",
+":. c #948845",
+"<. c #4B3C43",
+"[. c #9A0505",
+"}. c #A32B2B",
+"|. c #991C1C",
+"1. c #A00C0C",
+"2. c #A30201",
+"3. c #A42525",
+". + + + + + + + + + + + + ",
+"+ @ @ @ @ @ @ @ @ @ @ @ @ + ",
+"+ @ # # $ % & & * = = * @ + ",
+"+ @ - ; * * * * * * * * @ + ",
+"+ @ > , , * ' ' ) ! ~ ) @ + ",
+"+ @ { & ] * ^ / ) ( _ ) @ + ",
+"+ @ : < [ * } ~ ) | 1 ) @ + ",
+"+ @ { 2 3 * 4 5 6 7 7 8 9 0 ",
+"+ @ 3 < < a b c d e f g h i j ",
+"+ @ k 3 l m n o p q r s t u v w ",
+"+ @ 3 < x y z A B C D E F G H I ",
+"+ @ k 3 7 J K L M N O P Q R S T ",
+"+ @ 3 < U V W X Y Z ` ...+. at .#.",
+"+ @ @ @ $.%.&.*.=.-.;.>.,.'.).!.",
+"~.+ + + + {.].^./.(._.:.<.[.}. ",
+" |.1.2.T 1.3. "};
diff --git a/include/xpm/zoom-fit-best-r.xpm b/include/xpm/zoom-fit-best-r.xpm
new file mode 100644
index 0000000..a77f7e1
--- /dev/null
+++ b/include/xpm/zoom-fit-best-r.xpm
@@ -0,0 +1,88 @@
+/* XPM */
+static const char * zoom_fit_best_r_xpm[] = {
+"16 16 69 1",
+" c None",
+". c #C34C4C",
+"+ c #C34E4E",
+"@ c #D98C8C",
+"# c #E9BCBC",
+"$ c #F2D8D8",
+"% c #C95C5C",
+"& c #EAC1C1",
+"* c #ECC7C7",
+"= c #DC9595",
+"- c #EBC3C3",
+"; c #CF7070",
+"> c #B33C3C",
+", c #BD3F3F",
+"' c #D27878",
+") c #D07373",
+"! c #BA3E3E",
+"~ c #FEFDFD",
+"{ c #D37E7E",
+"] c #BE3F3F",
+"^ c #B13B3B",
+"/ c #C44F4F",
+"( c #DA9090",
+"_ c #D27979",
+": c #B83D3D",
+"< c #D58282",
+"[ c #D07171",
+"} c #E1A6A6",
+"| c #DFA0A0",
+"1 c #CD6868",
+"2 c #CB6464",
+"3 c #D37C7C",
+"4 c #C75757",
+"5 c #C95E5E",
+"6 c #C85B5B",
+"7 c #AC3939",
+"8 c #DD9A9A",
+"9 c #C75858",
+"0 c #AE3939",
+"a c #DE9D9D",
+"b c #DB9393",
+"c c #EECDCD",
+"d c #CB6262",
+"e c #B23B3B",
+"f c #EFCFCF",
+"g c #EDC8C8",
+"h c #D47F7F",
+"i c #B73D3D",
+"j c #CD6A6A",
+"k c #CE6C6C",
+"l c #CA6060",
+"m c #EECCCC",
+"n c #F1D4D4",
+"o c #E6B5B5",
+"p c #E9BEBE",
+"q c #F0D3D3",
+"r c #CE6D6D",
+"s c #903030",
+"t c #DF9F9F",
+"u c #F3DEDE",
+"v c #C34B4B",
+"w c #DC9797",
+"x c #DE9C9C",
+"y c #C65555",
+"z c #822B2B",
+"A c #DA9191",
+"B c #852C2C",
+"C c #7F2A2A",
+"D c #812B2B",
+" .+..+. ",
+" .@#$$#@. ",
+" %&*=@@=-&% ",
+" .&;>,')!>;&. ",
+". at ->~~{]~~^- at . ",
+"/#(,~]_):~>(#+ ",
+".$<[,[}|12%_$. ",
+".$3452=@67+3$. ",
+"/&87~7990~7a&/ ",
+".bc^~~>d~~efb. ",
+" /ghi:jk::hg. ",
+" lmn#oopqclrs ",
+" /tcuuc|/vwxs ",
+" /y//4/ z>vAB",
+" C^;B",
+" CD "};
diff --git a/udav/xpm/zoom-fit-best.png b/include/xpm/zoom-fit-best.png
similarity index 100%
copy from udav/xpm/zoom-fit-best.png
copy to include/xpm/zoom-fit-best.png
diff --git a/include/xpm/zoom-fit-best.xpm b/include/xpm/zoom-fit-best.xpm
new file mode 100644
index 0000000..c093447
--- /dev/null
+++ b/include/xpm/zoom-fit-best.xpm
@@ -0,0 +1,133 @@
+/* XPM */
+static const char * zoom_fit_best_xpm[] = {
+"16 16 114 2",
+" c None",
+". c #878B87",
+"+ c #868C8A",
+"@ c #888B89",
+"# c #ACB6BF",
+"$ c #CDD6DD",
+"% c #E4E7E9",
+"& c #929594",
+"* c #CFD8E0",
+"= c #D3DDE5",
+"- c #A4BFDC",
+"; c #99B9DA",
+"> c #9AB9DA",
+", c #A4BFDD",
+"' c #CFDAE5",
+") c #87A6CA",
+"! c #547FB5",
+"~ c #5B84B8",
+"{ c #8AAAD0",
+"] c #88A9CF",
+"^ c #5983B7",
+"/ c #537EB5",
+"( c #527EB5",
+"_ c #FFFFFF",
+": c #90AED2",
+"< c #5C85B8",
+"[ c #507DB4",
+"} c #868C8B",
+"| c #9DBBDA",
+"1 c #5E86B8",
+"2 c #8CABD1",
+"3 c #87A8CF",
+"4 c #5982B7",
+"5 c #9EBBDA",
+"6 c #878B88",
+"7 c #8EB2D6",
+"8 c #85A7CE",
+"9 c #5A84B7",
+"0 c #86A7CE",
+"a c #AFC8E4",
+"b c #AAC5E2",
+"c c #7DA1CC",
+"d c #799FCA",
+"e c #7199C8",
+"f c #86ACD4",
+"g c #89AED4",
+"h c #6C96C6",
+"i c #739AC8",
+"j c #799ECA",
+"k c #A0BEDF",
+"l c #9AB9DC",
+"m c #7198C7",
+"n c #4D7AB2",
+"o c #638FC2",
+"p c #878C8B",
+"q c #CFD8DE",
+"r c #A7C1DD",
+"s c #4D7BB3",
+"t c #4E7BB3",
+"u c #6E97C6",
+"v c #4F7CB3",
+"w c #A9C3DE",
+"x c #D0D8DE",
+"y c #888B87",
+"z c #B1BAC1",
+"A c #D9E1E8",
+"B c #517DB4",
+"C c #779DC9",
+"D c #527EB4",
+"E c #DAE2E8",
+"F c #B2BBC1",
+"G c #8A8C8A",
+"H c #D7DDE2",
+"I c #96B0CF",
+"J c #5680B5",
+"K c #5681B6",
+"L c #7FA2CC",
+"M c #80A3CC",
+"N c #5781B6",
+"O c #D8DEE3",
+"P c #949895",
+"Q c #DADFE3",
+"R c #E1E6EA",
+"S c #C7D7E8",
+"T c #BDD2E6",
+"U c #BED2E6",
+"V c #C8D8E8",
+"W c #DFE5EA",
+"X c #DBE0E4",
+"Y c #959896",
+"Z c #9DA09B",
+"` c #60625F",
+" . c #8A8D8A",
+".. c #BCC1C4",
+"+. c #DCE0E2",
+"@. c #E9EBEB",
+"#. c #BDC2C5",
+"$. c #898C88",
+"%. c #878A84",
+"&. c #B9BCB6",
+"*. c #BDBFBC",
+"=. c #61635F",
+"-. c #8A8C88",
+";. c #8D918D",
+">. c #8B8D89",
+",. c #8E918D",
+"'. c #575955",
+"). c #7A7B78",
+"!. c #B7B8B6",
+"~. c #595B57",
+"{. c #555753",
+"]. c #767873",
+"^. c #A0A29F",
+"/. c #565854",
+" . + . . + . ",
+" @ # $ % % $ # @ ",
+" & * = - ; > , ' * & ",
+" @ * ) ! ~ { ] ^ / ) * @ ",
+". # ' ( _ _ : < _ _ [ ' # . ",
+"} $ | ~ _ 1 2 3 4 _ ! 5 $ + ",
+"6 % 7 8 9 0 a b c d e f % . ",
+"6 % g h i j k l m n o g % . ",
+"p q r s _ t u u v _ t w x p ",
+"y z A B _ _ / C _ _ D E F y ",
+" G H I J K L M N K I O . ",
+" P Q R S T U V W X Y Z ` ",
+" ...+. at .@.+.#.$.%.&.*.=. ",
+" -.;.>.>.,.-. '.).%.!.~.",
+" {.].^.~.",
+" {./. "};
diff --git a/udav/xpm/zoom-in.png b/include/xpm/zoom-in.png
similarity index 100%
copy from udav/xpm/zoom-in.png
copy to include/xpm/zoom-in.png
diff --git a/include/xpm/zoom-in.xpm b/include/xpm/zoom-in.xpm
new file mode 100644
index 0000000..22e285b
--- /dev/null
+++ b/include/xpm/zoom-in.xpm
@@ -0,0 +1,124 @@
+/* XPM */
+static const char * zoom_in_xpm[] = {
+"16 16 105 2",
+" c None",
+". c #878B87",
+"+ c #868C8A",
+"@ c #888B89",
+"# c #ACB6BF",
+"$ c #CDD6DD",
+"% c #E4E7E9",
+"& c #929594",
+"* c #CFD8E0",
+"= c #D3DDE5",
+"- c #A4BFDC",
+"; c #99B9DA",
+"> c #9AB9DA",
+", c #A4BFDD",
+"' c #CFDAE5",
+") c #B4C9DF",
+"! c #9DBDDD",
+"~ c #B5CDE6",
+"{ c #5C84B8",
+"] c #5B84B8",
+"^ c #B0CAE4",
+"/ c #9ABADD",
+"( c #98B9DC",
+"_ c #BCD1E8",
+": c #5F87B9",
+"< c #FFFFFF",
+"[ c #5A84B7",
+"} c #ABC6E2",
+"| c #91B4DA",
+"1 c #868C8B",
+"2 c #9DBBDA",
+"3 c #B6CDE6",
+"4 c #5D85B8",
+"5 c #5E86B8",
+"6 c #5982B7",
+"7 c #5781B6",
+"8 c #9FBDDE",
+"9 c #9EBBDA",
+"0 c #878B88",
+"a c #8EB2D6",
+"b c #5983B7",
+"c c #507DB4",
+"d c #86ACD4",
+"e c #89AED4",
+"f c #4E7BB3",
+"g c #4A78B2",
+"h c #878C8B",
+"i c #CFD8DE",
+"j c #A7C1DD",
+"k c #86ADD6",
+"l c #4F7CB3",
+"m c #89AED6",
+"n c #A9C3DE",
+"o c #D0D8DE",
+"p c #888B87",
+"q c #B1BAC1",
+"r c #D9E1E8",
+"s c #94B6DA",
+"t c #96B7DB",
+"u c #527EB5",
+"v c #537EB5",
+"w c #97B8DB",
+"x c #DAE2E8",
+"y c #B2BBC1",
+"z c #8A8C8A",
+"A c #D7DDE2",
+"B c #CAD8E6",
+"C c #A4C0DF",
+"D c #A6C2E0",
+"E c #A7C3E1",
+"F c #D8DEE3",
+"G c #949895",
+"H c #DADFE3",
+"I c #E1E6EA",
+"J c #C7D7E8",
+"K c #BDD2E6",
+"L c #BED2E6",
+"M c #C8D8E8",
+"N c #DFE5EA",
+"O c #DBE0E4",
+"P c #959896",
+"Q c #9DA09B",
+"R c #60625F",
+"S c #8A8D8A",
+"T c #BCC1C4",
+"U c #DCE0E2",
+"V c #E9EBEB",
+"W c #BDC2C5",
+"X c #898C88",
+"Y c #878A84",
+"Z c #B9BCB6",
+"` c #BDBFBC",
+" . c #61635F",
+".. c #8A8C88",
+"+. c #8D918D",
+"@. c #8B8D89",
+"#. c #8E918D",
+"$. c #575955",
+"%. c #7A7B78",
+"&. c #B7B8B6",
+"*. c #595B57",
+"=. c #555753",
+"-. c #767873",
+";. c #A0A29F",
+">. c #565854",
+" . + . . + . ",
+" @ # $ % % $ # @ ",
+" & * = - ; > , ' * & ",
+" @ * ) ! ~ { ] ^ / ) * @ ",
+". # ' ( _ : < < [ } | ' # . ",
+"1 $ 2 3 4 5 < < 6 7 8 9 $ + ",
+"0 % a b < < < < < < c d % . ",
+"0 % e f < < < < < < g e % . ",
+"h i j k f f < < l f m n o h ",
+"p q r s t u < < v ( w x y p ",
+" z A B C D 7 7 E D B F . ",
+" G H I J K L M N O P Q R ",
+" S T U V V U W X Y Z ` . ",
+" ..+. at .@.#... $.%.Y &.*.",
+" =.-.;.*.",
+" =.>. "};
diff --git a/udav/xpm/zoom-original.png b/include/xpm/zoom-original.png
similarity index 100%
copy from udav/xpm/zoom-original.png
copy to include/xpm/zoom-original.png
diff --git a/include/xpm/zoom-original.xpm b/include/xpm/zoom-original.xpm
new file mode 100644
index 0000000..6cc6b3c
--- /dev/null
+++ b/include/xpm/zoom-original.xpm
@@ -0,0 +1,130 @@
+/* XPM */
+static const char * zoom_original_xpm[] = {
+"16 16 111 2",
+" c None",
+". c #878B87",
+"+ c #868C8A",
+"@ c #888B89",
+"# c #ACB6BF",
+"$ c #CDD6DD",
+"% c #E4E7E9",
+"& c #929594",
+"* c #CFD8E0",
+"= c #D3DDE5",
+"- c #A4BFDC",
+"; c #99B9DA",
+"> c #9AB9DA",
+", c #A4BFDD",
+"' c #CFDAE5",
+") c #B4C9DF",
+"! c #9DBDDD",
+"~ c #B5CDE6",
+"{ c #5C84B8",
+"] c #5B84B8",
+"^ c #B0CAE4",
+"/ c #9ABADD",
+"( c #98B9DC",
+"_ c #BCD1E8",
+": c #5F87B9",
+"< c #FFFFFF",
+"[ c #5A84B7",
+"} c #ABC6E2",
+"| c #91B4DA",
+"1 c #868C8B",
+"2 c #9DBBDA",
+"3 c #B6CDE6",
+"4 c #5D85B8",
+"5 c #5982B7",
+"6 c #A7C3E1",
+"7 c #9FBDDE",
+"8 c #9EBBDA",
+"9 c #878B88",
+"0 c #8EB2D6",
+"a c #5A83B7",
+"b c #5681B6",
+"c c #9EBDDE",
+"d c #86ACD4",
+"e c #89AED4",
+"f c #8AAFD7",
+"g c #94B6DB",
+"h c #547FB5",
+"i c #507DB4",
+"j c #85ACD5",
+"k c #7BA5D2",
+"l c #878C8B",
+"m c #CFD8DE",
+"n c #A7C1DD",
+"o c #86ADD6",
+"p c #89AED6",
+"q c #4E7BB3",
+"r c #4F7CB3",
+"s c #8BB0D7",
+"t c #A9C3DE",
+"u c #D0D8DE",
+"v c #888B87",
+"w c #B1BAC1",
+"x c #D9E1E8",
+"y c #94B6DA",
+"z c #96B7DB",
+"A c #527EB5",
+"B c #537EB5",
+"C c #97B8DB",
+"D c #DAE2E8",
+"E c #B2BBC1",
+"F c #8A8C8A",
+"G c #D7DDE2",
+"H c #CAD8E6",
+"I c #A4C0DF",
+"J c #A6C2E0",
+"K c #5781B6",
+"L c #D8DEE3",
+"M c #949895",
+"N c #DADFE3",
+"O c #E1E6EA",
+"P c #C7D7E8",
+"Q c #BDD2E6",
+"R c #BED2E6",
+"S c #C8D8E8",
+"T c #DFE5EA",
+"U c #DBE0E4",
+"V c #959896",
+"W c #9DA09B",
+"X c #60625F",
+"Y c #8A8D8A",
+"Z c #BCC1C4",
+"` c #DCE0E2",
+" . c #E9EBEB",
+".. c #BDC2C5",
+"+. c #898C88",
+"@. c #878A84",
+"#. c #B9BCB6",
+"$. c #BDBFBC",
+"%. c #61635F",
+"&. c #8A8C88",
+"*. c #8D918D",
+"=. c #8B8D89",
+"-. c #8E918D",
+";. c #575955",
+">. c #7A7B78",
+",. c #B7B8B6",
+"'. c #595B57",
+"). c #555753",
+"!. c #767873",
+"~. c #A0A29F",
+"{. c #565854",
+" . + . . + . ",
+" @ # $ % % $ # @ ",
+" & * = - ; > , ' * & ",
+" @ * ) ! ~ { ] ^ / ) * @ ",
+". # ' ( _ : < < [ } | ' # . ",
+"1 $ 2 3 4 < < < 5 6 7 8 $ + ",
+"9 % 0 ^ [ a < < b c | d % . ",
+"9 % e f g h < < i j k e % . ",
+"l m n o p q < < r s p t u l ",
+"v w x y z A < < B ( C D E v ",
+" F G H I J K K 6 J H L . ",
+" M N O P Q R S T U V W X ",
+" Y Z ` . .` ..+. at .#.$.%. ",
+" &.*.=.=.-.&. ;.>. at .,.'.",
+" ).!.~.'.",
+" ).{. "};
diff --git a/udav/xpm/zoom-out.png b/include/xpm/zoom-out.png
similarity index 100%
copy from udav/xpm/zoom-out.png
copy to include/xpm/zoom-out.png
diff --git a/include/xpm/zoom-out.xpm b/include/xpm/zoom-out.xpm
new file mode 100644
index 0000000..7bd9c37
--- /dev/null
+++ b/include/xpm/zoom-out.xpm
@@ -0,0 +1,127 @@
+/* XPM */
+static const char * zoom_out_xpm[] = {
+"16 16 108 2",
+" c None",
+". c #878B87",
+"+ c #868C8A",
+"@ c #888B89",
+"# c #ACB6BF",
+"$ c #CDD6DD",
+"% c #E4E7E9",
+"& c #929594",
+"* c #CFD8E0",
+"= c #D3DDE5",
+"- c #A4BFDC",
+"; c #99B9DA",
+"> c #9AB9DA",
+", c #A4BFDD",
+"' c #CFDAE5",
+") c #B4C9DF",
+"! c #9DBDDD",
+"~ c #B5CDE6",
+"{ c #B7CEE7",
+"] c #B0CAE4",
+"^ c #9ABADD",
+"/ c #98B9DC",
+"( c #BCD1E8",
+"_ c #C2D6EA",
+": c #C1D4EA",
+"< c #BAD0E7",
+"[ c #B2CBE5",
+"} c #ABC6E2",
+"| c #91B4DA",
+"1 c #868C8B",
+"2 c #9DBBDA",
+"3 c #B6CDE6",
+"4 c #5D85B8",
+"5 c #5E86B8",
+"6 c #5C85B8",
+"7 c #5B84B8",
+"8 c #5982B7",
+"9 c #5781B6",
+"0 c #9FBDDE",
+"a c #9EBBDA",
+"b c #878B88",
+"c c #8EB2D6",
+"d c #5983B7",
+"e c #FFFFFF",
+"f c #507DB4",
+"g c #86ACD4",
+"h c #89AED4",
+"i c #4E7BB3",
+"j c #4A78B2",
+"k c #878C8B",
+"l c #CFD8DE",
+"m c #A7C1DD",
+"n c #86ADD6",
+"o c #4F7CB3",
+"p c #89AED6",
+"q c #A9C3DE",
+"r c #D0D8DE",
+"s c #888B87",
+"t c #B1BAC1",
+"u c #D9E1E8",
+"v c #94B6DA",
+"w c #96B7DB",
+"x c #9ABADC",
+"y c #97B8DB",
+"z c #DAE2E8",
+"A c #B2BBC1",
+"B c #8A8C8A",
+"C c #D7DDE2",
+"D c #CAD8E6",
+"E c #A4C0DF",
+"F c #A6C2E0",
+"G c #A7C3E1",
+"H c #A8C4E1",
+"I c #D8DEE3",
+"J c #949895",
+"K c #DADFE3",
+"L c #E1E6EA",
+"M c #C7D7E8",
+"N c #BDD2E6",
+"O c #BED2E6",
+"P c #C8D8E8",
+"Q c #DFE5EA",
+"R c #DBE0E4",
+"S c #959896",
+"T c #9DA09B",
+"U c #60625F",
+"V c #8A8D8A",
+"W c #BCC1C4",
+"X c #DCE0E2",
+"Y c #E9EBEB",
+"Z c #BDC2C5",
+"` c #898C88",
+" . c #878A84",
+".. c #B9BCB6",
+"+. c #BDBFBC",
+"@. c #61635F",
+"#. c #8A8C88",
+"$. c #8D918D",
+"%. c #8B8D89",
+"&. c #8E918D",
+"*. c #575955",
+"=. c #7A7B78",
+"-. c #B7B8B6",
+";. c #595B57",
+">. c #555753",
+",. c #767873",
+"'. c #A0A29F",
+"). c #565854",
+" . + . . + . ",
+" @ # $ % % $ # @ ",
+" & * = - ; > , ' * & ",
+" @ * ) ! ~ { ~ ] ^ ) * @ ",
+". # ' / ( _ : < [ } | ' # . ",
+"1 $ 2 3 4 5 6 7 8 9 0 a $ + ",
+"b % c d e e e e e e f g % . ",
+"b % h i e e e e e e j h % . ",
+"k l m n i i o o o i p q r k ",
+"s t u v w / x x x / y z A s ",
+" B C D E F G H G F D I . ",
+" J K L M N O P Q R S T U ",
+" V W X Y Y X Z ` ...+. at . ",
+" #.$.%.%.&.#. *.=. .-.;.",
+" >.,.'.;.",
+" >.). "};
diff --git a/lang/CMakeLists.txt b/lang/CMakeLists.txt
index d0b6988..24dd94e 100644
--- a/lang/CMakeLists.txt
+++ b/lang/CMakeLists.txt
@@ -1,27 +1,27 @@
if(use_python)
- INCLUDE(${SWIG_USE_FILE})
+# INCLUDE(${SWIG_USE_FILE})
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
SET(CMAKE_SWIG_FLAGS "")
- SET_SOURCE_FILES_PROPERTIES(mgl.i PROPERTIES CPLUSPLUS ON)
-# SET_SOURCE_FILES_PROPERTIES(example.i PROPERTIES SWIG_FLAGS "-includeall")
- SWIG_ADD_MODULE(mathgl python mgl.i ../include/mgl/type.h ../include/mgl/data.h ../include/mgl/mgl.h)
- SWIG_LINK_LIBRARIES(mathgl ${PYTHON_LIBRARIES})
+# SET_SOURCE_FILES_PROPERTIES(mgl.i PROPERTIES CPLUSPLUS ON)
+# # SET_SOURCE_FILES_PROPERTIES(example.i PROPERTIES SWIG_FLAGS "-includeall")
+# SWIG_ADD_MODULE(mathgl python mgl.i ../include/mgl/type.h ../include/mgl/data.h ../include/mgl/mgl.h)
+# SWIG_LINK_LIBRARIES(mathgl ${PYTHON_LIBRARIES})
# INSTALL_FILES(/lib/python2.7/dist-packages/ mathgl)
-# add_custom_command(OUTPUT mgl_python.cpp mathgl.py
-# COMMAND ${SWIG_EXECUTABLE} -python -c++ -I${CMAKE_SOURCE_DIR}/include -o mgl_python.cpp ${CMAKE_SOURCE_DIR}/lang/mgl.i
-# MAIN_DEPENDENCY mgl.i
-# IMPLICIT_DEPENDS CXX ../include/mgl/data.h ../include/mgl/mgl.h
-# # WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/lang
-# )
-# add_custom_target(_mathgl.so ALL
-# COMMAND CMAKE_SOURCE_DIR=${CMAKE_SOURCE_DIR} ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/setup.py build
-# # COMMAND CMAKE_SOURCE_DIR=${CMAKE_SOURCE_DIR} ${PYTHON_EXECUTABLE}
-# DEPENDS ${CMAKE_BINARY_DIR}/lang/mathgl.py ${CMAKE_BINARY_DIR}/lang/mgl_python.cpp
-# WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
-# )
-# install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/setup.py install --prefix=${CMAKE_INSTALL_PREFIX} WORKING_DIRECTORY ${CMAKE_BINARY_DIR} )")
+ add_custom_command(OUTPUT mgl_python.cpp mathgl.py
+ COMMAND ${SWIG_EXECUTABLE} -python -c++ -I${CMAKE_SOURCE_DIR}/include -o mgl_python.cpp ${CMAKE_SOURCE_DIR}/lang/mgl.i
+ MAIN_DEPENDENCY mgl.i
+ IMPLICIT_DEPENDS CXX ../include/mgl/type.h ../include/mgl/data.h ../include/mgl/mgl.h
+ # WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/lang
+ )
+ add_custom_target(_mathgl.so ALL
+ COMMAND CMAKE_SOURCE_DIR=${CMAKE_SOURCE_DIR} ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/setup.py build
+ # COMMAND CMAKE_SOURCE_DIR=${CMAKE_SOURCE_DIR} ${PYTHON_EXECUTABLE}
+ DEPENDS ${CMAKE_BINARY_DIR}/lang/mathgl.py ${CMAKE_BINARY_DIR}/lang/mgl_python.cpp
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ )
+ install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/setup.py install --prefix=${CMAKE_INSTALL_PREFIX} WORKING_DIRECTORY ${CMAKE_BINARY_DIR} )")
endif(use_python)
diff --git a/lang/Makefile.in b/lang/Makefile.in
deleted file mode 100644
index 7b7e4f4..0000000
--- a/lang/Makefile.in
+++ /dev/null
@@ -1,690 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
- at USE_PYTHON_TRUE@am__append_1 = mgl_python.cpp mathgl.py
- at USE_PYTHON_TRUE@am__append_2 = mathgl.py mgl_python.cpp
-#mathgl.py: $(top_srcdir)/lang/mgl.i $(top_srcdir)/include/mgl/mgl_c.h $(top_srcdir)/include/mgl/mgl_w.h
-# swig -python -c++ -I$(top_srcdir)/include -o mgl_python.cpp $(top_srcdir)/lang/mgl.i
- at USE_OCTAVE_TRUE@am__append_3 = mgl_octave.cpp mathgl.oct mathgl.tar.gz
-subdir = lang
-DIST_COMMON = $(am__dist_octave_DATA_DIST) $(am__python_PYTHON_DIST) \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/config/autotroll.m4 \
- $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/mgl/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
- $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
- *) f=$$p;; \
- esac;
-am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
-am__install_max = 40
-am__nobase_strip_setup = \
- srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
-am__nobase_strip = \
- for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
-am__nobase_list = $(am__nobase_strip_setup); \
- for p in $$list; do echo "$$p $$p"; done | \
- sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
- $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
- if (++n[$$2] == $(am__install_max)) \
- { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
- END { for (dir in files) print dir, files[dir] }'
-am__base_list = \
- sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
- sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
-am__installdirs = "$(DESTDIR)$(pyexecdir)" "$(DESTDIR)$(pythondir)" \
- "$(DESTDIR)$(octavedir)"
-LTLIBRARIES = $(pyexec_LTLIBRARIES)
- at USE_PYTHON_TRUE@_mathgl_la_DEPENDENCIES = \
- at USE_PYTHON_TRUE@ $(top_builddir)/src/libmgl.la
-am___mathgl_la_SOURCES_DIST = mgl_python.cpp
- at USE_PYTHON_TRUE@am__mathgl_la_OBJECTS = _mathgl_la-mgl_python.lo
-_mathgl_la_OBJECTS = $(am__mathgl_la_OBJECTS)
-_mathgl_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(_mathgl_la_CXXFLAGS) \
- $(CXXFLAGS) $(_mathgl_la_LDFLAGS) $(LDFLAGS) -o $@
- at USE_PYTHON_TRUE@am__mathgl_la_rpath = -rpath $(pyexecdir)
-DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)/include/mgl
-depcomp = $(SHELL) $(top_srcdir)/config/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-CXXLD = $(CXX)
-CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-SOURCES = $(_mathgl_la_SOURCES)
-DIST_SOURCES = $(am___mathgl_la_SOURCES_DIST)
-am__python_PYTHON_DIST = mathgl.py
-py_compile = $(top_srcdir)/config/py-compile
-am__dist_octave_DATA_DIST = mathgl.tar.gz
-DATA = $(dist_octave_DATA)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_CXXFLAGS = @AM_CXXFLAGS@ -I$(top_srcdir)/include \
- -I$(top_builddir)/include
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FLTK_FLAGS = @FLTK_FLAGS@
-FLTK_LIBS = @FLTK_LIBS@
-GL_LIBS = @GL_LIBS@
-GREP = @GREP@
-GSL_FLAGS = @GSL_FLAGS@
-GSL_LIBS = @GSL_LIBS@
-HAVE_SWIG = @HAVE_SWIG@
-HDF4_FLAGS = @HDF4_FLAGS@
-HDF4_LIBS = @HDF4_LIBS@
-HDF5_FLAGS = @HDF5_FLAGS@
-HDF5_LIBS = @HDF5_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-JPEG_FLAGS = @JPEG_FLAGS@
-JPEG_LIBS = @JPEG_LIBS@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
-MGL_AGE = @MGL_AGE@
-MGL_CURRENT = @MGL_CURRENT@
-MGL_RELEASE = @MGL_RELEASE@
-MGL_REVISION = @MGL_REVISION@
-MKDIR_P = @MKDIR_P@
-MOC = @MOC@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OCTAVE = @OCTAVE@
-OCTAVE_ARCH = @OCTAVE_ARCH@
-OCTAVE_INCFLAGS = @OCTAVE_INCFLAGS@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PNG_LIBS = @PNG_LIBS@
-PTHREAD_FLAGS = @PTHREAD_FLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-PYTHON = @PYTHON@
-PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
-PYTHON_HEADERS = @PYTHON_HEADERS@
-PYTHON_PLATFORM = @PYTHON_PLATFORM@
-PYTHON_PREFIX = @PYTHON_PREFIX@
-PYTHON_VERSION = @PYTHON_VERSION@
-QMAKE = @QMAKE@
-QT_CFLAGS = @QT_CFLAGS@
-QT_CPPFLAGS = @QT_CPPFLAGS@
-QT_CXXFLAGS = @QT_CXXFLAGS@
-QT_DEFINES = @QT_DEFINES@
-QT_INCPATH = @QT_INCPATH@
-QT_LDFLAGS = @QT_LDFLAGS@
-QT_LFLAGS = @QT_LFLAGS@
-QT_LIBS = @QT_LIBS@
-QT_PATH = @QT_PATH@
-QT_VERSION = @QT_VERSION@
-QT_VERSION_MAJOR = @QT_VERSION_MAJOR@
-RANLIB = @RANLIB@
-RCC = @RCC@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-TMPDIR = @TMPDIR@
-U3D_LIBS = @U3D_LIBS@
-UIC = @UIC@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-lt_ECHO = @lt_ECHO@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-pkgpyexecdir = @pkgpyexecdir@
-pkgpythondir = @pkgpythondir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-pyexecdir = @pyexecdir@
-pythondir = @pythondir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-CLEANFILES = $(am__append_1) $(am__append_3)
-BUILT_SOURCES = $(am__append_2)
- at USE_PYTHON_TRUE@python_PYTHON = mathgl.py
- at USE_PYTHON_TRUE@pyexec_LTLIBRARIES = _mathgl.la
- at USE_PYTHON_TRUE@_mathgl_la_SOURCES = mgl_python.cpp
- at USE_PYTHON_TRUE@_mathgl_la_CXXFLAGS = $(PYTHON_HEADERS) $(AM_CXXFLAGS)
- at USE_PYTHON_TRUE@_mathgl_la_LIBADD = $(top_builddir)/src/libmgl.la
-#_mathgl_la_LIBADD = $(top_builddir)/widgets/libmgl-qt.la
- at USE_PYTHON_TRUE@_mathgl_la_LDFLAGS = -avoid-version -module
- at USE_OCTAVE_TRUE@PKG_NAME = mathgl
- at USE_OCTAVE_TRUE@PKG_OCT_FILES = mathgl.oct
- at USE_OCTAVE_TRUE@PKG_OTHER_FILES = $(top_srcdir)/COPYING $(srcdir)/DESCRIPTION $(srcdir)/INDEX $(srcdir)/PKG_ADD_template
- at USE_OCTAVE_TRUE@octavedir = $(pkgdatadir)/octave
- at USE_OCTAVE_TRUE@dist_octave_DATA = mathgl.tar.gz
- at USE_OCTAVE_TRUE@MY_MKOCTFILE = $(CXX) -O0 -g -shared $(OCTAVE_INCFLAGS)
-all: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) all-am
-
-.SUFFIXES:
-.SUFFIXES: .cpp .lo .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu lang/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu lang/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-pyexecLTLIBRARIES: $(pyexec_LTLIBRARIES)
- @$(NORMAL_INSTALL)
- test -z "$(pyexecdir)" || $(MKDIR_P) "$(DESTDIR)$(pyexecdir)"
- @list='$(pyexec_LTLIBRARIES)'; test -n "$(pyexecdir)" || list=; \
- list2=; for p in $$list; do \
- if test -f $$p; then \
- list2="$$list2 $$p"; \
- else :; fi; \
- done; \
- test -z "$$list2" || { \
- echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pyexecdir)'"; \
- $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pyexecdir)"; \
- }
-
-uninstall-pyexecLTLIBRARIES:
- @$(NORMAL_UNINSTALL)
- @list='$(pyexec_LTLIBRARIES)'; test -n "$(pyexecdir)" || list=; \
- for p in $$list; do \
- $(am__strip_dir) \
- echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pyexecdir)/$$f'"; \
- $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pyexecdir)/$$f"; \
- done
-
-clean-pyexecLTLIBRARIES:
- -test -z "$(pyexec_LTLIBRARIES)" || rm -f $(pyexec_LTLIBRARIES)
- @list='$(pyexec_LTLIBRARIES)'; for p in $$list; do \
- dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
- test "$$dir" != "$$p" || dir=.; \
- echo "rm -f \"$${dir}/so_locations\""; \
- rm -f "$${dir}/so_locations"; \
- done
-_mathgl.la: $(_mathgl_la_OBJECTS) $(_mathgl_la_DEPENDENCIES)
- $(_mathgl_la_LINK) $(am__mathgl_la_rpath) $(_mathgl_la_OBJECTS) $(_mathgl_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/_mathgl_la-mgl_python.Plo at am__quote@
-
-.cpp.o:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
-
-.cpp.obj:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
-.cpp.lo:
- at am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
-
-_mathgl_la-mgl_python.lo: mgl_python.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(_mathgl_la_CXXFLAGS) $(CXXFLAGS) -MT _mathgl_la-mgl_python.lo -MD -MP -MF $(DEPDIR)/_mathgl_la-mgl_python.Tpo -c -o _mathgl_la-mgl_python.lo `test -f 'mgl_python.cpp' || echo '$(srcdir)/'`mgl_python.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/_mathgl_la-mgl_python.Tpo $(DEPDIR)/_mathgl_la-mgl_python.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mgl_python.cpp' object='_mathgl_la-mgl_python.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(_mathgl_la_CXXFLAGS) $(CXXFLAGS) -c -o _mathgl_la-mgl_python.lo `test -f 'mgl_python.cpp' || echo '$(srcdir)/'`mgl_python.cpp
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-install-pythonPYTHON: $(python_PYTHON)
- @$(NORMAL_INSTALL)
- test -z "$(pythondir)" || $(MKDIR_P) "$(DESTDIR)$(pythondir)"
- @list='$(python_PYTHON)'; dlist=; list2=; test -n "$(pythondir)" || list=; \
- for p in $$list; do \
- if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
- if test -f $$b$$p; then \
- $(am__strip_dir) \
- dlist="$$dlist $$f"; \
- list2="$$list2 $$b$$p"; \
- else :; fi; \
- done; \
- for file in $$list2; do echo $$file; done | $(am__base_list) | \
- while read files; do \
- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pythondir)'"; \
- $(INSTALL_DATA) $$files "$(DESTDIR)$(pythondir)" || exit $$?; \
- done || exit $$?; \
- if test -n "$$dlist"; then \
- if test -z "$(DESTDIR)"; then \
- PYTHON=$(PYTHON) $(py_compile) --basedir "$(pythondir)" $$dlist; \
- else \
- PYTHON=$(PYTHON) $(py_compile) --destdir "$(DESTDIR)" --basedir "$(pythondir)" $$dlist; \
- fi; \
- else :; fi
-
-uninstall-pythonPYTHON:
- @$(NORMAL_UNINSTALL)
- @list='$(python_PYTHON)'; test -n "$(pythondir)" || list=; \
- files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- filesc=`echo "$$files" | sed 's|$$|c|'`; \
- fileso=`echo "$$files" | sed 's|$$|o|'`; \
- echo " ( cd '$(DESTDIR)$(pythondir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(pythondir)" && rm -f $$files || exit $$?; \
- echo " ( cd '$(DESTDIR)$(pythondir)' && rm -f" $$filesc ")"; \
- cd "$(DESTDIR)$(pythondir)" && rm -f $$filesc || exit $$?; \
- echo " ( cd '$(DESTDIR)$(pythondir)' && rm -f" $$fileso ")"; \
- cd "$(DESTDIR)$(pythondir)" && rm -f $$fileso
-install-dist_octaveDATA: $(dist_octave_DATA)
- @$(NORMAL_INSTALL)
- test -z "$(octavedir)" || $(MKDIR_P) "$(DESTDIR)$(octavedir)"
- @list='$(dist_octave_DATA)'; test -n "$(octavedir)" || list=; \
- for p in $$list; do \
- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- echo "$$d$$p"; \
- done | $(am__base_list) | \
- while read files; do \
- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(octavedir)'"; \
- $(INSTALL_DATA) $$files "$(DESTDIR)$(octavedir)" || exit $$?; \
- done
-
-uninstall-dist_octaveDATA:
- @$(NORMAL_UNINSTALL)
- @list='$(dist_octave_DATA)'; test -n "$(octavedir)" || list=; \
- files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(octavedir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(octavedir)" && rm -f $$files
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(LTLIBRARIES) $(DATA)
-installdirs:
- for dir in "$(DESTDIR)$(pyexecdir)" "$(DESTDIR)$(pythondir)" "$(DESTDIR)$(octavedir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
- -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-pyexecLTLIBRARIES \
- mostlyclean-am
-
-distclean: distclean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am: install-dist_octaveDATA install-pythonPYTHON
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am: install-pyexecLTLIBRARIES
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-dist_octaveDATA uninstall-pyexecLTLIBRARIES \
- uninstall-pythonPYTHON
-
-.MAKE: all check install install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool clean-pyexecLTLIBRARIES ctags distclean \
- distclean-compile distclean-generic distclean-libtool \
- distclean-tags distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am \
- install-dist_octaveDATA install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-pdf \
- install-pdf-am install-ps install-ps-am \
- install-pyexecLTLIBRARIES install-pythonPYTHON install-strip \
- installcheck installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-dist_octaveDATA \
- uninstall-pyexecLTLIBRARIES uninstall-pythonPYTHON
-
-
- at USE_PYTHON_TRUE@mgl_python.cpp mathgl.py: $(srcdir)/mgl.i $(top_srcdir)/include/mgl/data.h $(top_srcdir)/include/mgl/mgl.h
- at USE_PYTHON_TRUE@ swig -python -c++ -I$(top_srcdir)/include -I$(top_builddir)/include -o mgl_python.cpp $(srcdir)/mgl.i
- at USE_OCTAVE_TRUE@mathgl.tar.gz: $(PKG_OCT_FILES) $(PKG_OTHER_FILES)
- at USE_OCTAVE_TRUE@ mkdir -p $(PKG_NAME)
- at USE_OCTAVE_TRUE@ mkdir -p $(PKG_NAME)/inst/$(OCTAVE_ARCH)
- at USE_OCTAVE_TRUE@ cp -rf $(PKG_OTHER_FILES) $(PKG_NAME)
- at USE_OCTAVE_TRUE@ mv $(PKG_NAME)/PKG_ADD_template $(PKG_NAME)/PKG_ADD
- at USE_OCTAVE_TRUE@ cp -rf $(PKG_OCT_FILES) $(PKG_NAME)/inst/$(OCTAVE_ARCH)
- at USE_OCTAVE_TRUE@ tar cpzvf $@ $(PKG_NAME)
- at USE_OCTAVE_TRUE@ rm -rf $(PKG_NAME)
-
- at USE_OCTAVE_TRUE@mgl_octave.cpp: $(srcdir)/mgl.i $(top_srcdir)/include/mgl/data.h $(top_srcdir)/include/mgl/mgl.h
- at USE_OCTAVE_TRUE@ swig -octave -c++ -I$(top_srcdir)/include -I$(top_builddir)/include -o mgl_octave.cpp $(srcdir)/mgl.i
- at USE_OCTAVE_TRUE@mathgl.oct: mgl_octave.cpp
- at USE_OCTAVE_TRUE@ $(MY_MKOCTFILE) -o $@ $^ -fPIC -I$(top_srcdir)/include -I$(top_builddir)/include -L$(top_builddir)/src/.libs/ -lmgl
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/mgllab/CMakeLists.txt b/mgllab/CMakeLists.txt
new file mode 100644
index 0000000..b950dad
--- /dev/null
+++ b/mgllab/CMakeLists.txt
@@ -0,0 +1,11 @@
+if(use_fltk)
+ add_definitions(-DHAVE_FLTK)
+ include_directories(${FLTK_INCLUDE_DIR})
+ set(mgl_lab_src animate.cpp editor.cpp help.cpp mathgl.cpp setup.cpp write.cpp data.cpp grid.cpp main.cpp option.cpp table.cpp ../widgets/fltk.cpp ../widgets/window.cpp)
+ add_executable(mgllab ${mgl_lab_src})
+ target_link_libraries(mgllab mgl ${FLTK_LIBRARIES})
+ install(
+ TARGETS mgllab
+ RUNTIME DESTINATION bin )
+endif(use_fltk)
+
diff --git a/mgllab/Makefile.am b/mgllab/Makefile.am
new file mode 100644
index 0000000..d0cea0f
--- /dev/null
+++ b/mgllab/Makefile.am
@@ -0,0 +1,10 @@
+INCLUDES = -I$(top_builddir)/src -I$(top_builddir)/
+
+bin_PROGRAMS = udav
+
+udav_SOURCES = \
+animate.cpp editor.cpp grid.cpp mathgl.cpp setup.cpp \
+data.cpp main.cpp option.cpp table.cpp help.cpp
+
+udav_LDADD = $(MGL_LIBS) $(FLTK_LIBS)
+udav_CPPFLAGS = -O2 -DDOC_DIR=\"$(docdir)/\"
diff --git a/mgllab/animate.cpp b/mgllab/animate.cpp
new file mode 100644
index 0000000..5565a33
--- /dev/null
+++ b/mgllab/animate.cpp
@@ -0,0 +1,314 @@
+/* animate.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <ctype.h>
+#include <string.h>
+#include <FL/Fl_Tabs.H>
+#include <FL/Fl_Round_Button.H>
+#include <FL/Fl_Multiline_Input.H>
+#include <FL/Fl_Float_Input.H>
+#include "udav.h"
+//-----------------------------------------------------------------------------
+struct ArgumentDlg
+{
+public:
+ Fl_Window* wnd;
+ int OK;
+ Fl_Input *a[10];
+
+ ArgumentDlg() { memset(this,0,sizeof(ArgumentDlg)); create_dlg(); };
+ ~ArgumentDlg() { delete wnd; };
+ void FillResult();
+protected:
+ void create_dlg();
+} argument_dlg;
+//-----------------------------------------------------------------------------
+void argument_dlg_cb(Fl_Widget *, void *v)
+{ argument_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void ArgumentDlg::create_dlg()
+{
+ wnd = new Fl_Window(325, 275, gettext("Script arguments"));
+ a[1] = new Fl_Input(10, 25, 150, 25, gettext("Value for $1")); a[1]->align(FL_ALIGN_TOP_LEFT);
+ a[2] = new Fl_Input(165, 25, 150, 25, gettext("Value for $2")); a[2]->align(FL_ALIGN_TOP_LEFT);
+ a[3] = new Fl_Input(10, 70, 150, 25, gettext("Value for $3")); a[3]->align(FL_ALIGN_TOP_LEFT);
+ a[4] = new Fl_Input(165, 70, 150, 25, gettext("Value for $4")); a[4]->align(FL_ALIGN_TOP_LEFT);
+ a[5] = new Fl_Input(10, 115, 150, 25, gettext("Value for $5")); a[5]->align(FL_ALIGN_TOP_LEFT);
+ a[6] = new Fl_Input(165, 115, 150, 25, gettext("Value for $6"));a[6]->align(FL_ALIGN_TOP_LEFT);
+ a[7] = new Fl_Input(10, 160, 150, 25, gettext("Value for $7")); a[7]->align(FL_ALIGN_TOP_LEFT);
+ a[8] = new Fl_Input(165, 160, 150, 25, gettext("Value for $8"));a[8]->align(FL_ALIGN_TOP_LEFT);
+ a[9] = new Fl_Input(10, 205, 150, 25, gettext("Value for $9")); a[9]->align(FL_ALIGN_TOP_LEFT);
+ a[0] = new Fl_Input(165, 205, 150, 25, gettext("Value for $0"));a[0]->align(FL_ALIGN_TOP_LEFT);
+
+ Fl_Button *o;
+ o = new Fl_Button(75, 240, 75, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o = new Fl_Return_Button(175, 240, 75, 25, gettext("OK")); o->callback(argument_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void ArgumentDlg::FillResult()
+{
+ if(a[0]->value()[0]) Parse->AddParam(0,a[0]->value());
+ if(a[1]->value()[0]) Parse->AddParam(1,a[1]->value());
+ if(a[2]->value()[0]) Parse->AddParam(2,a[2]->value());
+ if(a[3]->value()[0]) Parse->AddParam(3,a[3]->value());
+ if(a[4]->value()[0]) Parse->AddParam(4,a[4]->value());
+ if(a[5]->value()[0]) Parse->AddParam(5,a[5]->value());
+ if(a[6]->value()[0]) Parse->AddParam(6,a[6]->value());
+ if(a[7]->value()[0]) Parse->AddParam(7,a[7]->value());
+ if(a[8]->value()[0]) Parse->AddParam(8,a[8]->value());
+ if(a[9]->value()[0]) Parse->AddParam(9,a[9]->value());
+}
+//-----------------------------------------------------------------------------
+void argument_cb(Fl_Widget *, void *)
+{
+ ArgumentDlg *s = &argument_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) s->FillResult();
+}
+//-----------------------------------------------------------------------------
+void argument_set(int n, const char *s)
+{
+ if(n<0 || n>9) return;
+ Parse->AddParam(n,s);
+ argument_dlg.a[n]->value(s);
+}
+//-----------------------------------------------------------------------------
+AnimateDlg animate_dlg;
+//-----------------------------------------------------------------------------
+void animate_dlg_cb(Fl_Widget *, void *v)
+{
+ animate_dlg.swap = false;
+ if(!animate_dlg.rt->value() && !animate_dlg.rv->value())
+ fl_message(gettext("You have to select textual string or numeric cycle"));
+ else if(animate_dlg.rv->value() && animate_dlg.dx->value()==0)
+ fl_message(gettext("You have to set nonzero step in cycle"));
+ else
+ {
+ double t0=atof(animate_dlg.x0->value()), t1=atof(animate_dlg.x1->value()), dt=atof(animate_dlg.dx->value());
+ if((t1-t0)*dt<0)
+ {
+ if(fl_ask(gettext("Order of first and last value is wrong. Swap it?")))
+ {
+ char s[32]; sprintf(s,"%g",t0);
+ animate_dlg.x0->value(animate_dlg.x1->value());
+ animate_dlg.x1->value(s);
+ }
+ else
+ { fl_message(gettext("Wrong boundaries")); return; }
+ }
+ animate_dlg.OK = true; ((Fl_Window *)v)->hide();
+ }
+}
+//-----------------------------------------------------------------------------
+void animate_rad_cb(Fl_Widget *, void *v)
+{
+ animate_dlg.rt->value(0);
+ animate_dlg.rv->value(0);
+ ((Fl_Round_Button *)v)->value(1);
+}
+//-----------------------------------------------------------------------------
+void animate_put_cb(Fl_Widget *, void *)
+{
+ if(animate_dlg.rt->value())
+ {
+ if(animate_dlg.txt->value()==0 || strlen(animate_dlg.txt->value())==0) return;
+ char *s = new char[1+strlen(animate_dlg.txt->value())], *a=s;
+ strcpy(s, animate_dlg.txt->value());
+ for(int i=0;s[i]!=0;i++)
+ {
+ if(s[i]=='\n')
+ {
+ s[i] = 0;
+ textbuf->append("\n##a ");
+ textbuf->append(a);
+ a = s+i+1;
+ }
+ }
+ if(*a)
+ { textbuf->append("\n##a "); textbuf->append(a); }
+ delete []s;
+ }
+ else if(animate_dlg.rv->value())
+ {
+ char *s = new char[128];
+ sprintf(s,"\n##c %s %s %s",animate_dlg.x0->value(),animate_dlg.x1->value(),animate_dlg.dx->value());
+ textbuf->append(s);
+ delete []s;
+ }
+}
+//-----------------------------------------------------------------------------
+void AnimateDlg::create_dlg()
+{
+ wnd = new Fl_Window(335, 350, gettext("Animation"));
+ new Fl_Box(10, 5, 315, 25, gettext("Redraw picture for $0 equal to:"));
+ rt = new Fl_Round_Button(10, 30, 200, 25, gettext("strings in lines below"));
+ rt->callback(animate_rad_cb, rt);
+ rv = new Fl_Round_Button(220, 30, 105, 25, gettext("values"));
+ rv->callback(animate_rad_cb, rv);
+ txt = new Fl_Multiline_Input(10, 60, 200, 250);
+ x0 = new Fl_Float_Input(220, 80, 105, 25, gettext("from")); x0->align(FL_ALIGN_TOP_LEFT);
+ x1 = new Fl_Float_Input(220, 130, 105, 25, gettext("to")); x1->align(FL_ALIGN_TOP_LEFT);
+ dx = new Fl_Float_Input(220, 180, 105, 25, gettext("with step")); dx->align(FL_ALIGN_TOP_LEFT);
+
+ Fl_Button *o;
+ o = new Fl_Button(230, 215, 80, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o = new Fl_Return_Button(230, 250, 80, 25, gettext("OK")); o->callback(animate_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ save = new Fl_Check_Button(220, 285, 105, 25, gettext("save slides"));
+ save->tooltip(gettext("Keep slides in memory (faster animation but require more memory)"));
+ save->down_box(FL_DOWN_BOX); save->hide();
+
+ o = new Fl_Button(10, 315, 100, 25, gettext("Put to script")); o->callback(animate_put_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ dt = new Fl_Float_Input(220, 315, 105, 25, gettext("Delay (in sec)"));// dx->align(FL_ALIGN_TOP_LEFT);
+
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void AnimateDlg::FillResult(Fl_MGL* e)
+{
+ e->NArgs = e->ArgCur = 0;
+ if(e->ArgBuf) delete []e->ArgBuf; e->ArgBuf = 0;
+ e->AnimDelay = atof(dt->value());
+ if(rt->value())
+ {
+ char *s;
+ e->ArgBuf = new char[1+strlen(txt->value())];
+ strcpy(e->ArgBuf, txt->value());
+ s = e->Args[0] = e->ArgBuf; e->NArgs = 1;
+ for(int i=0;s[i]!=0;i++)
+ if(s[i]=='\n')
+ {
+ s[i] = 0; e->Args[e->NArgs] = s+i+1; e->NArgs += 1;
+ }
+ if(e->Args[e->NArgs-1][0]==0) e->NArgs -= 1;
+ }
+ else if(rv->value() && atof(dx->value()))
+ {
+ double t0=atof(x0->value()), t1=atof(x1->value()), dt=atof(dx->value()), t;
+ if((t1-t0)/dt<1)
+ {
+ e->ArgBuf = new char[32]; sprintf(e->ArgBuf,"%g",t0);
+ e->NArgs = 1; e->Args[0] = e->ArgBuf; return;
+ }
+ if((t1-t0)/dt>999)
+ {
+ fl_message(gettext("Too many slides. Reduce to 1000 slides."));
+ dt = (t1-t0)/998;
+ }
+ e->ArgBuf = new char[32*int(1+(t1-t0)/dt)];
+ for(t=t0;(dt>0&&t<=t1)||(dt<0&&t>=t1);t+=dt)
+ {
+ sprintf(e->ArgBuf + 32*e->NArgs,"%g\0",t);
+ e->Args[e->NArgs] = e->ArgBuf + 32*e->NArgs;
+ e->NArgs += 1;
+ }
+ }
+ else fl_message(gettext("No selection. So nothing to do"));
+}
+//-----------------------------------------------------------------------------
+void animate_cb(Fl_Widget *, void *v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ AnimateDlg *s = &animate_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) s->FillResult(e->graph);
+}
+//-----------------------------------------------------------------------------
+void cpy_arg_buf(const char *str, long *size, char **buf)
+{
+ const char *end;
+ for(end=str; *end>' '; end++);
+ if(end>=str+*size)
+ { *size = end-str+1; *buf = (char *)realloc(*buf,*size); }
+ memset(*buf,0,*size);
+ strncpy(*buf,str,end-str);
+}
+//-----------------------------------------------------------------------------
+void fill_animate(const char *text)
+{
+ long size=128,i;
+ const char *str = text;
+ char *buf = (char *)malloc(size), tmp[4]="#$0";
+ for(i=0;i<10;i++) // first read script arguments (if one)
+ {
+ tmp[2] = '0'+i;
+ if((str=strstr(text,tmp)))
+ {
+ str+=3;
+ while(*str>0 && *str<=' ' && *str!='\n') str++;
+ cpy_arg_buf(str,&size,&buf);
+ argument_dlg.a[i]->value(buf);
+ Parse->AddParam(i,buf);
+ }
+ }
+
+ char *a = (char *)malloc(size);
+ memset(a,0,size); i = 0;
+ str = text;
+ while((str = strstr(str, "##"))) // now read animation parameters
+ {
+ if(str[2]=='a')
+ {
+ str += 3;
+ while(*str>0 && *str<=' ' && *str!='\n') str++;
+ if(*str==0 || *str=='\n') return; // empty comment
+ cpy_arg_buf(str,&size,&buf);
+ if(i==0) Parse->AddParam(0,buf); // put first value as $0
+ i += strlen(buf)+1;
+ if(i>=size)
+ {
+ size = (1+ (i+2)/128)*128;
+ a = (char *)realloc(a,size);
+ }
+ strcat(a,buf); strcat(a,"\n");
+ }
+ if(str[2]=='c')
+ {
+ str += 3;
+ register long j=0,l=strlen(str);
+ char *s=new char[l+1],*s1=0,*s2=0,*s3=0;
+ bool sp=true; strcpy(s,str);
+ for(j=0;j<l && isspace(s[j]);j++);
+ {
+ if(isspace(s[j])) { s[j]=0; sp=true; }
+ else if(sp)
+ {
+ sp=false;
+ if(!s1) s1=s+j; else if(!s2) s2=s+j; else s3=s+j;
+ }
+ animate_dlg.x0->value(s1);
+ animate_dlg.x1->value(s2);
+ animate_dlg.dx->value(s3);
+ animate_dlg.rv->value(1);
+ }
+ delete []s;
+ }
+ }
+ if(i)
+ { animate_dlg.txt->value(a); animate_dlg.rt->value(1); }
+ free(buf); free(a);
+}
diff --git a/mgllab/data.cpp b/mgllab/data.cpp
new file mode 100644
index 0000000..a5e339c
--- /dev/null
+++ b/mgllab/data.cpp
@@ -0,0 +1,355 @@
+/* data.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <FL/Fl_Choice.H>
+#include <FL/Fl_Spinner.H>
+#include <FL/Fl_Output.H>
+#include <FL/Fl_Check_Button.H>
+#include "udav.h"
+//-----------------------------------------------------------------------------
+void get_doc_dir(char *&docdir);
+void option_in_cb(Fl_Widget *, void *v);
+void style_in_cb(Fl_Widget *, void *v);
+//-----------------------------------------------------------------------------
+struct VarDlg
+{
+ Fl_Window *wnd;
+ bool OK;
+
+ Fl_Choice *var;
+ Fl_Spinner *dim1, *dim2, *dim3;
+ VarDlg() { memset(this,0,sizeof(VarDlg)); create_dlg(); };
+ ~VarDlg() { delete wnd; };
+ void create_dlg();
+ char *get_result();
+ void init();
+} var_dlg;
+//-----------------------------------------------------------------------------
+void VarDlg::init()
+{
+ char ss[1024];
+ var->clear();
+ mglVar *v=Parse->Self()->DataList;
+ while(v)
+ {
+ wcstombs(ss,v->s.c_str(),1024);
+ var->add(ss,0,0,v);
+ v = v->next;
+ }
+}
+//-----------------------------------------------------------------------------
+char *VarDlg::get_result()
+{
+ static char res[64],a1[16]=":",a2[16]=":",a3[16]=":";
+ res[0]=0;
+ if(var->value()<0) return res;
+ const Fl_Menu_Item m=var->menu()[var->value()];
+ if(m.text[0])
+ {
+ if(dim3->value()>=0)
+ {
+ if(dim1->value()>=0) sprintf(a1,"%g",dim1->value());
+ if(dim2->value()>=0) sprintf(a2,"%g",dim2->value());
+ sprintf(a3,"%g",dim3->value());
+ sprintf(res,"%s(%s,%s,%s)",m.text,a1,a2,a3);
+ }
+ else if(dim2->value()>=0)
+ {
+ if(dim1->value()>=0) sprintf(a1,"%g",dim1->value());
+ sprintf(a2,"%g",dim2->value());
+ sprintf(res,"%s(%s,%s)",m.text,a1,a2);
+ }
+ else if(dim1->value()>=0)
+ {
+ sprintf(a1,"%g",dim1->value());
+ sprintf(res,"%s(%s)",m.text,a1);
+ }
+ else strcpy(res,m.text);
+ }
+ return res;
+}
+//-----------------------------------------------------------------------------
+void var_chg_cb(Fl_Widget *, void *)
+{
+ const Fl_Menu_Item m=var_dlg.var->menu()[var_dlg.var->value()];
+ if(m.text[0] && m.user_data())
+ {
+ mglVar *a = (mglVar *)m.user_data();
+ var_dlg.dim1->range(-1,a->d.nx-1);
+ var_dlg.dim2->range(-1,a->d.ny-1);
+ var_dlg.dim3->range(-1,a->d.nz-1);
+ }
+}
+//-----------------------------------------------------------------------------
+void var_in_cb(Fl_Widget *, void *v)
+{
+ Fl_Input *e = (Fl_Input*)v;
+ VarDlg *s = &var_dlg;
+ s->OK = false;
+ s->init();
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) e->value(s->get_result());
+}
+//-----------------------------------------------------------------------------
+void var_dlg_cb(Fl_Widget *, void *v)
+{ var_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void VarDlg::create_dlg()
+{
+ wnd = new Fl_Double_Window(190, 180, gettext("Variable"));
+ var = new Fl_Choice(100, 10, 75, 25, gettext("Variable name")); // !!! add variables here !!!
+ var->callback(var_chg_cb);
+ dim1 = new Fl_Spinner(100, 40, 75, 25, gettext("First index"));
+ dim1->range(-1,0); dim1->value(-1); dim1->step(1);
+ dim1->tooltip(gettext("Value of first dimensions (-1 for all range)"));
+ dim2 = new Fl_Spinner(100, 70, 75, 25, gettext("Second index"));
+ dim2->range(-1,0); dim2->value(-1); dim2->step(1);
+ dim2->tooltip(gettext("Value of second dimensions (-1 for all range)"));
+ dim3 = new Fl_Spinner(100, 100, 75, 25, gettext("Third index"));
+ dim3->range(-1,0); dim3->value(-1); dim3->step(1);
+ dim3->tooltip(gettext("Value of third dimensions (-1 for all range)"));
+ Fl_Button *o;
+ o = new Fl_Button(15, 140, 75, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o = new Fl_Return_Button(100, 140, 75, 25, gettext("OK")); o->callback(var_dlg_cb,wnd);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+const char *cmds[]={
+"plot|area|bars|barh|boxplot|chart|error|mark|region|stem|step|tens|textmark|torus|tube",
+"surf|axial|belt|boxs|cont|contd|contf|dens|fall|grid2|mesh|tile|grad",
+"surf3|cloud|beam|cont3|conta|contf3|contfa|dens3|densa|grid3|grida",
+"map|stfa|surfa|surfc|tile|surf3a|surf3c",
+"flow|pipe|traj|vect|vectc|vectl|dew",
+"contx|conty|contz|contfx|contfy|contfz|densx|densy|densz|triplot|tricont|quadplot|crust|dots",
+"text|title|fgets|legend|addlegend|clearlegend|legendbox",
+"new|var|copy|delete|insert|read|readmat|readall|readhdf|save|savehdf|export|import|info|idset",
+"fill|fillsample|modify|put|crop|extend|rearrange|squeeze|transpose|cumsum|diff|diff2|sinfft|cosfft|hankel|envelop|integrate|mirror|norm|normsl|sew|smooth|swap|roll|addto|subto|divto|multo",
+"combine|evaluate|max|min|hist|jacobian|momentum|resize|sum|trace|transform|transforma|stfad|pde|qo2d|ray",
+"axis|box|colorbar|grid|xlabel|ylabel|zlabel|tlabel",
+"alpha|alphadef|transparent|transptype|ambient|light|fog|arrowsize|barwidth|linewidth|marksize|plotfactor|zoom|cut|axialdir|mesgnum|font|palette|rotatetext",
+"axis|ranges|caxis|crange|xrange|yrange|zrange|origin|ternary|adjust|ctick|xtick|ytick|ztick|ticklen|tickstl",
+"subplot|inplot|rotate|aspect|columnplot|perspective",
+"call|func|chdir|define|if|elseif|else|endif|for|next|once|stop|write|setsize",
+"fit|fits|putsfit",
+"fplot|fsurf|ball|cone|curve|drop|facex|facey|facez|line|rect|sphere"};
+const char *first[]={"plot", "surf", "surf3", "map", "flow", "contx", "text", "new", "fill", "combine", "alpha", "axis", "subplot", "call", "fit", "fplot"};
+const char *cmd_types="1D plots|2D plots|3D plots|Dual plots|Vector plots|Other plots|Text and legend|Create data and I-O|Data handling|Data extraction|Axis and colorbar|General setup|Axis setup|Scale and rotate|Program flow|Nonlinear fitting|Primitives";
+//-----------------------------------------------------------------------------
+void data_file(char *fn)
+{
+ static int num=0;
+ static char name[32], res[256];
+ sprintf(name,"mgl_%d",num); num++;
+ mglData *v = Parse->AddVar(name);
+ v->Read(fn);
+ if(v->nz>1)
+ sprintf(res,"#read %s '%s'\nrotate 40 60\ncrange %s\nbox\nsurf3 %s\n", name, fn, name, name);
+ else if(v->ny>1)
+ sprintf(res,"#read %s '%s'\nrotate 40 60\ncrange %s\nzrange %s\nbox\nsurf %s\n", name, fn, name, name, name);
+ else
+ sprintf(res,"#read %s '%s'\nyrange %s\nbox\nplot %s\n", name, fn, name, name);
+ textbuf->text(res);
+}
+//-----------------------------------------------------------------------------
+//
+// New Command dialog
+//
+//-----------------------------------------------------------------------------
+struct CmdDlg
+{
+ Fl_Window *wnd;
+ bool OK;
+
+ Fl_Choice *type, *cmd;
+ Fl_Input *var_x, *var_y, *var_z, *var_u, *var_v, *var_w;
+ Fl_Box *fmt, *dsc;
+ Fl_Input *stl, *zval, *par1, *par2, *opt;
+ Fl_Help_View *help;
+
+ CmdDlg() { memset(this,0,sizeof(CmdDlg)); create_dlg(); };
+ ~CmdDlg() { delete wnd; };
+ void create_dlg();
+ char *get_result();
+} cmd_dlg;
+//-----------------------------------------------------------------------------
+void cmd_dlg_cb(Fl_Widget *, void *v) // add variables checking
+{ cmd_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void type_cmd_cb(Fl_Widget *w, void *v)
+{
+ int val = cmd_dlg.type->value();
+ if(val>=0 && val<16)
+ {
+ cmd_dlg.cmd->clear(); cmd_dlg.cmd->add(cmds[val]);
+ cmd_dlg.dsc->copy_label(Parse->CmdDesc(first[val]));
+ cmd_dlg.fmt->copy_label(Parse->CmdFormat(first[val]));
+
+ static char str[300]; // load help for command
+ char *docdir; get_doc_dir(docdir);
+#ifdef WIN32
+ sprintf(str,"%s\\mgl_en.html\\mgl_en_1.html#%s",docdir,first[val]);
+#else
+ sprintf(str,"%s/mgl_en.html/mgl_en_1.html#%s",docdir,first[val]);
+#endif
+ free(docdir); cmd_dlg.help->load(str);
+ }
+ cmd_dlg.cmd->value(0);
+}
+//-----------------------------------------------------------------------------
+void desc_cmd_cb(Fl_Widget *w, void *v)
+{
+ const char *name = cmd_dlg.cmd->mvalue()->text;
+ cmd_dlg.dsc->copy_label(Parse->CmdDesc(name));
+ cmd_dlg.fmt->copy_label(Parse->CmdFormat(name));
+
+ static char str[300]; // load help for command
+ char *docdir; get_doc_dir(docdir);
+#ifdef WIN32
+ sprintf(str,"%s\\mgl_en.html\\mgl_en_1.html#%s",docdir,name);
+#else
+ sprintf(str,"%s/mgl_en.html/mgl_en_1.html#%s",docdir,name);
+#endif
+ free(docdir); cmd_dlg.help->load(str);
+}
+//-----------------------------------------------------------------------------
+void CmdDlg::create_dlg()
+{
+ Fl_Button *o;
+ wnd = new Fl_Double_Window(500, 450, gettext("Command properties"));
+ type = new Fl_Choice(90, 10, 170, 25, gettext("Type of plot"));
+ type->tooltip(gettext("Select one of general types of plot"));
+ cmd = new Fl_Choice(350, 10, 100, 25, gettext("Command"));
+ cmd->tooltip(gettext("Select kind of plot in this group"));
+
+ fmt = new Fl_Box(0, 40, 500, 25);
+ fmt->box(UDAV_DOWN_BOX);
+ fmt->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+ fmt->tooltip(gettext("Format of command and its arguments"));
+ dsc = new Fl_Box(0, 70, 500, 25);
+ dsc->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+ dsc->tooltip(gettext("Short command description"));
+
+ type->callback(type_cmd_cb,cmd); cmd->callback(desc_cmd_cb,0);
+ type->add(gettext(cmd_types)); type_cmd_cb(0,0);
+
+ var_x = new Fl_Input(15, 115, 50, 25, "X"); var_x->align(FL_ALIGN_TOP);
+ o = new Fl_Button(65, 115, 25, 25, ".."); o->callback(var_in_cb,var_x);
+ var_y = new Fl_Input(95, 115, 50, 25, "Y"); var_y->align(FL_ALIGN_TOP);
+ o = new Fl_Button(145, 115, 25, 25, ".."); o->callback(var_in_cb,var_y);
+ var_z = new Fl_Input(175, 115, 50, 25, "Z"); var_z->align(FL_ALIGN_TOP);
+ o = new Fl_Button(225, 115, 25, 25, ".."); o->callback(var_in_cb,var_z);
+ var_u = new Fl_Input(255, 115, 50, 25, gettext("Vx or A")); var_u->align(FL_ALIGN_TOP);
+ o = new Fl_Button(305, 115, 25, 25, ".."); o->callback(var_in_cb,var_u);
+ var_v = new Fl_Input(335, 115, 50, 25, gettext("Vy or C")); var_v->align(FL_ALIGN_TOP);
+ o = new Fl_Button(385, 115, 25, 25, ".."); o->callback(var_in_cb,var_v);
+ var_w = new Fl_Input(415, 115, 50, 25, "Vz");var_w->align(FL_ALIGN_TOP);
+ o = new Fl_Button(465, 115, 25, 25, ".."); o->callback(var_in_cb,var_w);
+
+ stl = new Fl_Input(15, 165, 50, 25, gettext("Style"));
+ stl->align(FL_ALIGN_TOP); stl->tooltip(gettext("String argument with command style (or scheme or font)"));
+ o = new Fl_Button(65, 165, 25, 25, ".."); o->callback(style_in_cb, stl);
+
+ zval = new Fl_Input(95, 165, 75, 25, gettext("zVal or sVal"));
+ zval->align(FL_ALIGN_TOP);
+ zval->tooltip(gettext("Z-value or value of slice.\nKeep empty for default value"));
+ par1 = new Fl_Input(175, 165, 75, 25, gettext("Text or dir"));
+ par1->align(FL_ALIGN_TOP);
+ par1->tooltip(gettext("Text (in text command) or direction (in cont3, contf3, dens3)"));
+ par2 = new Fl_Input(255, 165, 75, 25, gettext("Number"));
+ par2->align(FL_ALIGN_TOP);
+ par2->tooltip(gettext("Number of contours in cont* commands"));
+
+ opt = new Fl_Input(15, 215, 290, 25, gettext("Options"));
+ opt->align(FL_ALIGN_TOP_LEFT);
+ opt->tooltip(gettext("Command options"));
+ o = new Fl_Button(305, 215, 25, 25, ".."); o->callback(option_in_cb, opt);
+
+ o = new Fl_Button(405, 180, 75, 25, gettext("Cancel")); o->callback(close_dlg_cb, wnd);
+ o = new Fl_Return_Button(405, 215, 75, 25, gettext("OK")); o->callback(cmd_dlg_cb, wnd);
+
+ help = new Fl_Help_View(0, 250, 500, 200);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+char *CmdDlg::get_result()
+{
+ static char res[1024],buf[128];
+ res[0]=0;
+ const char *cn = cmd->mvalue()->text;
+
+ bool sl3 = !strcmp(cn,"cont3") || !strcmp(cn,"contf3") || !strcmp(cn,"dens3");
+ strcpy(res,"\n"); strcat(res,cn);
+ sprintf(buf,"%s%s%s%s%s%s%s%s%s%s%s%s", var_x->value()[0]?" ":"", var_x->value(),
+ var_y->value()[0]?" ":"", var_y->value(), var_z->value()[0]?" ":"", var_z->value(),
+ var_u->value()[0]?" ":"", var_u->value(), var_v->value()[0]?" ":"", var_v->value(),
+ var_w->value()[0]?" ":"", var_w->value());
+ strcat(res,buf);
+
+ if(!strcmp(cn,"text") && par1->value()[0])
+ { strcat(res," '"); strcat(res,par1->value()); strcat(res,"'"); }
+ if(sl3 && !par1->value()[0])
+ {
+ strcat(res," 'x'");
+ fl_message(gettext("You should specify direction.\nDirection 'x' is selected by default"));
+ if(zval->value()[0])
+ { sprintf(buf," %d",atoi(zval->value())); strcat(res,buf); }
+ }
+ if(sl3 && par1->value()[0])
+ {
+ strcat(res," '"); strcat(res,par1->value()); strcat(res,"'");
+ if(zval->value()[0])
+ { sprintf(buf," %d",atoi(zval->value())); strcat(res,buf); }
+ }
+ if(stl->value()[0])
+ { strcat(res," '"); strcat(res,stl->value()); strcat(res,"'"); }
+ if(!sl3 && zval->value()[0])
+ { sprintf(buf," %d",atoi(zval->value())); strcat(res,buf); }
+ if(!sl3 && par2->value()[0])
+ { sprintf(buf," %d",atoi(par2->value())); strcat(res,buf); }
+ if(opt->value()[0]) strcat(res,opt->value());
+// strcat(res,"\n");
+ return res;
+}
+//-----------------------------------------------------------------------------
+void command_cb(Fl_Widget *, void *v)
+{
+ CmdDlg *s = &cmd_dlg;
+ ScriptWindow* e = (ScriptWindow*)v;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) // replace current selection
+ {
+ long i=e->editor->insert_position(), j=textbuf->line_end(i);
+ e->editor->insert_position(j);
+ e->editor->insert(s->get_result());
+ }
+}
+//-----------------------------------------------------------------------------
+void plot_dat_cb(Fl_Widget *, void *v)
+{
+ CmdDlg *s = &cmd_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) // replace current selection
+ textbuf->insert(textbuf->length(), s->get_result());
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/editor.cpp b/mgllab/editor.cpp
new file mode 100644
index 0000000..b89d62c
--- /dev/null
+++ b/mgllab/editor.cpp
@@ -0,0 +1,519 @@
+/* editor.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <ctype.h>
+#include <errno.h>
+#ifdef __MWERKS__
+# define FL_DLL
+#endif
+#include "udav.h"
+//-----------------------------------------------------------------------------
+int changed = 0;
+char filename[256] = "";
+Fl_Text_Buffer *textbuf = 0;
+void data_file(char *v);
+//-----------------------------------------------------------------------------
+// Syntax highlighting stuff...
+Fl_Text_Buffer *stylebuf = 0;
+Fl_Text_Display::Style_Table_Entry styletable[] = { // Style table
+ { FL_BLACK, FL_COURIER, 14 }, // A - Plain
+ { FL_DARK_GREEN,FL_COURIER_ITALIC, 14 }, // B - Line comments
+ { FL_BLUE, FL_COURIER, 14 }, // C - Number
+ { FL_RED, FL_COURIER, 14 }, // D - Strings
+ { FL_DARK_BLUE, FL_COURIER_BOLD, 14 }, // E - Usual ommand
+ { FL_DARK_CYAN, FL_COURIER_BOLD, 14 }, // F - Flow command
+ { FL_DARK_MAGENTA, FL_COURIER_BOLD,14 }, // G - New-data command
+ { FL_DARK_RED, FL_COURIER_BOLD, 14 }, // H - Option
+ { FL_DARK_GREEN,FL_COURIER_BOLD, 14 }}; // I - Inactive command
+//-----------------------------------------------------------------------------
+bool is_sfx(const char *s) // suffix
+{
+ register long i,n=strlen(s);
+ for(i=0;i<n && s[i]>='a';i++);
+ if(i==1 && s[0]=='a') return true;
+ if(i==2 && strchr("axyz",s[1]) && strchr("nmawsk",s[0])) return true;
+ if(i==3 && (!strncmp("fst",s,3) || !strncmp("lst",s,3) || !strncmp("max",s,3) ||
+ !strncmp("min",s,3) || !strncmp("sum",s,3)))
+ return true;
+ return false;
+// char *t = new char[i+1]; memcpy(t,s,i*sizeof(char)); t[i]=0;
+}
+//-----------------------------------------------------------------------------
+bool is_opt(const char *s) // option
+{
+ const char *o[]={"xrange","yrange","zrange","crange","alpha",
+ "cut","ambient","meshnum","fontsize","alphadef",
+ "marksize","legend"};
+ int l[12] = {6, 6, 6, 6, 5, 3, 7, 7, 8, 8, 8, 6};
+ register long i;
+ for(i=0;i<12;i++) if(!strncmp(o[i],s,l[i]) && s[l[i]]<=' ') return true;
+ return false;
+}
+//-----------------------------------------------------------------------------
+bool is_num(const char *s) // number
+{
+ register long i,n=strlen(s);
+ if(s[0]==':' && (s[1]<=' ' || s[1]==';')) return true;
+ if(n>=2 && !strncmp("pi",s,2) && (s[2]<=' ' || s[2]==';' || s[2]==':')) return true;
+ if(n>=2 && !strncmp("on",s,2) && (s[2]<=' ' || s[2]==';' || s[2]==':')) return true;
+ if(n>=3 && !strncmp("off",s,3) && (s[3]<=' ' || s[3]==';' || s[2]==':')) return true;
+ if(n>=3 && !strncmp("nan",s,3) && (s[3]<=' ' || s[3]==';' || s[2]==':')) return true;
+ for(i=0;i<n;i++)
+ {
+ if(s[i]<=' ' || s[i]==';') break;
+ if(!strchr("+-.eE0123456789",s[i])) return false;
+ }
+ return true;
+// char *t = new char[i+1]; memcpy(t,s,i*sizeof(char)); t[i]=0;
+}
+//-----------------------------------------------------------------------------
+char is_cmd(const char *s) // command
+{
+ register long i,n=strlen(s)+1;
+ char res=0, *w=new char[n];
+ for(i=0;i<n;i++) if(!isalnum(s[i])) w[i]=0;
+ int rts = Parse->CmdType(w);
+ if(rts==5) res = 'G';
+ else if(rts==7) res = 'F';
+ else if(rts) res = 'E';
+ delete []w; return res;
+}
+//-----------------------------------------------------------------------------
+// Parse text and produce style data.
+void style_parse(const char *text, char *style, int length)
+{
+ register long i;
+ long n=strlen(text);
+ bool nl=true, arg=true;
+ // Style letters:
+ // A - Plain
+ // B - Line comments
+ // C - Number
+ // D - Strings
+ // E - Usual command
+ // F - Flow command
+ // G - New data command
+ // H - Option
+
+ for(i=0;i<n;i++)
+ {
+ style[i] = 'A';
+ if(text[i]=='#') // comment
+ for(;i<n && text[i]!='\n';i++) style[i]='B';
+ if(text[i]=='\'') // string
+ {
+ arg = false; style[i]='D'; i++;
+ for(;i<n && text[i]!='\n' && text[i]!='\'';i++) style[i]='D';
+ style[i]='D';
+ }
+ if(text[i]=='\n' || text[i]==':') { nl=true; style[i]='A'; continue; }
+ char r = is_cmd(text+i);
+ if(nl && r) // command name
+ { for(;i<n && isalnum(text[i]);i++) style[i]=r; i--; }
+ if(text[i]<=' ' || text[i]==';') { arg = true; continue; }
+ if(arg && is_opt(text+i)) // option
+ { for(;i<n && isalpha(text[i]);i++) style[i]='H'; i--; }
+ if(arg && is_num(text+i)) // number
+ {
+ if(text[i]==':' && (isspace(text[i+1]) || text[i+1]==':'))
+ style[i]='C';
+ else for(;i<n && strchr("+-.eE0123456789pionaf",text[i]) ;i++)
+ style[i]='C';
+ i--;
+ }
+ if(text[i]=='.' && is_sfx(text+i+1)) // option (suffix)
+ {
+ style[i]='H'; i++;
+ for(;i<n && isalpha(text[i]);i++) style[i]='H';
+ }
+ nl = arg = false;
+ }
+}
+//-----------------------------------------------------------------------------
+// Initialize the style buffer...
+void style_init(void)
+{
+ char *style = new char[textbuf->length() + 1];
+ char *text = textbuf->text();
+ memset(style, 'A', textbuf->length());
+ style[textbuf->length()] = '\0';
+ if (!stylebuf) stylebuf = new Fl_Text_Buffer(textbuf->length());
+ style_parse(text, style, textbuf->length());
+ stylebuf->text(style);
+ delete[] style;
+ free(text);
+}
+//-----------------------------------------------------------------------------
+// Update unfinished styles.
+void style_unfinished_cb(int, void*) {}
+//-----------------------------------------------------------------------------
+// Update the style buffer...
+void style_update(int pos, // Position of update
+ int nInserted, // Number of inserted chars
+ int nDeleted, // Number of deleted chars
+ int /*nRestyled*/, // Number of restyled chars
+ const char */*deletedText*/,// Text that was deleted
+ void *cbArg) // Callback data
+{
+ long start, end; // Start and end of text
+ char last, // Last style on line
+ *style, // Style data
+ *text; // Text data
+
+ // If this is just a selection change, just unselect the style buffer...
+ if (nInserted == 0 && nDeleted == 0) { stylebuf->unselect(); return; }
+ // Track changes in the text buffer...
+ if (nInserted > 0)
+ {
+ // Insert characters into the style buffer...
+ style = new char[nInserted + 1];
+ memset(style, 'A', nInserted);
+ style[nInserted] = '\0';
+
+ stylebuf->replace(pos, pos + nDeleted, style);
+ delete[] style;
+ }
+ else // Just delete characters in the style buffer...
+ stylebuf->remove(pos, pos + nDeleted);
+
+ // Select the area that was just updated to avoid unnecessary callbacks...
+ stylebuf->select(pos, pos + nInserted - nDeleted);
+
+ // Re-parse the changed region; we do this by parsing from the
+ // beginning of the previous line of the changed region to the end of
+ // the line of the changed region... Then we check the last
+ // style character and keep updating if we have a multi-line
+ // comment character...
+ start = textbuf->line_start(pos);
+ end = textbuf->line_end(pos + nInserted);
+ text = textbuf->text_range(start, end);
+ style = stylebuf->text_range(start, end);
+ if (start==end) last = 0;
+ else last = style[end-start-1];
+ style_parse(text, style, end - start);
+ stylebuf->replace(start, end, style);
+ ((Fl_Text_Editor *)cbArg)->redisplay_range(start, end);
+
+ if (start==end || last != style[end-start-1])
+ {
+ // Either the user deleted some text, or the last character on
+ // the line changed styles, so reparse the remainder of the buffer...
+ free(text); free(style);
+
+ end = textbuf->length();
+ text = textbuf->text_range(start, end);
+ style = stylebuf->text_range(start, end);
+ style_parse(text, style, end - start);
+ stylebuf->replace(start, end, style);
+ ((Fl_Text_Editor *)cbArg)->redisplay_range(start, end);
+ }
+ free(text); free(style);
+}
+//-----------------------------------------------------------------------------
+ScriptWindow::ScriptWindow(int w, int h, const char* t) : Fl_Double_Window(w, h, t)
+{
+ replace_dlg = new Fl_Window(300, 105, gettext("Replace"));
+ replace_find = new Fl_Input(80, 10, 210, 25, gettext("Find:"));
+ replace_find->align(FL_ALIGN_LEFT);
+
+ replace_with = new Fl_Input(80, 40, 210, 25, gettext("Replace:"));
+ replace_with->align(FL_ALIGN_LEFT);
+
+ replace_all = new Fl_Button(10, 70, 90, 25, gettext("Replace All"));
+ replace_all->callback((Fl_Callback *)replall_cb, this);
+ replace_all->box(UDAV_UP_BOX); replace_all->down_box(UDAV_DOWN_BOX);
+
+ replace_next = new Fl_Return_Button(105, 70, 120, 25, "Replace Next");
+ replace_next->callback((Fl_Callback *)replace2_cb, this);
+ replace_next->box(UDAV_UP_BOX); replace_next->down_box(UDAV_DOWN_BOX);
+
+ replace_cancel = new Fl_Button(230, 70, 60, 25, gettext("Cancel"));
+ replace_cancel->callback((Fl_Callback *)replcan_cb, this);
+ replace_cancel->box(UDAV_UP_BOX); replace_cancel->down_box(UDAV_DOWN_BOX);
+
+ replace_dlg->end();
+ replace_dlg->set_non_modal();
+ editor = 0; *search = 0;
+
+ setup_dlg = new SetupDlg;
+ setup_dlg->CreateDlg();
+}
+//-----------------------------------------------------------------------------
+ScriptWindow::~ScriptWindow()
+{
+ delete replace_dlg;
+ delete setup_dlg->wnd;
+}
+//-----------------------------------------------------------------------------
+int check_save(void)
+{
+ if (!changed) return 1;
+ int r = fl_choice(gettext("The current file has not been saved.\n"
+ "Would you like to save it now?"),
+ gettext("Cancel"), gettext("Save"), gettext("Don't Save"));
+ if(r==1) { save_cb(0,0); return !changed; } // Save the file...
+ return (r==2) ? 1 : 0;
+}
+//-----------------------------------------------------------------------------
+int loading = 0;
+void load_file(char *newfile, int ipos)
+{
+ long len = strlen(newfile);
+ pref.set("last_file",newfile);
+ if(ipos==-1 && (!strcmp(newfile+len-4,".dat") || !strcmp(newfile+len-4,".csv")))
+ {
+ data_file(newfile);
+ strcpy(newfile+len-4,".mgl");
+ strcpy(filename, newfile);
+ }
+ else
+ {
+ loading = 1;
+ int insert = (ipos != -1);
+ changed = insert;
+ if(!insert) strcpy(filename, "");
+ long r;
+ if(!insert) r = textbuf->loadfile(newfile);
+ else r = textbuf->insertfile(newfile, ipos);
+
+ char *t = textbuf->text();
+#ifndef WIN32
+ for(unsigned long i=0;i<strlen(t);i++) if(t[i]=='\r') t[i]=' ';
+ textbuf->text(t);
+#endif
+ fill_animate(t); free(t);
+
+ if (r)
+ fl_alert(gettext("Error reading from file \'%s\':\n%s."), newfile, strerror(errno));
+ else if(!insert) strcpy(filename, newfile);
+ loading = 0;
+ textbuf->call_modify_callbacks();
+ }
+}
+//-----------------------------------------------------------------------------
+void save_file(char *newfile)
+{
+ pref.set("last_file",newfile);
+ if (textbuf->savefile(newfile))
+ fl_alert(gettext("Error writing to file \'%s\':\n%s."), newfile, strerror(errno));
+ else
+ strcpy(filename, newfile);
+ changed = 0;
+ textbuf->call_modify_callbacks();
+}
+//-----------------------------------------------------------------------------
+void copy_cb(Fl_Widget*, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ Fl_Text_Editor::kf_copy(0, e->editor);
+}
+//-----------------------------------------------------------------------------
+void cut_cb(Fl_Widget*, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ Fl_Text_Editor::kf_cut(0, e->editor);
+}
+//-----------------------------------------------------------------------------
+void delete_cb(Fl_Widget*, void*) { textbuf->remove_selection(); }
+//-----------------------------------------------------------------------------
+void find_cb(Fl_Widget* w, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ const char *val;
+ val = fl_input(gettext("Search String:"), e->search);
+ if (val != NULL) { strcpy(e->search, val); find2_cb(w, v); }
+}
+//-----------------------------------------------------------------------------
+void find2_cb(Fl_Widget* w, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ if (e->search[0] == '\0') { find_cb(w, v); return; }
+
+ int pos = e->editor->insert_position();
+ long found = textbuf->search_forward(pos, e->search, &pos);
+ if (found) {
+ // Found a match; select and update the position...
+ textbuf->select(pos, pos+strlen(e->search));
+ e->editor->insert_position(pos+strlen(e->search));
+ e->editor->show_insert_position();
+ }
+ else fl_alert(gettext("No occurrences of \'%s\' found!"), e->search);
+}
+//-----------------------------------------------------------------------------
+void changed_cb(int, int nInserted, int nDeleted,int, const char*, void* v)
+{
+ if ((nInserted || nDeleted) && !loading) changed = 1;
+ ScriptWindow *w = (ScriptWindow *)v;
+ set_title(w);
+ if (loading) w->editor->show_insert_position();
+}
+//-----------------------------------------------------------------------------
+void insert_cb(Fl_Widget*, void *v)
+{
+ char *newfile = fl_file_chooser(gettext("Insert File?"), "*", filename);
+ ScriptWindow *w = (ScriptWindow *)v;
+ if (newfile != NULL) load_file(newfile, w->editor->insert_position());
+}
+//-----------------------------------------------------------------------------
+void paste_cb(Fl_Widget*, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ Fl_Text_Editor::kf_paste(0, e->editor);
+}
+//-----------------------------------------------------------------------------
+void replace_cb(Fl_Widget*, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ e->replace_dlg->show();
+}
+//-----------------------------------------------------------------------------
+void replace2_cb(Fl_Widget*, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ const char *find = e->replace_find->value();
+ const char *replace = e->replace_with->value();
+ if (find[0] == '\0') { e->replace_dlg->show(); return; }
+ e->replace_dlg->hide();
+
+ int pos = e->editor->insert_position();
+ long found = textbuf->search_forward(pos, find, &pos);
+ if (found)
+ {
+ // Found a match; update the position and replace text...
+ textbuf->select(pos, pos+strlen(find));
+ textbuf->remove_selection();
+ textbuf->insert(pos, replace);
+ textbuf->select(pos, pos+strlen(replace));
+ e->editor->insert_position(pos+strlen(replace));
+ e->editor->show_insert_position();
+ }
+ else fl_alert(gettext("No occurrences of \'%s\' found!"), find);
+}
+//-----------------------------------------------------------------------------
+void replall_cb(Fl_Widget*, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ const char *find = e->replace_find->value();
+ const char *replace = e->replace_with->value();
+
+ find = e->replace_find->value();
+ if (find[0] == '\0') { e->replace_dlg->show(); return; }
+ e->replace_dlg->hide();
+ e->editor->insert_position(0);
+ long times = 0;
+
+ // Loop through the whole string
+ for (long found = 1; found;)
+ {
+ int pos = e->editor->insert_position();
+ found = textbuf->search_forward(pos, find, &pos);
+ if (found)
+ {
+ // Found a match; update the position and replace text...
+ textbuf->select(pos, pos+strlen(find));
+ textbuf->remove_selection();
+ textbuf->insert(pos, replace);
+ e->editor->insert_position(pos+strlen(replace));
+ e->editor->show_insert_position();
+ times++;
+ }
+ }
+ if (times) fl_message(gettext("Replaced %ld occurrences."), times);
+ else fl_alert(gettext("No occurrences of \'%s\' found!"), find);
+}
+//-----------------------------------------------------------------------------
+void replcan_cb(Fl_Widget*, void* v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ e->replace_dlg->hide();
+}
+//-----------------------------------------------------------------------------
+void view_cb(Fl_Widget*, void*);
+//#include "xpm/window.xpm"
+//#include "xpm/option.xpm"
+//#include "xpm/table.xpm"
+#include "xpm/plot.xpm"
+#include "xpm/help-contents.xpm"
+#include "xpm/edit-cut.xpm"
+#include "xpm/edit-copy.xpm"
+#include "xpm/edit-paste.xpm"
+#include "xpm/edit-find.xpm"
+#include "xpm/document-open.xpm"
+#include "xpm/document-new.xpm"
+#include "xpm/document-save.xpm"
+Fl_Widget *add_editor(ScriptWindow *w)
+{
+ Fl_Window *w1=new Fl_Window(0,30,300,430,0);
+ Fl_Group *g = new Fl_Group(0,0,290,30);
+ Fl_Button *o;
+
+ o = new Fl_Button(0, 1, 25, 25); o->image(new Fl_Pixmap(document_new_xpm));
+ o->tooltip(gettext("New script")); o->callback(new_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(25, 1, 25, 25); o->tooltip(gettext("Open script or data file"));
+ o->image(new Fl_Pixmap(document_open_xpm)); o->callback(open_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(50, 1, 25, 25); o->tooltip(gettext("Save script to file"));
+ o->image(new Fl_Pixmap(document_save_xpm)); o->callback(save_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+
+ o = new Fl_Button(80, 1, 25, 25); o->tooltip(gettext("Cut selection to clipboard"));
+ o->image(new Fl_Pixmap(edit_cut_xpm)); o->callback(cut_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(105, 1, 25, 25); o->tooltip(gettext("Copy selection to clipboard"));
+ o->image(new Fl_Pixmap(edit_copy_xpm)); o->callback(copy_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(130, 1, 25, 25); o->tooltip(gettext("Paste text from clipboard"));
+ o->image(new Fl_Pixmap(edit_paste_xpm)); o->callback(paste_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(155, 1, 25, 25); o->tooltip(gettext("Find text"));
+ o->image(new Fl_Pixmap(edit_find_xpm)); o->callback(find_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+
+ o = new Fl_Button(185, 1, 25, 25); o->tooltip(gettext("Insert MGL command"));
+ o->image(new Fl_Pixmap(plot_xpm)); o->callback(command_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+// o = new Fl_Button(185, 1, 25, 25); o->tooltip(gettext("Insert command options"));
+// o->image(new Fl_Pixmap(option_xpm)); o->callback(option_cb,w);
+// o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+// o = new Fl_Button(210, 1, 25, 25); o->tooltip(gettext("Edit data array"));
+// o->image(new Fl_Pixmap(table_xpm)); o->callback(table_cb,w);
+// o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+// o = new Fl_Button(235, 1, 25, 25); o->tooltip(gettext("New view window"));
+// o->image(new Fl_Pixmap(window_xpm));o->callback(view_cb,w);
+// o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(210, 1, 25, 25); o->tooltip(gettext("Show help window"));
+ o->image(new Fl_Pixmap(help_contents_xpm)); o->callback(help_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ g->end(); g->resizable(0);
+
+ w->editor = new Fl_Text_Editor(0, 28, 300, 400);
+ w->editor->buffer(textbuf);
+ w->editor->highlight_data(stylebuf, styletable, sizeof(styletable) / sizeof(styletable[0]), 'A', style_unfinished_cb, 0);
+ w->editor->textfont(FL_COURIER);
+
+ textbuf->add_modify_callback(style_update, w->editor);
+ textbuf->add_modify_callback(changed_cb, w);
+ textbuf->call_modify_callbacks();
+
+ w1->end();
+ w1->resizable(w->editor); //w->graph);
+ return w1;
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/grid.cpp b/mgllab/grid.cpp
new file mode 100644
index 0000000..d4909c9
--- /dev/null
+++ b/mgllab/grid.cpp
@@ -0,0 +1,129 @@
+/* grid.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <FL/Fl.H>
+#include <FL/Fl_Window.H>
+#include <FL/Fl_Int_Input.H>
+#include <FL/Fl_Value_Slider.H>
+#include <FL/fl_draw.H>
+#include <stdio.h>
+#include <stdlib.h>
+
+/*
+#ifdef _MSC_VER
+#define _USE_MATH_DEFINES
+#include <float.h>
+const unsigned long mgl_nan[2] = {0xffffffff, 0x7fffffff};
+#define NANd (*(double*)mgl_nan)
+#define NANf (*(float*)&(mgl_nan[1]))
+#define NAN NANf
+#define isnan _isnan
+#define isfinite _finite
+#define copysignf _copysign
+#define chdir _chdir
+#endif
+*/
+
+#include <math.h>
+#include "udav.h"
+//-----------------------------------------------------------------------------
+Fl_Callback input_cb;
+//-----------------------------------------------------------------------------
+void input_cb(Fl_Widget*, void* v) { ((Fl_Data_Table*)v)->set_value(); }
+//-----------------------------------------------------------------------------
+Fl_Data_Table::Fl_Data_Table(int x, int y, int w, int h, const char *l) : Fl_Table(x,y,w,h,l)
+{
+ callback(&event_callback, (void*)this);
+ input = new Fl_Input(w/2,h/2,0,0);
+ input->hide();
+ input->callback(input_cb, (void*)this);
+ input->when(FL_WHEN_ENTER_KEY_ALWAYS);
+ input->maximum_size(16);
+// (new Fl_Box(9999,9999,0,0))->hide(); // HACK: prevent flickering in Fl_Scroll
+ end();
+}
+//-----------------------------------------------------------------------------
+// Handle drawing all cells in table
+void Fl_Data_Table::draw_cell(TableContext context, int R, int C, int X, int Y, int W, int H)
+{
+ static char s[32];
+ fl_push_clip(X, Y, W, H);
+ switch ( context )
+ {
+ case CONTEXT_COL_HEADER:
+ fl_draw_box(FL_THIN_UP_BOX, X, Y, W, H, col_header_color());
+ fl_font(FL_HELVETICA | FL_BOLD, 14);
+ fl_color(FL_BLACK); sprintf(s,"%d",C);
+ fl_draw(s, X, Y, W, H, FL_ALIGN_CENTER);
+ break;
+ case CONTEXT_ROW_HEADER:
+ fl_draw_box(FL_THIN_UP_BOX, X, Y, W, H, col_header_color());
+ fl_font(FL_HELVETICA | FL_BOLD, 14);
+ fl_color(FL_BLACK); sprintf(s,"%d",R);
+ fl_draw(s, X, Y, W, H, FL_ALIGN_CENTER);
+ break;
+ case CONTEXT_CELL:
+ if (R == row && C == col && input->visible()) break;
+ fl_draw_box(FL_THIN_DOWN_BOX, X, Y, W, H, FL_WHITE);
+ fl_pop_clip();
+ fl_push_clip(X+3, Y+3, W-6, H-6);
+ fl_font(FL_HELVETICA, 14);
+ fl_color(FL_BLACK);
+ if(isnan(data[C+nx*R])) strcpy(s,"nan");
+ else sprintf(s,"%g",data[C+nx*R]);
+ fl_draw(s, X+3, Y+3, W-6, H-6, FL_ALIGN_RIGHT);
+ break;
+ case CONTEXT_RC_RESIZE:
+ if (!input->visible()) break;
+ find_cell(CONTEXT_TABLE, row, col, X, Y, W, H);
+ if (X!=input->x() || Y!=input->y() || W!=input->w() || H!=input->h())
+ input->resize(X,Y,W,H);
+ break;
+ default: break;
+ }
+ fl_pop_clip();
+}
+//-----------------------------------------------------------------------------
+void Fl_Data_Table::cell_click()
+{
+ int R = callback_row(), C = callback_col();
+ TableContext context = callback_context();
+
+ if(context==CONTEXT_CELL)
+ {
+ if (input->visible()) //input->do_callback();
+ {
+ const char *s = input->value();
+ data[col + nx*row] = (s[0]==0 || !strcmp(s,"nan")) ? NAN : atof(s);
+ }
+ row = R; col = C;
+ int XX,YY,WW,HH;
+ find_cell(CONTEXT_CELL, R, C, XX, YY, WW, HH);
+ input->resize(XX,YY,WW,HH);
+ char s[32];
+ if(isnan(data[C+nx*R])) strcpy(s,"nan");
+ else sprintf(s,"%g",data[C+nx*R]);
+ input->value(s); input->show();
+ input->take_focus();
+ }
+}
+//-----------------------------------------------------------------------------
+void Fl_Data_Table::set_value()
+{
+ const char *s = input->value();
+ data[col + nx*row] = (s[0]==0 || !strcmp(s,"nan")) ? NAN : atof(s);
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/help.cpp b/mgllab/help.cpp
new file mode 100644
index 0000000..825a175
--- /dev/null
+++ b/mgllab/help.cpp
@@ -0,0 +1,276 @@
+/* help.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include "udav.h"
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+#include <ctype.h>
+#include <FL/Fl_Select_Browser.H>
+//-----------------------------------------------------------------------------
+void get_doc_dir(char *&docdir)
+{
+ static char str[300];
+ pref.get("help_dir",docdir,"");
+#ifdef WIN32
+ sprintf(str,"%s\\mgl_en.html\\mgl_en_1.html",docdir);
+#else
+ sprintf(str,"%s/mgl_en.html/mgl_en_1.html",docdir);
+#endif
+ FILE *fp = fopen(str,"r");
+ if(fp) fclose(fp);
+ else
+ {
+ const char *p=0;
+ if((p=fl_input("Please enter a path for help/font files:","")))
+ pref.set("help_dir",p);
+ pref.get("help_dir",docdir,"");
+ }
+}
+//-----------------------------------------------------------------------------
+void help_cb(Fl_Widget*, void*v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ long i=e->editor->insert_position(), j0=textbuf->line_start(i),j;
+
+ static char str[300];
+ char s[32]="", *buf = textbuf->text();
+ memset(s,0,32*sizeof(char));
+ for(j=j0;!isspace(buf[j]) && buf[j]!='#' && buf[j]!=';' && j<31+j0;j++)
+ s[j-j0] = buf[j];
+ free(buf);
+ get_doc_dir(buf);
+#ifdef WIN32
+ sprintf(str,"%s\\mgl_en.html\\mgl_en_1.html#%s",buf,s);
+#else
+ sprintf(str,"%s/mgl_en.html/mgl_en_1.html#%s",buf,s);
+#endif
+ free(buf); e->hd->load(str);
+ if(e->rtab) e->rtab->value(e->ghelp);
+}
+//-----------------------------------------------------------------------------
+void link_cb(Fl_Widget*, void*v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ static char str[300];
+ char *docdir;
+ get_doc_dir(docdir);
+#ifdef WIN32
+ sprintf(str,"%s\\mgl_en.html\\mgl_en_1.html#%s",docdir,e->link_cmd->value());
+#else
+ sprintf(str,"%s/mgl_en.html/mgl_en_1.html#%s",docdir,e->link_cmd->value());
+#endif
+ free(docdir); e->hd->load(str);
+ if(e->rtab) e->rtab->value(e->ghelp);
+}
+//-----------------------------------------------------------------------------
+void example_cb(Fl_Widget*, void*v)
+{
+ char *docdir;
+ static char str[300];
+ ScriptWindow* e = (ScriptWindow*)v;
+ get_doc_dir(docdir);
+#ifdef WIN32
+ sprintf(str,"%s\\mgl_en.html\\mgl_en_2.html",docdir);
+#else
+ sprintf(str,"%s/mgl_en.html/mgl_en_2.html",docdir);
+#endif
+ free(docdir); e->hd->load(str); e->rtab->value(e->ghelp);
+ if(e->rtab) e->rtab->value(e->ghelp);
+}
+//-----------------------------------------------------------------------------
+void help_in_cb(Fl_Widget*, void*v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ e->hd->textsize(e->hd->textsize()+1);
+}
+//-----------------------------------------------------------------------------
+void help_out_cb(Fl_Widget*, void*v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ e->hd->textsize(e->hd->textsize()-1);
+}
+//-----------------------------------------------------------------------------
+#include "xpm/udav.xpm"
+void about_cb(Fl_Widget*, void*)
+{
+ static char s[128];
+ sprintf(s,gettext("UDAV v. 2.%g\n(c) Alexey Balakin, 2007\nhttp://udav.sf.net/"), MGL_VER2);
+ Fl_Double_Window* w = new Fl_Double_Window(355, 130, "About UDAV");
+ Fl_Box* o = new Fl_Box(10, 15, 65, 65);
+ o->box(FL_UP_BOX); o->color(55); o->image(new Fl_Pixmap(udav_xpm));
+ o = new Fl_Box(85, 15, 260, 65); o->box(UDAV_DOWN_BOX);
+ o->label(s);
+ Fl_Button *b = new Fl_Return_Button(255, 90, 90, 30, "Close");
+ b->callback(close_dlg_cb,w);
+ b->box(UDAV_UP_BOX); b->down_box(UDAV_DOWN_BOX);
+ w->end(); w->set_modal(); w->show();
+}
+//-----------------------------------------------------------------------------
+#include "xpm/zoom-out.xpm"
+#include "xpm/zoom-in.xpm"
+#include "xpm/help-faq.xpm"
+Fl_Widget *add_help(ScriptWindow *w)
+{
+ Fl_Window *w1=new Fl_Window(300,30,630,430,0);
+ Fl_Group *g = new Fl_Group(0,0,290,30);
+ Fl_Button *o;
+
+ w->link_cmd = new Fl_Input(0,1,150,25);
+ w->link_cmd->when(FL_WHEN_CHANGED);
+ w->link_cmd->callback(link_cb,w);
+
+ o = new Fl_Button(155, 1, 25, 25); o->tooltip(gettext("MGL samples and hints"));
+ o->image(new Fl_Pixmap(help_faq_xpm)); o->callback(example_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(180, 1, 25, 25); o->tooltip(gettext("Increase font size"));
+ o->image(new Fl_Pixmap(zoom_in_xpm)); o->callback(help_in_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(205, 1, 25, 25); o->tooltip(gettext("Decrease font size"));
+ o->image(new Fl_Pixmap(zoom_out_xpm)); o->callback(help_out_cb,w);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+
+ g->end(); g->resizable(0);
+
+ w->hd = new Fl_Help_View(0,28,630,400);
+ w1->end(); link_cb(w,w);
+ w1->resizable(w->hd); return w1;
+}
+//-----------------------------------------------------------------------------
+void mem_dlg_cb0(Fl_Widget *, void *v)
+{ ((ScriptWindow*)v)->mem_pressed(0); }
+//-----------------------------------------------------------------------------
+void mem_dlg_cb1(Fl_Widget *, void *v)
+{ ((ScriptWindow*)v)->mem_pressed(1); }
+//-----------------------------------------------------------------------------
+void mem_dlg_cb2(Fl_Widget *, void *v)
+{ ((ScriptWindow*)v)->mem_pressed(2); }
+//-----------------------------------------------------------------------------
+void mem_dlg_cb3(Fl_Widget *, void *v)
+{ ((ScriptWindow*)v)->mem_pressed(3); }
+//-----------------------------------------------------------------------------
+void mem_update_cb(Fl_Widget *, void *v)
+{ ((ScriptWindow*)v)->mem_init(); }
+//-----------------------------------------------------------------------------
+Fl_Widget *add_mem(ScriptWindow *w)
+{
+ static int widths[] = {220,205,0};
+ Fl_Button *o;
+ Fl_Box *b;
+// wnd = new Fl_Double_Window(335, 405, gettext("Data browser"));
+ Fl_Window *wnd = new Fl_Window(300,30,630,430,0);
+
+// Fl_Group *g = new Fl_Group(10,10,610,395);
+ b = new Fl_Box(0, 10, 630, 25, gettext("Existed data arrays")); b->labeltype(FL_ENGRAVED_LABEL);
+ b = new Fl_Box(0, 35, 220, 25, gettext("name"));
+ b->box(FL_THIN_UP_BOX); b->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+ b = new Fl_Box(220, 35, 205, 25, gettext("dimensions"));
+ b->box(FL_THIN_UP_BOX); b->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+ b = new Fl_Box(425, 35, 205, 25, gettext("mem. usage"));
+ b->box(FL_THIN_UP_BOX); b->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+
+ w->var = new Fl_Select_Browser(0, 60, 630, 335); w->var->column_char('\t');
+ w->var->align(FL_ALIGN_TOP); w->var->column_widths(widths);
+ w->var->tooltip(gettext("List of available data."));
+// g->end();
+
+ o = new Fl_Button(10, 400, 95, 25, gettext("Edit")); o->callback(mem_dlg_cb0,w);
+ o->tooltip(gettext("Open table with selected data for editing."));
+ o = new Fl_Button(120, 400, 95, 25, gettext("Plot")); o->callback(mem_dlg_cb1,w);
+ o->tooltip(gettext("Plot selected data."));
+ o = new Fl_Button(230, 400, 95, 25, gettext("Delete")); o->callback(mem_dlg_cb2,w);
+ o->tooltip(gettext("Delete selected data."));
+ o = new Fl_Button(340, 400, 95, 25, gettext("New")); o->callback(mem_dlg_cb3,w);
+ o->tooltip(gettext("Open dialog for new data creation."));
+ o = new Fl_Button(450, 400, 95, 25, gettext("Refresh")); o->callback(mem_update_cb,w);
+ o->tooltip(gettext("Refresh list of variables."));
+// o = new Fl_Button(120, 335, 95, 25, gettext("Load")); o->callback(mem_dlg_cb,(void *)4);
+// o = new Fl_Button(230, 335, 95, 25, gettext("Save")); o->callback(mem_dlg_cb,(void *)5);
+// o = new Fl_Button(10, 370, 95, 25, gettext("Update")); o->callback(mem_upd_cb,0);
+ wnd->end(); wnd->resizable(w->var); return wnd;
+}
+//-----------------------------------------------------------------------------
+void ScriptWindow::mem_init()
+{
+ char str[128];
+ var->clear();
+ mglVar *v=Parse->Self()->DataList;
+ while(v)
+ {
+ sprintf(str,"%ls\t%ld*%ld*%ld\t%ld\t", v->s.c_str(), v->d.nx, v->d.ny,
+ v->d.nz, 4*v->d.nx*v->d.ny*v->d.nz);
+ var->add(str,v);
+ v = v->next;
+ }
+}
+//-----------------------------------------------------------------------------
+void ScriptWindow::mem_pressed(int kind)
+{
+ TableWindow *w;
+ int ind = var->value();
+ mglVar *v = (mglVar *)var->data(ind);
+ static char res[128];
+ if(!v && kind!=3) return;
+ if(kind==0)
+ {
+ w = (TableWindow *)v->o;
+ if(!w)
+ {
+ char ss[1024];
+ wcstombs(ss,v->s.c_str(),1024); ss[v->s.length()]=0;
+ ltab->begin();
+ Fl_Group *gg = new Fl_Group(0,30,300,430);
+ w = new TableWindow(0,30,300,430);
+ gg->label(ss); gg->end(); ltab->end();
+ }
+ w->update(v); ltab->value(w->parent()); w->show();
+ }
+ else if(kind==1)
+ {
+ if(v->d.nz>1) sprintf(res,"box\nsurf3 %ls\n",v->s.c_str());
+ else if(v->d.ny>1) sprintf(res,"box\nsurf %ls\n",v->s.c_str());
+ else sprintf(res,"box\nplot %ls\n",v->s.c_str());
+ textbuf->text(res);
+ }
+ else if(kind==2)
+ {
+ if(Parse->Self()->DataList==v) Parse->Self()->DataList = v->next;
+ delete v;
+ }
+ else if(kind==3)
+ {
+ const char *name = fl_input(gettext("Enter name for new variable"),"dat");
+ if(!name) return;
+ v = Parse->Self()->AddVar(name);
+
+ ltab->begin();
+ Fl_Group *gg = new Fl_Group(0,30,300,430);
+ w = new TableWindow(0,30,300,430);
+ gg->label(name); gg->end(); ltab->end();
+ w->update(v); ltab->value(w->parent()); w->show();
+ }
+ mem_init();
+}
+//-----------------------------------------------------------------------------
+void variables_cb(Fl_Widget *, void *v)
+{
+/* MemDlg *s = &mem_dlg;
+ s->wnd->set_modal();
+ s->init();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();*/
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/main.cpp b/mgllab/main.cpp
new file mode 100644
index 0000000..152151a
--- /dev/null
+++ b/mgllab/main.cpp
@@ -0,0 +1,302 @@
+/* main.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+#include <ctype.h>
+#include <errno.h>
+#include <locale.h>
+#include "udav.h"
+//-----------------------------------------------------------------------------
+char title[256];
+int num_windows = 0, auto_exec=1, plastic_scheme=1, internal_font=0;
+Fl_Preferences pref(Fl_Preferences::USER,"abalakin","UDAV");
+//-----------------------------------------------------------------------------
+void set_title(Fl_Window* w)
+{
+ if (filename[0] == '\0') strcpy(title, "Untitled");
+ else
+ {
+ char *slash;
+ slash = strrchr(filename, '/');
+#ifdef WIN32
+ if (slash == NULL) slash = strrchr(filename, '\\');
+#endif
+ if (slash != NULL) strcpy(title, slash + 1);
+ else strcpy(title, filename);
+ }
+ if (changed) strcat(title, gettext(" (modified)"));
+ w->label(title);
+}
+//-----------------------------------------------------------------------------
+void fname_cb(Fl_Widget*, void *v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ char *file = fl_file_chooser(gettext("Insert File Name?"), gettext("All Files (*)"), 0);
+ if(file)
+ {
+ char *str = new char[strlen(file)+4];
+ sprintf(str," '%s'",file);
+ e->editor->insert(str);
+ delete []str;
+ }
+}
+//-----------------------------------------------------------------------------
+void new_cb(Fl_Widget*, void*)
+{
+ if (!check_save()) return;
+ filename[0] = '\0';
+ textbuf->select(0, textbuf->length());
+ textbuf->remove_selection();
+ changed = 0;
+ textbuf->call_modify_callbacks();
+}
+//-----------------------------------------------------------------------------
+void open_cb(Fl_Widget*, void *v)
+{
+ if (!check_save()) return;
+ char *lastname=0;
+ if(*filename==0) { pref.get("last_file",lastname,""); strcpy(filename, lastname); }
+ char *newfile = fl_file_chooser(gettext("Open File?"),
+ gettext("MGL Files (*.mgl)\tDAT Files (*.{dat,csv})\tAll Files (*)"), filename);
+ if(lastname) free(lastname);
+ if(newfile != NULL)
+ {
+ load_file(newfile, -1);
+ if(auto_exec) ((ScriptWindow*)v)->graph->update();
+ }
+}
+//-----------------------------------------------------------------------------
+void close_cb(Fl_Widget*, void* v)
+{
+ Fl_Window* w = (Fl_Window*)v;
+ if (num_windows == 1 && !check_save()) return;
+
+ w->hide();
+ textbuf->remove_modify_callback(changed_cb, w);
+ delete w;
+ num_windows--;
+ if (!num_windows) exit(0);
+}
+//-----------------------------------------------------------------------------
+void quit_cb(Fl_Widget*, void*)
+{
+ if (changed && !check_save()) return;
+ exit(0);
+}
+//-----------------------------------------------------------------------------
+void save_cb(Fl_Widget*w, void*v)
+{
+ if (filename[0] == '\0') { saveas_cb(w,v); return; } // No filename - get one!
+ else save_file(filename);
+}
+//-----------------------------------------------------------------------------
+void saveas_cb(Fl_Widget*, void*)
+{
+ char *newfile, *fname=0;
+ FILE *fp=0;
+ while(1)
+ {
+ newfile = fl_file_chooser(gettext("Save File As?"), "*.mgl", filename);
+ if(!newfile || !newfile[0]) break;
+ if(!strchr(newfile,'.'))
+ {
+ if(fname) delete []fname;
+ fname = new char[strlen(newfile)+5];
+ strcpy(fname,newfile); strcat(fname,".mgl");
+ newfile = fname;
+ }
+ fp = fopen(newfile,"r");
+ if(fp)
+ {
+ fclose(fp);
+ if(fl_choice(gettext("File is exesist. Overwrite it?"),0,gettext("No"),gettext(" Yes "))==2)
+ break;
+ }
+ else break;
+ }
+ if (newfile != NULL) save_file(newfile);
+ if(fname) delete []fname;
+}
+//-----------------------------------------------------------------------------
+ScriptWindow *new_view();
+//-----------------------------------------------------------------------------
+void view_cb(Fl_Widget*, void*)
+{ Fl_Window* w = new_view(); w->show(); }
+//-----------------------------------------------------------------------------
+void hint_cb(Fl_Widget*, void*) {}
+//-----------------------------------------------------------------------------
+Fl_Menu_Item menuitems[] = {
+ { gettext("File"), 0, 0, 0, FL_SUBMENU },
+ { gettext("New File"), 0, new_cb },
+ { gettext("Open File..."), FL_CTRL + 'o', open_cb },
+ { gettext("Insert File..."), FL_CTRL + 'i', insert_cb },
+ { gettext("Save File"), FL_CTRL + 's', save_cb },
+ { gettext("Save File As..."), FL_CTRL + FL_SHIFT + 's', saveas_cb, 0, FL_MENU_DIVIDER },
+/* { gettext("Export"), 0, 0, 0, FL_SUBMENU },
+ { gettext("... as PNG"), FL_ALT + 'p', export_png_cb },
+ { gettext("... as PNG (solid)"), FL_ALT + 'f', export_pngn_cb },
+ { gettext("... as JPEG"), FL_ALT + 'j', export_jpeg_cb },
+ { gettext("... as SVG"), FL_ALT + 's', export_svg_cb },
+ { gettext("... as vector EPS"), FL_ALT + 'e', export_eps_cb },
+ { gettext("... as bitmap EPS"), 0, export_bps_cb, 0, FL_MENU_DIVIDER },
+ {0},*/
+ { gettext("New View"), FL_ALT + 'w', view_cb },
+ { gettext("Close View"), FL_CTRL + 'w', close_cb, 0, FL_MENU_DIVIDER },
+ { gettext("Exit"), FL_ALT + 'x', quit_cb },
+ { 0 },
+ { gettext("Edit"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Cut"), FL_CTRL + 'x', cut_cb },
+ { gettext("Copy"), FL_CTRL + 'c', copy_cb },
+ { gettext("Paste"), FL_CTRL + 'v', paste_cb },
+ { gettext("Delete"), 0, delete_cb, 0, FL_MENU_DIVIDER },
+ { gettext("Insert"), 0, 0, 0, FL_SUBMENU },
+ { gettext("options"), FL_ALT + 'o', option_cb },
+ { gettext("style"), FL_ALT + 'i', style_cb },
+ { gettext("filename"), 0, fname_cb },
+ { gettext("command"), FL_ALT + 'c', command_cb },
+ { 0 },
+ { gettext("Properties"), 0, settings_cb },
+ { 0 },
+ { gettext("Search"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Find..."), FL_CTRL + 'f', find_cb },
+ { gettext("Find Again"), FL_F + 3, find2_cb },
+ { gettext("Replace..."), FL_CTRL + 'r', replace_cb },
+ { gettext("Replace Again"), FL_F + 4, replace2_cb },
+ { 0 },
+/* { gettext("Animate"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Slideshow"), FL_CTRL + FL_F + 5, sshow_cb, 0, FL_MENU_TOGGLE },
+ { gettext("Next slide"),0, snext_cb },
+ { gettext("Prev slide"),0, sprev_cb },
+ { gettext("Parameters"),0, animate_cb },
+ { 0 },
+ { gettext("Graphics"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Alpha"), FL_ALT + 'a', alpha_cb, 0, FL_MENU_TOGGLE },
+ { gettext("Light"), FL_ALT + 'l', light_cb, 0, FL_MENU_TOGGLE },
+ { gettext("Settings"), FL_F + 2, setup_cb },
+ { gettext("Copy graphics"), 0, 0, 0, FL_MENU_INACTIVE|FL_MENU_DIVIDER},
+ { gettext("Normal view"), FL_ALT + ' ', norm_cb },
+ { gettext("Execute script"),FL_F + 5, draw_cb },
+ { gettext("Adjust size"), FL_F + 6, adjust_cb },
+ { gettext("Reload data"), FL_F + 9, oncemore_cb },
+ { gettext("Script arguments"), 0, argument_cb },
+ { 0 },*/
+/* { gettext("Data"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Edit data"), FL_ALT + 'd', table_cb },
+ { gettext("List of data"), FL_ALT + 'v', variables_cb },
+ { gettext("Reload data"), FL_F + 9, oncemore_cb },
+ { 0 },*/
+ { gettext("Help"), 0, 0, 0, FL_SUBMENU },
+ { gettext("MGL Help"), FL_F + 1, help_cb },
+ { gettext("MGL Examples"), 0, example_cb },
+ { gettext("Hints and FAQ"), 0, hint_cb , 0, FL_MENU_INACTIVE},
+ { gettext("About UDAV"), 0, about_cb },
+ { 0 },
+ { 0 }
+};
+//-----------------------------------------------------------------------------
+void mem_upd_cb(Fl_Widget *, void *v)
+{ ((ScriptWindow*)v)->mem_init(); }
+//-----------------------------------------------------------------------------
+ScriptWindow *new_view()
+{
+ Fl_Tabs* tt;
+ Fl_Group *gg;
+ ScriptWindow *w = new ScriptWindow(930, 510, title);
+ w->begin();
+ w->menu = new Fl_Menu_Bar(0, 0, 930, 30);
+ w->menu->copy(menuitems, w);
+
+ Fl_Tile *t = new Fl_Tile(0,30,930,455);
+ tt = new Fl_Tabs(0,30,300,455,0); tt->box(UDAV_UP_BOX);
+ gg = new Fl_Group(0,30,300,430); gg->label(gettext("Script"));
+ add_editor(w); gg->end();
+ tt->end(); w->ltab = tt;
+
+ tt = new Fl_Tabs(300,30,930,455,0); tt->box(UDAV_UP_BOX);
+ w->graph = new Fl_MGL(300,30,930,430,gettext("Canvas"));
+ gg = new Fl_Group(300,30,930,430,gettext("Help"));
+ add_help(w); gg->end(); w->ghelp = gg;
+ gg = new Fl_Group(300,30,930,430,gettext("Memory"));
+ add_mem(w); gg->end();
+ tt->end(); w->rtab = tt;
+
+ w->status = new Fl_Box(0,485,930,25,"Ready");
+ w->status->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+ w->status->color(FL_BACKGROUND_COLOR);
+ w->status->box(FL_DOWN_BOX);
+ w->graph->status = w->status;
+
+ t->end(); t->resizable(t);
+ w->end(); w->resizable(t);
+ tt->callback(mem_upd_cb, w);
+ w->callback((Fl_Callback *)close_cb, w);
+
+ num_windows++;
+ return w;
+}
+//-----------------------------------------------------------------------------
+void argument_set(int n, const char *s);
+int main(int argc, char **argv)
+{
+// Fl::lock();
+ mgl_ask_func = mgl_ask_fltk;
+ char *buf, *buf2;
+ pref.get("locale",buf,"ru_RU.cp1251"); setlocale(LC_CTYPE, buf); free(buf);
+ pref.get("plastic_scheme",plastic_scheme,1);
+ pref.get("internal_font",internal_font,0);
+ pref.get("auto_exec",auto_exec,1);
+#ifdef USE_GETTEXT
+// setlocale (LC_ALL, "");
+// bindtextdomain (PACKAGE, LOCALEDIR);
+// textdomain (PACKAGE);
+#endif
+
+ Fl::visual(FL_DOUBLE);
+ if(plastic_scheme) Fl::scheme("plastic");
+#ifdef DOC_DIR
+ char dir[64];
+ if(!pref.get("help_dir",dir,"",64));
+ pref.set("help_dir",DOC_DIR);
+#endif
+ textbuf = new Fl_Text_Buffer;
+ style_init();
+ ScriptWindow *w = new_view();
+
+ pref.get("font_dir",buf2,"");
+ pref.get("font_name",buf,"");
+ mgl_load_font(w->graph->FMGL->get_graph(),buf,buf2);
+ if(buf) free(buf);
+ if(buf2) free(buf2);
+
+ w->show(1, argv);
+ for(int i=1;i<argc;i++)
+ {
+ if(argv[i][0]!='-')
+ {
+ load_file(argv[i], -1);
+ if(auto_exec) w->graph->update();
+ }
+ else
+ {
+ char ch = argv[i][1];
+ if(ch>='0' && ch<='9') argument_set(ch-'0',argv[i]+2);
+ }
+ }
+ return Fl::run();
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/mathgl.cpp b/mgllab/mathgl.cpp
new file mode 100644
index 0000000..4a373d0
--- /dev/null
+++ b/mgllab/mathgl.cpp
@@ -0,0 +1,140 @@
+/* mathgl.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <stdio.h>
+#include "mgl/mgl.h"
+#include "udav.h"
+//-----------------------------------------------------------------------------
+#include "xpm/alpha.xpm"
+#include "xpm/light.xpm"
+#include "xpm/alpha_on.xpm"
+#include "xpm/light_on.xpm"
+#include "xpm/zoom-fit-best.xpm"
+#include "xpm/zoom-fit-best-r.xpm"
+#include "xpm/film-r.xpm"
+#include "xpm/film-b.xpm"
+#include "xpm/media-seek-forward.xpm"
+#include "xpm/media-seek-backward.xpm"
+#include "xpm/go-previous.xpm"
+#include "xpm/go-next.xpm"
+#include "xpm/go-down.xpm"
+#include "xpm/zoom-out.xpm"
+#include "xpm/zoom-in.xpm"
+#include "xpm/go-up.xpm"
+#include "xpm/zoom-original.xpm"
+#include "xpm/view-refresh.xpm"
+#include "xpm/rotate.xpm"
+#include "xpm/rotate_on.xpm"
+#include "xpm/document-properties.xpm"
+//#include "xpm/preferences-system.xpm"
+#include "xpm/wire.xpm"
+//-----------------------------------------------------------------------------
+extern int internal_font;
+mglParse *Parse=0;
+void get_doc_dir(char *&docdir);
+//-----------------------------------------------------------------------------
+void udav_error(const char *Message, void *v)
+{ ((Fl_MGL*)v)->status->label(Message); }
+float udav_delay(void *v)
+{ return ((Fl_MGL*)v)->AnimDelay; }
+void udav_reload(void *v)
+{ Parse->RestoreOnce(); ((Fl_MGL*)v)->update(); }
+//-----------------------------------------------------------------------------
+void udav_next(void *v) { ((Fl_MGL*)v)->next_frame(); }
+void Fl_MGL::next_frame()
+{
+ if(NArgs==0)
+ {
+ animate_cb(this,this);
+ if(NArgs==0) return;
+ }
+ ArgCur = (ArgCur+1) % NArgs;
+ Parse->AddParam(0,Args[ArgCur]);
+ update();
+}
+//-----------------------------------------------------------------------------
+void udav_prev(void *v) { ((Fl_MGL*)v)->prev_frame(); }
+void Fl_MGL::prev_frame()
+{
+ if(NArgs==0)
+ {
+ animate_cb(this,this);
+ if(NArgs==0) return;
+ }
+ ArgCur = ArgCur>0 ? ArgCur-1 : NArgs-1;
+ Parse->AddParam(0,Args[ArgCur]);
+ update();
+}
+//-----------------------------------------------------------------------------
+Fl_MGL::Fl_MGL(int x, int y, int w, int h, char *label) : Fl_MGLView(x,y,w,h,label)
+{
+ if(!Parse) Parse = new mglParse;
+ Parse->AllowSetSize(true);
+ ArgBuf = 0; NArgs = ArgCur = 0;
+ script = script_pre = 0; par = this;
+ next = udav_next; delay = udav_delay;
+ prev = udav_prev; reload = udav_reload;
+#ifdef WIN32
+// setlocale(LC_TYPE,"russian_Russia.CP1251");
+ char *path;
+ get_doc_dir(path);
+ if(!graph->LoadFont("STIX",path && path[0] ? path : ".")) graph->RestoreFont();
+ free(path);
+#endif
+}
+//-----------------------------------------------------------------------------
+Fl_MGL::~Fl_MGL() { clear_scripts(); if(ArgBuf) delete []ArgBuf; }
+//-----------------------------------------------------------------------------
+void Fl_MGL::clear_scripts()
+{
+ if(script) free(script);
+ if(script_pre) free(script_pre);
+}
+//-----------------------------------------------------------------------------
+void Fl_MGL::scripts(char *scr, char *pre)
+{ clear_scripts(); script=scr; script_pre=pre; }
+//-----------------------------------------------------------------------------
+int Fl_MGL::Draw(mglGraph *gr)
+{
+ Parse->Execute(gr,script_pre,udav_error);
+ Parse->Execute(gr,script,udav_error);
+ return 0;
+}
+//-----------------------------------------------------------------------------
+void Fl_MGL::update()
+{
+ // NOTE: hint for old style View(). May be I should remove it!
+ if(!script || !strstr(script,"rotate")) mgl_rotate(FMGL->get_graph(),0,0,0);
+
+ Fl_MGLView::update();
+
+ mglVar *v = Parse->Self()->DataList;
+ while(v)
+ {
+ if(v->o) ((TableWindow *)v->o)->update(v);
+ v = v->next;
+ }
+}
+//-----------------------------------------------------------------------------
+void add_suffix(char *fname, const char *ext)
+{
+ long n=strlen(fname);
+ if(n>4 && fname[n-4]=='.')
+ { fname[n-3]=ext[0]; fname[n-2]=ext[1]; fname[n-1]=ext[2]; }
+ else { strcat(fname,"."); strcat(fname,ext); }
+
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/option.cpp b/mgllab/option.cpp
new file mode 100644
index 0000000..d107abd
--- /dev/null
+++ b/mgllab/option.cpp
@@ -0,0 +1,439 @@
+/* option.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <string.h>
+#include <FL/Fl.H>
+#include <FL/Fl_Window.H>
+#include <FL/Fl_Box.H>
+#include <FL/Fl_Input.H>
+#include <FL/Fl_Check_Button.H>
+#include <FL/Fl_Round_Button.H>
+#include <FL/Fl_Button.H>
+#include <FL/Fl_Return_Button.H>
+#include <FL/Fl_Tabs.H>
+#include <FL/Fl_Group.H>
+#include <FL/Fl_Choice.H>
+#include <FL/Fl_Spinner.H>
+#include <FL/Fl_Output.H>
+#include <FL/Fl_Text_Buffer.H>
+#include "udav.h"
+//-----------------------------------------------------------------------------
+extern Fl_Menu_Item colors[];
+extern Fl_Text_Buffer *textbuf;
+//-----------------------------------------------------------------------------
+struct OptionDlg
+{
+public:
+ Fl_Window* wnd;
+ int OK;
+ char result[256];
+ OptionDlg() { memset(this,0,sizeof(OptionDlg)); create_dlg(); };
+ ~OptionDlg() { delete wnd; };
+ void FillResult();
+protected:
+ Fl_Input *xmin, *xmax, *ymin, *ymax, *zmin, *zmax, *cmin, *cmax;
+ Fl_Input *alpha, *amb, *mesh, *font;
+ Fl_Choice *cut;
+
+ void create_dlg();
+} option_dlg;
+//-----------------------------------------------------------------------------
+struct StyleDlg
+{
+public:
+friend void style_set_cb(Fl_Widget *, void *v);
+friend void style_rdo_cb(Fl_Widget *, void *v);
+friend void font_cb(Fl_Widget *, void *v);
+friend void line_cb(Fl_Widget *, void *v);
+friend void face_cb(Fl_Widget *, void *v);
+ Fl_Window* wnd;
+ int OK;
+ char result[16];
+ StyleDlg() { memset(this,0,sizeof(StyleDlg)); create_dlg(); };
+ ~StyleDlg() { delete wnd; };
+protected:
+ Fl_Tabs *tab;
+ Fl_Group *ltab, *stab, *ftab;
+ Fl_Choice *cl, *cf, *c[7], *ae, *as;
+ Fl_Choice *dash, *mark, *dir, *text;
+ Fl_Spinner *lw;
+ Fl_Output *res;
+ Fl_Check_Button *d, *w, *sc, *rm, *it, *bf, *gt;
+ Fl_Round_Button *rl, *rc, *rr;
+
+ void create_dlg();
+} style_dlg;
+//-----------------------------------------------------------------------------
+void option_dlg_cb(Fl_Widget *, void *v)
+{ option_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void style_dlg_cb(Fl_Widget *, void *v)
+{ style_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void OptionDlg::create_dlg()
+{
+ Fl_Button *o;
+ wnd = new Fl_Window(490, 180, gettext("Command options"));
+ new Fl_Box(10, 15, 75, 25, gettext("X-Range"));
+ xmin = new Fl_Input(85, 15, 75, 25);
+ xmin->tooltip(gettext("Minimal value of X for cutting or for coordinate filling"));
+ xmax = new Fl_Input(165, 15, 75, 25);
+ xmax->tooltip(gettext("Maximal value of X for cutting or for coordinate filling"));
+ new Fl_Box(245, 15, 75, 25, gettext("Y-Range"));
+ ymin = new Fl_Input(320, 15, 75, 25);
+ ymin->tooltip(gettext("Minimal value of Y for cutting or for coordinate filling"));
+ ymax = new Fl_Input(400, 15, 75, 25);
+ ymax->tooltip(gettext("Maximal value of Y for cutting or for coordinate filling"));
+ new Fl_Box(10, 45, 75, 25, gettext("Z-Range"));
+ zmin = new Fl_Input(85, 45, 75, 25);
+ zmin->tooltip(gettext("Minimal value of Z for cutting or for coordinate filling"));
+ zmax = new Fl_Input(165, 45, 75, 25);
+ zmax->tooltip(gettext("Maximal value of Z for cutting or for coordinate filling"));
+ new Fl_Box(245, 45, 75, 25, gettext("C-Range"));
+ cmin = new Fl_Input(320, 45, 75, 25);
+ cmin->tooltip(gettext("Low border for determining color or alpha"));
+ cmax = new Fl_Input(400, 45, 75, 25);
+ cmax->tooltip(gettext("Upper border for determining color or alpha"));
+ { Fl_Box *o = new Fl_Box(15, 75, 460, 5); o->box(FL_UP_BOX); }
+ alpha = new Fl_Input(25, 105, 75, 25, "Alpha"); alpha->align(FL_ALIGN_TOP);
+ alpha->tooltip(gettext("Alpha value (transparency) of surface or cloud"));
+ amb = new Fl_Input(110, 105, 75, 25, gettext("Ambient")); amb->align(FL_ALIGN_TOP);
+ amb->tooltip(gettext("Own brightness of the surface"));
+ mesh = new Fl_Input(195, 105, 75, 25, gettext("Mesh Num")); mesh->align(FL_ALIGN_TOP);
+ mesh->tooltip(gettext("Approximate number of mesh lines in plot"));
+ font = new Fl_Input(280, 105, 75, 25, gettext("Font Size")); font->align(FL_ALIGN_TOP);
+ font->tooltip(gettext("Act as default value for font size"));
+ cut = new Fl_Choice(365, 105, 75, 25, gettext("Cutting")); cut->align(FL_ALIGN_TOP);
+ cut->add(gettext("on")); cut->add(gettext("off"));
+ cut->tooltip(gettext("Set cutting off/on for particular plot"));
+
+ o = new Fl_Button(320, 145, 75, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o = new Fl_Return_Button(405, 145, 75, 25, gettext("OK")); o->callback(option_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void OptionDlg::FillResult()
+{
+ double x1=0,y1=0,z1=0,x2=0,y2=0,z2=0;
+ bool u1,v1,w1,u2,v2,w2;
+ char str[64];
+ result[0]=0;
+
+ u1 = xmin->value()[0]; if(u1) x1 = atof(xmin->value());
+ u2 = xmax->value()[0]; if(u2) x2 = atof(xmax->value());
+ v1 = ymin->value()[0]; if(v1) y1 = atof(ymin->value());
+ v2 = ymin->value()[0]; if(v2) y2 = atof(ymax->value());
+ w1 = zmin->value()[0]; if(w1) z1 = atof(zmin->value());
+ w2 = zmin->value()[0]; if(w2) z2 = atof(zmax->value());
+ if(u1 && u2) {sprintf(str,"; xrange %g %g",x1,x2); strcat(result,str);}
+ if(v1 && v2) {sprintf(str,"; yrange %g %g",y1,y2); strcat(result,str);}
+ if(w1 && w2) {sprintf(str,"; zrange %g %g",z1,z2); strcat(result,str);}
+
+ u1 = cmin->value()[0]; if(u1) x1 = atof(cmin->value());
+ u2 = cmax->value()[0]; if(u2) x2 = atof(cmax->value());
+ if(u1&&u2) {sprintf(str,"; crange %g %g",x1,x2); strcat(result,str);}
+
+ if(alpha->value()[0])
+ { sprintf(str,"; alpha %g",atof(alpha->value())); strcat(result,str);}
+ if(amb->value()[0])
+ { sprintf(str,"; ambient %g",atof(amb->value())); strcat(result,str);}
+ if(mesh->value()[0])
+ { sprintf(str,"; meshnum %g",atof(mesh->value()));strcat(result,str);}
+ if(font->value()[0])
+ { sprintf(str,"; fontsize '%g'",atof(font->value())); strcat(result,str);}
+ if(cut->value()>=0)
+ {sprintf(str,"; cut %s",cut->value()==0?"on":"off"); strcat(result,str);}
+}
+//-----------------------------------------------------------------------------
+void option_cb(Fl_Widget *, void *v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ OptionDlg *s = &option_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) // insert at the end of string
+ {
+ long i=e->editor->insert_position(), j=textbuf->line_end(i);
+ s->FillResult();
+ e->editor->insert_position(j);
+ e->editor->insert(s->result);
+ }
+}
+//-----------------------------------------------------------------------------
+void option_in_cb(Fl_Widget *, void *v)
+{
+ Fl_Input* e = (Fl_Input*)v;
+ OptionDlg *s = &option_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK)
+ {
+ s->FillResult();
+ e->value(s->result);
+ }
+}
+//-----------------------------------------------------------------------------
+Fl_Menu_Item arrows[] = {
+ {("none")}, //_
+ {("arrow")}, //A
+ {("back arrow")}, //V
+ {("stop")}, //I
+ {("size")}, //K
+ {("triangle")}, //T
+ {("square")}, //S
+ {("rhomb")}, //D
+ {("circle")}, //O
+ {0}};
+//-----------------------------------------------------------------------------
+Fl_Menu_Item dashing[] = {
+ {("solid")}, //-
+ {("dash")}, //|
+ {("dash dot")}, //j
+ {("small dash")}, //;
+ {("small dash dot")}, //i
+ {("dots")}, //:
+ {("none")}, //
+ {0}};
+//-----------------------------------------------------------------------------
+Fl_Menu_Item markers[] = {
+ {("none")}, //
+ {("circle")}, //o
+ {("cross")}, //+
+ {("skew cross")}, //x
+ {("square")}, //s
+ {("rhomb")}, //d
+ {("point")}, //.
+ {("triangle up")}, //^
+ {("triangle down")}, //v
+ {0}};
+//-----------------------------------------------------------------------------
+void style_set_cb(Fl_Widget *,void *)
+{
+ StyleDlg *s = &style_dlg;
+ Fl_Widget *t = s->tab->value();
+ const char *cols = " wbgrcmylenuqphkWBGRCMYLENUQPH";
+ char *r = s->result;
+ long i=0,j;
+ if(t==s->ltab) // line style
+ {
+ const char *aa = "_AVIKTSDO", *dd="-|j;i: ", *mm="#o+xsd.^v";
+ if(s->cl->value()>0) r[i++]=cols[s->cl->value()];
+ if(s->dash->value()>0) r[i++]=dd[s->dash->value()];
+ if(s->mark->value()>0) r[i++]=mm[s->mark->value()];
+ if(s->lw->value()>1 || s->lw->value()==0)
+ r[i++] = '0'+int(0.1+s->lw->value());
+ if(s->as->value()>0)
+ { r[i++]=aa[s->ae->value()]; r[i++]=aa[s->as->value()]; }
+ else if(s->ae->value()>0) r[i++]=aa[s->ae->value()];
+ }
+ else if(t==s->stab) // surf style
+ {
+ for(j=0;j<7;j++)
+ {
+ if(s->c[j]->value()>0) r[i++]=cols[s->c[j]->value()];
+ else break;
+ }
+ if(s->d->value()) r[i++] = 'd';
+ if(s->w->value()) r[i++] = '#';
+ if(s->dir->value()>=0) r[i++] = 'x'+s->dir->value();
+ if(s->text->value()>0) r[i++] = s->text->value()==1 ? 't':'T';
+ }
+ else if(t==s->ftab) // text style
+ {
+ if(s->rm->value()) r[i++] = 'r';
+ if(s->sc->value()) r[i++] = 's';
+ if(s->it->value()) r[i++] = 'i';
+ if(s->bf->value()) r[i++] = 'b';
+ if(s->gt->value() && !s->rm->value()) r[i++] = 'g';
+ if(s->rl->value()) r[i++] = 'L';
+ else if(s->rc->value()) r[i++] = 'C';
+ else if(s->rr->value()) r[i++] = 'R';
+ if(s->cf->value()>0)
+ { r[i++]=':'; r[i++]=cols[s->cf->value()]; }
+ }
+ r[i]=0;
+ s->res->value(r);
+}
+//-----------------------------------------------------------------------------
+void style_rdo_cb(Fl_Widget *,void *v)
+{
+ StyleDlg *s = &style_dlg;
+ s->rl->value(0); s->rc->value(0); s->rr->value(0);
+ ((Fl_Round_Button *)v)->value(1);
+ style_set_cb(0,0);
+}
+//-----------------------------------------------------------------------------
+void StyleDlg::create_dlg()
+{
+ wnd = new Fl_Window(295, 337, gettext("String with line/surf/text style"));
+ tab = new Fl_Tabs(0, 0, 295, 255); tab->callback(style_set_cb);
+ tab->box(UDAV_UP_BOX);
+
+ ltab = new Fl_Group(0, 25, 295, 230, gettext("Line style"));
+ as = new Fl_Choice(10, 50, 80, 25, gettext("Arrow at start"));
+ as->align(FL_ALIGN_TOP); as->copy(arrows); as->callback(style_set_cb);
+// as->tooltip(gettext("Type of arrow at first point of line or curve"));
+ dash = new Fl_Choice(110, 50, 80, 25, gettext("Dashing"));
+ dash->align(FL_ALIGN_TOP); dash->copy(dashing);dash->callback(style_set_cb);
+// dash->tooltip(gettext("Type dashing for line or curve"));
+ ae = new Fl_Choice(210, 50, 80, 25, gettext("Arrow at end"));
+ ae->align(FL_ALIGN_TOP); ae->copy(arrows); ae->callback(style_set_cb);
+// ae->tooltip(gettext("Type of arrow at last point of line or curve"));
+ cl = new Fl_Choice(110, 85, 80, 25, gettext("Color")); cl->copy(colors);
+ cl->callback(style_set_cb);
+ mark = new Fl_Choice(110, 120, 80, 25, gettext("Marks"));
+ mark->copy(markers); mark->callback(style_set_cb);
+// mark->tooltip(gettext("Type of marks at positions of data points"));
+ lw = new Fl_Spinner(110, 155, 80, 25, gettext("Line width"));
+ lw->range(0,9); lw->step(1); lw->callback(style_set_cb);
+// lw->tooltip(gettext("Relative width of line or curve"));
+ ltab->end();
+
+ stab = new Fl_Group(0, 25, 295, 230, gettext("Color scheme")); stab->hide();
+ c[0] = new Fl_Choice(15, 45, 75, 25, gettext("Color order"));
+ c[0]->align(FL_ALIGN_TOP); c[0]->copy(colors); c[0]->callback(style_set_cb);
+ c[1] = new Fl_Choice(15, 75, 75, 25); c[1]->copy(colors); c[1]->callback(style_set_cb);
+ c[2] = new Fl_Choice(15, 105, 75, 25); c[2]->copy(colors); c[2]->callback(style_set_cb);
+ c[3] = new Fl_Choice(15, 135, 75, 25); c[3]->copy(colors); c[3]->callback(style_set_cb);
+ c[4] = new Fl_Choice(15, 165, 75, 25); c[4]->copy(colors); c[4]->callback(style_set_cb);
+ c[5] = new Fl_Choice(15, 195, 75, 25); c[5]->copy(colors); c[5]->callback(style_set_cb);
+ c[6] = new Fl_Choice(15, 225, 75, 25); c[6]->copy(colors); c[6]->callback(style_set_cb);
+ d = new Fl_Check_Button(100, 45, 180, 25, gettext("Colors along coordinates"));
+// w->tooltip(gettext("Set face color proportional to its position"));
+ d->callback(style_set_cb);
+ w = new Fl_Check_Button(100, 75, 180, 25, gettext("Wire or mesh plot"));
+ w->callback(style_set_cb);
+// w->tooltip(gettext("Switch to draw wire isosurface or set to draw mesh on surface"));
+ dir = new Fl_Choice(210, 105, 75, 25, gettext("Axial direction"));
+ dir->add("x"); dir->add("y"); dir->add("z"); dir->callback(style_set_cb);
+ text = new Fl_Choice(210, 135, 75, 25, gettext("Text on contours"));
+// text->tooltip("Draw contour values near contour lines"));
+ text->add(gettext("none")); text->add(gettext("under"));
+ text->add(gettext("above")); text->callback(style_set_cb);
+ stab->end();
+
+ ftab = new Fl_Group(0, 25, 295, 230, gettext("Text style")); ftab->hide();
+ sc = new Fl_Check_Button(15, 40, 120, 25, gettext("Script font/style")); sc->callback(style_set_cb);
+ rm = new Fl_Check_Button(15, 70, 120, 25, gettext("Roman font")); rm->callback(style_set_cb);
+ gt = new Fl_Check_Button(15, 100, 120, 25, gettext("Gothic font")); gt->callback(style_set_cb);
+ it = new Fl_Check_Button(15, 130, 120, 25, gettext("Italic style")); it->callback(style_set_cb);
+ bf = new Fl_Check_Button(15, 160, 120, 25, gettext("Bold style")); bf->callback(style_set_cb);
+ cf = new Fl_Choice(200, 40, 80, 25, gettext("Text color")); cf->copy(colors);cf->callback(style_set_cb);
+ { Fl_Box* o = new Fl_Box(160, 90, 120, 90, gettext("Alignment"));
+ o->box(FL_DOWN_BOX); o->align(FL_ALIGN_TOP);}
+ rl = new Fl_Round_Button(170, 100, 100, 25, gettext("left")); rl->callback(style_rdo_cb,rl);
+ rc = new Fl_Round_Button(170, 125, 100, 25, gettext("at center")); rc->callback(style_rdo_cb,rc);
+ rr = new Fl_Round_Button(170, 150, 100, 25, gettext("right")); rr->callback(style_rdo_cb,rr);
+ ftab->end();
+
+ tab->end();
+ res = new Fl_Output(50, 265, 235, 25, gettext("Result"));
+// res->tooltip(gettext("Resulting string which will be used as argument of a command"));
+ Fl_Button *o;
+ o = new Fl_Button(125, 300, 75, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o = new Fl_Return_Button(210, 300, 75, 25, gettext("OK")); o->callback(style_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void style_cb(Fl_Widget *, void *v)
+{
+ ScriptWindow* e = (ScriptWindow*)v;
+ StyleDlg *s = &style_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) // replace current selection
+ {
+ int p,q;
+ char str[20];
+ sprintf(str,"'%s'",s->result);
+ textbuf->selection_position(&p, &q);
+ if(p==q) e->editor->insert(str);
+ else textbuf->replace_selection(str);
+ }
+}
+//-----------------------------------------------------------------------------
+void style_in_cb(Fl_Widget *, void *v)
+{
+ Fl_Input* e = (Fl_Input*)v;
+ StyleDlg *s = &style_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) e->value(s->result);
+}
+//-----------------------------------------------------------------------------
+void font_cb(Fl_Widget *, void *v)
+{
+ Fl_Input* e = (Fl_Input *)v;
+ StyleDlg *s = &style_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->tab->value(s->ftab);
+ s->ltab->deactivate();
+ s->stab->deactivate();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) // replace current selection
+ e->value(s->result);
+ s->ltab->activate();
+ s->stab->activate();
+}
+//-----------------------------------------------------------------------------
+void line_cb(Fl_Widget *, void *v)
+{
+ Fl_Input* e = (Fl_Input *)v;
+ StyleDlg *s = &style_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->tab->value(s->ltab);
+ s->ftab->deactivate();
+ s->stab->deactivate();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) // replace current selection
+ e->value(s->result);
+ s->ftab->activate();
+ s->stab->activate();
+}
+//-----------------------------------------------------------------------------
+void face_cb(Fl_Widget *, void *v)
+{
+ Fl_Input* e = (Fl_Input *)v;
+ StyleDlg *s = &style_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->tab->value(s->stab);
+ s->ltab->deactivate();
+ s->ftab->deactivate();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) // replace current selection
+ e->value(s->result);
+ s->ltab->activate();
+ s->ftab->activate();
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/setup.cpp b/mgllab/setup.cpp
new file mode 100644
index 0000000..4de08e9
--- /dev/null
+++ b/mgllab/setup.cpp
@@ -0,0 +1,424 @@
+/* setup.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <mgl/mgl.h>
+#include <string.h>
+#include <FL/Fl_Tabs.H>
+#include <FL/Fl_Round_Button.H>
+#include <FL/Fl_Multiline_Input.H>
+#include <FL/Fl_Spinner.H>
+#include <locale.h>
+#include "udav.h"
+//-----------------------------------------------------------------------------
+extern int auto_exec, plastic_scheme, internal_font;
+extern Fl_Preferences pref;
+void get_doc_dir(char *&docdir);
+//-----------------------------------------------------------------------------
+void setup_dlg_cb(Fl_Widget *, void *v)
+{ SetupDlg *s = (SetupDlg *)v; s->OK = true; s->wnd->hide(); }
+//-----------------------------------------------------------------------------
+void setup_sav_cb(Fl_Widget *, void *v)
+{
+ SetupDlg *e = (SetupDlg *)v;
+ char *buf = e->ToScript();
+ const char *fname;
+ if(buf[0])
+ {
+ fname = e->templ->value();
+ if(fname[0]==0) fname = "template.mgl";
+ FILE *fp = fopen(fname,"w");
+ fputs(buf,fp);
+ fclose(fp);
+ }
+ free(buf);
+}
+//-----------------------------------------------------------------------------
+void close_dlg_cb(Fl_Widget *, void *v)
+{ ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void SetupDlg::CreateGen()
+{
+ xmin = new Fl_Input(105, 50, 75, 25); xmax = new Fl_Input(105, 80, 75, 25);
+ ymin = new Fl_Input(190, 50, 75, 25); ymax = new Fl_Input(190, 80, 75, 25);
+ zmin = new Fl_Input(275, 50, 75, 25); zmax = new Fl_Input(275, 80, 75, 25);
+ cmin = new Fl_Input(360, 50, 75, 25); cmax = new Fl_Input(360, 80, 75, 25);
+
+ xorg = new Fl_Input(105, 110, 75, 25);
+ yorg = new Fl_Input(190, 110, 75, 25);
+ zorg = new Fl_Input(275, 110, 75, 25);
+ xlab = new Fl_Input(105, 140, 75, 25);
+ ylab = new Fl_Input(190, 140, 75, 25);
+ zlab = new Fl_Input(275, 140, 75, 25);
+
+ xpos = new Fl_Choice(105, 170, 75, 25); xpos->add(gettext("at minumum"));
+ xpos->add("at center"); xpos->add(gettext("at maxumum")); xpos->value(1);
+ ypos = new Fl_Choice(190, 170, 75, 25); ypos->add(gettext("at minumum"));
+ ypos->add("at center"); ypos->add(gettext("at maxumum")); ypos->value(1);
+ zpos = new Fl_Choice(275, 170, 75, 25); zpos->add(gettext("at minumum"));
+ zpos->add("at center"); zpos->add(gettext("at maxumum")); zpos->value(1);
+ xtik = new Fl_Input(105, 200, 75, 25);
+ ytik = new Fl_Input(190, 200, 75, 25);
+ ztik = new Fl_Input(275, 200, 75, 25);
+ xsub = new Fl_Input(105, 230, 75, 25);
+ ysub = new Fl_Input(190, 230, 75, 25);
+ zsub = new Fl_Input(275, 230, 75, 25);
+
+ { Fl_Box* o = new Fl_Box(10, 260, 470, 5); o->box(FL_DOWN_BOX); }
+ alphad = new Fl_Input(20, 285, 75, 25, gettext("AlphaDef")); alphad->align(FL_ALIGN_TOP);
+ ambient = new Fl_Input(105, 285, 75, 25, gettext("Ambient")); ambient->align(FL_ALIGN_TOP);
+ basew = new Fl_Input(190, 285, 75, 25, gettext("Base Width")); basew->align(FL_ALIGN_TOP);
+ mesh = new Fl_Input(275, 285, 75, 25, gettext("Mesh Num")); mesh->align(FL_ALIGN_TOP);
+ axial = new Fl_Choice(360, 285, 75, 25, gettext("Axial Dir")); axial->align(FL_ALIGN_TOP);
+ axial->add("x"); axial->add("y"); axial->add("z");
+ font = new Fl_Input(20, 330, 50, 25, gettext("Font")); font->align(FL_ALIGN_TOP);
+ { Fl_Button* o = new Fl_Button(70, 330, 25, 25, ".."); o->callback(font_cb, font);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX); }
+ size = new Fl_Input(105, 330, 75, 25, gettext("Font Size")); size->align(FL_ALIGN_TOP);
+ alpha = new Fl_Check_Button(190, 330, 75, 25, gettext("Alpha on"));
+ light = new Fl_Check_Button(275, 330, 75, 25, gettext("Light on"));
+ rotate = new Fl_Check_Button(360, 330, 90, 25, gettext("Rotate text"));
+}
+//-----------------------------------------------------------------------------
+void SetupDlg::CreateLid()
+{
+ const char *str[10]={"0:", "1:", "2:", "3:", "4:", "5:", "6:", "7:", "8:", "9:"};
+ int h;
+ for(long i=0;i<10;i++)
+ {
+ h = 55 + 30*i;
+ new Fl_Box(10, h, 25, 25, str[i]);
+ lid[i] = new Fl_Check_Button(35, h, 40, 25, gettext("on"));
+ xid[i] = new Fl_Input(85, h, 75, 25);
+ yid[i] = new Fl_Input(165, h, 75, 25);
+ zid[i] = new Fl_Input(245, h, 75, 25);
+ cid[i] = new Fl_Choice(325, h, 75, 25);
+ cid[i]->copy(colors);
+ bid[i] = new Fl_Input(405, h, 75, 25);
+ }
+}
+//-----------------------------------------------------------------------------
+void SetupDlg::CreateDlg()
+{
+ OK = false;
+ wnd = new Fl_Window(490, 406, gettext("Setup graphics"));
+ Fl_Tabs* t = new Fl_Tabs(0, 0, 490, 360); t->box(UDAV_UP_BOX);
+
+ Fl_Group *g = new Fl_Group(0, 25, 485, 330, gettext("General"));
+ new Fl_Box(105, 30, 75, 20, gettext("X axis"));
+ new Fl_Box(190, 30, 75, 20, gettext("Y axis"));
+ new Fl_Box(275, 30, 75, 20, gettext("Z axis"));
+ new Fl_Box(360, 30, 75, 20, gettext("Color"));
+
+ new Fl_Box(25, 50, 75, 25, gettext("Minimal"));
+ new Fl_Box(25, 80, 75, 25, gettext("Maximal"));
+ new Fl_Box(25, 110, 75, 25, gettext("Origin"));
+ new Fl_Box(25, 140, 75, 25, gettext("Label"));
+ new Fl_Box(25, 170, 75, 25, gettext("Position"));
+ new Fl_Box(25, 200, 75, 25, gettext("Ticks"));
+ new Fl_Box(25, 230, 75, 25, gettext("SubTicks"));
+ CreateGen();
+ g->end();
+
+ g = new Fl_Group(0, 25, 485, 330, gettext("Light")); g->hide();
+ new Fl_Box(10, 30, 25, 25, gettext("ID"));
+ new Fl_Box(40, 30, 40, 25, gettext("State"));
+ new Fl_Box(85, 30, 75, 25, gettext("X position"));
+ new Fl_Box(165, 30, 75, 25, gettext("Y position"));
+ new Fl_Box(245, 30, 75, 25, gettext("Z position"));
+ new Fl_Box(325, 30, 75, 25, gettext("Color"));
+ new Fl_Box(405, 30, 75, 25, gettext("Brightness"));
+ CreateLid();
+ g->end();
+
+ g = new Fl_Group(0, 25, 485, 330, gettext("Setup code")); g->hide();
+ code = new Fl_Help_View(0, 25, 485, 330);
+ g->end();
+
+ t->end(); //Fl_Group::current()->resizable(t);
+ Fl_Button *o;
+ templ = new Fl_Input(120, 370, 110, 25, gettext("Template name"));
+ templ->value("template.mgl");
+ o = new Fl_Button(230, 370, 80, 25, gettext("Save")); o->callback(setup_sav_cb, wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Save settings to file template.mgl.\nYou may use it later by 'call template.mgl'"));
+
+ o = new Fl_Button(315, 370, 80, 25, gettext("Cancel")); o->callback(close_dlg_cb, wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o = new Fl_Return_Button(400, 370, 80, 25, gettext("OK")); o->callback(setup_dlg_cb, this);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+char *SetupDlg::ToScript()
+{
+ long i;
+ double x1=0,y1=0,z1=0,x2=0,y2=0,z2=0;
+ bool u1,v1,w1,u2,v2,w2;
+ const char *cols = " wbgrcmylenuqphkWBGRCMYLENUQPH";
+ char *buf = (char *)malloc(1024*sizeof(char)), str[128];
+ long num = 1024, cur = 0;
+ buf[0]=0;
+ if(!OK) return buf;
+
+ for(i=0;i<10;i++) // set light sources
+ {
+//fl_message("before %d lid:%d xid:%s yid:%s zid:%s",i,lid[i]->value(), xid[i]->value(),yid[i]->value(),zid[i]->value());
+ if(!lid[i]->value()) continue;
+ if(!xid[i]->value()[0] || !yid[i]->value()[0] || !zid[i]->value()[0]) continue;
+ x1=atof(xid[i]->value()); y1=atof(yid[i]->value()); z1=atof(zid[i]->value());
+ if(!bid[i]->value()[0])
+ cur += sprintf(str,"light %ld %g %g %g '%c'\n",i,x1,y1,z1,
+ cols[cid[i]->value()]);
+ else
+ cur += sprintf(str,"light %ld %g %g %g '%c' %g\n",i,x1,y1,z1,
+ cols[cid[i]->value()],atof(bid[i]->value()));
+ strcat(buf,str);
+ }
+ u1 = xmin->value()[0]; if(u1) x1 = atof(xmin->value());
+ u2 = xmax->value()[0]; if(u2) x2 = atof(xmax->value());
+ v1 = ymin->value()[0]; if(v1) y1 = atof(ymin->value());
+ v2 = ymin->value()[0]; if(v2) y2 = atof(ymax->value());
+ w1 = zmin->value()[0]; if(w1) z1 = atof(zmin->value());
+ w2 = zmin->value()[0]; if(w2) z2 = atof(zmax->value());
+ if(u1&&v1&&w1&&u2&&v2&&w2)
+ {
+ cur+=sprintf(str,"axis %g %g %g %g %g %g\n",x1,y1,z1,x2,y2,z2);
+ strcat(buf,str);
+ }
+ else
+ {
+ if(u1 && u2) {cur+=sprintf(str,"xrange %g %g\n",x1,x2); strcat(buf,str);}
+ if(v1 && v2) {cur+=sprintf(str,"yrange %g %g\n",y1,y2); strcat(buf,str);}
+ if(w1 && w2) {cur+=sprintf(str,"zrange %g %g\n",z1,z2); strcat(buf,str);}
+ }
+ u1 = cmin->value()[0]; if(u1) x1 = atof(cmin->value());
+ u2 = cmax->value()[0]; if(u2) x2 = atof(cmax->value());
+ if(u1&&u2) {cur+=sprintf(str,"crange %g %g\n",x1,x2); strcat(buf,str);}
+ if(cur>num-256) { num+=512; buf = (char *)realloc(buf,num*sizeof(char)); }
+
+ u1 = xorg->value()[0]; if(u1) x1 = atof(xorg->value());
+ v1 = yorg->value()[0]; if(v1) y1 = atof(yorg->value());
+ w1 = zorg->value()[0]; if(w1) z1 = atof(zorg->value());
+ if(u1&&v1&&w1) {sprintf(str,"origin %g %g %g\n",x1,y1,z1); strcat(buf,str);}
+
+ u1 = xtik->value()[0]; if(u1) x1 = atof(xtik->value());
+ u2 = xsub->value()[0]; if(u2) x2 = atoi(xsub->value());
+ v1 = ytik->value()[0]; if(v1) y1 = atof(ytik->value());
+ v2 = ysub->value()[0]; if(v2) y2 = atoi(ysub->value());
+ w1 = ztik->value()[0]; if(w1) z1 = atof(ztik->value());
+ w2 = zsub->value()[0]; if(w2) z2 = atoi(zsub->value());
+ if(u1 && u2) {cur+=sprintf(str,"xtick %g %g\n",x1,x2); strcat(buf,str);}
+ if(v1 && v2) {cur+=sprintf(str,"ytick %g %g\n",y1,y2); strcat(buf,str);}
+ if(w1 && w2) {cur+=sprintf(str,"ztick %g %g\n",z1,z2); strcat(buf,str);}
+ if(u1 && !u2) {cur+=sprintf(str,"xtick %g\n",x1); strcat(buf,str);}
+ if(v1 && !v2) {cur+=sprintf(str,"ytick %g\n",y1); strcat(buf,str);}
+ if(w1 && !w2) {cur+=sprintf(str,"ztick %g\n",z1); strcat(buf,str);}
+
+ if(xlab->value()[0])
+ {
+ cur+=sprintf(str,"xlabel '%s' %d\n",xlab->value(), xpos->value()-1);
+ strcat(buf,str);
+ }
+ if(ylab->value()[0])
+ {
+ cur+=sprintf(str,"ylabel '%s' %d\n",ylab->value(), ypos->value()-1);
+ strcat(buf,str);
+ }
+ if(zlab->value()[0])
+ {
+ cur+=sprintf(str,"zlabel '%s' %d\n",zlab->value(), zpos->value()-1);
+ strcat(buf,str);
+ }
+ if(alphad->value()[0])
+ {
+ cur+=sprintf(str,"alphadef %g\n",atof(alphad->value()));
+ strcat(buf,str);
+ }
+ if(ambient->value()[0])
+ {
+ cur+=sprintf(str,"ambient %g\n",atof(ambient->value()));
+ strcat(buf,str);
+ }
+
+ if(basew->value()[0])
+ {
+ cur+=sprintf(str,"baselinewidth %g\n",atof(basew->value()));
+ strcat(buf,str);
+ }
+ if(mesh->value()[0])
+ {
+ cur+=sprintf(str,"meshnum %g\n",atof(mesh->value()));
+ strcat(buf,str);
+ }
+ if(axial->value()>=0)
+ {
+ cur+=sprintf(str,"axialdir '%c'\n",'x'+axial->value());
+ strcat(buf,str);
+ }
+
+ if(font->value()[0])
+ {
+ cur+=sprintf(str,"font '%s'",font->value());
+ strcat(buf,str);
+ if(size->value()) cur+=sprintf(str," %g\n",atof(size->value()));
+ else cur+=sprintf(str,"\n");
+ strcat(buf,str);
+ }
+ if(rotate->value()) {cur+=sprintf(str,"rotatetext on\n"); strcat(buf,str);}
+
+ if(alpha->value()) {cur+=sprintf(str,"alpha on\n"); strcat(buf,str);}
+ if(light->value()) {cur+=sprintf(str,"light on\n"); strcat(buf,str);}
+
+ code->value(buf);
+ return buf;
+}
+//-----------------------------------------------------------------------------
+void setup_cb(Fl_Widget *, void *d)
+{
+ if(d==0) return;
+ SetupDlg *s = ((ScriptWindow *)d)->setup_dlg;
+ s->OK = false;
+ s->wnd->set_modal();
+ s->wnd->show();
+ while(s->wnd->shown()) Fl::wait();
+ if(s->OK) ((ScriptWindow *)d)->graph->update();
+}
+//-----------------------------------------------------------------------------
+Fl_Menu_Item colors[] = {
+ {"-----"}, //
+ {("white"), 0,0,0,0,0,0,0, fl_rgb_color(0,0,0)}, //w
+ {("blue"), 0,0,0,0,0,0,0, fl_rgb_color(0,0,255)}, //b
+ {("lime"), 0,0,0,0,0,0,0, fl_rgb_color(0,255,0)}, //g
+ {("red"), 0,0,0,0,0,0,0, fl_rgb_color(255,0,0)}, //r
+ {("cyan"), 0,0,0,0,0,0,0, fl_rgb_color(0,255,255)}, //c
+ {("magenta"), 0,0,0,0,0,0,0, fl_rgb_color(255,0,255)}, //m
+ {("yellow"), 0,0,0,0,0,0,0, fl_rgb_color(255,255,0)}, //y
+ {("springgreen"), 0,0,0,0,0,0,0, fl_rgb_color(0,255,127)},//l
+ {("lawngreen"), 0,0,0,0,0,0,0, fl_rgb_color(127,255,0)}, //e
+ {("skyblue"), 0,0,0,0,0,0,0, fl_rgb_color(0,127,255)}, //n
+ {("blueviolet"), 0,0,0,0,0,0,0, fl_rgb_color(127,0,255)}, //u
+ {("orange"), 0,0,0,0,0,0,0, fl_rgb_color(255,127,0)}, //q
+ {("deeppink"), 0,0,0,0,0,0,0, fl_rgb_color(255,0,127)}, //p
+ {("gray"), 0,0,0,0,0,0,0, fl_rgb_color(127,127,127)}, //h
+
+ {("black"), 0,0,0,0,0,0,0, fl_rgb_color(0,0,0)}, //k
+ {("lightgray"), 0,0,0,0,0,0,0, fl_rgb_color(179,179,179)}, //W
+ {("navy"), 0,0,0,0,0,0,0, fl_rgb_color(0,0,127)}, //B
+ {("green"), 0,0,0,0,0,0,0, fl_rgb_color(0,127,0)}, //G
+ {("maroon"), 0,0,0,0,0,0,0, fl_rgb_color(127,0,0)}, //R
+ {("teal"), 0,0,0,0,0,0,0, fl_rgb_color(0,127,127)}, //C
+ {("purple"), 0,0,0,0,0,0,0, fl_rgb_color(127,0,127)}, //M
+ {("olive"), 0,0,0,0,0,0,0, fl_rgb_color(127,127,0)}, //Y
+ {("seagreen"), 0,0,0,0,0,0,0, fl_rgb_color(0,127,77)}, //L
+ {("darklawn"), 0,0,0,0,0,0,0, fl_rgb_color(77,127,0)}, //E
+ {("darkskyblue"), 0,0,0,0,0,0,0, fl_rgb_color(0,77,127)}, //N
+ {("indigo"), 0,0,0,0,0,0,0, fl_rgb_color(77,0,127)}, //U
+ {("brown"), 0,0,0,0,0,0,0, fl_rgb_color(127,77,0)}, //Q
+ {("darkpink"), 0,0,0,0,0,0,0, fl_rgb_color(127,0,77)}, //P
+ {("darkgray"), 0,0,0,0,0,0,0, fl_rgb_color(77,77,77)}, //H
+{0}};
+//-----------------------------------------------------------------------------
+struct PropDlg
+{
+ Fl_Window *wnd;
+ Fl_MGL *graph;
+
+ Fl_Input *path, *locale, *font, *fpath;
+ Fl_Check_Button *plast, *aexec, *ifont;
+ PropDlg() { memset(this,0,sizeof(PropDlg)); create_dlg(); };
+ ~PropDlg() { delete wnd; };
+ void create_dlg();
+ void finish();
+ void init();
+} prop_dlg;
+//-----------------------------------------------------------------------------
+void PropDlg::init()
+{
+ int a, p;
+ char *buf;
+ pref.get("plastic_scheme",p,1); plast->value(p);
+ pref.get("auto_exec",a,1); aexec->value(a);
+ pref.get("internal_font",a,0); ifont->value(a);
+ get_doc_dir(buf); path->value(buf); free(buf);
+ pref.get("font_dir",buf,""); fpath->value(buf); free(buf);
+ pref.get("font_name",buf,""); font->value(buf); free(buf);
+ pref.get("locale",buf,"ru_RU.cp1251"); locale->value(buf); free(buf);
+}
+//-----------------------------------------------------------------------------
+void PropDlg::finish()
+{
+ int a, p;
+ p = plast->value();
+ if(p!=plastic_scheme)
+ {
+ plastic_scheme = p;
+ pref.set("plastic_scheme",p);
+ Fl::scheme(p?"plastic":"none");
+ }
+ a = aexec->value();
+ if(a!=auto_exec)
+ {
+ auto_exec = a;
+ pref.set("auto_exec",a);
+ }
+ a = ifont->value();
+ if(a!=internal_font)
+ {
+ internal_font = a;
+ pref.set("internal_font",a);
+ }
+ if(path->value()[0]) pref.set("help_dir",path->value());
+ if(locale->value()[0])
+ {
+ pref.set("locale", locale->value());
+ setlocale(LC_CTYPE, locale->value());
+ }
+ pref.set("font_dir",fpath->value());
+ pref.set("font_name",font->value());
+ if(graph) mgl_load_font(graph->FMGL->get_graph(), font->value(), fpath->value());
+}
+//-----------------------------------------------------------------------------
+void prop_dlg_cb(Fl_Widget *, void *v)
+{ prop_dlg.finish(); ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void PropDlg::create_dlg()
+{
+ wnd = new Fl_Double_Window(320, 300, gettext("UDAV settings"));
+ path = new Fl_Input(10, 25, 305, 25, gettext("Path for help files")); path->align(FL_ALIGN_TOP_LEFT);
+
+ font = new Fl_Input(10, 75, 305, 25, gettext("Font typeface")); font->align(FL_ALIGN_TOP_LEFT);
+ fpath = new Fl_Input(10, 125, 305, 25, gettext("Path for font files")); fpath->align(FL_ALIGN_TOP_LEFT);
+ locale = new Fl_Input(10, 175, 305, 25, gettext("Select locale")); locale->align(FL_ALIGN_TOP_LEFT);
+
+ plast = new Fl_Check_Button(10, 210, 210, 25, gettext("Use plastic scheme"));
+ aexec = new Fl_Check_Button(10, 240, 210, 25, gettext("Execute after script loading"));
+ ifont = new Fl_Check_Button(10, 270, 210, 25, gettext("Use only internal font"));
+
+ Fl_Button *o;
+ o = new Fl_Button(240, 210, 75, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o = new Fl_Return_Button(240, 240, 75, 25, gettext("OK")); o->callback(prop_dlg_cb,wnd);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void settings_cb(Fl_Widget *, void *v)
+{
+ PropDlg *s = &prop_dlg;
+ s->graph = ((ScriptWindow *)v)->graph;
+ s->init();
+ s->wnd->set_modal();
+ s->wnd->show();
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/table.cpp b/mgllab/table.cpp
new file mode 100644
index 0000000..36b90ee
--- /dev/null
+++ b/mgllab/table.cpp
@@ -0,0 +1,875 @@
+/* table.cpp is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#include <FL/Fl_Spinner.H>
+#include <FL/Fl_Output.H>
+#include <FL/Fl_Float_Input.H>
+#include <FL/Fl_Value_Input.H>
+#include <FL/Fl_Round_Button.H>
+#include "udav.h"
+//-----------------------------------------------------------------------------
+void addto_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ const char *s = fl_input(gettext("Enter number for addition to data values"),0);
+ if(s) { mgl_data_add_num(e->var, atof(s)); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void subto_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ const char *s = fl_input(gettext("Enter number for subtraction from data values"),0);
+ if(s) { mgl_data_sub_num(e->var, atof(s)); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void multo_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ const char *s = fl_input(gettext("Enter number for multiplication of data values"),0);
+ if(s) { mgl_data_mul_num(e->var, atof(s)); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void divto_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ const char *s = fl_input(gettext("Enter number for division of data values"),0);
+ if(s) { mgl_data_div_num(e->var, atof(s)); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+struct XYZDlg
+{
+ Fl_Window *wnd;
+ bool OK;
+
+ Fl_Box *box;
+ Fl_Check_Button *ch;
+ Fl_Spinner *mx, *my, *mz;
+ XYZDlg() { memset(this,0,sizeof(XYZDlg)); create_dlg(); };
+ ~XYZDlg() { delete wnd; };
+ void create_dlg();
+} xyz_dlg;
+//-----------------------------------------------------------------------------
+void xyz_dlg_cb(Fl_Widget *, void *v)
+{ xyz_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void XYZDlg::create_dlg()
+{
+ wnd = new Fl_Double_Window(325, 125, gettext("Change data sizes"));
+ box = new Fl_Box(10, 10, 305, 40);
+ box->box(UDAV_THIN_UP_BOX);
+ box->align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+
+ mx = new Fl_Spinner(30, 55, 75, 25, "mx");
+ mx->tooltip(gettext("New size of data on 1st dimension (x-direction)"));
+ my = new Fl_Spinner(135, 55, 75, 25, "my");
+ my->tooltip(gettext("New size of data on 2nd dimension (y-direction)"));
+ mz = new Fl_Spinner(240, 55, 75, 25, "mz");
+ mz->tooltip(gettext("New size of data on 3d dimension (z-direction)"));
+ ch = new Fl_Check_Button(15, 90, 95, 25);
+
+ Fl_Button *o;
+ o = new Fl_Button(125, 90, 85, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Do nothing and close this window"));
+ o = new Fl_Return_Button(230, 90, 85, 25, gettext("Change"));o->callback(xyz_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Change (resize) data"));
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void new_dat_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ xyz_dlg.box->label(gettext("Specify new data size\nData will be zero filled"));
+ xyz_dlg.ch->label(gettext("not used")); xyz_dlg.OK = false;
+ xyz_dlg.wnd->set_modal(); xyz_dlg.wnd->show();
+ while(xyz_dlg.wnd->shown()) Fl::wait();
+ if(xyz_dlg.OK)
+ {
+ e->var->Create(int(xyz_dlg.mx->value()),
+ int(xyz_dlg.my->value()), int(xyz_dlg.mz->value()));
+ e->refresh();
+ }
+}
+//-----------------------------------------------------------------------------
+void resize_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ xyz_dlg.box->label(gettext("Specify new data size\nData will be interpolated"));
+ xyz_dlg.ch->label(gettext("not used")); xyz_dlg.OK = false;
+ xyz_dlg.wnd->set_modal(); xyz_dlg.wnd->show();
+ while(xyz_dlg.wnd->shown()) Fl::wait();
+ if(xyz_dlg.OK)
+ {
+ mglData d = e->var->Resize(int(xyz_dlg.mx->value()), int(xyz_dlg.my->value()), int(xyz_dlg.mz->value()));
+ mgl_data_set(e->var, &d);
+ e->refresh();
+ }
+}
+//-----------------------------------------------------------------------------
+void squeeze_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ xyz_dlg.box->label(gettext("Specify the skiping step\nEach m-th point will be skiped"));
+ xyz_dlg.ch->label(gettext("smoothed")); xyz_dlg.OK = false;
+ xyz_dlg.wnd->set_modal(); xyz_dlg.wnd->show();
+ while(xyz_dlg.wnd->shown()) Fl::wait();
+ if(xyz_dlg.OK)
+ {
+ e->var->Squeeze(int(xyz_dlg.mx->value()), int(xyz_dlg.my->value()),
+ int(xyz_dlg.mz->value()), xyz_dlg.ch->value());
+ e->refresh();
+ }
+}
+//-----------------------------------------------------------------------------
+struct ChngDlg
+{
+ Fl_Window *wnd;
+ bool OK;
+
+ Fl_Check_Button *dx, *dy, *dz;
+ Fl_Choice *kind, *type;
+ ChngDlg() { memset(this,0,sizeof(ChngDlg)); create_dlg(); };
+ ~ChngDlg() { delete wnd; };
+ void create_dlg();
+ void execute(mglData *d);
+} chng_dlg;
+//-----------------------------------------------------------------------------
+void chng_dlg_cb(Fl_Widget *, void *v)
+{ chng_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void ChngDlg::execute(mglData *d)
+{
+ char r[8]="3";
+ if(dx->value()) strcat(r,"x");
+ if(dy->value()) strcat(r,"y");
+ if(dz->value()) strcat(r,"z");
+ if(!r[0]) return;
+ if(type->value()==1) r[0] = '5';
+ if(type->value()==2) r[0] = ' ';
+ switch(kind->value())
+ {
+ case 0: d->Smooth(r); break;
+ case 1: d->CumSum(r); break;
+ case 2: d->Integral(r); break;
+ case 3: d->Diff(r); break;
+ case 4: d->Diff2(r); break;
+ case 5: d->Swap(r); break;
+ }
+}
+//-----------------------------------------------------------------------------
+void ChngDlg::create_dlg()
+{
+ Fl_Menu_Item k[]={{gettext("Smooth")}, {gettext("CumSum")}, { gettext("Integrate")},
+ { gettext("Difference")}, { gettext("Double diff.")}, { gettext("Swap parts")}, {0}};
+ Fl_Menu_Item t[]={{gettext("Linear *3")}, {gettext("Linear *5")}, {gettext("Parabolic *5")},{0}};
+ wnd = new Fl_Double_Window(165, 215, gettext("Change data"));
+ kind = new Fl_Choice(10, 25, 145, 25, gettext("Type of operation"));
+ kind->align(FL_ALIGN_TOP_LEFT); kind->copy(k);
+ dx = new Fl_Check_Button(10, 55, 140, 25, gettext("apply in x direction"));
+ dy = new Fl_Check_Button(10, 80, 140, 25, gettext("apply in y direction"));
+ dz = new Fl_Check_Button(10, 105, 140, 25, gettext("apply in z direction"));
+ type = new Fl_Choice(10, 145, 145, 25, gettext("Type of smoothing"));
+ type->align(FL_ALIGN_TOP_LEFT); type->copy(t);
+
+ Fl_Button *o;
+ o = new Fl_Button(10, 180, 65, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o = new Fl_Return_Button(90, 180, 65, 25, gettext("Do"));o->callback(chng_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void smooth_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ chng_dlg.kind->value(0);
+ chng_dlg.type->activate(); chng_dlg.OK = false;
+ chng_dlg.wnd->set_modal(); chng_dlg.wnd->show();
+ while(chng_dlg.wnd->shown()) Fl::wait();
+ if(chng_dlg.OK)
+ { chng_dlg.execute(e->var); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void cumsum_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ chng_dlg.kind->value(1);
+ chng_dlg.type->deactivate();chng_dlg.OK = false;
+ chng_dlg.wnd->set_modal(); chng_dlg.wnd->show();
+ while(chng_dlg.wnd->shown()) Fl::wait();
+ if(chng_dlg.OK)
+ { chng_dlg.execute(e->var); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void integr_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ chng_dlg.kind->value(2);
+ chng_dlg.type->deactivate();chng_dlg.OK = false;
+ chng_dlg.wnd->set_modal(); chng_dlg.wnd->show();
+ while(chng_dlg.wnd->shown()) Fl::wait();
+ if(chng_dlg.OK)
+ { chng_dlg.execute(e->var); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void diff_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ chng_dlg.kind->value(3);
+ chng_dlg.type->deactivate();chng_dlg.OK = false;
+ chng_dlg.wnd->set_modal(); chng_dlg.wnd->show();
+ while(chng_dlg.wnd->shown()) Fl::wait();
+ if(chng_dlg.OK)
+ { chng_dlg.execute(e->var); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void diff2_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ chng_dlg.kind->value(4);
+ chng_dlg.type->deactivate();chng_dlg.OK = false;
+ chng_dlg.wnd->set_modal(); chng_dlg.wnd->show();
+ while(chng_dlg.wnd->shown()) Fl::wait();
+ if(chng_dlg.OK)
+ { chng_dlg.execute(e->var); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void swap_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ chng_dlg.kind->value(5);
+ chng_dlg.type->deactivate();chng_dlg.OK = false;
+ chng_dlg.wnd->set_modal(); chng_dlg.wnd->show();
+ while(chng_dlg.wnd->shown()) Fl::wait();
+ if(chng_dlg.OK)
+ { chng_dlg.execute(e->var); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+struct NwdtDlg
+{
+ Fl_Window *wnd;
+ bool OK;
+
+ Fl_Check_Button *dx, *dy, *dz;
+ Fl_Choice *kind;
+ Fl_Input *name;
+ NwdtDlg() { memset(this,0,sizeof(NwdtDlg)); create_dlg(); };
+ ~NwdtDlg() { delete wnd; };
+ void create_dlg();
+} nwdt_dlg;
+//-----------------------------------------------------------------------------
+void nwdt_dlg_cb(Fl_Widget *, void *v)
+{ nwdt_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void NwdtDlg::create_dlg()
+{
+ Fl_Menu_Item k[]={{gettext("Summation of")}, {gettext("Maximum of")}, { gettext("Minimum of")}, {0}};
+ wnd = new Fl_Double_Window(165, 215, gettext("Extract data"));
+ kind = new Fl_Choice(10, 25, 145, 25, gettext("Type of operation"));
+ kind->align(FL_ALIGN_TOP_LEFT); kind->copy(k);
+ dx = new Fl_Check_Button(10, 55, 140, 25, gettext("apply in x direction"));
+ dy = new Fl_Check_Button(10, 80, 140, 25, gettext("apply in y direction"));
+ dz = new Fl_Check_Button(10, 105, 140, 25, gettext("apply in z direction"));
+ name = new Fl_Input(10, 145, 145, 25, gettext("Name for output"));
+ name->align(FL_ALIGN_TOP_LEFT);
+
+ Fl_Button *o;
+ o = new Fl_Button(10, 180, 65, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o = new Fl_Return_Button(90, 180, 65, 25, gettext("Do"));o->callback(chng_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void asum_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ nwdt_dlg.kind->value(0); nwdt_dlg.OK = false;
+ nwdt_dlg.wnd->set_modal(); nwdt_dlg.wnd->show();
+ while(nwdt_dlg.wnd->shown()) Fl::wait();
+ if(nwdt_dlg.OK)
+ {
+ char r[8]="";
+ if(nwdt_dlg.dx->value()) strcat(r,"x");
+ if(nwdt_dlg.dy->value()) strcat(r,"y");
+ if(nwdt_dlg.dz->value()) strcat(r,"z");
+ if(!r[0]) return;
+ if(!nwdt_dlg.name->value()[0] || !strcmp(nwdt_dlg.name->value(),e->label()))
+ fl_alert(gettext("Name for output variable should be differ from this name"));
+ else
+ {
+ mglData d = e->var->Sum(r);
+ mgl_data_set(Parse->AddVar(nwdt_dlg.name->value()), &d);
+ }
+ }
+}
+//-----------------------------------------------------------------------------
+void amax_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ nwdt_dlg.kind->value(0); nwdt_dlg.OK = false;
+ nwdt_dlg.wnd->set_modal(); nwdt_dlg.wnd->show();
+ while(nwdt_dlg.wnd->shown()) Fl::wait();
+ if(nwdt_dlg.OK)
+ {
+ char r[8]="";
+ if(nwdt_dlg.dx->value()) strcat(r,"x");
+ if(nwdt_dlg.dy->value()) strcat(r,"y");
+ if(nwdt_dlg.dz->value()) strcat(r,"z");
+ if(!r[0]) return;
+ if(!nwdt_dlg.name->value()[0] || !strcmp(nwdt_dlg.name->value(),e->label()))
+ fl_alert(gettext("Name for output variable should be differ from this name"));
+ else
+ {
+ mglData d = e->var->Max(r);
+ mgl_data_set(Parse->AddVar(nwdt_dlg.name->value()), &d);
+ }
+ }
+}
+//-----------------------------------------------------------------------------
+void amin_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ nwdt_dlg.kind->value(0); nwdt_dlg.OK = false;
+ nwdt_dlg.wnd->set_modal(); nwdt_dlg.wnd->show();
+ while(nwdt_dlg.wnd->shown()) Fl::wait();
+ if(nwdt_dlg.OK)
+ {
+ char r[8]="";
+ if(nwdt_dlg.dx->value()) strcat(r,"x");
+ if(nwdt_dlg.dy->value()) strcat(r,"y");
+ if(nwdt_dlg.dz->value()) strcat(r,"z");
+ if(!r[0]) return;
+ if(!nwdt_dlg.name->value()[0] || !strcmp(nwdt_dlg.name->value(), e->label()))
+ fl_alert(gettext("Name for output variable should be differ from this name"));
+ else
+ {
+ mglData d = e->var->Min(r);
+ mgl_data_set(Parse->AddVar(nwdt_dlg.name->value()), &d);
+ }
+ }
+}
+//-----------------------------------------------------------------------------
+void load_dat_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ char *newfile = fl_file_chooser(gettext("Load Data?"),
+ gettext("DAT Files (*.{dat,csv})\tAll Files (*)"), 0);
+ if(newfile != NULL)
+ { e->var->Read(newfile); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void save_dat_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ char *newfile = fl_file_chooser(gettext("Save Data?"),
+ gettext("DAT Files (*.{dat,csv})\tAll Files (*)"), 0);
+ if(newfile != NULL) e->var->Save(newfile);
+}
+//-----------------------------------------------------------------------------
+void exp_dat_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ const char *scheme, *newfile = fl_file_chooser(gettext("Export Data?"),
+ gettext("PNG Files (*.png)\tAll Files (*)"), 0);
+ if(newfile != NULL)
+ {
+ scheme = fl_input(gettext("Enter color scheme"),"BbcyrR");
+ if(scheme) e->var->Export(newfile,scheme);
+ }
+}
+//-----------------------------------------------------------------------------
+void imp_dat_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ const char *scheme, *newfile = fl_file_chooser(gettext("Import Data?"),
+ gettext("PNG Files (*.png)\tAll Files (*)"), 0);
+ if (newfile != NULL)
+ {
+ scheme = fl_input(gettext("Enter color scheme"),"BbcyrR");
+ if(scheme)
+ { e->var->Import(newfile,scheme); e->refresh(); }
+ }
+}
+//-----------------------------------------------------------------------------
+void list_dat_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ mglData *d = e->var;
+ if(d->nx*d->ny+d->ny>1020)
+ { fl_message(gettext("Too many numbers (>1000) on slice")); return; }
+ if(d->nz>1) fl_message(gettext("Only current slice will be inserted"));
+ char *list = new char[16384];
+ strcpy(list,"list\t");
+ register long i,j;
+ char s[32];
+ for(j=0;j<d->ny;j++)
+ {
+ for(i=0;i<d->nx;i++)
+ {
+ sprintf(s,"%g\t",d->a[i+d->nx*(j+e->get_slice()*d->ny)]);
+ strcat(list,s);
+ }
+ if(j<d->ny-1) strcat(list,"|\t");
+ }
+ textbuf->insert(0,list);
+ delete []list;
+}
+//-----------------------------------------------------------------------------
+void modify_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ const char *eq=fl_input(gettext("Enter formula for data modification\nHere x, y, z in range [0,1], u is data value"),0);
+ if (eq != NULL) { e->var->Modify(eq); e->refresh(); }
+}
+//-----------------------------------------------------------------------------
+void plot_dat_cb(Fl_Widget *, void *v);
+//-----------------------------------------------------------------------------
+struct NrmDlg
+{
+ Fl_Window *wnd;
+ bool OK;
+
+ Fl_Value_Input *min, *max;
+ Fl_Choice *dir;
+ Fl_Check_Button *sym;
+ NrmDlg() { memset(this,0,sizeof(NrmDlg)); create_dlg(); };
+ ~NrmDlg() { delete wnd; };
+ void create_dlg();
+} nrm_dlg;
+//-----------------------------------------------------------------------------
+void nrm_dlg_cb(Fl_Widget *, void *v)
+{ nrm_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void NrmDlg::create_dlg()
+{
+ Fl_Menu_Item k[]={{"x"}, {"y"}, { "z"}, {0}};
+ wnd = new Fl_Double_Window(135, 215);
+ min = new Fl_Value_Input(10, 25, 115, 25, gettext("Minimal value (v1)"));
+ min->align(FL_ALIGN_TOP_LEFT);
+ min->tooltip(gettext("Minimal value for resulting data values"));
+ max = new Fl_Value_Input(10, 70, 115, 25, gettext("Maximal value (v2)"));
+ max->align(FL_ALIGN_TOP_LEFT);
+ max->tooltip(gettext("Maximal value for resulting data values"));
+ dir = new Fl_Choice(10, 115, 115, 25, gettext("Direction"));
+ dir->align(FL_ALIGN_TOP_LEFT); dir->copy(k);
+ dir->tooltip(gettext("Direction along which data will be filled"));
+ sym = new Fl_Check_Button(10, 115, 115, 25, gettext("Symetrical range"));
+ sym->tooltip(gettext("Normalize in symmetrical range: -max(|v1|,|v2|) ... max(|v1|,|v2|)"));
+
+ Fl_Button *o;
+ o = new Fl_Button(25, 150, 85, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Do nothing and close this window"));
+ o = new Fl_Return_Button(25, 180, 85, 25, gettext("Change"));o->callback(nrm_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Change data values and close this window"));
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void fill_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ nrm_dlg.OK = false; nrm_dlg.wnd->label(gettext("Fill in range"));
+ nrm_dlg.dir->show(); nrm_dlg.sym->hide();
+ nrm_dlg.wnd->set_modal(); nrm_dlg.wnd->show();
+ while(nrm_dlg.wnd->shown()) Fl::wait();
+ if(nrm_dlg.OK)
+ {
+ char r='x';
+ if(nrm_dlg.dir->value()==1) r='y';
+ if(nrm_dlg.dir->value()==2) r='z';
+ e->var->Fill(nrm_dlg.min->value(),nrm_dlg.max->value(),r);
+ e->refresh();
+ }
+}
+//-----------------------------------------------------------------------------
+void normal_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ nrm_dlg.OK = false; nrm_dlg.wnd->label(gettext("Normalize data"));
+ nrm_dlg.dir->hide(); nrm_dlg.sym->show();
+ nrm_dlg.wnd->set_modal(); nrm_dlg.wnd->show();
+ while(nrm_dlg.wnd->shown()) Fl::wait();
+ if(nrm_dlg.OK)
+ {
+ e->var->Norm(nrm_dlg.min->value(), nrm_dlg.max->value(), nrm_dlg.sym->value());
+ e->refresh();
+ }
+}
+//-----------------------------------------------------------------------------
+struct CropDlg
+{
+ Fl_Window *wnd;
+ bool OK;
+
+ Fl_Input *x1,*x2, *y1,*y2, *z1,*z2;
+ CropDlg() { memset(this,0,sizeof(CropDlg)); create_dlg(); };
+ ~CropDlg() { delete wnd; };
+ void create_dlg();
+} crop_dlg;
+//-----------------------------------------------------------------------------
+void crop_dlg_cb(Fl_Widget *, void *v)
+{ crop_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void CropDlg::create_dlg()
+{
+ wnd = new Fl_Double_Window(230, 155, gettext("Crop data"));
+ x1 = new Fl_Input(45, 25, 80, 25, gettext("Lower bound")); x1->align(FL_ALIGN_TOP);
+ x2 = new Fl_Input(140, 25, 80, 25, gettext("Upper bound")); x2->align(FL_ALIGN_TOP);
+ y1 = new Fl_Input(45, 55, 80, 25);
+ y2 = new Fl_Input(140, 55, 80, 25);
+ z1 = new Fl_Input(45, 85, 80, 25);
+ z2 = new Fl_Input(140, 85, 80, 25);
+
+ new Fl_Box(15, 25, 25, 25, "X");
+ new Fl_Box(15, 55, 25, 25, "Y");
+ new Fl_Box(15, 85, 25, 25, "Z");
+ Fl_Button *o;
+ o = new Fl_Button(45, 120, 75, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Do nothing and close this window"));
+ o = new Fl_Return_Button(145, 120, 75, 25, gettext("Crop")); o->callback(crop_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Change data values and close this window"));
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void crop_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ crop_dlg.OK = false;
+ crop_dlg.wnd->set_modal(); crop_dlg.wnd->show();
+ while(crop_dlg.wnd->shown()) Fl::wait();
+ if(crop_dlg.OK)
+ {
+ int n1,n2;
+ n1 = 0; n2 = e->var->nx;
+ if(crop_dlg.x1->value()[0]) n1 = atoi(crop_dlg.x1->value());
+ if(crop_dlg.x2->value()[0]) n2 = atoi(crop_dlg.x2->value());
+ e->var->Crop(n1, n2, 'x');
+ n1 = 0; n2 = e->var->ny;
+ if(crop_dlg.y1->value()[0]) n1 = atoi(crop_dlg.y1->value());
+ if(crop_dlg.y2->value()[0]) n2 = atoi(crop_dlg.y2->value());
+ e->var->Crop(n1, n2, 'y');
+ n1 = 0; n2 = e->var->nz;
+ if(crop_dlg.z1->value()[0]) n1 = atoi(crop_dlg.z1->value());
+ if(crop_dlg.z2->value()[0]) n2 = atoi(crop_dlg.z2->value());
+ e->var->Crop(n1, n2, 'z');
+ e->refresh();
+ }
+}
+//-----------------------------------------------------------------------------
+struct TrspDlg
+{
+ Fl_Window *wnd;
+ bool OK;
+
+ Fl_Round_Button *xyz, *xzy, *yxz, *yzx, *zxy, *zyx;
+ TrspDlg() { memset(this,0,sizeof(TrspDlg)); create_dlg(); };
+ ~TrspDlg() { delete wnd; };
+ void create_dlg();
+} trsp_dlg;
+//-----------------------------------------------------------------------------
+void trsp_dlg_cb(Fl_Widget *, void *v)
+{ trsp_dlg.OK = true; ((Fl_Window *)v)->hide(); }
+//-----------------------------------------------------------------------------
+void trsp_rad_cb(Fl_Widget *w, void *v)
+{
+ TrspDlg* e = (TrspDlg*)v;
+ e->xyz->value(0); e->xzy->value(0);
+ e->yxz->value(0); e->yzx->value(0);
+ e->zxy->value(0); e->zyx->value(0);
+ ((Fl_Round_Button *)w)->setonly();
+}
+//-----------------------------------------------------------------------------
+void TrspDlg::create_dlg()
+{
+ wnd = new Fl_Double_Window(220, 170, gettext("Transpose data"));
+ Fl_Group *g = new Fl_Group(10, 30, 200, 90, gettext("Select new order of dimensions"));
+ g->box(FL_DOWN_BOX);
+ yxz = new Fl_Round_Button(20, 40, 75, 25, "y - x - z"); yxz->callback(trsp_rad_cb,this);
+ zyx = new Fl_Round_Button(20, 65, 75, 25, "z - y - x"); zyx->callback(trsp_rad_cb,this);
+ zxy = new Fl_Round_Button(20, 90, 75, 25, "z - x - y"); zxy->callback(trsp_rad_cb,this);
+ yzx = new Fl_Round_Button(100, 40, 75, 25, "y - z - x");yzx->callback(trsp_rad_cb,this);
+ xzy = new Fl_Round_Button(100, 65, 75, 25, "x - z - y");xzy->callback(trsp_rad_cb,this);
+ xyz = new Fl_Round_Button(100, 90, 75, 25, "x - y - z");xyz->callback(trsp_rad_cb,this);
+ g->end();
+
+ Fl_Button *o;
+ o = new Fl_Button(25, 130, 75, 25, gettext("Cancel")); o->callback(close_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Do nothing and close this window"));
+ o = new Fl_Return_Button(125, 130, 75, 25, gettext("Do")); o->callback(trsp_dlg_cb,wnd);
+ o->box(UDAV_UP_BOX); o->down_box(UDAV_DOWN_BOX);
+ o->tooltip(gettext("Change data values and close this window"));
+ wnd->end();
+}
+//-----------------------------------------------------------------------------
+void transp_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ trsp_dlg.OK = false;
+ trsp_dlg.wnd->set_modal(); trsp_dlg.wnd->show();
+ while(trsp_dlg.wnd->shown()) Fl::wait();
+ if(trsp_dlg.OK)
+ {
+ if(trsp_dlg.xyz->value()) e->var->Transpose("xyz");
+ if(trsp_dlg.xzy->value()) e->var->Transpose("xzy");
+ if(trsp_dlg.yxz->value()) e->var->Transpose("yxz");
+ if(trsp_dlg.yzx->value()) e->var->Transpose("yzx");
+ if(trsp_dlg.zxy->value()) e->var->Transpose("zxy");
+ if(trsp_dlg.zyx->value()) e->var->Transpose("zyx");
+ e->refresh();
+ }
+}
+//-----------------------------------------------------------------------------
+void first_sl_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ e->slice->value(0);
+ e->set_slice(0);
+ e->go_home();
+}
+//-----------------------------------------------------------------------------
+void last_sl_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ e->slice->value(e->num_slice()-1);
+ e->set_slice(e->num_slice()-1);
+ e->go_home();
+}
+//-----------------------------------------------------------------------------
+void prev_sl_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ int p = int(e->slice->value())-1;
+ if(p<0) p = 0;
+ e->slice->value(p); e->set_slice(p);
+ e->go_home();
+}
+//-----------------------------------------------------------------------------
+void next_sl_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ int p = int(e->slice->value())+1;
+ if(p>=e->num_slice()) p = e->num_slice()-1;
+ e->slice->value(p); e->set_slice(p);
+ e->go_home();
+}
+//-----------------------------------------------------------------------------
+void first_cl_cb(Fl_Widget*, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ e->go_home();
+}
+//-----------------------------------------------------------------------------
+void change_sl_cb(Fl_Widget*w, void*v)
+{
+ TableWindow* e = (TableWindow*)v;
+ e->set_slice(long(e->slice->value()));
+ e->go_home();
+}
+//-----------------------------------------------------------------------------
+Fl_Menu_Item tablemenu[60] = {
+ { gettext("General"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Load from file"), 0, load_dat_cb },
+ { gettext("Import from PNG"),0, imp_dat_cb },
+ { gettext("Save to file"), 0, save_dat_cb },
+ { gettext("Export to PNG"), 0, exp_dat_cb, 0, FL_MENU_DIVIDER },
+ { gettext("Insert as list"), 0, list_dat_cb },
+ { gettext("Plot data"), 0, plot_dat_cb },
+// { gettext("Info for data"), 0, info_dat_cb },
+ { 0 },
+ { gettext("Sizes"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Create new"), 0, new_dat_cb },
+ { gettext("Resize"), 0, resize_cb },
+ { gettext("Squeeze"), 0, squeeze_cb },
+ { gettext("Crop"), 0, crop_cb },
+ { gettext("Transpose"), 0, transp_cb },
+// { gettext("Extend"), 0, extend_cb },
+ { 0 },
+ { gettext("Fill"), 0, 0, 0, FL_SUBMENU },
+ { gettext("By formula"), 0, modify_cb },
+ { gettext("In range"), 0, fill_cb },
+ { gettext("Normalize"), 0, normal_cb },
+ { 0 },
+ { gettext("Change"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Smooth"), 0, smooth_cb },
+ { gettext("CumSum"), 0, cumsum_cb },
+ { gettext("Integrate"), 0, integr_cb },
+ { gettext("Difference"), 0, diff_cb },
+ { gettext("Double diff."), 0, diff2_cb },
+ { gettext("Swap parts"), 0, swap_cb },
+ { 0 },
+ { gettext("Another"), 0, 0, 0, FL_SUBMENU },
+// { gettext("Histogram of"), 0, hist_cb },
+ { gettext("Summation of"), 0, asum_cb },
+ { gettext("Maximum of"), 0, amax_cb },
+ { gettext("Minimum of"), 0, amin_cb },
+ { 0 },
+ { gettext("Operations"), 0, 0, 0, FL_SUBMENU },
+ { gettext("Add to"), 0, addto_cb },
+ { gettext("Subtract to"),0, subto_cb },
+ { gettext("Multiply by"),0, multo_cb },
+ { gettext("Divide by"), 0, divto_cb },
+ { 0 },
+ { gettext("Navigation"), 0, 0, 0, FL_SUBMENU },
+ { gettext("First slice"), FL_CTRL + FL_F + 1, first_sl_cb },
+ { gettext("Prev slice"), FL_CTRL + FL_F + 2, prev_sl_cb },
+ { gettext("Next slice"), FL_CTRL + FL_F + 3, next_sl_cb },
+ { gettext("Last slice"), FL_CTRL + FL_F + 4, last_sl_cb, 0, FL_MENU_DIVIDER },
+ { gettext("First cell"), FL_ALT + FL_F + 1, first_cl_cb },
+// { gettext("Last cell"), FL_ALT + FL_F + 2, last_cl_cb },
+// { gettext("Center grid"), FL_ALT + FL_F + 3, center_cl_cb },
+ { 0 },
+ { 0 }
+};
+//-----------------------------------------------------------------------------
+#include "xpm/document-new.xpm"
+#include "xpm/plot.xpm"
+#include "xpm/document-open.xpm"
+#include "xpm/document-save.xpm"
+#include "xpm/document-import.xpm"
+#include "xpm/document-export.xpm"
+#include "xpm/format-indent-more.xpm"
+#include "xpm/diff.xpm"
+#include "xpm/func.xpm"
+#include "xpm/size.xpm"
+#include "xpm/tran.xpm"
+#include "xpm/crop.xpm"
+#include "xpm/go-first.xpm"
+#include "xpm/go-last.xpm"
+TableWindow::TableWindow(int x, int y, int w, int h, const char* t) : Fl_Window(x, y, w, h, t)
+{
+ var = 0;
+// menu = new Fl_Menu_Bar(0, 0, w, 30);
+// menu->copy(tablemenu, this);
+ Fl_Button *o;
+ Fl_Group *g;
+
+
+ g = new Fl_Group(0,0,30,350);
+ o = new Fl_Button(0, 0, 25, 25); o->image(new Fl_Pixmap(document_new_xpm));
+ o->callback(new_dat_cb,this); o->tooltip(gettext("Create new data with zero filling"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 25, 25, 25); o->image(new Fl_Pixmap(document_open_xpm));
+ o->callback(load_dat_cb,this); o->tooltip(gettext("Load data from file"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 50, 25, 25); o->image(new Fl_Pixmap(document_import_xpm));
+ o->callback(imp_dat_cb,this); o->tooltip(gettext("Import data from PNG file"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 75, 25, 25); o->image(new Fl_Pixmap(document_save_xpm));
+ o->callback(save_dat_cb,this); o->tooltip(gettext("Save data to file"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 100, 25, 25); o->image(new Fl_Pixmap(document_export_xpm));
+ o->callback(exp_dat_cb,this); o->tooltip(gettext("Export data to PNG file"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+
+ o = new Fl_Button(0, 130, 25, 25); o->image(new Fl_Pixmap(format_indent_more_xpm));
+ o->callback(list_dat_cb,this); o->tooltip(gettext("Insert to script as 'list' command"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 155, 25, 25); o->image(new Fl_Pixmap(plot_xpm));
+ o->callback(plot_dat_cb,this); o->tooltip(gettext("Plot data"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+
+ o = new Fl_Button(0, 185, 25, 25); o->image(new Fl_Pixmap(diff_xpm));
+ o->callback(smooth_cb,this); o->tooltip(gettext("Apply operator (smoothing, integration, difference ...) to data"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 210, 25, 25); o->image(new Fl_Pixmap(func_xpm));
+ o->callback(modify_cb,this); o->tooltip(gettext("Fill data by formula"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 235, 25, 25); o->image(new Fl_Pixmap(size_xpm));
+ o->callback(resize_cb,this); o->tooltip(gettext("Resize data with smoothing"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 260, 25, 25); o->image(new Fl_Pixmap(crop_xpm));
+ o->callback(crop_cb,this); o->tooltip(gettext("Crop (cut off edges) data"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(0, 285, 25, 25); o->image(new Fl_Pixmap(tran_xpm));
+ o->callback(transp_cb,this); o->tooltip(gettext("Transpose data dimensions"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ g->end(); g->resizable(0);
+
+
+ g = new Fl_Group(30,0,200,30);
+ o = new Fl_Button(30, 0, 25, 25); o->image(new Fl_Pixmap(go_first_xpm));
+ o->callback(first_sl_cb,this); o->tooltip(gettext("Go to first slice (Ctrl-F1)"));
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ slice = new Fl_Counter(55, 0, 90, 25, 0); slice->callback(change_sl_cb,this);
+ slice->lstep(10); slice->step(1); slice->tooltip(gettext("Id of slice on third (z-) dimension"));
+ slice->box(FL_PLASTIC_UP_BOX);// slice->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(147, 0, 25, 25); o->image(new Fl_Pixmap(go_last_xpm));
+ o->callback(last_sl_cb,this); o->tooltip(gettext("Go to last slice (Ctrl-F4)"));
+ g->end(); g->resizable(0);
+
+ data = new Fl_Data_Table(30,30,w-30,h-30);
+ data->row_header(1); data->row_header_width(70);
+ data->row_resize(1); data->rows(1);
+ data->row_height_all(25);
+ data->col_header(1); data->col_header_height(25);
+ data->col_resize(1); data->cols(1);
+ data->col_width_all(70);
+
+ end(); resizable(data);
+// callback(close_table_cb, this);
+}
+//-----------------------------------------------------------------------------
+TableWindow::~TableWindow()
+{ parent()->deactivate();
+ (parent()->parent())->remove(parent());
+ parent()->remove(this); delete parent(); }
+//-----------------------------------------------------------------------------
+void delete_cb(void *v) { if(v) delete (TableWindow *)v; }
+//-----------------------------------------------------------------------------
+void TableWindow::update(mglVar *v)
+{
+ if(v==0) return;
+ char ss[1024];
+ wcstombs(ss,v->s.c_str(),1024);
+ label(ss); v->func = delete_cb;
+// if(var) var->o = 0;
+ var = &(v->d); v->o = this;
+ refresh();
+}
+//-----------------------------------------------------------------------------
+void TableWindow::refresh()
+{
+ if(var==0) return;
+ deactivate(); nz = var->nz;
+ sl = 0; slice->range(0,nz-1);
+
+ data->rows(var->ny); data->cols(var->nx);
+ data->ny = var->ny; data->nx = var->nx;
+ data->data = var->a;
+ activate();
+// show();
+}
+//-----------------------------------------------------------------------------
+void TableWindow::set_slice(long s)
+{
+ if(s>=0 && s<nz)
+ {
+ sl = s;
+ data->data = var->a + var->nx * var->ny * sl;
+ refresh();
+ }
+}
+//-----------------------------------------------------------------------------
+void TableWindow::go_home()
+{
+}
+//-----------------------------------------------------------------------------
diff --git a/mgllab/udav.h b/mgllab/udav.h
new file mode 100644
index 0000000..532e9ef
--- /dev/null
+++ b/mgllab/udav.h
@@ -0,0 +1,291 @@
+/* udav.h is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+//-----------------------------------------------------------------------------
+#ifndef _UDAV_H_
+#define _UDAV_H_
+//-----------------------------------------------------------------------------
+#ifdef __MWERKS__
+# define FL_DLL
+#endif
+#ifdef USE_GETTEXT
+ #include <libintl.h>
+#else
+ #define gettext(x) (x)
+#endif
+#include <FL/Fl.H>
+#include <FL/Fl_Group.H>
+#include <FL/Fl_Double_Window.H>
+#include <FL/fl_ask.H>
+#include <FL/Fl_File_Chooser.H>
+#include <FL/Fl_Menu_Bar.H>
+#include <FL/Fl_Input.H>
+#include <FL/Fl_Button.H>
+#include <FL/Fl_Return_Button.H>
+#include <FL/Fl_Text_Buffer.H>
+#include <FL/Fl_Text_Editor.H>
+#include <FL/Fl_Pixmap.H>
+#include <FL/Fl_Counter.H>
+#include <Fl/Fl_Scroll.H>
+#include <FL/Fl_Tabs.H>
+#include <FL/Fl_Help_View.H>
+#include <Fl/Fl_Table.H>
+#include <Fl/Fl_Round_Button.H>
+#include <Fl/Fl_Float_Input.H>
+#include <Fl/Fl_Multiline_Input.H>
+//-----------------------------------------------------------------------------
+#ifdef USE_PLASTIC
+ #define UDAV_UP_BOX FL_PLASTIC_UP_BOX
+ #define UDAV_DOWN_BOX FL_PLASTIC_DOWN_BOX
+ #define UDAV_EDIT_BOX FL_PLASTIC_THIN_DOWN_BOX
+ #define UDAV_THIN_UP_BOX FL_PLASTIC_THIN_UP_BOX
+#else
+ #define UDAV_UP_BOX FL_GTK_UP_BOX
+ #define UDAV_DOWN_BOX FL_GTK_DOWN_BOX
+ #define UDAV_EDIT_BOX FL_GTK_DOWN_BOX
+ #define UDAV_THIN_UP_BOX FL_GTK_THIN_UP_BOX
+#endif
+//-----------------------------------------------------------------------------
+#include "mgl/parser.h"
+#include "mgl/fltk.h"
+//-----------------------------------------------------------------------------
+extern mglParse *Parse;
+extern Fl_Menu_Item colors[];
+extern Fl_Preferences pref;
+class Fl_MGL;
+//-----------------------------------------------------------------------------
+class Fl_Data_Table : public Fl_Table
+{
+private:
+ int row, col;
+ Fl_Input* input;
+protected:
+ void draw_cell(TableContext context, int R, int C, int X, int Y, int W, int H);
+ static void event_callback(Fl_Widget*, void*v)
+ { ((Fl_Data_Table*)v)->cell_click(); };
+ void cell_click();
+
+public:
+ mreal *data;
+ int nx, ny;
+
+ Fl_Data_Table(int x, int y, int w, int h, const char *l=0);
+ ~Fl_Data_Table() { }
+
+ void set_value();
+ void rows(int val) { if (input->visible()) input->do_callback(); Fl_Table::rows(val); }
+ void cols(int val) { if (input->visible()) input->do_callback(); Fl_Table::cols(val); }
+ inline int rows() { return Fl_Table::rows(); }
+ inline int cols() { return Fl_Table::cols(); }
+};
+//-----------------------------------------------------------------------------
+struct AnimateDlg
+{
+ friend void animate_dlg_cb(Fl_Widget *, void *v);
+ friend void animate_rad_cb(Fl_Widget *, void *v);
+ friend void fill_animate(const char *text);
+ friend void animate_put_cb(Fl_Widget *, void *);
+public:
+ Fl_Window* wnd;
+ int OK;
+ AnimateDlg() { memset(this,0,sizeof(AnimateDlg)); create_dlg(); };
+ ~AnimateDlg() { delete wnd; };
+ void FillResult(Fl_MGL* e);
+protected:
+ bool swap;
+ Fl_Round_Button *rt, *rv;
+ Fl_Multiline_Input *txt;
+ Fl_Float_Input *x0, *x1, *dx, *dt;
+ Fl_Check_Button *save;
+ void create_dlg();
+};
+//-----------------------------------------------------------------------------
+class Fl_MGL : public Fl_MGLView, public mglDraw
+{
+friend class AnimateDlg;
+public:
+ Fl_Widget *status; ///< StatusBar for mouse coordinates
+ const char *AnimBuf; ///< buffer for animation
+ const char **AnimS0;
+ int AnimNum;
+ float AnimDelay;
+
+ Fl_MGL(int x, int y, int w, int h, char *label=0);
+ ~Fl_MGL();
+
+ /// Drawing itself
+ int Draw(mglGraph *);
+ /// Update (redraw) plot
+ void update();
+ /// Set main \a scr and optional \a pre scripts for execution
+ void scripts(char *scr, char *pre);
+ /// Clear scripts internally saved
+ void clear_scripts();
+ /// Show next frame
+ void next_frame();
+ /// Show prev frame
+ void prev_frame();
+
+protected:
+ char *Args[1000], *ArgBuf;
+ int NArgs, ArgCur;
+
+ char *script; ///< main script
+ char *script_pre; ///< script with settings
+};
+//-----------------------------------------------------------------------------
+struct TableWindow : public Fl_Window
+{
+public:
+ TableWindow(int x, int y, int w, int h, const char* t=0);
+ ~TableWindow();
+ void update(mglVar *v);
+ void refresh();
+ void set_slice(long s);
+ inline long get_slice() { return sl; };
+ inline long num_slice() { return nz; };
+ void go_home();
+
+ Fl_Data_Table *data;
+ Fl_Menu_Bar *menu;
+// Fl_Output *main;
+ Fl_Counter *slice;
+ mglData *var;
+protected:
+// long nx,ny,nz;
+ long nz;
+ long sl; // current slice
+ char sl_id[64]; // slice id
+};
+//-----------------------------------------------------------------------------
+class SetupDlg
+{
+public:
+ Fl_Window *wnd;
+ bool OK;
+ Fl_Input *templ;
+
+ SetupDlg() { memset(this,0,sizeof(SetupDlg)); };
+ ~SetupDlg() { delete wnd; };
+ void CreateDlg();
+ char *ToScript();
+private:
+ Fl_Input *xmin, *ymin, *zmin, *cmin;
+ Fl_Input *xmax, *ymax, *zmax, *cmax;
+ Fl_Input *xorg, *yorg, *zorg;
+ Fl_Input *xlab, *ylab, *zlab, *font;
+ Fl_Choice *xpos, *ypos, *zpos, *axial, *cid[10];
+ Fl_Input *xtik, *ytik, *ztik;
+ Fl_Input *xsub, *ysub, *zsub;
+ Fl_Input *alphad, *ambient, *basew, *mesh, *size;
+ Fl_Check_Button *alpha, *light, *rotate, *lid[10];
+ Fl_Input *xid[10], *yid[10], *zid[10], *bid[10];
+ Fl_Help_View *code;
+
+ void CreateGen();
+ void CreateLid();
+};
+//-----------------------------------------------------------------------------
+class ScriptWindow : public Fl_Double_Window
+{
+public:
+ ScriptWindow(int w, int h, const char* t);
+ ~ScriptWindow();
+
+ Fl_Window *replace_dlg;
+ Fl_Input *replace_find;
+ Fl_Input *replace_with;
+ Fl_Button *replace_all;
+ Fl_Return_Button *replace_next;
+ Fl_Button *replace_cancel;
+ Fl_Text_Editor *editor;
+ Fl_Menu_Bar *menu;
+ Fl_Tabs *ltab, *rtab;
+ Fl_Help_View *hd;
+ Fl_Input *link_cmd;
+ Fl_Group *ghelp;
+ Fl_Browser *var;
+ Fl_Box *status;
+
+ void mem_init();
+ void mem_pressed(int n);
+ SetupDlg *setup_dlg;
+ char search[256];
+ Fl_MGL *graph;
+};
+//-----------------------------------------------------------------------------
+// Editor window functions
+void find2_cb(Fl_Widget *, void *);
+void replall_cb(Fl_Widget *, void *);
+void replace2_cb(Fl_Widget *, void *);
+void replcan_cb(Fl_Widget *, void *);
+void insert_cb(Fl_Widget *, void *);
+void paste_cb(Fl_Widget *, void *);
+void replace_cb(Fl_Widget *, void *);
+void copy_cb(Fl_Widget *, void *);
+void cut_cb(Fl_Widget *, void *);
+void find_cb(Fl_Widget *, void *);
+void delete_cb(Fl_Widget *, void *);
+void changed_cb(int, int nInserted, int nDeleted,int, const char*, void* v);
+//-----------------------------------------------------------------------------
+// General callback functions
+void new_cb(Fl_Widget *, void *);
+void open_cb(Fl_Widget *, void *);
+void save_cb(Fl_Widget*, void*);
+void saveas_cb(Fl_Widget*, void*);
+void help_cb(Fl_Widget*, void*);
+//-----------------------------------------------------------------------------
+// Graphical callback functions
+void setup_cb(Fl_Widget *, void *);
+void style_cb(Fl_Widget *, void *);
+void option_cb(Fl_Widget *, void *);
+void argument_cb(Fl_Widget *, void *);
+void variables_cb(Fl_Widget *, void *);
+void settings_cb(Fl_Widget *, void *);
+void command_cb(Fl_Widget *, void *);
+//-----------------------------------------------------------------------------
+// Dialogs callback functions
+void close_dlg_cb(Fl_Widget *w, void *);
+void font_cb(Fl_Widget *, void *v);
+void line_cb(Fl_Widget *, void *v);
+void face_cb(Fl_Widget *, void *v);
+void data_cb(Fl_Widget *, void *v);
+//-----------------------------------------------------------------------------
+void style_init(void);
+int check_save(void);
+void load_file(char *newfile, int ipos);
+void save_file(char *newfile);
+Fl_Widget *add_editor(ScriptWindow *w);
+Fl_Widget *add_mem(ScriptWindow *w);
+void set_title(Fl_Window* w);
+//-----------------------------------------------------------------------------
+// Animation
+void animate_cb(Fl_Widget *, void *v);
+void fill_animate(const char *text);
+//-----------------------------------------------------------------------------
+Fl_Widget *add_help(ScriptWindow *w);
+void help_cb(Fl_Widget*, void*v);
+void example_cb(Fl_Widget*, void*v);
+void about_cb(Fl_Widget*, void*);
+//-----------------------------------------------------------------------------
+void newcmd_cb(Fl_Widget*,void*);
+//-----------------------------------------------------------------------------
+extern Fl_Text_Buffer *textbuf;
+extern char filename[256];
+extern int changed;
+//-----------------------------------------------------------------------------
+#endif
+//-----------------------------------------------------------------------------
diff --git a/mgllab/udav.rc b/mgllab/udav.rc
new file mode 100644
index 0000000..e557119
--- /dev/null
+++ b/mgllab/udav.rc
@@ -0,0 +1,24 @@
+/* udav.rc is part of UDAV
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+//-----------------------------------------------------------------------------
+#include <windows.h>
+
+#define APPICON 1001
+#define APPICON48 1002
+
+APPICON ICON "udav.ico"
+APPICON48 ICON "udav48.ico"
diff --git a/mgllab/udav48.ico b/mgllab/udav48.ico
new file mode 100644
index 0000000..a286d6d
Binary files /dev/null and b/mgllab/udav48.ico differ
diff --git a/mgllab/write.cpp b/mgllab/write.cpp
new file mode 100644
index 0000000..949f4be
--- /dev/null
+++ b/mgllab/write.cpp
@@ -0,0 +1,17 @@
+/* write.cpp is part of Math Graphic Library
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+//-----------------------------------------------------------------------------
diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000..d1dd005
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,38 @@
+from distutils.core import setup, Extension
+import os
+
+try:
+ source_dir=os.environ["CMAKE_SOURCE_DIR"]
+ mgl_dir="src/libmgl.so"
+except KeyError:
+ source_dir="."
+ mgl_dir="src/.libs/libmgl.so"
+
+mgl_module = Extension('_mathgl',
+ sources=["lang/mgl_python.cpp"],
+ include_dirs=["%s/include" % source_dir],
+ extra_objects=[mgl_dir]
+ )
+
+setup (
+ name = "mathgl",
+ version = "2.0",
+ maintainer="Dmitry Kulagin",
+ maintainer_email="dik at ufp.appl.sci-nnov.ru",
+ author="Alexey Balakin",
+ author_email= "mathgl.ablakin at gmail.com",
+ license="Same terms as MathGL",
+ platforms = ["any"],
+ url = "http://mathgl.sf.net",
+ description = "Python interface for MathGL",
+ long_description = "MathGL is a library for the plotting of the data \
+ MathGL is a free library of fast C++ routines for the plotting \
+ of the data varied in one or more dimensions. It uses OpenGL \
+ (www.opengl.org) for the plotting. Also there is a simple window \
+ interface based on GLUT. This provides high compatibility with \
+ any operating system (really any which has OpenGL-like libraries). \
+ Python interface for MathGL",
+ package_dir = {"": "lang"},
+ py_modules = ["mathgl"],
+ ext_modules = [mgl_module]
+ )
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 60712b8..71efbc4 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,26 +1,49 @@
set(mgl_src
-axis.cpp base_cf.cpp base.cpp canvas_cf.cpp canvas.cpp cont.cpp crust.cpp
+addon.cpp axis.cpp base_cf.cpp base.cpp canvas_cf.cpp canvas.cpp cont.cpp crust.cpp
data.cpp data_io.cpp data_new.cpp data_op.cpp data_png.cpp def_font.cpp
export_2d.cpp export_3d.cpp eval.cpp evalp.cpp exec.cpp export.cpp
-fit.cpp font.cpp opengl.cpp other.cpp parser.cpp pde.cpp pixel.cpp
-plot.cpp prim.cpp surf.cpp tex_table.cpp vect.cpp volume.cpp #window.cpp
+fit.cpp font.cpp other.cpp parser.cpp pde.cpp pixel.cpp
+plot.cpp prim.cpp surf.cpp tex_table.cpp vect.cpp volume.cpp evalc.cpp #window.cpp
)
-add_library(mgl SHARED ${mgl_src})
-add_library(mgl-static STATIC ${mgl_src})
+set(mgl_hdr
+../include/mgl/base_cf.h ../include/mgl/fit.h ../include/mgl/plot.h
+../include/mgl/base.h ../include/mgl/prim.h ../include/mgl/canvas_cf.h
+../include/mgl/font.h ../include/mgl/canvas.h ../include/mgl/surf.h
+../include/mgl/config.h ../include/mgl/mgl_cf.h ../include/mgl/type.h
+../include/mgl/cont.h ../include/mgl/mgl.h ../include/mgl/vect.h
+../include/mgl/data.h ../include/mgl/volume.h
+../include/mgl/define.h ../include/mgl/other.h ../include/mgl/eval.h
+../include/mgl/parser.h ../include/mgl/addon.h ../include/mgl/evalc.h )
+
+if(use_opengl)
+ set(mgl_src ${mgl_src} opengl.cpp )
+ set(mgl_hdr ${mgl_hdr} ../include/mgl/opengl.h )
+else(use_opengl)
+ add_definitions(-DNO_OPENGL)
+endif(use_opengl)
+
+add_library(mgl SHARED ${mgl_src} ${mgl_hdr})
+add_library(mgl-static STATIC ${mgl_src} ${mgl_hdr})
set_target_properties(mgl-static PROPERTIES OUTPUT_NAME "mgl")
set_target_properties(mgl PROPERTIES CLEAN_DIRECT_OUTPUT 1)
set_target_properties(mgl-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
+if(use_ltdl)
+ target_link_libraries(mgl ${LTDL_LIB})
+ add_definitions(-DHAVE_LTDL)
+ include_directories(${LTDL_INCLUDE_DIR})
+endif(use_ltdl)
+
if(use_u3d)
# include_directories( IDTFGen ${U3D_INCLUDE_DIR} )
add_definitions(-DHAVE_U3D)
- target_link_libraries(mgl ${U3D_LIB} )
- target_link_libraries(mgl-static ${U3D_LIB} )
+ target_link_libraries(mgl ${U3D_LIB})
+ target_link_libraries(mgl-static ${U3D_LIB})
include_directories(${U3D_INCLUDE_DIR})
if(HPDF_INCLUDE_DIR AND HPDF_LIB)
include_directories(${HPDF_INCLUDE_DIR})
- target_link_libraries(mgl ${HPDF_LIB} )
+ target_link_libraries(mgl ${HPDF_LIB})
add_definitions(-DHAVE_HPDF_H)
endif(HPDF_INCLUDE_DIR AND HPDF_LIB)
endif(use_u3d)
@@ -78,10 +101,15 @@ else(use_gsl)
add_definitions(-DNO_GSL)
endif(use_gsl)
-target_link_libraries(mgl ${OPENGL_LIBRARIES} ${PNG_LIBRARIES} m)
-include_directories(${OPENGL_INCLUDE_DIR} ${PNG_INCLUDE_DIR})
+if(use_opengl)
+ target_link_libraries(mgl ${OPENGL_LIBRARIES} )
+ include_directories(${OPENGL_INCLUDE_DIR} )
+endif(use_opengl)
+
+target_link_libraries(mgl ${PNG_LIBRARIES} ${ZLIB_LIBRARIES} m)
+include_directories(${PNG_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR})
file(TO_NATIVE_PATH $(MGL_FONT_PATH) MGL_FONT_PATH_SYS)
-add_definitions(-DMGL_FONT_PATH="${MGL_FONT_PATH_SYS}")
+#add_definitions(-DMGL_FONT_PATH="${MGL_FONT_PATH_SYS}")
if(UNIX)
add_definitions(-DNO_COLOR_ARRAY)
diff --git a/src/Makefile.in b/src/Makefile.in
deleted file mode 100644
index f93a942..0000000
--- a/src/Makefile.in
+++ /dev/null
@@ -1,871 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
- at USE_PTHREAD_TRUE@am__append_1 = $(PTHREAD_LIBS)
- at USE_GSL_TRUE@am__append_2 = $(GSL_LIBS)
- at USE_HDF4_TRUE@am__append_3 = $(HDF4_LIBS)
- at USE_HDF5_TRUE@am__append_4 = $(HDF5_LIBS)
- at USE_JPEG_TRUE@am__append_5 = $(JPEG_LIBS)
- at USE_U3D_TRUE@am__append_6 = $(U3D_LIBS)
-subdir = src
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/config/autotroll.m4 \
- $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/mgl/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
- $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
- *) f=$$p;; \
- esac;
-am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
-am__install_max = 40
-am__nobase_strip_setup = \
- srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
-am__nobase_strip = \
- for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
-am__nobase_list = $(am__nobase_strip_setup); \
- for p in $$list; do echo "$$p $$p"; done | \
- sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
- $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
- if (++n[$$2] == $(am__install_max)) \
- { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
- END { for (dir in files) print dir, files[dir] }'
-am__base_list = \
- sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
- sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
-am__installdirs = "$(DESTDIR)$(libdir)"
-LTLIBRARIES = $(lib_LTLIBRARIES)
-am__DEPENDENCIES_1 =
- at USE_PTHREAD_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1)
- at USE_GSL_TRUE@am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1)
- at USE_HDF4_TRUE@am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1)
- at USE_HDF5_TRUE@am__DEPENDENCIES_5 = $(am__DEPENDENCIES_1)
- at USE_JPEG_TRUE@am__DEPENDENCIES_6 = $(am__DEPENDENCIES_1)
- at USE_U3D_TRUE@am__DEPENDENCIES_7 = $(am__DEPENDENCIES_1)
-libmgl_la_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
- $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \
- $(am__DEPENDENCIES_4) $(am__DEPENDENCIES_5) \
- $(am__DEPENDENCIES_6) $(am__DEPENDENCIES_7)
-am_libmgl_la_OBJECTS = libmgl_la-axis.lo libmgl_la-base_cf.lo \
- libmgl_la-base.lo libmgl_la-canvas_cf.lo libmgl_la-canvas.lo \
- libmgl_la-cont.lo libmgl_la-crust.lo libmgl_la-data.lo \
- libmgl_la-data_io.lo libmgl_la-data_new.lo \
- libmgl_la-data_op.lo libmgl_la-data_png.lo \
- libmgl_la-def_font.lo libmgl_la-export_2d.lo libmgl_la-eval.lo \
- libmgl_la-evalp.lo libmgl_la-exec.lo libmgl_la-export.lo \
- libmgl_la-fit.lo libmgl_la-font.lo libmgl_la-opengl.lo \
- libmgl_la-other.lo libmgl_la-parser.lo libmgl_la-tex_table.lo \
- libmgl_la-pde.lo libmgl_la-pixel.lo libmgl_la-plot.lo \
- libmgl_la-prim.lo libmgl_la-surf.lo libmgl_la-vect.lo \
- libmgl_la-volume.lo libmgl_la-export_3d.lo
-libmgl_la_OBJECTS = $(am_libmgl_la_OBJECTS)
-libmgl_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(libmgl_la_CXXFLAGS) \
- $(CXXFLAGS) $(libmgl_la_LDFLAGS) $(LDFLAGS) -o $@
-DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)/include/mgl
-depcomp = $(SHELL) $(top_srcdir)/config/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-CXXLD = $(CXX)
-CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-SOURCES = $(libmgl_la_SOURCES)
-DIST_SOURCES = $(libmgl_la_SOURCES)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_CXXFLAGS = @AM_CXXFLAGS@ -I$(top_srcdir)/include \
- -I$(top_builddir)/include
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FLTK_FLAGS = @FLTK_FLAGS@
-FLTK_LIBS = @FLTK_LIBS@
-GL_LIBS = @GL_LIBS@
-GREP = @GREP@
-GSL_FLAGS = @GSL_FLAGS@
-GSL_LIBS = @GSL_LIBS@
-HAVE_SWIG = @HAVE_SWIG@
-HDF4_FLAGS = @HDF4_FLAGS@
-HDF4_LIBS = @HDF4_LIBS@
-HDF5_FLAGS = @HDF5_FLAGS@
-HDF5_LIBS = @HDF5_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-JPEG_FLAGS = @JPEG_FLAGS@
-JPEG_LIBS = @JPEG_LIBS@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
-MGL_AGE = @MGL_AGE@
-MGL_CURRENT = @MGL_CURRENT@
-MGL_RELEASE = @MGL_RELEASE@
-MGL_REVISION = @MGL_REVISION@
-MKDIR_P = @MKDIR_P@
-MOC = @MOC@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OCTAVE = @OCTAVE@
-OCTAVE_ARCH = @OCTAVE_ARCH@
-OCTAVE_INCFLAGS = @OCTAVE_INCFLAGS@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PNG_LIBS = @PNG_LIBS@
-PTHREAD_FLAGS = @PTHREAD_FLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-PYTHON = @PYTHON@
-PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
-PYTHON_HEADERS = @PYTHON_HEADERS@
-PYTHON_PLATFORM = @PYTHON_PLATFORM@
-PYTHON_PREFIX = @PYTHON_PREFIX@
-PYTHON_VERSION = @PYTHON_VERSION@
-QMAKE = @QMAKE@
-QT_CFLAGS = @QT_CFLAGS@
-QT_CPPFLAGS = @QT_CPPFLAGS@
-QT_CXXFLAGS = @QT_CXXFLAGS@
-QT_DEFINES = @QT_DEFINES@
-QT_INCPATH = @QT_INCPATH@
-QT_LDFLAGS = @QT_LDFLAGS@
-QT_LFLAGS = @QT_LFLAGS@
-QT_LIBS = @QT_LIBS@
-QT_PATH = @QT_PATH@
-QT_VERSION = @QT_VERSION@
-QT_VERSION_MAJOR = @QT_VERSION_MAJOR@
-RANLIB = @RANLIB@
-RCC = @RCC@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-TMPDIR = @TMPDIR@
-U3D_LIBS = @U3D_LIBS@
-UIC = @UIC@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-lt_ECHO = @lt_ECHO@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-pkgpyexecdir = @pkgpyexecdir@
-pkgpythondir = @pkgpythondir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-pyexecdir = @pyexecdir@
-pythondir = @pythondir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-lib_LTLIBRARIES = libmgl.la
-libmgl_la_LIBADD = $(PNG_LIBS) $(GL_LIBS) $(LOPENMP) $(am__append_1) \
- $(am__append_2) $(am__append_3) $(am__append_4) \
- $(am__append_5) $(am__append_6)
-libmgl_la_LDFLAGS = -no-undefined -version-info $(MGL_CURRENT):$(MGL_REVISION):$(MGL_AGE)
-libmgl_la_CXXFLAGS = \
- -DMOD_LIB_DIR=\"$(libdir)/mgl/\" $(HDF5_FLAGS) $(HDF4_FLAGS) $(JPEG_FLAGS) \
- $(PNG_FLAGS) $(FLTK_FLAGS) $(ADDON_FLAGS) $(AM_CXXFLAGS) $(PTHREAD_FLAGS)
-
-libmgl_la_SOURCES = \
-axis.cpp base_cf.cpp base.cpp canvas_cf.cpp canvas.cpp \
-cont.cpp crust.cpp data.cpp data_io.cpp data_new.cpp \
-data_op.cpp data_png.cpp def_font.cpp export_2d.cpp eval.cpp \
-evalp.cpp exec.cpp export.cpp fit.cpp font.cpp \
-opengl.cpp other.cpp parser.cpp tex_table.cpp pde.cpp \
-pixel.cpp plot.cpp prim.cpp surf.cpp vect.cpp \
-volume.cpp export_3d.cpp
-
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .cpp .lo .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu src/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-libLTLIBRARIES: $(lib_LTLIBRARIES)
- @$(NORMAL_INSTALL)
- test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
- @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
- list2=; for p in $$list; do \
- if test -f $$p; then \
- list2="$$list2 $$p"; \
- else :; fi; \
- done; \
- test -z "$$list2" || { \
- echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
- $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
- }
-
-uninstall-libLTLIBRARIES:
- @$(NORMAL_UNINSTALL)
- @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
- for p in $$list; do \
- $(am__strip_dir) \
- echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
- $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
- done
-
-clean-libLTLIBRARIES:
- -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
- @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
- dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
- test "$$dir" != "$$p" || dir=.; \
- echo "rm -f \"$${dir}/so_locations\""; \
- rm -f "$${dir}/so_locations"; \
- done
-libmgl.la: $(libmgl_la_OBJECTS) $(libmgl_la_DEPENDENCIES)
- $(libmgl_la_LINK) -rpath $(libdir) $(libmgl_la_OBJECTS) $(libmgl_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-axis.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-base.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-base_cf.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-canvas.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-canvas_cf.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-cont.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-crust.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-data.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-data_io.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-data_new.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-data_op.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-data_png.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-def_font.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-eval.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-evalp.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-exec.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-export.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-export_2d.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-export_3d.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-fit.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-font.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-opengl.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-other.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-parser.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-pde.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-pixel.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-plot.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-prim.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-surf.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-tex_table.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-vect.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_la-volume.Plo at am__quote@
-
-.cpp.o:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
-
-.cpp.obj:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
-.cpp.lo:
- at am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
-
-libmgl_la-axis.lo: axis.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-axis.lo -MD -MP -MF $(DEPDIR)/libmgl_la-axis.Tpo -c -o libmgl_la-axis.lo `test -f 'axis.cpp' || echo '$(srcdir)/'`axis.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-axis.Tpo $(DEPDIR)/libmgl_la-axis.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='axis.cpp' object='libmgl_la-axis.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-axis.lo `test -f 'axis.cpp' || echo '$(srcdir)/'`axis.cpp
-
-libmgl_la-base_cf.lo: base_cf.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-base_cf.lo -MD -MP -MF $(DEPDIR)/libmgl_la-base_cf.Tpo -c -o libmgl_la-base_cf.lo `test -f 'base_cf.cpp' || echo '$(srcdir)/'`base_cf.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-base_cf.Tpo $(DEPDIR)/libmgl_la-base_cf.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='base_cf.cpp' object='libmgl_la-base_cf.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-base_cf.lo `test -f 'base_cf.cpp' || echo '$(srcdir)/'`base_cf.cpp
-
-libmgl_la-base.lo: base.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-base.lo -MD -MP -MF $(DEPDIR)/libmgl_la-base.Tpo -c -o libmgl_la-base.lo `test -f 'base.cpp' || echo '$(srcdir)/'`base.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-base.Tpo $(DEPDIR)/libmgl_la-base.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='base.cpp' object='libmgl_la-base.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-base.lo `test -f 'base.cpp' || echo '$(srcdir)/'`base.cpp
-
-libmgl_la-canvas_cf.lo: canvas_cf.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-canvas_cf.lo -MD -MP -MF $(DEPDIR)/libmgl_la-canvas_cf.Tpo -c -o libmgl_la-canvas_cf.lo `test -f 'canvas_cf.cpp' || echo '$(srcdir)/'`canvas_cf.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-canvas_cf.Tpo $(DEPDIR)/libmgl_la-canvas_cf.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='canvas_cf.cpp' object='libmgl_la-canvas_cf.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-canvas_cf.lo `test -f 'canvas_cf.cpp' || echo '$(srcdir)/'`canvas_cf.cpp
-
-libmgl_la-canvas.lo: canvas.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-canvas.lo -MD -MP -MF $(DEPDIR)/libmgl_la-canvas.Tpo -c -o libmgl_la-canvas.lo `test -f 'canvas.cpp' || echo '$(srcdir)/'`canvas.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-canvas.Tpo $(DEPDIR)/libmgl_la-canvas.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='canvas.cpp' object='libmgl_la-canvas.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-canvas.lo `test -f 'canvas.cpp' || echo '$(srcdir)/'`canvas.cpp
-
-libmgl_la-cont.lo: cont.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-cont.lo -MD -MP -MF $(DEPDIR)/libmgl_la-cont.Tpo -c -o libmgl_la-cont.lo `test -f 'cont.cpp' || echo '$(srcdir)/'`cont.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-cont.Tpo $(DEPDIR)/libmgl_la-cont.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cont.cpp' object='libmgl_la-cont.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-cont.lo `test -f 'cont.cpp' || echo '$(srcdir)/'`cont.cpp
-
-libmgl_la-crust.lo: crust.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-crust.lo -MD -MP -MF $(DEPDIR)/libmgl_la-crust.Tpo -c -o libmgl_la-crust.lo `test -f 'crust.cpp' || echo '$(srcdir)/'`crust.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-crust.Tpo $(DEPDIR)/libmgl_la-crust.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crust.cpp' object='libmgl_la-crust.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-crust.lo `test -f 'crust.cpp' || echo '$(srcdir)/'`crust.cpp
-
-libmgl_la-data.lo: data.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-data.lo -MD -MP -MF $(DEPDIR)/libmgl_la-data.Tpo -c -o libmgl_la-data.lo `test -f 'data.cpp' || echo '$(srcdir)/'`data.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-data.Tpo $(DEPDIR)/libmgl_la-data.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='data.cpp' object='libmgl_la-data.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-data.lo `test -f 'data.cpp' || echo '$(srcdir)/'`data.cpp
-
-libmgl_la-data_io.lo: data_io.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-data_io.lo -MD -MP -MF $(DEPDIR)/libmgl_la-data_io.Tpo -c -o libmgl_la-data_io.lo `test -f 'data_io.cpp' || echo '$(srcdir)/'`data_io.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-data_io.Tpo $(DEPDIR)/libmgl_la-data_io.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='data_io.cpp' object='libmgl_la-data_io.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-data_io.lo `test -f 'data_io.cpp' || echo '$(srcdir)/'`data_io.cpp
-
-libmgl_la-data_new.lo: data_new.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-data_new.lo -MD -MP -MF $(DEPDIR)/libmgl_la-data_new.Tpo -c -o libmgl_la-data_new.lo `test -f 'data_new.cpp' || echo '$(srcdir)/'`data_new.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-data_new.Tpo $(DEPDIR)/libmgl_la-data_new.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='data_new.cpp' object='libmgl_la-data_new.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-data_new.lo `test -f 'data_new.cpp' || echo '$(srcdir)/'`data_new.cpp
-
-libmgl_la-data_op.lo: data_op.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-data_op.lo -MD -MP -MF $(DEPDIR)/libmgl_la-data_op.Tpo -c -o libmgl_la-data_op.lo `test -f 'data_op.cpp' || echo '$(srcdir)/'`data_op.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-data_op.Tpo $(DEPDIR)/libmgl_la-data_op.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='data_op.cpp' object='libmgl_la-data_op.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-data_op.lo `test -f 'data_op.cpp' || echo '$(srcdir)/'`data_op.cpp
-
-libmgl_la-data_png.lo: data_png.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-data_png.lo -MD -MP -MF $(DEPDIR)/libmgl_la-data_png.Tpo -c -o libmgl_la-data_png.lo `test -f 'data_png.cpp' || echo '$(srcdir)/'`data_png.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-data_png.Tpo $(DEPDIR)/libmgl_la-data_png.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='data_png.cpp' object='libmgl_la-data_png.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-data_png.lo `test -f 'data_png.cpp' || echo '$(srcdir)/'`data_png.cpp
-
-libmgl_la-def_font.lo: def_font.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-def_font.lo -MD -MP -MF $(DEPDIR)/libmgl_la-def_font.Tpo -c -o libmgl_la-def_font.lo `test -f 'def_font.cpp' || echo '$(srcdir)/'`def_font.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-def_font.Tpo $(DEPDIR)/libmgl_la-def_font.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='def_font.cpp' object='libmgl_la-def_font.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-def_font.lo `test -f 'def_font.cpp' || echo '$(srcdir)/'`def_font.cpp
-
-libmgl_la-export_2d.lo: export_2d.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-export_2d.lo -MD -MP -MF $(DEPDIR)/libmgl_la-export_2d.Tpo -c -o libmgl_la-export_2d.lo `test -f 'export_2d.cpp' || echo '$(srcdir)/'`export_2d.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-export_2d.Tpo $(DEPDIR)/libmgl_la-export_2d.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='export_2d.cpp' object='libmgl_la-export_2d.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-export_2d.lo `test -f 'export_2d.cpp' || echo '$(srcdir)/'`export_2d.cpp
-
-libmgl_la-eval.lo: eval.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-eval.lo -MD -MP -MF $(DEPDIR)/libmgl_la-eval.Tpo -c -o libmgl_la-eval.lo `test -f 'eval.cpp' || echo '$(srcdir)/'`eval.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-eval.Tpo $(DEPDIR)/libmgl_la-eval.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='eval.cpp' object='libmgl_la-eval.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-eval.lo `test -f 'eval.cpp' || echo '$(srcdir)/'`eval.cpp
-
-libmgl_la-evalp.lo: evalp.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-evalp.lo -MD -MP -MF $(DEPDIR)/libmgl_la-evalp.Tpo -c -o libmgl_la-evalp.lo `test -f 'evalp.cpp' || echo '$(srcdir)/'`evalp.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-evalp.Tpo $(DEPDIR)/libmgl_la-evalp.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='evalp.cpp' object='libmgl_la-evalp.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-evalp.lo `test -f 'evalp.cpp' || echo '$(srcdir)/'`evalp.cpp
-
-libmgl_la-exec.lo: exec.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-exec.lo -MD -MP -MF $(DEPDIR)/libmgl_la-exec.Tpo -c -o libmgl_la-exec.lo `test -f 'exec.cpp' || echo '$(srcdir)/'`exec.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-exec.Tpo $(DEPDIR)/libmgl_la-exec.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='exec.cpp' object='libmgl_la-exec.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-exec.lo `test -f 'exec.cpp' || echo '$(srcdir)/'`exec.cpp
-
-libmgl_la-export.lo: export.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-export.lo -MD -MP -MF $(DEPDIR)/libmgl_la-export.Tpo -c -o libmgl_la-export.lo `test -f 'export.cpp' || echo '$(srcdir)/'`export.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-export.Tpo $(DEPDIR)/libmgl_la-export.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='export.cpp' object='libmgl_la-export.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-export.lo `test -f 'export.cpp' || echo '$(srcdir)/'`export.cpp
-
-libmgl_la-fit.lo: fit.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-fit.lo -MD -MP -MF $(DEPDIR)/libmgl_la-fit.Tpo -c -o libmgl_la-fit.lo `test -f 'fit.cpp' || echo '$(srcdir)/'`fit.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-fit.Tpo $(DEPDIR)/libmgl_la-fit.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fit.cpp' object='libmgl_la-fit.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-fit.lo `test -f 'fit.cpp' || echo '$(srcdir)/'`fit.cpp
-
-libmgl_la-font.lo: font.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-font.lo -MD -MP -MF $(DEPDIR)/libmgl_la-font.Tpo -c -o libmgl_la-font.lo `test -f 'font.cpp' || echo '$(srcdir)/'`font.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-font.Tpo $(DEPDIR)/libmgl_la-font.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='font.cpp' object='libmgl_la-font.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-font.lo `test -f 'font.cpp' || echo '$(srcdir)/'`font.cpp
-
-libmgl_la-opengl.lo: opengl.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-opengl.lo -MD -MP -MF $(DEPDIR)/libmgl_la-opengl.Tpo -c -o libmgl_la-opengl.lo `test -f 'opengl.cpp' || echo '$(srcdir)/'`opengl.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-opengl.Tpo $(DEPDIR)/libmgl_la-opengl.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='opengl.cpp' object='libmgl_la-opengl.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-opengl.lo `test -f 'opengl.cpp' || echo '$(srcdir)/'`opengl.cpp
-
-libmgl_la-other.lo: other.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-other.lo -MD -MP -MF $(DEPDIR)/libmgl_la-other.Tpo -c -o libmgl_la-other.lo `test -f 'other.cpp' || echo '$(srcdir)/'`other.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-other.Tpo $(DEPDIR)/libmgl_la-other.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='other.cpp' object='libmgl_la-other.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-other.lo `test -f 'other.cpp' || echo '$(srcdir)/'`other.cpp
-
-libmgl_la-parser.lo: parser.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-parser.lo -MD -MP -MF $(DEPDIR)/libmgl_la-parser.Tpo -c -o libmgl_la-parser.lo `test -f 'parser.cpp' || echo '$(srcdir)/'`parser.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-parser.Tpo $(DEPDIR)/libmgl_la-parser.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='parser.cpp' object='libmgl_la-parser.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-parser.lo `test -f 'parser.cpp' || echo '$(srcdir)/'`parser.cpp
-
-libmgl_la-tex_table.lo: tex_table.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-tex_table.lo -MD -MP -MF $(DEPDIR)/libmgl_la-tex_table.Tpo -c -o libmgl_la-tex_table.lo `test -f 'tex_table.cpp' || echo '$(srcdir)/'`tex_table.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-tex_table.Tpo $(DEPDIR)/libmgl_la-tex_table.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='tex_table.cpp' object='libmgl_la-tex_table.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-tex_table.lo `test -f 'tex_table.cpp' || echo '$(srcdir)/'`tex_table.cpp
-
-libmgl_la-pde.lo: pde.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-pde.lo -MD -MP -MF $(DEPDIR)/libmgl_la-pde.Tpo -c -o libmgl_la-pde.lo `test -f 'pde.cpp' || echo '$(srcdir)/'`pde.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-pde.Tpo $(DEPDIR)/libmgl_la-pde.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pde.cpp' object='libmgl_la-pde.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-pde.lo `test -f 'pde.cpp' || echo '$(srcdir)/'`pde.cpp
-
-libmgl_la-pixel.lo: pixel.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-pixel.lo -MD -MP -MF $(DEPDIR)/libmgl_la-pixel.Tpo -c -o libmgl_la-pixel.lo `test -f 'pixel.cpp' || echo '$(srcdir)/'`pixel.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-pixel.Tpo $(DEPDIR)/libmgl_la-pixel.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pixel.cpp' object='libmgl_la-pixel.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-pixel.lo `test -f 'pixel.cpp' || echo '$(srcdir)/'`pixel.cpp
-
-libmgl_la-plot.lo: plot.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-plot.lo -MD -MP -MF $(DEPDIR)/libmgl_la-plot.Tpo -c -o libmgl_la-plot.lo `test -f 'plot.cpp' || echo '$(srcdir)/'`plot.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-plot.Tpo $(DEPDIR)/libmgl_la-plot.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='plot.cpp' object='libmgl_la-plot.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-plot.lo `test -f 'plot.cpp' || echo '$(srcdir)/'`plot.cpp
-
-libmgl_la-prim.lo: prim.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-prim.lo -MD -MP -MF $(DEPDIR)/libmgl_la-prim.Tpo -c -o libmgl_la-prim.lo `test -f 'prim.cpp' || echo '$(srcdir)/'`prim.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-prim.Tpo $(DEPDIR)/libmgl_la-prim.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='prim.cpp' object='libmgl_la-prim.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-prim.lo `test -f 'prim.cpp' || echo '$(srcdir)/'`prim.cpp
-
-libmgl_la-surf.lo: surf.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-surf.lo -MD -MP -MF $(DEPDIR)/libmgl_la-surf.Tpo -c -o libmgl_la-surf.lo `test -f 'surf.cpp' || echo '$(srcdir)/'`surf.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-surf.Tpo $(DEPDIR)/libmgl_la-surf.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='surf.cpp' object='libmgl_la-surf.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-surf.lo `test -f 'surf.cpp' || echo '$(srcdir)/'`surf.cpp
-
-libmgl_la-vect.lo: vect.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-vect.lo -MD -MP -MF $(DEPDIR)/libmgl_la-vect.Tpo -c -o libmgl_la-vect.lo `test -f 'vect.cpp' || echo '$(srcdir)/'`vect.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-vect.Tpo $(DEPDIR)/libmgl_la-vect.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vect.cpp' object='libmgl_la-vect.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-vect.lo `test -f 'vect.cpp' || echo '$(srcdir)/'`vect.cpp
-
-libmgl_la-volume.lo: volume.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-volume.lo -MD -MP -MF $(DEPDIR)/libmgl_la-volume.Tpo -c -o libmgl_la-volume.lo `test -f 'volume.cpp' || echo '$(srcdir)/'`volume.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-volume.Tpo $(DEPDIR)/libmgl_la-volume.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='volume.cpp' object='libmgl_la-volume.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-volume.lo `test -f 'volume.cpp' || echo '$(srcdir)/'`volume.cpp
-
-libmgl_la-export_3d.lo: export_3d.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_la-export_3d.lo -MD -MP -MF $(DEPDIR)/libmgl_la-export_3d.Tpo -c -o libmgl_la-export_3d.lo `test -f 'export_3d.cpp' || echo '$(srcdir)/'`export_3d.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_la-export_3d.Tpo $(DEPDIR)/libmgl_la-export_3d.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='export_3d.cpp' object='libmgl_la-export_3d.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmgl_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_la-export_3d.lo `test -f 'export_3d.cpp' || echo '$(srcdir)/'`export_3d.cpp
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(LTLIBRARIES)
-installdirs:
- for dir in "$(DESTDIR)$(libdir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
- mostlyclean-am
-
-distclean: distclean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am: install-libLTLIBRARIES
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-libLTLIBRARIES
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libLTLIBRARIES clean-libtool ctags distclean \
- distclean-compile distclean-generic distclean-libtool \
- distclean-tags distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am \
- install-libLTLIBRARIES install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-libLTLIBRARIES
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/src/addon.cpp b/src/addon.cpp
new file mode 100644
index 0000000..861263b
--- /dev/null
+++ b/src/addon.cpp
@@ -0,0 +1,236 @@
+/***************************************************************************
+ * addon.cpp is part of Math Graphic Library
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+#include <stdarg.h>
+#ifdef WIN32
+#include <io.h>
+#include <direct.h>
+#else
+#include <unistd.h>
+#endif
+#include <string.h>
+#include "mgl/addon.h"
+#include "mgl/data.h"
+//---------------------------------------------------------------------------
+void mgl_strcls(char *str)
+{
+ unsigned len = strlen(str),i,n;
+ char *tmp = new char[len];
+ for(i=0;i<len;i++)
+ {
+ if(i<len-1 && str[i]==' ' && str[i+1]==' ')
+ continue;
+ tmp[i] = str[i];
+ }
+ for(n=0;n<strlen(tmp);n++) if(tmp[n]!=' ') break;
+ for(i=strlen(tmp)-1;i>0;i--) if(tmp[i]!=' ') break;
+ tmp[i+1]=0; strcpy(str,&(tmp[n]));
+ delete []tmp;
+}
+//---------------------------------------------------------------------------
+int mgl_strpos(const char *str,char *fnd)
+{
+ const char *p=strstr(str,fnd);
+ int res;
+ if(p) res = p-str;
+ else res = -1;
+ return res;
+}
+//---------------------------------------------------------------------------
+int mgl_chrpos(const char *str,char ch)
+{
+ const char *p=strchr(str,ch);
+ int res;
+ if(p) res = p-str;
+ else res = -1;
+ return res;
+}
+//---------------------------------------------------------------------------
+char *mgl_fgetstr(FILE *fp)
+{
+ static char s[256];
+ do
+ {
+ if(!fgets(s,256,fp)) break;
+ mgl_strtrim(s);
+ // strlwr(s);
+ } while(!feof(fp) && (s[0]==0 || s[0]=='%' || s[0]=='#'));
+ return s;
+}
+//---------------------------------------------------------------------------
+bool mgl_istrue(char ch)
+{ return (ch=='1' || ch=='t' || ch=='+' || ch=='v'); }
+//---------------------------------------------------------------------------
+void mgl_test(const char *str, ...)
+{
+ char buf[256];
+ va_list lst;
+ va_start(lst,str);
+ vsprintf(buf,str,lst);
+ va_end(lst);
+ printf("TEST: %s\n",buf);
+ fflush(stdout);
+}
+//---------------------------------------------------------------------------
+void mgl_info(const char *str, ...)
+{
+ char buf[256];
+ va_list lst;
+ va_start(lst,str);
+ vsprintf(buf,str,lst);
+ va_end(lst);
+ printf("%s",buf);
+ FILE *fp = fopen("info.txt","at");
+ fprintf(fp,"%s",buf);
+ fclose(fp);
+}
+//---------------------------------------------------------------------------
+FILE *mgl_next_data(const char *fname,int p)
+{
+ char *s;
+ int len;
+ static int pos=0;
+ static char path[256];
+
+ if(p>0) pos = p;
+ if(fname==NULL) return NULL;
+ if(pos==0) { if(!getcwd(path,256)) return 0; } // remember ini dyrectory
+ else { if(chdir(path)==-1) return 0; }
+
+ // read the initial (common) date from "mbrs.ini"
+ FILE *fp=fopen(fname,"rt");
+ if(fp==NULL) return NULL;
+ fseek(fp,0,SEEK_END);
+ len = ftell(fp);
+ if(pos>=len) // no more data
+ { fclose(fp); return NULL; }
+ fseek(fp,pos,SEEK_SET);
+ //printf("pos 1 = %d\t",pos);
+ do
+ {
+ s = mgl_fgetstr(fp);
+ fflush(stdout);
+ if(s[0]=='$' || s[1]=='$' || s[3]=='$')
+ { fclose(fp); return NULL; }
+ } while(!feof(fp) && (s[0]!='-' || s[1]!='-' || s[3]!='-'));
+ if(feof(fp)) // no more data
+ { fclose(fp); return NULL; }
+ return fp;
+}
+//---------------------------------------------------------------------------
+bool mglDifrGrid(dual *a,int n,dual q,int Border,dual *b,dual *d,int kk)
+{
+ register int i,k;
+ // if(n<=0 || q>=0.5) return false;
+ dual adt = dual(0.,1.)*q;
+
+ memcpy(b,a,n*sizeof(dual));
+ for(k=kk;k>0;k--) // 3 iterations
+ {
+ for(i=1;i<n-1;i++)
+ d[i] = a[i] + adt*(b[i-1]+b[i+1]-2.*b[i])/double(k);
+ memcpy(b,d,n*sizeof(dual));
+ switch(Border)
+ {
+ case 0: // zero at border
+ b[0] = 0; b[n-1] = 0; break;
+ case 1: // constant at border
+ b[0] = b[1]; b[n-1] = b[n-2]; break;
+ case 2: // linear at border
+ b[0] = 2.*b[1]-b[2];
+ b[n-1] = 2.*b[n-2]-b[n-3];
+ break;
+ case 3: // square at border
+ b[0] = b[3]+3.*(b[1]-b[2]);
+ b[n-1] = b[n-4]+3.*(b[n-2]-b[n-3]);
+ break;
+ case -1: // exponent at border
+ b[0] = norm(b[2])<norm(b[1]) ? b[1] : b[1]*b[1]/b[2];
+ b[n-1] = norm(b[n-3])<norm(b[n-2]) ? b[n-2] : b[n-2]*b[n-2]/b[n-3];
+ break;
+ case -2: // gaussian at border
+ b[0] = norm(b[2])<norm(b[1]) ? b[3] : pow(b[1]/b[2],3)*b[3];
+ b[n-1] = norm(b[n-3])<norm(b[n-2]) ? b[n-4] : pow(b[n-2]/b[n-3],3)*b[n-4];
+ break;
+ }
+ }
+ memcpy(a,b,n*sizeof(dual));
+ return true;
+}
+//----------------------------------------------------------------------------
+bool mglDifrAxial(dual *a, int n, dual q, int Border,dual *b, dual *d, int kk, double di)
+{
+ register int i,k,ii = di<0 ? -int(floor(di)) : 0;
+ dual adt = dual(0.,1.)*q;
+ register double dd,ff= di==floor(di) ? 4. : 2.,gg;
+
+ memcpy(b,a,n*sizeof(dual));
+ for(k=kk;k>0;k--) // kk iterations
+ {
+ d[ii] = a[ii] + adt*(b[ii+1]-b[ii])*(ff/k);
+ for(i=ii+1;i<n-1;i++)
+ {
+ dd = i+di;
+ dd = 1./(sqrt(dd*dd+1.)+dd); // corrections for "axiality"
+ gg = 1+dd*dd;
+ d[i] = a[i] + adt*( b[i-1]*((gg-dd)/k) -
+ b[i]*(gg*2./k) + b[i+1]*((gg+dd)/k) );
+ }
+ memcpy(b,d,n*sizeof(dual));
+ switch(Border)
+ {
+ case 0: // zero at border
+ b[n-1] = 0; break;
+ case 1: // constant at border
+ b[n-1] = b[n-2]; break;
+ case 2: // linear at border
+ b[n-1] = -b[n-3] + 2.*b[n-2];
+ break;
+ case 3: // square at border
+ b[n-1] = b[n-4] + 3.*(b[n-2]-b[n-3]);
+ break;
+ case -1: // exponent at border
+ b[n-1] = norm(b[n-3])<norm(b[n-2]) ? b[n-2] : b[n-2]*b[n-2]/b[n-3];
+ break;
+ case -2: // gaussian at border
+ b[n-1] = norm(b[n-3])<norm(b[n-2]) ? b[n-4] : pow(b[n-2]/b[n-3],3)*b[n-4];
+ break;
+ }
+ }
+ memcpy(a,b,n*sizeof(dual));
+ return true;
+}
+//----------------------------------------------------------------------------
+double mgl_gauss_rnd()
+{
+ double v1,v2;
+ v1 = mgl_rnd();
+ v2 = mgl_rnd();
+ return v1!=0 ? sqrt(-2.*log(v1))*cos(2*M_PI*v2) : 0;
+}
+//----------------------------------------------------------------------------
+void mgl_fft_freq(double *freq,unsigned nn)
+{
+ for(unsigned i=0;i<=nn/2;i++)
+ {
+ freq[i] = i;
+ if(i>0) freq[nn-i] = -(double)(i);
+ }
+}
+//----------------------------------------------------------------------------
diff --git a/src/axis.cpp b/src/axis.cpp
index d5641f6..8aa4e21 100644
--- a/src/axis.cpp
+++ b/src/axis.cpp
@@ -23,10 +23,24 @@
#include <stdlib.h>
#include "mgl/data.h"
#include "mgl/canvas.h"
+#include "mgl/prim.h"
//-----------------------------------------------------------------------------
#define islog(a, b) (((a)>0 && (b)>10*(a)) || ((b)<0 && (a)<10*(b)))
#define sign(a) ((a)<0 ? -1:1)
-
+//-----------------------------------------------------------------------------
+#ifdef WIN32 // NOTE: this is not thread safe!
+inline struct tm* localtime_r (const time_t *clock, struct tm *result)
+{ if (!clock || !result) return NULL;
+ memcpy(result,localtime(clock),sizeof(*result));
+ return result; }
+#endif
+//-----------------------------------------------------------------------------
+long mgl_have_color(const char *stl)
+{
+ register long i,j;
+ if(stl) for(i=j=0;stl[i];i++) if(strchr(MGL_COLORS,stl[i])) j++;
+ return j;
+}
//-----------------------------------------------------------------------------
wchar_t *mgl_wcsdup(const wchar_t *s)
{
@@ -184,17 +198,64 @@ void mglCanvas::SetTickTempl(char dir, const char *t)
else if(strlen(t)<255) mbstowcs(aa.t,t,strlen(t)+1);
}
//-----------------------------------------------------------------------------
+double mgl_adj_val(double v,float *ds=0)
+{
+ float n = floor(log10(v)), s;
+ v = floor(v*pow(10.,-n)); n = pow(10.,n);
+
+ if(v==1) { v = n/5; s=n/10; }
+ else if(v<4){ v = n/2; s=n/10; }
+ else if(v<7){ v = n; s=n/5; }
+ else { v = 2*n; s=n/2; }
+ if(ds) *ds=s;
+ return v;
+}
+//-----------------------------------------------------------------------------
void mglCanvas::SetTickTime(char dir, float d, const char *t)
{
if(!strchr("xyzca",dir)) return;
mglAxis &aa = (dir=='x' ? ax : (dir=='y' ? ay : (dir=='z' ? az : ac)));
+ UpdateAxis();
- if(!t || !t[0]) // adjust template
+ time_t tt; tm t1,t2;
+ tt=aa.v1; localtime_r(&tt,&t1);
+ tt=aa.v2; localtime_r(&tt,&t2);
+ if(aa.v1<aa.v2) // adjust periodic values
+ {
+ if(abs(t1.tm_year-t2.tm_year)==1) t2.tm_yday += 365;
+ if(abs(t1.tm_yday-t2.tm_yday)==1) t2.tm_hour += 24;
+ if(abs(t1.tm_hour-t2.tm_hour)==1) t2.tm_min += 60;
+ if(abs(t1.tm_min-t2.tm_min)==1) t2.tm_sec += 60;
+ }
+ else
{
- time_t tt; tm t1,t2;
- tt=aa.v1; localtime_r(&tt,&t1);
- tt=aa.v2; localtime_r(&tt,&t2);
- t = t1.tm_yday!=t2.tm_yday ? "%x" : "%X";
+ if(abs(t1.tm_year-t2.tm_year)==1) t1.tm_yday += 365;
+ if(abs(t1.tm_yday-t2.tm_yday)==1) t1.tm_hour += 24;
+ if(abs(t1.tm_hour-t2.tm_hour)==1) t1.tm_min += 60;
+ if(abs(t1.tm_min-t2.tm_min)==1) t1.tm_sec += 60;
+ }
+ if(!t || !t[0]) // adjust template
+ {
+ t = fabs(t1.tm_yday-t2.tm_yday)>1 ? "%x" : "%X";
+ if(fabs(t1.tm_year-t2.tm_year)>3) t = "%Y";
+ }
+ if(d==0) // try to select opimal step
+ {
+
+ if(fabs(t1.tm_year-t2.tm_year)>1)
+ d = 365.25*24*3600*mgl_adj_val(fabs(t1.tm_year-t2.tm_year)); // number of second in year NOTE: improve it
+ // NOTE here should be months ... but it is too unregular ... so omit it now
+// else if(t1.tm_mon!=t2.tm_mon) d = 30*24*3600; // number of second in month
+ else if(fabs(t1.tm_yday-t2.tm_yday)>1) // localtime("%x") cannot print time < 1 day
+ { d = 24*3600*mgl_adj_val(fabs(t1.tm_yday-t2.tm_yday)); d = d>24*3600?d:24*3600; }
+ else if(fabs(t1.tm_hour-t2.tm_hour)>1)
+ d = 3600*mgl_adj_val(fabs(t1.tm_hour-t2.tm_hour));
+ else if(fabs(t1.tm_min-t2.tm_min)>1)
+ d = 60*mgl_adj_val(fabs(t1.tm_min-t2.tm_min));
+ else if(fabs(t1.tm_sec-t2.tm_sec)>1) // localtime("%X") cannot print time < 1 sec
+ { d = mgl_adj_val(fabs(t1.tm_sec-t2.tm_sec)); d = d>1?d:1; }
+ else // adjust msec. NOTE: this is not supported by localtime() !!!
+ d = mgl_adj_val(fabs(aa.v2-aa.v1));
}
aa.dv = d; aa.f = 1; aa.txt.clear();
@@ -221,7 +282,7 @@ void mglCanvas::SetTickTime(char dir, float d, const char *t)
//-----------------------------------------------------------------------------
void mglCanvas::AdjustTicks(const char *dir, bool force)
{
- UpdateAxis(); TuneTicks = true;
+ UpdateAxis(); //TuneTicks = true;
if(strchr(dir,'x'))
{ if(force) ax.d=0; AdjustTicks(ax,fx); }
if(strchr(dir,'y'))
@@ -241,15 +302,8 @@ void mglCanvas::AdjustTicks(mglAxis &aa, bool ff)
else if(aa.d>0)
{ aa.dv = aa.d; aa.ds = aa.d/(fabs(aa.ns)+1); }
else if(aa.d>-1.5) // like =0 or =-1
- {
- n = floor(log10(d)); d = floor(d*pow(10.,-n));
- n = pow(10.,n); aa.o=0;
- if(d==1) { aa.dv = n/5; aa.ds=n/10; }
- else if(d<4){ aa.dv = n/2; aa.ds=n/10; }
- else if(d<7){ aa.dv = n; aa.ds=n/5; }
- else { aa.dv = 2*n; aa.ds=n/2; }
- }
- else // TODO: Check it!!!
+ { aa.dv = mgl_adj_val(d,&aa.ds); aa.o=0; }
+ else
{
d /= -aa.d; n = floor(log10(d));
int k = int(d*pow(10.,-n)+0.5);
@@ -262,45 +316,45 @@ void mglCanvas::AdjustTicks(mglAxis &aa, bool ff)
int mgl_tick_ext(float a, float b, wchar_t s[32], float &v)
{
int kind = 0;
- if(fabs(a-b)<0.01*fabs(a))
+ if(fabs(a-b)<=0.001*fabs(a))
{
kind = 1;
v = fabs(a-b);
- if(v>100.f)
+ if(v>1000.f)
{
int k=int(log10(v)-0.01);
kind=3; v=mgl_ipow(10.,k);
- mglprintf(s, 32, L"(@{\\times{}10^{%d}})", k);
+ mglprintf(s, 32, L" (@{\\times{}10^{%d}})", k);
}
- if(v<1e-2f)
+ if(v<0.02f)
{
int k=int(log10(v)-0.01)-1;
kind=3; v=mgl_ipow(10.,k);
- mglprintf(s, 32, L"(@{\\times{}10^{%d}})", k);
+ mglprintf(s, 32, L" (@{\\times{}10^{%d}})", k);
}
}
else
{
v = fabs(b)>fabs(a)?fabs(b):fabs(a);
- if(v>100.f)
+ if(v>=1000.f)
{
kind = 2;
int k=int(log10(v)-0.01);
v=mgl_ipow(10.,k);
- mglprintf(s, 32, L"\\times 10^{%d}", k);
+ mglprintf(s, 32, L" \\times 10^{%d}", k);
}
- if(v<1e-2f)
+ if(v<=1e-3f)
{
kind = 2;
int k=int(log10(v)-0.01)-1;
v=mgl_ipow(10.,k);
- mglprintf(s, 32, L"\\times 10^{%d}", k);
+ mglprintf(s, 32, L" \\times 10^{%d}", k);
}
}
return kind;
}
//-----------------------------------------------------------------------------
-void mgl_tick_text(float z, float z0, float d, float v, int kind, wchar_t str[64])
+void mgl_tick_text(float z, float z0, float d, float v, int kind, wchar_t str[64], bool tune)
{
float u = fabs(z)<d ? 0:z;
if((kind&1) && z>z0) u = fabs(z-z0)<d ? 0:(z-z0);
@@ -308,16 +362,18 @@ void mgl_tick_text(float z, float z0, float d, float v, int kind, wchar_t str[64
if((kind&1) && z>z0)
{
int n1,n2;
- mglprintf(str, 64, fabs(u)<1 ? L"@{(+%.2g)}" : L"@{(+%.3g)}",u);
+ mglprintf(str, 64, L"@{(+%.2g)}",u);
+// mglprintf(str, 64, fabs(u)<1 ? L"@{(+%.2g)}" : L"@{(+%.3g)}",u);
n1=wcslen(str); mglprintf(str, 64, L"@{(+%g)}",u); n2=wcslen(str);
- if(n1<n2) mglprintf(str, 64, fabs(u)<1 ? L"@{(+%.2g)}" : L"@{(+%.3g)}",u);
+// if(n1<n2) mglprintf(str, 64, fabs(u)<1 ? L"@{(+%.2g)}" : L"@{(+%.3g)}",u);
+ if(n1<n2) mglprintf(str, 64, L"@{(+%.2g)}",u);
}
else
{
int n1,n2;
mglprintf(str, 64, fabs(u)<1 ? L"%.2g" : L"%.3g",u);
n1=wcslen(str); mglprintf(str, 64, L"%g",u); n2=wcslen(str);
- if(n1<n2) mglprintf(str, 64, fabs(u)<1 ? L"%.2g" : L"%.3g",u);
+ if(n1<n2 && tune) mglprintf(str, 64, fabs(u)<1 ? L"%.2g" : L"%.3g",u);
}
}
//-----------------------------------------------------------------------------
@@ -331,23 +387,34 @@ void mglCanvas::LabelTicks(mglAxis &aa)
wchar_t buf[64];
float v,v0,v1,w;
+ int d,ds;
if(aa.f) return;
aa.txt.clear();
if(aa.dv==0 && aa.v1>0) // positive log-scale
{
v0 = exp(M_LN10*floor(0.1+log10(aa.v1)));
+ ds = int(floor(0.1+log10(aa.v2/v0))/7)+1;
for(v=v0;v<=aa.v2*MGL_FLT_EPS;v*=10) if(v*MGL_FLT_EPS>=aa.v1)
{
- mglprintf(buf,64,L"10^{%d}",int(floor(0.1+log10(v))));
+ d = int(floor(0.1+log10(v)));
+ if(d==0) wcscpy(buf,L"1");
+ else if(d==1) wcscpy(buf,L"10");
+ else mglprintf(buf,64,L"10^{%d}",d);
+ if(d%ds!=0) *buf=0; // remove too often log ticks
aa.AddLabel(buf,v);
}
}
else if(aa.dv==0 && aa.v2<0) // negative log-scale
{
v0 = -exp(M_LN10*floor(0.1+log10(-aa.v2)));
+ ds = int(floor(0.1+log10(aa.v1/v0))/7)+1;
for(v=v0;v>=aa.v1*MGL_FLT_EPS;v*=10) if(v*MGL_FLT_EPS<=aa.v2)
{
- mglprintf(buf,64,L"-10^{%d}",int(floor(0.1+log10(-v))));
+ d = int(floor(0.1+log10(-v)));
+ if(d==0) wcscpy(buf,L"-1");
+ else if(d==1) wcscpy(buf,L"-10");
+ else mglprintf(buf,64,L"-10^{%d}",d);
+ if(d%ds!=0) *buf=0; // remove too often log ticks
aa.AddLabel(buf,v);
}
}
@@ -355,8 +422,7 @@ void mglCanvas::LabelTicks(mglAxis &aa)
{
int kind=0;
wchar_t s[32]=L"";
- if(aa.t[0]==0) kind = mgl_tick_ext(aa.v2, aa.v1, s, w);
- if(!TuneTicks) kind = 0;
+ if(aa.t[0]==0 && TuneTicks) kind = mgl_tick_ext(aa.v2, aa.v1, s, w);
v0 = isnan(aa.o) ? aa.v0 : aa.o;
if(aa.v2>aa.v1)
@@ -369,14 +435,14 @@ void mglCanvas::LabelTicks(mglAxis &aa)
if(aa.t[0])
mglprintf(buf, 64, aa.t, fabs(v)<aa.dv/100 ? 0 : v);
else
- mgl_tick_text(v,v0,aa.dv/100,w,kind,buf);
+ mgl_tick_text(v,v0,aa.dv/100,w,kind,buf,TuneTicks);
mgl_wcstrim(buf); aa.AddLabel(buf,v);
}
if(kind&2) aa.AddLabel(s,FactorPos*(aa.v2-aa.v1)+aa.v1);
}
}
//-----------------------------------------------------------------------------
-void mglCanvas::Axis(const char *dir, bool adjust)
+void mglCanvas::Axis(const char *dir, const char *stl)
{
if(!dir || !dir[0]) return;
bool text = !strchr(dir,'_');
@@ -384,23 +450,24 @@ void mglCanvas::Axis(const char *dir, bool adjust)
char arr=0;
for(unsigned i=0;i<strlen(ar);i++)
if(strchr(dir,ar[i])) { arr=ar[i]; break; }
+ bool adjust = stl && strchr(stl,'a');
AdjustTicks(dir,adjust);
// TODO: Ternary axis labeling ...
- if(strchr(dir,'x')) DrawAxis(ax, text, arr);
- if(strchr(dir,'z')) DrawAxis(az, text, arr);
+ if(strchr(dir,'x')) DrawAxis(ax, text, arr, stl);
+ if(strchr(dir,'z')) DrawAxis(az, text, arr, stl);
if((TernAxis&3))
{
- mglAxis ty(ay); ty.ch='T';
- ty.dir = mglPoint(-1,1); ty.org = mglPoint(1,0,ay.org.z);
- DrawAxis(ty, text, arr); ty.ch='t';
- ty.dir = mglPoint(0,-1); ty.org = mglPoint(0,1,ay.org.z);
- DrawAxis(ty, text, arr);
+ mglAxis ty(ay); ty.ch='T';
+ ty.dir = mglPoint(-1,1); ty.org = mglPoint(1,0,ay.org.z);
+ DrawAxis(ty, text, arr, stl); ty.ch='t';
+ ty.dir = mglPoint(0,-1); ty.org = mglPoint(0,1,ay.org.z);
+ DrawAxis(ty, text, arr, stl);
}
- else if(strchr(dir,'y')) DrawAxis(ay, text, arr);
+ else if(strchr(dir,'y')) DrawAxis(ay, text, arr, stl);
}
//-----------------------------------------------------------------------------
-void mglCanvas::DrawAxis(mglAxis &aa, bool text, char arr)
+void mglCanvas::DrawAxis(mglAxis &aa, bool text, char arr,const char *stl)
{
if(strchr("xyz",aa.ch))
aa.org = mglPoint(GetOrgX(aa.ch), GetOrgY(aa.ch), GetOrgZ(aa.ch));
@@ -413,9 +480,10 @@ void mglCanvas::DrawAxis(mglAxis &aa, bool text, char arr)
mglPoint av=(Min+Max)/2, dv,da,db, p;
dv = mglPoint(sign(av.x-o.x), sign(av.y-o.y), sign(av.z-o.z));
da = aa.a*(dv*aa.a); db = aa.b*(dv*aa.b);
- SetPenPal(AxisStl);
register long i,j,k1,k2;
+ SetPenPal(mgl_have_color(stl) ? stl:AxisStl);
+
p = o + d*aa.v1; k1 = AddPnt(p,CDef,q,-1,3);
for(i=1;i<31;i++) // axis itself
{
@@ -435,16 +503,17 @@ void mglCanvas::DrawAxis(mglAxis &aa, bool text, char arr)
if(k2>0) for(i=0;i<k2;i++)
{
v = aa.txt[i].val; u = fabs(v);
- tick_draw(o+d*v, da, db, 0);
+ if(v>=aa.v1 && v<=aa.v2) tick_draw(o+d*v, da, db, 0, stl);
+ else tick_draw(o+d*v, da, db, 0, " ");
if(aa.dv==0 && fabs(u-exp(M_LN10*floor(0.1+log10(u))))<0.01*u)
- for(j=2;j<10 && v*j<aa.v2;j++) tick_draw(o+d*(v*j),da,db,1);
+ for(j=2;j<10 && v*j<aa.v2;j++) tick_draw(o+d*(v*j),da,db,1,stl);
}
if(aa.ds>0)
{
if(aa.v2>aa.v1) v0 = v0 - aa.ds*floor((v0-aa.v1)/aa.ds+1e-3);
else v0 = v0 - aa.ds*floor((v0-aa.v2)/aa.ds+1e-3);
if(v0+aa.ds!=v0 && aa.v2+aa.ds!=aa.v2)
- for(v=v0;v<aa.v2;v+=aa.ds) tick_draw(o+d*v,da,db,1);
+ for(v=v0;v<aa.v2;v+=aa.ds) tick_draw(o+d*v,da,db,1,stl);
}
if(text) DrawLabels(aa);
}
@@ -460,48 +529,66 @@ void mglCanvas::DrawLabels(mglAxis &aa)
register long i,n = aa.txt.size();
char pos[4]="t:C";
- if(get(MGL_DISABLE_SCALE) && ((aa.dir.x==0 && aa.org.x<0) || (aa.dir.y==0 && aa.org.y>0))) pos[0]='T';
- if(aa.ch=='T') pos[0]='t';
- float *w=new float[n], h = TextHeight(FontDef,-1)/4, c=NAN, l=NAN, tet=0, v; // find sizes
+// if(get(MGL_DISABLE_SCALE) && ((aa.dir.x==0 && aa.org.x<0) || (aa.dir.y==0 && aa.org.y>0))) pos[0]='T';
+ if(aa.ch=='c') pos[0]=(aa.ns==0 || aa.ns==3)?'t':'T';
+ if(aa.ch=='T') pos[0]='T';
+ float *w=new float[n], h = TextHeight(FontDef,-1)/4, c=NAN, l=NAN, tet=0, v, vv; // find sizes
long *kk=new long[n];
for(i=0;i<n;i++)
{
w[i] = TextWidth(aa.txt[i].text.c_str(),FontDef,-1)/2;
- v = aa.txt[i].val; kk[i] = AddPnt(o+d*v,-1,d,0,3);
- q=p; p = GetPnt(kk[i]); v = i>0 ? (p-q).norm() : NAN;
- c = c<v ? c:v; l = l>w[i] ? l:w[i];
- }
- c /= 1.1;
- if(get(MGL_ENABLE_RTEXT) && get(MGL_TICKS_ROTATE) && l>c) // try rotate first
- { tet = c>h ? asin(h*1.1/c) : M_PI/2; pos[2]='L';
- l=h/sin(tet); for(i=0;i<n;i++) w[i]=l; }
- // TODO: do smater points exclusion (i.e. longest and so on)
- long k = get(MGL_TICKS_SKIP) ? 1+l/c : 1;
-// q = mglPoint(d.x*cos(tet)+d.y*sin(tet),d.y*cos(tet)-d.x*sin(tet));
+ kk[i] = AddPnt(o+d*aa.txt[i].val,-1,d,0,7);
+ }
+
+ for(l=0,c=1e7,i=0;i<n-1;i++)
+ {
+ // exclude factors
+ if(aa.ch!='c' && (aa.txt[i].val<aa.v1 || aa.txt[i+1].val<aa.v1 || aa.txt[i].val>aa.v2 || aa.txt[i+1].val>aa.v2))
+ continue;
+ v = (GetPntP(kk[i+1])-GetPntP(kk[i])).norm(); // distance between ticks
+ vv = (w[i]+w[i+1])/2; // length of labels
+ if(v>0 && l < vv/v) l = vv/v;
+ if(c>v) c = v;
+ }
+ if(get(MGL_ENABLE_RTEXT) && get(MGL_TICKS_ROTATE) && l>1 && c>0) // try rotate first
+ { tet = c>1.1*h ? asin(1.1*h/c) : M_PI/2; pos[2]=aa.ch=='c'?'R':'L';
+ l=0.99*h/sin(tet)/c; for(i=0;i<n;i++) w[i]=l*c; }
+ // TODO: do clever points exclusion (i.e. longest and so on)
+ long k = get(MGL_TICKS_SKIP) ? 1+l : 1;
if(n>0) for(i=0;i<n;i++)
{
+ if(kk[i]<0) continue; // should be never here?!
c = aa.txt[i].val;
if(c>aa.v1 && c<aa.v2 && i%k!=0) continue;
p = o+d*c; nn = s-o; ScalePoint(p,nn);
- if(!get(MGL_DISABLE_SCALE)) pos[0]=(nn.y>0 || nn.x<0) ? 'T':'t';
- if(aa.ch=='T') pos[0]='t';
- mglPnt &qq = Pnt[kk[i]]; v = qq.u;
- qq.u = v*cos(tet) + qq.v*sin(tet);
- qq.v = qq.v*cos(tet) - v*sin(tet);
- text_plot(kk[i], aa.txt[i].text.c_str(), pos, -1, 0.07);
+ mglPnt &qq = Pnt[kk[i]];
+ float ax=qq.u*cos(tet) + qq.v*sin(tet), ay=qq.v*cos(tet) - qq.u*sin(tet);
+ if(qq.u*nn.x+qq.v*nn.y < ax*nn.x+ay*nn.y)
+ { ax=qq.u*cos(tet) - qq.v*sin(tet); ay=qq.v*cos(tet) + qq.u*sin(tet); }
+ qq.u = ax; qq.v = ay;
+
+ if(aa.ch=='c' && aa.txt[i].text[0]==' ') qq.u = qq.v = NAN;
+ if(!get(MGL_DISABLE_SCALE)) pos[0]=(qq.u*nn.y-qq.v*nn.x>0) ? 'T':'t';
+ if(aa.ch=='T' && pos[0]=='T') pos[0]='t';
+ if(aa.ch=='T' && pos[0]=='t') pos[0]='T';
+ text_plot(kk[i], aa.txt[i].text.c_str(), pos, -1, 0.07,CDef,tet?false:true);
}
delete []w; delete []kk;
}
//-----------------------------------------------------------------------------
-void mglCanvas::tick_draw(mglPoint o, mglPoint d1, mglPoint d2, int f)
+void mglCanvas::tick_draw(mglPoint o, mglPoint d1, mglPoint d2, int f, const char *stl)
{
if(TickLen==0) return;
+ // try to exclude ticks out of axis range
+ if(f && ((o.x-Min.x)*(o.x-Max.x)>0 || (o.y-Min.y)*(o.y-Max.y)>0 || (o.z-Min.z)*(o.z-Max.z)>0))
+ return;
float v = font_factor*TickLen/sqrt(1+f*st_t);
mglPoint p=o;
- long k1,k2,k3;
+ long k1,k2,k3=mgl_have_color(stl);
+
+ if(*TickStl && !f) SetPenPal(k3 ? stl:TickStl);
+ if(*SubTStl && f) SetPenPal(k3 ? stl:SubTStl);
- if(*TickStl && !f) SetPenPal(TickStl);
- if(*SubTStl && f) SetPenPal(SubTStl);
ScalePoint(o, d1, false); d1.Normalize();
ScalePoint(p, d2, false); d2.Normalize();
k2 = AddPnt(p, CDef, mglPoint(NAN), 0, 0);
@@ -556,55 +643,6 @@ void mglCanvas::DrawGrid(mglAxis &aa)
}
}
//-----------------------------------------------------------------------------
-void mglCanvas::Colorbar(const char *sch,int where)
-{ // â0â - right, â1â - left, â2â - above, â3â - under
- if(sch && strchr(sch,'>')) where = 0;
- if(sch && strchr(sch,'<')) where = 1;
- if(sch && strchr(sch,'^')) where = 2;
- if(sch && strchr(sch,'_')) where = 3;
- if(sch && strchr(sch,'A')) { Push(); Identity(); }
- Colorbar(where, where==0?1:0, where==2?1:0, 1, 1, AddTexture(sch));
- if(sch && strchr(sch,'A')) Pop();
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::Colorbar(int where, float x, float y, float w, float h, long s)
-{
- long n=256;
- mglData v(n);
- if(ac.d || Min.c*Max.c<=0) v.Fill(Min.c,Max.c);
- else if(Max.c>Min.c && Min.c>0)
- { v.Fill(log(Min.c), log(Max.c)); v.Modify("exp(u)"); }
- else if(Min.c<Max.c && Max.c<0)
- { v.Fill(log(-Min.c), log(-Max.c)); v.Modify("-exp(u)"); }
- float *c=new float[n];
- for(long i=0;i<n;i++) c[i] = GetC(s,v.a[i]);
- colorbar(&v, c, where, x, y, w, h);
- delete []c;
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::Colorbar(HCDT v, const char *sch,int where)
-{
- if(sch && strchr(sch,'>')) where = 0;
- if(sch && strchr(sch,'<')) where = 1;
- if(sch && strchr(sch,'^')) where = 2;
- if(sch && strchr(sch,'_')) where = 3;
- if(sch && strchr(sch,'A')) { Push(); Identity(); }
- Colorbar(v,sch,where, where==0?1:0, where==2?1:0, 1, 1);
- if(sch && strchr(sch,'A')) Pop();
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::Colorbar(HCDT v, const char *sch, int where, float x, float y, float w, float h)
-{
- float *c=new float[v->GetNx()];
- if(!sch || !(*sch)) sch = MGL_DEF_PAL;
- long s = AddTexture(sch); // TODO Check it
- int nc = GetNumPal(s*256);
- float dc = nc>1 ? 1/(MGL_FLT_EPS*(nc-1)):0;
- for(long i=0;i<v->GetNx();i++) c[i] = s+i*dc;
- colorbar(v, c, where, x, y, w, h);
- delete []c;
-}
-//-----------------------------------------------------------------------------
void mglCanvas::Label(char dir, const char *str, float pos, float shift)
{
unsigned s = strlen(str)+1;
@@ -636,7 +674,10 @@ void mglCanvas::Labelw(char dir, const wchar_t *text, float pos, float shift)
nn = mglPoint(ss.x-x0,0,ss.z-z0);
p = mglPoint(x0,t,z0); q = mglPoint(0,1,0);
if(TernAxis&3)
- { q = mglPoint(-1,1,0); pos=-pos; }
+ {
+ q = mglPoint(-1,1,0); pos=-pos;
+ nn = mglPoint((ss.x-x0)/2,(ss.y-y0)/2,ss.z-z0);
+ }
}
if(dir=='t' && (TernAxis&3))
{
@@ -659,7 +700,7 @@ void mglCanvas::Labelw(char dir, const wchar_t *text, float pos, float shift)
if(pos<-0.2) ff[1]='L'; if(pos>0.2) ff[1]='R';
strcpy(font,FontDef); strcat(font,ff);
strcat(font,nn.y>1e-5 || nn.x<0 ? "T":"t");
- text_plot(AddPnt(p,-1,q,0),text,font,-1.4,0.3+shift);
+ text_plot(AddPnt(p,-1,q,0,7),text,font,-1.4,0.3+shift);
}
//-----------------------------------------------------------------------------
void mglCanvas::Label(float x, float y, const char *str, const char *font, bool rel)
@@ -681,7 +722,7 @@ void mglCanvas::Labelw(float x, float y, const wchar_t *text, const char *font,
for(int i=0;f[i];i++) if(f[i]=='a' || f[i]=='A') f[i]=' ';
mglPoint p((Min.x+Max.x)/2+B.pf*(Max.x-Min.x)*(x-0.5),
(Min.y+Max.y)/2+B.pf*(Max.y-Min.y)*(y-0.5), Max.z);
- text_plot(AddPnt(p,-1,mglPoint(NAN),0),text,f,-1.4,1);
+ text_plot(AddPnt(p,-1,mglPoint(NAN),0,7),text,f,-1.4,1);
delete []f; fx=ox; fy=oy; fz=oz; Pop();
}
//-----------------------------------------------------------------------------
@@ -690,70 +731,161 @@ void mglCanvas::Box(const char *col, bool ticks)
mglPoint o = Org;
float tl=TickLen;
if(!ticks) TickLen=0;
- SetPenPal(col);
- Org = Min; Axis("xyz_");
+ Org = Min; Axis("xyz_",col);
if(TernAxis&1)
{
- Org.z=Max.z; Org.x=Max.x; Axis("xz_");
- Org.x=Min.x; Org.y=Max.y; Axis("z_");
+ Org.z=Max.z; Org.x=Max.x; Axis("xz_",col);
+ Org.x=Min.x; Org.y=Max.y; Axis("z_",col);
mglAxis ty(ay); ty.ch='T';
ty.dir = mglPoint(-1,1); ty.org = mglPoint(1,0,Max.z);
- DrawAxis(ty, false, 0); ty.ch='t';
+ DrawAxis(ty, false, 0,col); ty.ch='t';
ty.dir = mglPoint(0,-1); ty.org = mglPoint(0,1,Max.z);
- DrawAxis(ty, false, 0);
+ DrawAxis(ty, false, 0,col);
}
else if(TernAxis&2)
{
mglAxis ty(az);
ty.ch='T'; ty.a=mglPoint(1,0); ty.b=mglPoint(-1,1);
- ty.dir = mglPoint(-1,0,1); ty.org = mglPoint(1,0,Max.z);
- DrawAxis(ty, false, 0);
+ ty.dir = mglPoint(-1,0,1); ty.org = mglPoint(1,0,0);
+ DrawAxis(ty, false, 0,col);
ty.ch='t'; ty.a=mglPoint(0,1); ty.b=mglPoint(-1,1);
- ty.dir = mglPoint(0,-1,1); ty.org = mglPoint(0,1,Max.z);
- DrawAxis(ty, false, 0);
+ ty.dir = mglPoint(0,-1,1); ty.org = mglPoint(0,1,0);
+ DrawAxis(ty, false, 0,col);
}
else
{
- Org.z=Max.z; Axis("xy_");
- Org = Max; Axis("xyz_");
- Org.z=Min.z; Axis("xy_");
- Org.x=Min.x; DrawAxis(az,0,0);
- Org.x=Max.x; Org.y=Min.y; DrawAxis(az,0,0);
+ Org.z=Max.z; Axis("xy_",col);
+ Org = Max; Axis("xyz_",col);
+ Org.z=Min.z; Axis("xy_",col);
+ Org.x=Min.x; DrawAxis(az,0,0,col);
+ Org.x=Max.x; Org.y=Min.y; DrawAxis(az,0,0,col);
+ if(col && strchr(col,'@'))
+ {
+ // edge points
+ mglPoint p[8]={Min,Min,Min,Min,Max,Max,Max,Max},nan=mglPoint(NAN),o[8];
+ p[1].x=Max.x; p[2].y=Max.y; p[3].z=Max.z;
+ p[4].x=Min.x; p[5].y=Min.y; p[6].z=Min.z;
+ float zm=1e5; int im=0;
+ memcpy(o,p,8*sizeof(mglPoint));
+ for(int i=0;i<8;i++) // find deepest point
+ {
+ ScalePoint(p[i],nan,false);
+ if(p[i].z<zm) { zm=p[i].z; im=i; }
+ }
+ // now draw faces
+ char clr[5]="{y9}";
+ register int i; // first color used for faces, last one for edges
+ for(i=0;col[i];i++) if(strchr(MGL_COLORS,col[i]))
+ {
+ if(i>1 && col[i-1]=='{') { clr[1]=col[i]; clr[2]=col[i+1]; break; }
+ else { clr[0]=col[i]; clr[1]=0; break; }
+ }
+ mgl_facex(this, o[im].x, Min.y, Min.z, Max.y-Min.y, Max.z-Min.z, clr,0,0);
+ mgl_facey(this, Min.x, o[im].y, Min.z, Max.x-Min.x, Max.z-Min.z, clr,0,0);
+ mgl_facez(this, Min.x, Min.y, o[im].z, Max.x-Min.x, Max.y-Min.y, clr,0,0);
+ }
}
Org=o; TickLen=tl;
}
//-----------------------------------------------------------------------------
+void mglCanvas::Colorbar(const char *sch)
+{
+ bool in = sch && strchr(sch,'I');
+ float s=1/B.pf, x=1, y=0;
+ if(sch && strchr(sch,'>')) { x=in?(1+s)/2:1; y=0; }
+ if(sch && strchr(sch,'<')) { x=in?(1-s)/2:0; y=0; }
+ if(sch && strchr(sch,'^')) { x=0; y=in?(1+s)/2:1; }
+ if(sch && strchr(sch,'_')) { x=0; y=in?(1-s)/2:0; }
+ Colorbar(sch, x, y, 1, 1);
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::Colorbar(const char *sch, float x, float y, float w, float h)
+{
+ bool in = sch && strchr(sch,'I');
+ int where = 0; // â0â - right, â1â - left, â2â - above, â3â - under
+ if(sch && strchr(sch,'>')) where = in?1:0;
+ if(sch && strchr(sch,'<')) where = in?0:1;
+ if(sch && strchr(sch,'^')) where = in?3:2;
+ if(sch && strchr(sch,'_')) where = in?2:3;
+ if(sch && strchr(sch,'A')) { Push(); Identity(); }
+
+ long n=256, s = AddTexture(sch);
+ mglData v(n);
+ if(ac.d || Min.c*Max.c<=0) v.Fill(Min.c,Max.c);
+ else if(Max.c>Min.c && Min.c>0)
+ { v.Fill(log(Min.c), log(Max.c)); v.Modify("exp(u)"); }
+ else if(Min.c<Max.c && Max.c<0)
+ { v.Fill(log(-Min.c), log(-Max.c)); v.Modify("-exp(u)"); }
+ float *c=new float[n];
+ for(long i=0;i<n;i++) c[i] = GetC(s,v.a[i]);
+ colorbar(&v, c, where, x, y, w, h);
+ delete []c;
+ if(sch && strchr(sch,'A')) Pop();
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::Colorbar(HCDT v, const char *sch)
+{
+ bool in = sch && strchr(sch,'I');
+ float s=1/B.pf, x=1, y=0;
+ if(sch && strchr(sch,'>')) { x=in?(1+s)/2:1; y=0; }
+ if(sch && strchr(sch,'<')) { x=in?(1-s)/2:0; y=0; }
+ if(sch && strchr(sch,'^')) { x=0; y=in?(1+s)/2:1; }
+ if(sch && strchr(sch,'_')) { x=0; y=in?(1-s)/2:0; }
+ Colorbar(v, sch, x, y, 1, 1);
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::Colorbar(HCDT v, const char *sch, float x, float y, float w, float h)
+{
+ bool in = sch && strchr(sch,'I');
+ int where = 0;
+ if(sch && strchr(sch,'>')) where = in?1:0;
+ if(sch && strchr(sch,'<')) where = in?0:1;
+ if(sch && strchr(sch,'^')) where = in?3:2;
+ if(sch && strchr(sch,'_')) where = in?2:3;
+ if(sch && strchr(sch,'A')) { Push(); Identity(); }
+
+ float *c=new float[v->GetNx()];
+ if(!mgl_have_color(sch)) sch = MGL_DEF_PAL;
+ long s = AddTexture(sch);
+ int nc = GetNumPal(s*256);
+ float dc = nc>1 ? 1/(MGL_FLT_EPS*(nc-1)):0;
+ for(long i=0;i<v->GetNx();i++) c[i] = s+i*dc;
+ colorbar(v, c, where, x, y, w, h);
+ delete []c;
+ if(sch && strchr(sch,'A')) Pop();
+}
+//-----------------------------------------------------------------------------
void mglCanvas::colorbar(HCDT vv, const float *c, int where, float x, float y, float w, float h)
{
static int cgid=1; StartGroup("Colorbar",cgid++);
register unsigned long i,n=vv->GetNx();
long n1,n2,n3,n4;
- float d,s3=B.pf,ss=1; // NOTE: colorbar was wider ss=s3*0.9;
+ float d,s3=B.pf,ss=1/s3; // NOTE: colorbar was wider ss=0.9;
mglPoint p1,p2;
Push(); set(MGL_DISABLE_SCALE); B=B1; B.pf=s3;
- x = 2*x-1; y = 2*y-1;
+ x = s3*(2*x-1); y = s3*(2*y-1); w *= s3; h *= s3;
for(i=0;i<n-1;i++)
{
d = GetA(vv->v(i))*2-1;
- p1 = p2 = mglPoint((ss*d+s3)*w+x*s3, (ss*d+s3)*h+y*s3, s3);
+ p1 = p2 = mglPoint((ss*d+1)*w+x, (ss*d+1)*h+y, s3);
switch(where)
{
- case 1: p1.x = x*s3; p2.x = (x+0.1*w)*s3; break;
- case 2: p1.y = (y-0.1*h)*s3; p2.y = y*s3; break;
- case 3: p1.y = y*s3; p2.y = (y+0.1*h)*s3; break;
- default:p1.x = (x-0.1*w)*s3; p2.x = x*s3; break;
+ case 1: p1.x = x; p2.x = x+0.1*w; break;
+ case 2: p1.y = y-0.1*h; p2.y = y; break;
+ case 3: p1.y = y; p2.y = y+0.1*h; break;
+ default:p1.x = x-0.1*w; p2.x = x; break;
}
n1 = AddPnt(p1,c[i]); n2 = AddPnt(p2,c[i]);
d = GetA(vv->v(i+1))*2-1;
- p1 = p2 = mglPoint((ss*d+s3)*w+x*s3, (ss*d+s3)*h+y*s3, s3);
+ p1 = p2 = mglPoint((ss*d+1)*w+x, (ss*d+1)*h+y, s3);
switch(where)
{
- case 1: p1.x = x*s3; p2.x = (x+0.1*w)*s3; break;
- case 2: p1.y = (y-0.1*h)*s3; p2.y = y*s3; break;
- case 3: p1.y = y*s3; p2.y = (y+0.1*h)*s3; break;
- default:p1.x = (x-0.1*w)*s3; p2.x = x*s3; break;
+ case 1: p1.x = x; p2.x = x+0.1*w; break;
+ case 2: p1.y = y-0.1*h; p2.y = y; break;
+ case 3: p1.y = y; p2.y = y+0.1*h; break;
+ default:p1.x = x-0.1*w; p2.x = x; break;
}
n3 = AddPnt(p1,c[i]); n4 = AddPnt(p2,c[i]);
quad_plot(n1,n2,n3,n4);
@@ -774,27 +906,27 @@ void mglCanvas::colorbar(HCDT vv, const float *c, int where, float x, float y, f
for(i=0;i<ac.txt.size();i++)
{
d = ac.txt[i].val = GetA(ac.txt[i].val)*2-1;
- p1 = p2 = mglPoint((ss*d+s3)*w+x*s3, (ss*d+s3)*h+y*s3, s3);
+ p1 = p2 = mglPoint((ss*d+1)*w+x, (ss*d+1)*h+y, s3);
switch(where)
{
- case 1: p1.x = x*s3; p2.x = (x+0.1*w)*s3; break;
- case 2: p1.y = (y-0.1*h)*s3; p2.y = y*s3; break;
- case 3: p1.y = y*s3; p2.y = (y+0.1*h)*s3; break;
- default:p1.x = (x-0.1*w)*s3; p2.x = x*s3; break;
+ case 1: p1.x = x; p2.x = x+0.1*w; break;
+ case 2: p1.y = y-0.1*h; p2.y = y; break;
+ case 3: p1.y = y; p2.y = y+0.1*h; break;
+ default:p1.x = x-0.1*w; p2.x = x; break;
}
n1 = AddPnt(p1,cc); n2 = AddPnt(p2,cc);
line_plot(n1,n2);
}
ac.dir = mglPoint(ss*w,ss*h,0);
- ac.org = mglPoint(s3*(w+x),s3*(h+y),s3+1);
+ ac.org = mglPoint(w+x,h+y,s3+1);
switch(where)
{
- case 1: ac.dir.x = 0; ac.org.x = (x+0.1*w)*s3; break;
- case 2: ac.dir.y = 0; ac.org.y = (y-0.1*h)*s3; break;
- case 3: ac.dir.y = 0; ac.org.y = (y+0.1*h)*s3; break;
- default:ac.dir.x = 0; ac.org.x = (x-0.1*w)*s3; break;
+ case 1: ac.dir.x = 0; ac.org.x = x+0.1*w; break;
+ case 2: ac.dir.y = 0; ac.org.y = y-0.1*h; break;
+ case 3: ac.dir.y = 0; ac.org.y = y+0.1*h; break;
+ default:ac.dir.x = 0; ac.org.x = x-0.1*w; break;
}
- DrawLabels(ac);
+ ac.ns = where; DrawLabels(ac); // NOTE ns isn't used for colorbar
Pop(); clr(MGL_DISABLE_SCALE); EndGroup();
}
//-----------------------------------------------------------------------------
diff --git a/src/base.cpp b/src/base.cpp
index 31e03f3..dfde8df 100644
--- a/src/base.cpp
+++ b/src/base.cpp
@@ -52,21 +52,20 @@ void mgl_strlwr(char *str)
mglBase::mglBase()
{
// memset(this,0,sizeof(mglBase)); // since mglBase is abstract then I can do it?!!
- Message=0; Flag=0; saved=false; prev_val=0;
+ Flag=0; saved=false;
#ifdef HAVE_PTHREAD
pthread_mutex_init(&mutexPnt,0);
pthread_mutex_init(&mutexTxt,0);
#endif
- fnt=0; *FontDef=*last_style=0;
+ fnt=0; *FontDef==0;
fx=fy=fz=fa=fc=0;
- InUse = 1; prev_val = NAN;
+ InUse = 1;
// Always create default palette txt[0] and default scheme txt[1]
Txt.reserve(3);
Txt.push_back(mglTexture(MGL_DEF_PAL,-1));
Txt.push_back(mglTexture("BbcyrR",1));
- last_style[0]='k'; last_style[1]='-'; last_style[2]='0';
- last_style[3]=last_style[4]=0;
+ memcpy(last_style,"{k5}-1\0",8);
MinS=mglPoint(-1,-1,-1); MaxS=mglPoint(1,1,1);
}
mglBase::~mglBase() { ClearEq(); }
@@ -81,54 +80,70 @@ void mglBase::StartGroup(const char *name, int id)
StartAutoGroup(buf);
}
//-----------------------------------------------------------------------------
-const char *mglWarn[mglWarnEnd] = {"%s: data dimension(s) is incompatible",
- "%s: data dimension(s) is too small",
- "%s: minimal data value is negative",
- "No file or wrong data dimensions",
- "Not enough memory",
- "%s: data values are zero",
- "Too many legend entries",
- "No legend entries",
- "%s: slice value is out of range",
- "%s: number of contours is zero or negative",
- "Couldn't open file %s",
- "Light: ID is out of range",
- "Setsize: size(s) is zero or negative",
- "Format %s is not supported for that build"};
+const char *mglWarn[mglWarnEnd] = {"data dimension(s) is incompatible",
+ "data dimension(s) is too small",
+ "minimal data value is negative",
+ "no file or wrong data dimensions",
+ "not enough memory",
+ "data values are zero",
+ "too many legend entries",
+ "no legend entries",
+ "slice value is out of range",
+ "number of contours is zero or negative",
+ "couldn't open file",
+ "light: ID is out of range",
+ "size(s) is zero or negative",
+ "format is not supported for that build",
+ "axis ranges are incompatible",
+ "pointer is NULL",
+ "not enough space for plot"};
//-----------------------------------------------------------------------------
void mglBase::SetWarn(int code, const char *who)
{
WarnCode = code>0 ? code:0;
- if(Message)
+ if(code>0 && code<mglWarnEnd)
{
- if(code>0 && code<mglWarnEnd)
- sprintf(Message,mglWarn[code-1],who?who:"UNKNOWN");
- else if(code<0 && who)
- strcpy(Message,who);
- else *Message=0;
+ if(who) Mess = Mess+"\n"+who+": ";
+ else Mess += "\n";
+ Mess = Mess+mglWarn[code-1];
}
+ else if(!code) Mess="";
+ else if(who) Mess = Mess+(code==-2?"":"\n")+who;
LoadState();
}
//-----------------------------------------------------------------------------
// Add points to the buffer
//-----------------------------------------------------------------------------
-long mglBase::AddPnt(mglPoint p, float c, mglPoint n, float a, int scl) // NOTE: this is not-thread-safe!!!
+long mglBase::AddPnt(mglPoint p, float c, mglPoint n, float a, int scl)
{
-// if(scl) NormScale(n); // Usually p was scaled before, but n should be scaled now!
- if(scl) ScalePoint(p,n,!(scl&2));
+ if(scl>0) ScalePoint(p,n,!(scl&2));
if(isnan(p.x)) return -1;
-// a = (a>=0 && a<=1) ? a : (isnan(n.x) ? 1:AlphaDef);
a = (a>=0 && a<=1) ? a : AlphaDef;
c = (c>=0) ? c:CDef;
- // NOTE: RGBA color for OpenGL and EPS/SVG modes only!
+
mglPnt q;
- q.x=p.x; q.y=p.y; q.z=p.z; q.c=c;
- q.t=a; q.u=n.x; q.v=n.y; q.w=n.z;
- Txt[long(c)].GetC(c,a,q);
+ if(get(MGL_REDUCEACC))
+ {
+ q.x=q.xx=int(p.x*10)*0.1; q.y=q.yy=int(p.y*10)*0.1; q.z=q.zz=int(p.z*10)*0.1;
+ q.c=int(c*100)*0.01; q.t=int(a*100)*0.01;
+ q.u=int(n.x*100)*0.01; q.v=int(n.y*100)*0.01; q.w=int(n.z*100)*0.01;
+ }
+ else
+ {
+ q.x=q.xx=p.x; q.y=q.yy=p.y; q.z=q.zz=p.z;
+ q.c=c; q.t=a; q.u=n.x; q.v=n.y; q.w=n.z;
+ }
+ q.x=q.xx=int(p.x*100)*0.01; q.y=q.yy=p.y; q.z=q.zz=p.z;
+ q.c=c; q.t=a; q.u=n.x; q.v=n.y; q.w=n.z;
+ Txt[long(c)].GetC(c,a,q); // RGBA color
+
+ if(!get(MGL_ENABLE_ALPHA)) q.a=1;
+ if(scl&8 && scl>0) q.a=a; // bypass palette for enabling alpha in Error()
+ if(!get(MGL_ENABLE_LIGHT) && !(scl&4)) q.u=q.v=NAN;
MGL_PUSH(Pnt,q,mutexPnt); return Pnt.size()-1;
}
//-----------------------------------------------------------------------------
-long mglBase::CopyNtoC(long from, float c) // NOTE: this is not-thread-safe!!!
+long mglBase::CopyNtoC(long from, float c)
{
if(from<0) return -1;
mglPnt p=Pnt[from];
@@ -136,16 +151,16 @@ long mglBase::CopyNtoC(long from, float c) // NOTE: this is not-thread-safe!!!
MGL_PUSH(Pnt,p,mutexPnt); return Pnt.size()-1;
}
//-----------------------------------------------------------------------------
-long mglBase::CopyProj(long from, mglPoint p, mglPoint n) // NOTE: this is not-thread-safe!!!
+long mglBase::CopyProj(long from, mglPoint p, mglPoint n)
{
if(from<0) return -1;
mglPnt q=Pnt[from];
- q.x=p.x; q.y=p.y; q.z=p.z;
+ q.x=q.xx=p.x; q.y=q.yy=p.y; q.z=q.zz=p.z;
q.u=n.x; q.v=n.y; q.w=n.z;
MGL_PUSH(Pnt,q,mutexPnt); return Pnt.size()-1;
}
//-----------------------------------------------------------------------------
-void mglBase::Reserve(long n) // NOTE: this is not-thread-safe!!!
+void mglBase::Reserve(long n)
{
if(TernAxis&4) n*=4;
Pnt.reserve(n);
@@ -242,15 +257,18 @@ bool mglBase::ScalePoint(mglPoint &p, mglPoint &n, bool use_nan)
if(get(MGL_ENABLE_CUT) || !use_nan)
{
// if(x1<Min.x || x2>Max.x || y1<Min.y || y2>Max.y || z1<Min.z || z2>Max.z) res = false;
- if((x1-Min.x)*(x1-Max.x)>0 && (x2-Min.x)*(x2-Max.x)>0 && Min.x!=Max.x) res = false;
- if((y1-Min.y)*(y1-Max.y)>0 && (y2-Min.y)*(y2-Max.y)>0 && Min.y!=Max.y) res = false;
- if((z1-Min.z)*(z1-Max.z)>0 && (z2-Min.z)*(z2-Max.z)>0 && Min.z!=Max.z) res = false;
+ if((x1-Min.x)*(x1-Max.x)>0 && (x2-Min.x)*(x2-Max.x)>0) res = false;
+ if((y1-Min.y)*(y1-Max.y)>0 && (y2-Min.y)*(y2-Max.y)>0) res = false;
+ if((z1-Min.z)*(z1-Max.z)>0 && (z2-Min.z)*(z2-Max.z)>0) res = false;
}
else
{
- if(x1<Min.x) x=Min.x; if(x2>Max.x) x=Max.x;
- if(y1<Min.y) y=Min.y; if(y2>Max.y) y=Max.y;
- if(z1<Min.z) z=Min.z; if(z2>Max.z) z=Max.z;
+ if(x1<Min.x) {x=Min.x; n=mglPoint(1,0,0);}
+ if(x2>Max.x) {x=Max.x; n=mglPoint(1,0,0);}
+ if(y1<Min.y) {y=Min.y; n=mglPoint(0,1,0);}
+ if(y2>Max.y) {y=Max.y; n=mglPoint(0,1,0);}
+ if(z1<Min.z) {z=Min.z; n=mglPoint(0,0,1);}
+ if(z2>Max.z) {z=Max.z; n=mglPoint(0,0,1);}
}
x1=x; y1=y; z1=z;
@@ -284,9 +302,9 @@ bool mglBase::ScalePoint(mglPoint &p, mglPoint &n, bool use_nan)
x += 1+(y+z)/2; y += (z+1)/3;
n.x += (n.y+n.z)/2; n.y += n.z/3;
}
-// if(fabs(x)>MGL_FLT_EPS) res = false;
-// if(fabs(y)>MGL_FLT_EPS) res = false;
-// if(fabs(z)>MGL_FLT_EPS) res = false;
+ if(fabs(x)>MGL_FLT_EPS) res = false;
+ if(fabs(y)>MGL_FLT_EPS) res = false;
+ if(fabs(z)>MGL_FLT_EPS) res = false;
if(!res && use_nan) x = NAN; // extra sign that point shouldn't be plotted
return res;
@@ -296,15 +314,11 @@ bool mglBase::ScalePoint(mglPoint &p, mglPoint &n, bool use_nan)
//-----------------------------------------------------------------------------
void mglBase::SetRanges(mglPoint m1, mglPoint m2)
{
- if(m1.x<m2.x) { Min.x=m1.x; Max.x = m2.x; }
- if(m1.x>m2.x) { Min.x=m2.x; Max.x = m1.x; }
- if(m1.y<m2.y) { Min.y=m1.y; Max.y = m2.y; }
- if(m1.y>m2.y) { Min.y=m2.y; Max.y = m1.y; }
- if(m1.z<m2.z) { Min.z=m1.z; Max.z = m2.z; }
- if(m1.z>m2.z) { Min.z=m2.z; Max.z = m1.z; }
- if(m1.c<m2.c) { Min.c=m1.c; Max.c = m2.c; }
- if(m1.c>m2.c) { Min.c=m2.c; Max.c = m1.c; }
- if(Min.c==Max.c) { Min.c=Min.z; Max.c=Max.z; }
+ if(m1.x!=m2.x) { Min.x=m1.x; Max.x=m2.x; }
+ if(m1.y!=m2.y) { Min.y=m1.y; Max.y=m2.y; }
+ if(m1.z!=m2.z) { Min.z=m1.z; Max.z=m2.z; }
+ if(m1.c!=m2.c) { Min.c=m1.c; Max.c=m2.c; }
+ else { Min.c=Min.z;Max.c=Max.z;}
// if(AutoOrg)
{
if(Org.x<Min.x && !isnan(Org.x)) Org.x = Min.x;
@@ -322,6 +336,7 @@ void mglBase::CRange(const mglDataA &a,bool add, float fact)
{
float v1=a.Minimal(), v2=a.Maximal(), dv;
dv=(v2-v1)*fact; v1 -= dv; v2 += dv;
+ if(v1==v2) return;
if(!add) { Min.c = v1; Max.c = v2; }
else if(Min.c<Max.c)
{
@@ -343,6 +358,7 @@ void mglBase::XRange(const mglDataA &a,bool add,float fact)
{
float v1=a.Minimal(), v2=a.Maximal(), dv;
dv=(v2-v1)*fact; v1 -= dv; v2 += dv;
+ if(v1==v2) return;
if(!add) { Min.x = v1; Max.x = v2; }
else if(Min.x<Max.x)
{
@@ -364,6 +380,7 @@ void mglBase::YRange(const mglDataA &a,bool add,float fact)
{
float v1=a.Minimal(), v2=a.Maximal(), dv;
dv=(v2-v1)*fact; v1 -= dv; v2 += dv;
+ if(v1==v2) return;
if(!add) { Min.y = v1; Max.y = v2; }
else if(Min.y<Max.y)
{
@@ -385,6 +402,7 @@ void mglBase::ZRange(const mglDataA &a,bool add,float fact)
{
float v1=a.Minimal(), v2=a.Maximal(), dv;
dv=(v2-v1)*fact; v1 -= dv; v2 += dv;
+ if(v1==v2) return;
if(!add) { Min.z = v1; Max.z = v2; }
else if(Min.z<Max.z)
{
@@ -417,12 +435,12 @@ void mglBase::Ternary(int t)
TernAxis = t;
if(t&3)
{
- x1 = Min; x2 = Max; o = Org;
- c = get(MGL_ENABLE_CUT); clr(MGL_ENABLE_CUT);
- SetRanges(mglPoint(0,0,0),mglPoint(1,1,t==1?0:1));
- Org=mglPoint(0,0,0);
+ if(c) { x1 = Min; x2 = Max; o = Org; }
+// c = get(MGL_ENABLE_CUT); clr(MGL_ENABLE_CUT);
+ SetRanges(mglPoint(0,0),mglPoint(1,1,t==1?0:1));
+ Org=mglPoint(0,0,0); c = false;
}
- else { SetRanges(x1,x2); Org=o; SetCut(c); }
+ else { SetRanges(x1,x2); Org=o; c=true; }
}
//-----------------------------------------------------------------------------
// Transformation functions
@@ -537,16 +555,17 @@ void mglTexture::Set(const char *s, int smooth, float alpha)
// NOTE: New syntax -- colors are CCCCC or {CNCNCCCN}; options inside []
if(!s || !s[0]) return;
register long i,j=0,m=0,l=strlen(s);
- const char *cols = "kwrgbcymhWRGBCYMHlenpquLENPQU";
+ const char *cols = MGL_COLORS;
for(i=0;i<l;i++) // find number of colors
{
if(s[i]=='[') j++; if(s[i]==']') j--;
if(strchr(cols,s[i]) && j<1) n++;
+// if(smooth && s[i]==':') break; // NOTE: should use []
}
if(!n)
{
// it seems to be the only case where new color scheme should be
- if(strchr(s,'|') && !smooth)
+ if((strchr(s,'|') || strchr(s,'!')) && !smooth)
{ n=l=6; s="BbcyrR"; smooth = -1; }
else return;
}
@@ -642,19 +661,34 @@ float mglBase::NextColor(long &id)
{
long i=abs(id)/256, n=Txt[i].n, p=abs(id)&0xff;
if(id>=0) { p=(p+1)%n; id = 256*i+p; }
- last_style[0]=MGL_DEF_PAL[p%strlen(MGL_DEF_PAL)]; // TODO: last_style correctly !!!
+ mglColor c = Txt[i].col[int(512*(p+0.5)/n)];
+ float dif, dmin=1;
+ // try to find closest color
+ for(long j=0;mglColorIds[j].id;j++) for(long k=1;k<10;k++)
+ {
+ mglColor cc; cc.Set(mglColorIds[j].col,k/5.);
+ dif = (c-cc).NormS();
+ if(dif<dmin)
+ {
+ last_style[1] = mglColorIds[j].id;
+ last_style[2] = k+'0';
+ dmin=dif;
+ }
+ }
+ if(!leg_str.empty())
+ { AddLegend(leg_str.c_str(),last_style); leg_str.clear(); }
CDef = i + (n>0 ? (p+0.5)/n : 0); CurrPal++;
return CDef;
}
//-----------------------------------------------------------------------------
char mglBase::SetPenPal(const char *p, long *Id)
{
- char mk=0;
+ char mk=0;
PDef = 0xffff; // reset to solid line
- last_style[1]='-';
+ memcpy(last_style,"{k5}-1\0",8);
Arrow1 = Arrow2 = 0; PenWidth = 1;
- if(p && *p!=0)
+ if(p && *p)
{
// const char *col = "wkrgbcymhRGBCYMHWlenuqpLENUQP";
const char *stl = " -|;:ji=";
@@ -679,15 +713,15 @@ char mglBase::SetPenPal(const char *p, long *Id)
case ' ': PDef = 0x0000; break;
default: PDef = 0xffff; break; // '-'
}
- last_style[1]=p[i];
+ last_style[4]=p[i];
}
else if(strchr(mrk,p[i])) mk = p[i];
else if(strchr(wdh,p[i]))
- { last_style[2] = p[i]; PenWidth = p[i]-'0'; }
+ { last_style[5] = p[i]; PenWidth = p[i]-'0'; }
else if(strchr(arr,p[i]))
{
- if(!Arrow1) Arrow1 = p[i];
- else Arrow2 = p[i];
+ if(!Arrow2) Arrow2 = p[i];
+ else Arrow1 = p[i];
}
}
if(Arrow1=='_') Arrow1=0; if(Arrow2=='_') Arrow2=0;
@@ -706,7 +740,7 @@ char mglBase::SetPenPal(const char *p, long *Id)
if(mk=='*') mk = 'Y';
}
}
- last_style[3]=mk;
+ last_style[6]=mk;
long tt, n;
tt = AddTexture(p,-1); n=Txt[tt].n;
CDef = tt+((n+CurrPal-1)%n+0.5)/n;
@@ -754,11 +788,11 @@ void mglBase::vect_plot(long p1, long p2, float s)
const mglPnt &q1=Pnt[p1], &q2=Pnt[p2];
mglPnt s1=q2,s2=q2;
s = s<=0 ? 0.1 : s*0.1;
- s1.x = q2.x - 3*s*(q2.x-q1.x) + s*(q2.y-q1.y);
- s2.x = q2.x - 3*s*(q2.x-q1.x) - s*(q2.y-q1.y);
- s1.y = q2.y - 3*s*(q2.y-q1.y) - s*(q2.x-q1.x);
- s2.y = q2.y - 3*s*(q2.y-q1.y) + s*(q2.x-q1.x);
- s1.z = s2.z = q2.z - 3*s*(q2.z-q1.z);
+ s1.x=s1.xx = q2.x - 3*s*(q2.x-q1.x) + s*(q2.y-q1.y);
+ s2.x=s2.xx = q2.x - 3*s*(q2.x-q1.x) - s*(q2.y-q1.y);
+ s1.y=s1.yy = q2.y - 3*s*(q2.y-q1.y) - s*(q2.x-q1.x);
+ s2.y=s2.yy = q2.y - 3*s*(q2.y-q1.y) + s*(q2.x-q1.x);
+ s1.z=s1.zz=s2.z=s2.zz = q2.z - 3*s*(q2.z-q1.z);
long n1,n2;
n1=Pnt.size(); MGL_PUSH(Pnt,s1,mutexPnt);
n2=Pnt.size(); MGL_PUSH(Pnt,s2,mutexPnt);
@@ -786,12 +820,11 @@ float mglBase::SaveState(const char *opt)
if(!opt || !opt[0] || saved) return NAN;
MSS=MarkSize; ASS=ArrowSize;
FSS=FontSize; ADS=AlphaDef;
- MNS=MeshNum; CSS=get(MGL_ENABLE_CUT); LSS=AmbBr;
+ MNS=MeshNum; CSS=Flag; LSS=AmbBr;
MinS=Min; MaxS=Max; saved=true;
// parse option
char *q=mgl_strdup(opt),*s,*a,*b,*c;
long n;
- float res=NAN;
mgl_strtrim(q);
// NOTE: not consider '#' inside legend entry !!!
s=strchr(q,'#'); if(s) *s=0;
@@ -806,6 +839,7 @@ float mglBase::SaveState(const char *opt)
mgl_strtrim(b);
float ff=atof(b),ss;
+ if(!strcmp(b,"on")) ff=1;
if(!strcmp(a+1,"range"))
{
n=mglFindArg(s); c=s;
@@ -814,20 +848,24 @@ float mglBase::SaveState(const char *opt)
if(a[0]=='x') { Min.x=ff; Max.x=ss; }
else if(a[0]=='y') { Min.y=ff; Max.y=ss; }
else if(a[0]=='z') { Min.z=ff; Max.z=ss; }
- else if(a[0]=='c') { Min.c=ff; Max.c=ss; }
+// else if(a[0]=='c') { Min.c=ff; Max.c=ss; } // Bad idea since there is formula for coloring
}
- else if(!strcmp(a,"cut")) SetCut(ff!=0 || !strncmp(s,"on",2));
+ else if(!strcmp(a,"cut")) SetCut(ff!=0);
else if(!strcmp(a,"meshnum")) SetMeshNum(ff);
- else if(!strcmp(a,"alpha")) SetAlphaDef(ff);
+ else if(!strcmp(a,"alpha")) {Alpha(true); SetAlphaDef(ff);}
+ else if(!strcmp(a,"light")) Light(ff!=0);
else if(!strcmp(a,"ambient")) SetAmbient(ff);
+ else if(!strcmp(a,"diffuse")) SetDifLight(ff);
else if(!strcmp(a,"marksize")) SetMarkSize(ff);
else if(!strcmp(a,"fontsize")) SetFontSize(ff);
else if(!strcmp(a,"arrowsize")) SetArrowSize(ff);
else if(!strcmp(a,"size"))
{ SetMarkSize(ff); SetFontSize(ff); SetArrowSize(ff); }
- else if(!strcmp(a,"num") || !strcmp(a,"number") || !strcmp(a,"value")) res = ff;
+ else if(!strcmp(a,"num") || !strcmp(a,"number") || !strcmp(a,"value")) return ff;
+ else if(!strcmp(a,"legend"))
+ { if(*b=='\'') { b++; b[strlen(b)-1]=0; } leg_str = b; }
}
- free(q); prev_val=res; return res;
+ free(q); return NAN;
}
//-----------------------------------------------------------------------------
void mglBase::LoadState()
@@ -835,7 +873,20 @@ void mglBase::LoadState()
if(!saved) return;
MarkSize=MSS; ArrowSize=ASS;
FontSize=FSS; AlphaDef=ADS;
- MeshNum=MNS; SetCut(CSS); AmbBr=LSS;
- Min=MinS; Max=MaxS; saved=false;
+ MeshNum=MNS; Flag=CSS; AmbBr=LSS;
+ Min=MinS; Max=MaxS; saved=false;
+}
+//-----------------------------------------------------------------------------
+void mglBase::AddLegend(const wchar_t *text,const char *style)
+{ if(text) MGL_PUSH(Leg,mglText(text,style),mutexLeg); }
+//-----------------------------------------------------------------------------
+void mglBase::AddLegend(const char *str,const char *style)
+{
+ if(!str) return;
+ unsigned s = strlen(str)+1;
+ wchar_t *wcs = new wchar_t[s];
+ mbstowcs(wcs,str,s);
+ AddLegend(wcs, style);
+ delete []wcs;
}
//-----------------------------------------------------------------------------
diff --git a/src/base_cf.cpp b/src/base_cf.cpp
index 29a3f2a..15f37d4 100644
--- a/src/base_cf.cpp
+++ b/src/base_cf.cpp
@@ -23,7 +23,7 @@
// C interfaces
//
//-----------------------------------------------------------------------------
-void mgl_buf_warn(HMGL gr, char *buf) { gr->Message = buf; }
+const char *mgl_get_mess(HMGL gr) { return gr->Mess.c_str(); }
int mgl_get_warn(HMGL gr) { return gr->GetWarn(); }
void mgl_set_warn(HMGL gr, int code, const char *txt)
{ gr->SetWarn(code,txt); }
@@ -33,8 +33,11 @@ void mgl_set_palette(HMGL gr, const char *colors)
{ gr->SetPalette(colors); }
void mgl_set_meshnum(HMGL gr, int num) { gr->SetMeshNum(num); }
void mgl_set_alpha_default(HMGL gr, float alpha) { gr->SetAlphaDef(alpha); }
+void mgl_set_light_dif(HMGL gr, int enable) { gr->SetDifLight(enable); }
//-----------------------------------------------------------------------------
-void mgl_set_cut(HMGL gr, int cut) { gr->SetCut(cut); }
+void mgl_set_rdc_acc(HMGL gr, int reduce) { gr->SetReduceAcc(reduce); }
+void mgl_highlight(HMGL gr) { gr->Highlight(); }
+void mgl_set_cut(HMGL gr, int cut) { gr->SetCut(cut); }
void mgl_set_cut_box(HMGL gr, float x1,float y1,float z1,float x2,float y2,float z2)
{ gr->SetCutBox(x1,y1,z1,x2,y2,z2); }
void mgl_set_cutoff(HMGL gr, const char *EqC) { gr->CutOff(EqC); }
@@ -68,6 +71,9 @@ void mgl_set_bar_width(HMGL gr, float width) { gr->SetBarWidth(width); }
// Fortran interfaces
//
//-----------------------------------------------------------------------------
+void mgl_set_rdc_acc_(uintptr_t *gr, int *reduce)
+{ _GR_->SetReduceAcc(*reduce); }
+void mgl_highlight_(uintptr_t *gr) { _GR_->Highlight(); }
void mgl_set_origin_(uintptr_t *gr, float *x0, float *y0, float *z0)
{ _GR_->SetOrigin(*x0,*y0,*z0); }
int mgl_get_warn_(uintptr_t *gr) { return _GR_->GetWarn(); }
@@ -79,6 +85,7 @@ void mgl_set_palette_(uintptr_t *gr, const char *colors, int l)
_GR_->SetPalette(s); delete []s; }
void mgl_set_meshnum_(uintptr_t *gr, int *num) { _GR_->SetMeshNum(*num); }
void mgl_set_alpha_default_(uintptr_t *gr, float *alpha) { _GR_->SetAlphaDef(*alpha); }
+void mgl_set_light_dif_(uintptr_t *gr, int *enable) { _GR_->SetDifLight(*enable); }
//-----------------------------------------------------------------------------
void mgl_set_cut_box_(uintptr_t *gr, float *x1,float *y1,float *z1,float *x2,float *y2,float *z2)
{ _GR_->SetCutBox(*x1,*y1,*z1,*x2,*y2,*z2); }
@@ -124,20 +131,20 @@ void mgl_set_tick_rotate_(uintptr_t *gr,int *enable){ _GR_->SetTickRotate(*enabl
void mgl_set_tick_skip_(uintptr_t *gr, int *enable) { _GR_->SetTickSkip(*enable); }
//-----------------------------------------------------------------------------
void mgl_set_rotated_text(HMGL gr, int enable) { gr->SetRotatedText(enable); }
-void mgl_set_mark_size(HMGL gr, mreal size) { gr->SetMarkSize(size); }
-void mgl_set_arrow_size(HMGL gr, mreal size) { gr->SetArrowSize(size); }
-void mgl_set_font_size(HMGL gr, mreal size) { gr->SetFontSize(size); }
+void mgl_set_mark_size(HMGL gr, float size) { gr->SetMarkSize(size); }
+void mgl_set_arrow_size(HMGL gr, float size) { gr->SetArrowSize(size); }
+void mgl_set_font_size(HMGL gr, float size) { gr->SetFontSize(size); }
void mgl_set_font_def(HMGL gr, const char *fnt) { gr->SetFontDef(fnt); }
void mgl_load_font(HMGL gr, const char *name, const char *path)
-{ gr->GetFont()->Load(name,path); }
+{ if(name && *name) gr->GetFont()->Load(name,path); else gr->GetFont()->Restore(); }
void mgl_copy_font(HMGL gr, HMGL gr_from) { gr->GetFont()->Copy(gr_from->GetFont()); }
void mgl_restore_font(HMGL gr) { gr->GetFont()->Restore(); }
//-----------------------------------------------------------------------------
void mgl_set_bar_width_(uintptr_t *gr, float *width) { _GR_->SetBarWidth(*width); }
void mgl_set_rotated_text_(uintptr_t *gr, int *rotated) { _GR_->SetRotatedText(*rotated); }
-void mgl_set_mark_size_(uintptr_t *gr, mreal *size) { _GR_->SetMarkSize(*size); }
-void mgl_set_arrow_size_(uintptr_t *gr, mreal *size) { _GR_->SetArrowSize(*size); }
-void mgl_set_font_size_(uintptr_t *gr, mreal *size) { _GR_->SetFontSize(*size); }
+void mgl_set_mark_size_(uintptr_t *gr, float *size) { _GR_->SetMarkSize(*size); }
+void mgl_set_arrow_size_(uintptr_t *gr, float *size) { _GR_->SetArrowSize(*size); }
+void mgl_set_font_size_(uintptr_t *gr, float *size) { _GR_->SetFontSize(*size); }
void mgl_set_font_def_(uintptr_t *gr, char *name, int l)
{ char *s=new char[l+1]; memcpy(s,name,l); s[l]=0;
_GR_->SetFontDef(s); delete []s; }
diff --git a/src/canvas.cpp b/src/canvas.cpp
index 57296ab..5653cdc 100644
--- a/src/canvas.cpp
+++ b/src/canvas.cpp
@@ -25,7 +25,7 @@ mglCanvas::mglCanvas(int w, int h) : mglBase()
{
clr(MGL_DISABLE_SCALE);
Z=0; C=G=G4=0; OI=0; gif=0;
- CurFrameId=0;
+ CurFrameId=0; Delay=0.5;
Width=Height=Depth=0; ObjId=-1;
fscl=ftet=0;
dr_nx1=dr_nx2=dr_ny1=dr_ny2=0; // Allowed drawing region
@@ -48,15 +48,36 @@ mglCanvas::~mglCanvas()
if(G) { delete []G; delete []C; delete []Z; delete []G4;delete []OI; }
}
//-----------------------------------------------------------------------------
+long mglCanvas::PushDrwDat()
+{
+ mglDrawDat d;
+ d.Grp=Grp; d.Leg=Leg; d.Pnt=Pnt; d.Prm=Prm;
+ d.Ptx=Ptx; d.Sub=Sub; d.Txt=Txt;
+ DrwDat.push_back(d);
+ return DrwDat.size();
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::GetDrwDat(long i)
+{
+ mglDrawDat &d=DrwDat[i];
+ Grp=d.Grp; Leg=d.Leg; Pnt=d.Pnt; Prm=d.Prm;
+ Ptx=d.Ptx; Sub=d.Sub; Txt=d.Txt;
+}
+//-----------------------------------------------------------------------------
+const unsigned char *mglCanvas::GetBits() { Finish(); return G; }
+//-----------------------------------------------------------------------------
float mglCanvas::GetRatio() { return inW/inH; }
-void mglCanvas::AddLegend(const wchar_t *text,const char *style)
-{ if(text) MGL_PUSH(Leg,mglText(text,style),mutexLeg); }
+//-----------------------------------------------------------------------------
void mglCanvas::add_prim(mglPrim &a)
-{ a.id = ObjId; MGL_PUSH(Prm,a,mutexPrm); clr(MGL_FINISHED); }
+{
+ if(a.n1>=0)
+ { a.z = Pnt[a.n1].z; // this is a bit less accurate but simpler for transformation
+ a.id = ObjId; MGL_PUSH(Prm,a,mutexPrm); clr(MGL_FINISHED); }
+}
//-----------------------------------------------------------------------------
void mglCanvas::DefaultPlotParam()
{
-/* NOTE: following variables and mutex will not be changed
+/* NOTE: following variables and mutex will not be changed by DefaultPlotParam()
std::vector<mglTexture> Txt; ///< Pointer to textures
char *Message; ///< Buffer for receiving messages
long InUse; ///< Smart pointer (number of users)
@@ -67,31 +88,28 @@ int Width; ///< Width of the image
int Height; ///< Height of the image
int Depth; ///< Depth of the image
int CurFrameId; ///< Number of automaticle created frames
-GifFileType *gif;
-*/
+GifFileType *gif;*/
SetTickRotate(true); SetTickSkip(true);
SetWarn(mglWarnNone); ObjId = 0;
- SetFunc(0,0); CutOff(0);
+ SetFunc(0,0); Stop=false; CutOff(0); Ternary(0);
SetRanges(mglPoint(-1,-1,-1,-1), mglPoint(1,1,1,1));
SetBarWidth(0.7); SetMarkSize(1); SetArrowSize(1);
SetAlphaDef(0.5); FontDef[0]=0;
- SetTranspType(0); SetMeshNum(0);
+ SetTranspType(0); SetMeshNum(0); // NOTE: default MeshNum=0
SetRotatedText(true); CurrPal = 0;
SetLegendMarks(); SetFontSize(4);
- SetTuneTicks(true);
- Clf(); SetAmbient(); Ternary(0);
+ SetTuneTicks(true); SetAmbient();
PlotId = "frame"; clr(MGL_DISABLE_SCALE);
SetDefScheme("BbcyrR"); SetPalette(MGL_DEF_PAL);
SetPenPal("k-1");
SetTicks('x'); SetTicks('y'); SetTicks('z'); SetTicks('c');
- _tetx=_tety=_tetz=0; stack.clear();
- Alpha(false); FactorPos = 1.07;
+ stack.clear(); Restore(); Alpha(false);
SetTickLen(0); SetCut(true);
- AdjustTicks("xyzc",true);
+ AdjustTicks("xyzc",true); Clf();
for(int i=0;i<10;i++) { AddLight(i, mglPoint(0,0,1)); Light(i,false); }
- Light(0,true); Light(false);
- SetPlotFactor(0); InPlot(0,1,0,1,false);
+ Light(0,true); Light(false); SetDifLight(true);
+ SetPlotFactor(0); InPlot(0,1,0,1,false);
}
//-----------------------------------------------------------------------------
// Optimal axis position
@@ -201,7 +219,7 @@ float mglCanvas::GetOrgZ(char dir)
//-----------------------------------------------------------------------------
#define MGL_MARK_PLOT if(Quality&4) mark_draw(p,type,size?size:MarkSize,&d);else \
{ mglPrim a; a.w = fabs(PenWidth); a.s = size?size:MarkSize; \
- a.n1 = p; a.n4 = type; a.z = Pnt[p].z; add_prim(a); }
+ a.n1 = p; a.n4 = type; add_prim(a); }
void mglCanvas::mark_plot(long p, char type, float size)
{
if(p<0 || isnan(Pnt[p].x)) return;
@@ -214,8 +232,7 @@ void mglCanvas::mark_plot(long p, char type, float size)
}
//-----------------------------------------------------------------------------
#define MGL_LINE_PLOT if(Quality&4) line_draw(p1,p2,&dd);else \
- { mglPrim a(1); a.z = (Pnt[p1].z+Pnt[p2].z)/2; \
- if(pw>1) a.z += pw-1; a.n3=PDef; a.s = pPos; \
+ { mglPrim a(1); a.n3=PDef; a.s = pPos; \
a.n1 = p1; a.n2 = p2; a.w = pw; add_prim(a); }
void mglCanvas::line_plot(long p1, long p2)
{
@@ -233,8 +250,8 @@ void mglCanvas::line_plot(long p1, long p2)
}
//-----------------------------------------------------------------------------
#define MGL_TRIG_PLOT if(Quality&4) trig_draw(p1,p2,p3,true,&d);else \
- { mglPrim a(2); a.n1 = p1; a.n2 = p2; a.n3 = p3; \
- a.z = (Pnt[p1].z+Pnt[p2].z+Pnt[p3].z)/3; add_prim(a);}
+ { mglPrim a(2); a.n1 = p1; a.n2 = p2; \
+ a.n3 = p3; add_prim(a);}
void mglCanvas::trig_plot(long p1, long p2, long p3)
{
if(p1<0 || p2<0 || p3<0 || isnan(Pnt[p1].x) || isnan(Pnt[p2].x) || isnan(Pnt[p3].x)) return;
@@ -247,9 +264,8 @@ void mglCanvas::trig_plot(long p1, long p2, long p3)
}
//-----------------------------------------------------------------------------
#define MGL_QUAD_PLOT if(Quality&4) quad_draw(p1,p2,p3,p4,&d);else \
- { mglPrim a(3); a.n1 = p1; a.n2 = p2; a.n3 = p3; a.n4 = p4; \
- a.z = (Pnt[p1].z+Pnt[p2].z+Pnt[p3].z+Pnt[p4].z)/4; \
- add_prim(a); }
+ { mglPrim a(3); a.n1 = p1; a.n2 = p2; \
+ a.n3 = p3; a.n4 = p4; add_prim(a); }
void mglCanvas::quad_plot(long p1, long p2, long p3, long p4)
{
if(p1<0 || isnan(Pnt[p1].x)) { trig_plot(p4,p2,p3); return; }
@@ -265,7 +281,7 @@ void mglCanvas::quad_plot(long p1, long p2, long p3, long p4)
else { MGL_QUAD_PLOT }
}
//-----------------------------------------------------------------------------
-float mglCanvas::text_plot(long p,const wchar_t *text,const char *font,float size,float sh,float col)
+float mglCanvas::text_plot(long p,const wchar_t *text,const char *font,float size,float sh,float col,bool rot)
{
if(p<0 || isnan(Pnt[p].x)) return 0;
if(size<0) size *= -FontSize;
@@ -281,10 +297,14 @@ float mglCanvas::text_plot(long p,const wchar_t *text,const char *font,float siz
return res;
}
+ mglPnt q=Pnt[p];
+ float ll = q.u*q.u+q.v*q.v;
+ bool inv=false;
+ if(rot && (q.u<0 || (q.u==0 && q.v<0)))
+ { q.u=-q.u; q.v=-q.v; q.w=-q.w; inv=true; }
if(!(Quality&4)) // add text itself
{
- mglPrim a(6);
- a.n1 = p; a.z = Pnt[p].z;
+ mglPrim a(6); a.n1 = p;
mglText txt(text,font);
MGL_PUSH(Ptx,txt,mutexPtx);
a.n3 = Ptx.size()-1;
@@ -292,27 +312,12 @@ float mglCanvas::text_plot(long p,const wchar_t *text,const char *font,float siz
add_prim(a);
}
float shift = -sh-0.2, fsize=size/8.*font_factor, h = fnt->Height(font)*fsize, w;
- if(strchr(font,'@')) // draw box around text
- {
- long k1,k2,k3,k4;
- w = fnt->Width(text,font)*fsize;
- mglPnt pp=Pnt[p], pt;
- int align; mglGetStyle(font,0,&align); align = align&3;
- float d=-w*align/2.;
- pt = pp; pt.x+= d; MGL_PUSH(Pnt,pt,mutexPnt); k1=Pnt.size()-1;
- pt = pp; pt.x+= w+d; MGL_PUSH(Pnt,pt,mutexPnt); k2=Pnt.size()-1;
- pt = pp; pt.x+= d; pt.y+= h/2; MGL_PUSH(Pnt,pt,mutexPnt); k3=Pnt.size()-1;
- pt = pp; pt.x+= w+d; pt.y+= h/2; MGL_PUSH(Pnt,pt,mutexPnt); k4=Pnt.size()-1;
- line_plot(k1,k2); line_plot(k1,k3); line_plot(k4,k2); line_plot(k4,k3);
- }
// text drawing itself
Push();
- if(strchr(font,'T')) shift = sh+0.2;
+ inv = inv ^ (strchr(font,'T')!=0);
+ if(inv) shift = sh+0.2;
shift += 0.11; // Correction for glyph rotation around proper point
- mglPnt q=Pnt[p];
- float ll = q.u*q.u+q.v*q.v;
- if(q.u<0) { q.u=-q.u; q.v=-q.v; q.w=-q.w; }
shift *= h; B.z= q.z;
if(ll==0) { Pop(); return 0; }
@@ -329,18 +334,37 @@ float mglCanvas::text_plot(long p,const wchar_t *text,const char *font,float siz
fscl = fsize;
ftet = -180*atan2(q.v,q.u)/M_PI;
}
+ memset(B.b,0,9*sizeof(float));
+ B.b[0] = B.b[4] = B.b[8] = fscl;
+ RotateN(ftet,0,0,1);
+ if(strchr(font,'@')) // draw box around text
+ {
+ long k1,k2,k3,k4; mglPnt pt; mglPoint p;
+ w = fnt->Width(text,font); h = fnt->Height(font);
+ int align; mglGetStyle(font,0,&align); align = align&3;
+ float d=-w*align/2.-h*0.2; w+=h*0.4;
+ pt = q; p = mglPoint(d,-h*0.4); PostScale(p);
+ pt.x=pt.xx=p.x; pt.y=pt.yy=p.y; MGL_PUSH(Pnt,pt,mutexPnt); k1=Pnt.size()-1;
+ pt = q; p = mglPoint(w+d,-h*0.4); PostScale(p);
+ pt.x=pt.xx=p.x; pt.y=pt.yy=p.y; MGL_PUSH(Pnt,pt,mutexPnt); k2=Pnt.size()-1;
+ pt = q; p = mglPoint(d,h*1.2); PostScale(p);
+ pt.x=pt.xx=p.x; pt.y=pt.yy=p.y; MGL_PUSH(Pnt,pt,mutexPnt); k3=Pnt.size()-1;
+ pt = q; p = mglPoint(w+d,h*1.2); PostScale(p);
+ pt.x=pt.xx=p.x; pt.y=pt.yy=p.y; MGL_PUSH(Pnt,pt,mutexPnt); k4=Pnt.size()-1;
+ line_plot(k1,k2); line_plot(k1,k3); line_plot(k4,k2); line_plot(k4,k3);
+ }
fsize *= fnt->Puts(text,font,col)/2;
Pop(); return fsize;
}
//-----------------------------------------------------------------------------
void mglCanvas::Glyph(float x, float y, float f, int s, long j, float col)
{
- mglPrim a(4);
+ mglPrim a(4); // NOTE: no projection since text_plot() did it
a.s = fscl/B.pf; a.w = ftet; a.p = B.pf;
float cc = col<0 ? AddTexture(char(0.5-col)):col;
if(cc<0) cc = CDef;
- a.n1 = AddPnt(mglPoint(B.x,B.y,B.z), cc, mglPoint(x,y,f/fnt->GetFact(s&3)), -1, 0);
- a.n3 = s; a.n4 = j; a.z = B.z;
+ a.n1 = AddPnt(mglPoint(B.x,B.y,B.z), cc, mglPoint(x,y,f/fnt->GetFact(s&3)), -1, -1);
+ a.n3 = s; a.n4 = j;
if(a.n1<0) return;
mglDrawReg d; d.set(this,1,1,0);
if(Quality&4) glyph_draw(&a,&d);
@@ -349,42 +373,11 @@ void mglCanvas::Glyph(float x, float y, float f, int s, long j, float col)
//-----------------------------------------------------------------------------
// Plot positioning functions
//-----------------------------------------------------------------------------
-void mglCanvas::SubPlot(int nx,int ny,int m, float dx, float dy)
-{
- float x1,x2,y1,y2;
- int mx = m%nx, my = m/nx;
- if(get(MGL_AUTO_FACTOR)) { dx /= 1.55; dy /= 1.55; }
- else { dx /= 2; dy /= 2; }
- x1 = (mx+dx)/nx; x2 = (mx+1+dx)/nx;
- y2 = 1.f-(my+dy)/ny; y1 = 1.f-(my+1+dy)/ny;
- InPlot(x1,x2,y1,y2,false);
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::SubPlot(int nx,int ny,int m, const char *style)
-{
- float x1,x2,y1,y2;
- int mx = m%nx, my = m/nx;
- x1 = float(mx)/nx; x2 = float(mx+1)/nx;
- y2 = 1.f-float(my)/ny; y1 = 1.f-float(my+1)/ny;
- InPlot(x1,x2,y1,y2,style);
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::MultiPlot(int nx,int ny,int m, int dx, int dy, const char *style)
-{
- float x1,x2,y1,y2;
- int mx = m%nx, my = m/nx;
- dx = (dx<1 || dx+mx>=nx) ? 1 : dx;
- dy = (dy<1 || dy+my>=ny) ? 1 : dy;
- x1 = float(mx)/nx; x2 = float(mx+dx)/nx;
- y2 = 1-float(my)/ny; y1 = 1-float(my+dy)/ny;
- InPlot(x1,x2,y1,y2,style);
-}
-//-----------------------------------------------------------------------------
void mglCanvas::InPlot(float x1,float x2,float y1,float y2, const char *st)
{
if(Width<=0 || Height<=0 || Depth<=0) return;
if(!st) { InPlot(x1,x2,y1,y2,false); return; }
- inW = Width*(x2-x1); inH = Height*(y2-y1); Persp = 0;
+ inW = Width*(x2-x1); inH = Height*(y2-y1);
mglPrim p; p.id = ObjId;
p.n1=x1*Width; p.n2=x2*Width; p.n3=y1*Height; p.n4=y2*Height;
MGL_PUSH(Sub,p,mutexSub);
@@ -420,8 +413,8 @@ void mglCanvas::InPlot(float x1,float x2,float y1,float y2, bool rel)
if(get(MGL_AUTO_FACTOR)) B.pf = 1.55; // Automatically change plot factor !!!
if(rel)
{
- B.x = B1.x + (x1+x2-1)/2*B1.b[0];
- B.y = B1.y + (y1+y2-1)/2*B1.b[4];
+ B.x = B1.x + (x1+x2-1)/2*B1.b[0]/1.55;
+ B.y = B1.y + (y1+y2-1)/2*B1.b[4]/1.55;
B.b[0] = B1.b[0]*(x2-x1); B.b[4] = B1.b[4]*(y2-y1);
B.b[8] = sqrt(B.b[0]*B.b[4]);
B.z = B1.z + (1.f-B.b[8]/(2*Depth))*B1.b[8];
@@ -435,18 +428,60 @@ void mglCanvas::InPlot(float x1,float x2,float y1,float y2, bool rel)
B.z = (1.f-B.b[8]/(2*Depth))*Depth;
B1=B;
}
- inW = B.b[0]; inH=B.b[4]; Persp = 0;
+ inW = B.b[0]; inH=B.b[4];
font_factor = B.b[0] < B.b[4] ? B.b[0] : B.b[4];
mglPrim p; p.id = ObjId;
p.n1=x1*Width; p.n2=x2*Width; p.n3=y1*Height; p.n4=y2*Height;
MGL_PUSH(Sub,p,mutexSub);
}
//-----------------------------------------------------------------------------
-void mglCanvas::Rotate(float TetX,float TetZ,float TetY)
+void mglCanvas::StickPlot(int num, int id, float tet, float phi)
{
- RotateN(TetX+_tetx,1.,0.,0.);
- RotateN(TetY+_tety,0.,1.,0.);
- RotateN(TetZ+_tetz,0.,0.,1.);
+ float dx,dy,wx,wy,x1,y1,f1,f2;
+ mglPoint p1(-1,0,0), p2(1,0,0);
+ // first iteration
+ InPlot(0,1,0,1,true); Rotate(tet, phi);
+ PostScale(p1); PostScale(p2); f1 = B.pf;
+ dx=(p2.x-p1.x)*1.55/B1.b[0]; dy=(p2.y-p1.y)*1.55/B1.b[4];
+ wx=1/(1+(num-1)*fabs(dx)); wy=1/(1+(num-1)*fabs(dy));
+ x1=dx>0?dx*id:dx*(id-num+1); y1=dy>0?dy*id:dy*(id-num+1);
+ InPlot(x1*wx,(x1+1)*wx,y1*wy,(y1+1)*wy,true); Rotate(tet,phi);
+ f2 = B.pf; dx*=f1/f2; dy*=f1/f2; // add correction due to PlotFactor
+ wx=1/(1+(num-1)*fabs(dx)); wy=1/(1+(num-1)*fabs(dy));
+ x1=dx>0?dx*id:dx*(id-num+1); y1=dy>0?dy*id:dy*(id-num+1);
+ InPlot(x1*wx,(x1+1)*wx,y1*wy,(y1+1)*wy,true); Rotate(tet,phi);
+ f1=f2; f2 = B.pf; dx*=f1/f2; dy*=f1/f2; // add correction due to PlotFactor
+ wx=1/(1+(num-1)*fabs(dx)); wy=1/(1+(num-1)*fabs(dy));
+ x1=dx>0?dx*id:dx*(id-num+1); y1=dy>0?dy*id:dy*(id-num+1);
+ InPlot(x1*wx,(x1+1)*wx,y1*wy,(y1+1)*wy,true); Rotate(tet,phi);
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::Rotate(float tetz,float tetx,float tety)
+{
+// RotateN(TetX,1.,0.,0.);
+// RotateN(TetY,0.,1.,0.);
+// RotateN(TetZ,0.,0.,1.);
+ float R[9], O[9];
+ float cx=cos(tetx*M_PI/180), sx=-sin(tetx*M_PI/180), cy=cos(tety*M_PI/180), sy=-sin(tety*M_PI/180), cz=cos(tetz*M_PI/180), sz=-sin(tetz*M_PI/180);
+ R[0] = cx*cy; R[1] = -cy*sx; R[2] = sy;
+ R[3] = cx*sy*sz+cz*sx; R[4] = cx*cz-sx*sy*sz; R[5] =-cy*sz;
+ R[6] = sx*sz-cx*cz*sy; R[7] = cx*sz+cz*sx*sy; R[8] = cy*cz;
+ memcpy(O,B.b,9*sizeof(float));
+ B.b[0] = R[0]*O[0] + R[3]*O[1] + R[6]*O[2];
+ B.b[1] = R[1]*O[0] + R[4]*O[1] + R[7]*O[2];
+ B.b[2] = R[2]*O[0] + R[5]*O[1] + R[8]*O[2];
+ B.b[3] = R[0]*O[3] + R[3]*O[4] + R[6]*O[5];
+ B.b[4] = R[1]*O[3] + R[4]*O[4] + R[7]*O[5];
+ B.b[5] = R[2]*O[3] + R[5]*O[4] + R[8]*O[5];
+ B.b[6] = R[0]*O[6] + R[3]*O[7] + R[6]*O[8];
+ B.b[7] = R[1]*O[6] + R[4]*O[7] + R[7]*O[8];
+ B.b[8] = R[2]*O[6] + R[5]*O[7] + R[8]*O[8];
+ if(get(MGL_AUTO_FACTOR))
+ {
+ float w=(fabs(B.b[3])+fabs(B.b[4])+fabs(B.b[5]))/B1.b[4];
+ float h=(fabs(B.b[0])+fabs(B.b[1])+fabs(B.b[2]))/B1.b[0];
+ B.pf = 1.55+0.6147*(w<h ? (h-1):(w-1));
+ }
}
//-----------------------------------------------------------------------------
void mglCanvas::RotateN(float Tet,float x,float y,float z)
@@ -475,10 +510,35 @@ void mglCanvas::RotateN(float Tet,float x,float y,float z)
}
//-----------------------------------------------------------------------------
void mglCanvas::View(float tetx,float tetz,float tety)
-{ _tetx=tetx; _tety=tety; _tetz=tetz; }
-//-----------------------------------------------------------------------------
-void mglCanvas::Perspective(float a) // I'm too lazy for using 4*4 matrix
-{ Persp = fabs(a)/Depth; }
+{
+ float R[9], A[9];
+ float cx=cos(tetx*M_PI/180), sx=sin(tetx*M_PI/180);
+ float cy=cos(tety*M_PI/180), sy=sin(tety*M_PI/180);
+ float cz=cos(tetz*M_PI/180), sz=sin(tetz*M_PI/180);
+ R[0] = cx*cy; R[1] = -cy*sx; R[2] = sy;
+ R[3] = cx*sy*sz+cz*sx; R[4] = cx*cz-sx*sy*sz; R[5] =-cy*sz;
+ R[6] = sx*sz-cx*cz*sy; R[7] = cx*sz+cz*sx*sy; R[8] = cy*cz;
+ memcpy(A,Bp.b,9*sizeof(float)); ClfZB();
+ Bp.b[0] = R[0]*A[0] + R[3]*A[1] + R[6]*A[2];
+ Bp.b[1] = R[1]*A[0] + R[4]*A[1] + R[7]*A[2];
+ Bp.b[2] = R[2]*A[0] + R[5]*A[1] + R[8]*A[2];
+ Bp.b[3] = R[0]*A[3] + R[3]*A[4] + R[6]*A[5];
+ Bp.b[4] = R[1]*A[3] + R[4]*A[4] + R[7]*A[5];
+ Bp.b[5] = R[2]*A[3] + R[5]*A[4] + R[8]*A[5];
+ Bp.b[6] = R[0]*A[6] + R[3]*A[7] + R[6]*A[8];
+ Bp.b[7] = R[1]*A[6] + R[4]*A[7] + R[7]*A[8];
+ Bp.b[8] = R[2]*A[6] + R[5]*A[7] + R[8]*A[8];
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::Zoom(float x1, float y1, float x2, float y2)
+{
+ Bp.clear(); ClfZB();
+ if(x1==x2 || y1==y2) { x1=y1=0; x2=y2=1; }
+ if(x1<x2) { Bp.x=x1; Bp.b[0]=x2-x1; }
+ else { Bp.x=x2; Bp.b[0]=x1-x2; }
+ if(y1<y2) { Bp.y=y1; Bp.b[4]=y2-y1; }
+ else { Bp.y=y2; Bp.b[4]=y1-y2; }
+}
//-----------------------------------------------------------------------------
int mglCanvas::GetSplId(long x,long y)
{
@@ -503,55 +563,22 @@ void mglCanvas::Aspect(float Ax,float Ay,float Az)
B.b[2] *= Az; B.b[5] *= Az; B.b[8] *= Az;
}
//-----------------------------------------------------------------------------
-void mglCanvas::StickPlot(int num, int id, float tet, float phi)
-{
- float dx,dy,w0,h0;
- mglPoint p1(-1,0,0), p2(1,0,0);
- InPlot(0,1,0,1,true); Rotate(tet, phi);
- PostScale(p1); PostScale(p2);
- w0=1/(1+(num-1)*fabs(p2.x-p1.x)/inW); dx=(p2.x-p1.x)*w0/inW;
- h0=1/(1+(num-1)*fabs(p2.y-p1.y)/inH); dy=(p2.y-p1.y)*h0/inH;
-
- p1 = mglPoint(-1,0,0); p2 = mglPoint(1,0,0);
- InPlot(dx>0?0:1-w0, dx>0?w0:1, dy>0?0:1-h0, dy>0?h0:1, true);
- Rotate(tet,phi); PostScale(p1); PostScale(p2);
- w0=1/(1+(num-1)*fabs(p2.x-p1.x)/inW); dx=(p2.x-p1.x)*w0/inW;
- h0=1/(1+(num-1)*fabs(p2.y-p1.y)/inH); dy=(p2.y-p1.y)*h0/inH;
-
- float x1=dx>0?dx*id:1-w0+dx*id, x2=dx>0?w0+dx*id:1+dx*id;
- float y1=dy>0?dy*id:1-h0+dy*id, y2=dy>0?h0+dy*id:1+dy*id;
- InPlot(x1, x2, y1, y2, true); Rotate(tet,phi);
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::ColumnPlot(int num, int i, float dd)
-{
- float d = i/(num+B.pf-1);
- float w = B.pf/(num+B.pf-1);
- InPlot(0,1,d,d+w*(1-dd),true);
-}
-//-----------------------------------------------------------------------------
// Lighting and transparency
//-----------------------------------------------------------------------------
void mglCanvas::Fog(float d, float dz) { FogDist=d; FogDz = dz; }
//-----------------------------------------------------------------------------
-bool mglCanvas::Alpha(bool enable)
-{ bool t=get(MGL_ENABLE_ALPHA); set(enable,MGL_ENABLE_ALPHA); return t; }
-//-----------------------------------------------------------------------------
-bool mglCanvas::Light(bool enable)
-{ bool t=get(MGL_ENABLE_LIGHT); set(enable,MGL_ENABLE_LIGHT); return t; }
-//-----------------------------------------------------------------------------
void mglCanvas::Light(int n, bool enable)
{
if(n<0 || n>9) { SetWarn(mglWarnLId); return; }
light[n].n = enable;
}
//-----------------------------------------------------------------------------
-void mglCanvas::AddLight(int n, mglPoint p, char col, float br, bool inf, float ap)
+void mglCanvas::AddLight(int n, mglPoint r, mglPoint d, char col, float br, float ap)
{
if(n<0 || n>9) { SetWarn(mglWarnLId); return; }
light[n].n = true; light[n].a = ap>0?ap*ap:3;
- light[n].b = br; light[n].i = inf;
- light[n].r = p; light[n].c = mglColor(col);
+ light[n].b = br; light[n].r = r;
+ light[n].d = d; light[n].c = mglColor(col);
}
//-----------------------------------------------------------------------------
void mglCanvas::arrow_plot(long n1, long n2,char st)
@@ -559,7 +586,7 @@ void mglCanvas::arrow_plot(long n1, long n2,char st)
if(n1<0 || n2<0 || !strchr("AVKSDTIO",st)) return;
const mglPnt &p1=Pnt[n1], &p2=Pnt[n2];
mglPnt q1=p1,q2=p1,q3=p1,q4=p1;
- q1.u=q2.u=q3.u=q4.u=NAN;
+ q1.u=q1.v=q2.u=q2.v=q3.u=q3.v=q4.u=q4.v=NAN;
float lx=p1.x-p2.x, ly=p1.y-p2.y, ll, kx,ky;
ll = hypot(lx,ly)/(PenWidth*ArrowSize*0.35*font_factor);
@@ -571,58 +598,58 @@ void mglCanvas::arrow_plot(long n1, long n2,char st)
switch(st)
{
case 'I':
- q1.x = p1.x+kx; q1.y = p1.y+ky; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
- q2.x = p1.x-kx; q2.y = p1.y-ky; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
+ q1.xx=q1.x=p1.x+kx; q1.yy=q1.y=p1.y+ky; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q2.xx=q2.x=p1.x-kx; q2.yy=q2.y=p1.y-ky; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
line_plot(k1,k2); break;
case 'D':
- q1.x = p1.x+kx; q1.y = p1.y+ky; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
- q2.x = p1.x+lx; q2.y = p1.y+ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
- q3.x = p1.x-kx; q3.y = p1.y-ky; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
- q4.x = p1.x-lx; q4.y = p1.y-ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
+ q1.xx=q1.x=p1.x+kx; q1.yy=q1.y=p1.y+ky; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q2.xx=q2.x=p1.x+lx; q2.yy=q2.y=p1.y+ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
+ q3.xx=q3.x=p1.x-kx; q3.yy=q3.y=p1.y-ky; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
+ q4.xx=q4.x=p1.x-lx; q4.yy=q4.y=p1.y-ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
quad_plot(k1,k2,k4,k3); break;
case 'S':
- q1.x = p1.x+kx-lx; q1.y = p1.y+ky-ly; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
- q2.x = p1.x-kx-lx; q2.y = p1.y-ky-ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
- q3.x = p1.x-kx+lx; q3.y = p1.y-ky+ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
- q4.x = p1.x+kx+lx; q4.y = p1.y+ky+ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
+ q1.xx=q1.x=p1.x+kx-lx; q1.yy=q1.y=p1.y+ky-ly; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q2.xx=q2.x=p1.x-kx-lx; q2.yy=q2.y=p1.y-ky-ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
+ q3.xx=q3.x=p1.x-kx+lx; q3.yy=q3.y=p1.y-ky+ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
+ q4.xx=q4.x=p1.x+kx+lx; q4.yy=q4.y=p1.y+ky+ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
quad_plot(k1,k2,k4,k3); break;
case 'T':
- q1.x = p1.x+kx-lx; q1.y = p1.y+ky-ly; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
- q2.x = p1.x-kx-lx; q2.y = p1.y-ky-ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
- q3.x = p1.x+lx; q3.y = p1.y+ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
+ q1.xx=q1.x=p1.x+kx-lx; q1.yy=q1.y=p1.y+ky-ly; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q2.xx=q2.x=p1.x-kx-lx; q2.yy=q2.y=p1.y-ky-ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
+ q3.xx=q3.x=p1.x+lx; q3.yy=q3.y=p1.y+ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
trig_plot(k1,k2,k3); break;
case 'A':
- q1.x = p1.x; q1.y = p1.y; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
- q2.x = p1.x-kx-2*lx; q2.y = p1.y-ky-2*ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
- q3.x = p1.x-1.5*lx; q3.y = p1.y-1.5*ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
- q4.x = p1.x+kx-2*lx; q4.y = p1.y+ky-2*ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
+ q1.xx=q1.x=p1.x; q1.yy=q1.y=p1.y; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q2.xx=q2.x=p1.x-kx-2*lx; q2.yy=q2.y=p1.y-ky-2*ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
+ q3.xx=q3.x=p1.x-1.5*lx; q3.yy=q3.y=p1.y-1.5*ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
+ q4.xx=q4.x=p1.x+kx-2*lx; q4.yy=q4.y=p1.y+ky-2*ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
quad_plot(k1,k2,k4,k3); break;
case 'K':
- q1.x = p1.x; q1.y = p1.y; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
- q2.x = p1.x-kx-2*lx; q2.y = p1.y-ky-2*ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
- q3.x = p1.x-1.5*lx; q3.y = p1.y-1.5*ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
- q4.x = p1.x+kx-2*lx; q4.y = p1.y+ky-2*ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
+ q1.xx=q1.x=p1.x; q1.yy=q1.y=p1.y; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q2.xx=q2.x=p1.x-kx-2*lx; q2.yy=q2.y=p1.y-ky-2*ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
+ q3.xx=q3.x=p1.x-1.5*lx; q3.yy=q3.y=p1.y-1.5*ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
+ q4.xx=q4.x=p1.x+kx-2*lx; q4.yy=q4.y=p1.y+ky-2*ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
quad_plot(k1,k2,k4,k3);
- q1.x = p1.x+kx; q1.y = p1.y+ky; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
- q2.x = p1.x-kx; q2.y = p1.y-ky; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
+ q1.xx=q1.x=p1.x+kx; q1.yy=q1.y=p1.y+ky; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q2.xx=q2.x=p1.x-kx; q2.yy=q2.y=p1.y-ky; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
line_plot(k1,k2); break;
case 'V':
- q1.x = p1.x; q1.y = p1.y; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
- q2.x = p1.x-kx+2*lx; q2.y = p1.y-ky+2*ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
- q3.x = p1.x+1.5*lx; q3.y = p1.y+1.5*ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
- q4.x = p1.x+kx+2*lx; q4.y = p1.y+ky+2*ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
+ q1.xx=q1.x=p1.x; q1.yy=q1.y=p1.y; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q2.xx=q2.x=p1.x-kx+2*lx; q2.yy=q2.y=p1.y-ky+2*ly; k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
+ q3.xx=q3.x=p1.x+1.5*lx; q3.yy=q3.y=p1.y+1.5*ly; k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
+ q4.xx=q4.x=p1.x+kx+2*lx; q4.yy=q4.y=p1.y+ky+2*ly; k4=Pnt.size(); MGL_PUSH(Pnt,q4,mutexPnt);
quad_plot(k1,k2,k4,k3); break;
case 'O':
{
- q1.x = p1.x; q1.y = p1.y; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
+ q1.xx=q1.x=p1.x; q1.yy=q1.y=p1.y; k1=Pnt.size(); MGL_PUSH(Pnt,q1,mutexPnt);
double t,c,s;
for(int i=0;i<16;i++)
{
t = M_PI*i/8.; s=sin(t); c=cos(t);
- q2.x = p1.x+kx*s+lx*c; q2.y = p1.y+ky*s+ly*c;
+ q2.xx=q2.x=p1.x+kx*s+lx*c; q2.yy=q2.y=p1.y+ky*s+ly*c;
k2=Pnt.size(); MGL_PUSH(Pnt,q2,mutexPnt);
t = M_PI*(i+1)/8.; s=sin(t); c=cos(t);
- q3.x = p1.x+kx*s+lx*c; q3.y = p1.y+ky*s+ly*c;
+ q3.xx=q3.x=p1.x+kx*s+lx*c; q3.yy=q3.y=p1.y+ky*s+ly*c;
k3=Pnt.size(); MGL_PUSH(Pnt,q3,mutexPnt);
trig_plot(k1,k2,k3);
}
@@ -631,20 +658,9 @@ void mglCanvas::arrow_plot(long n1, long n2,char st)
}
}
//-----------------------------------------------------------------------------
-wchar_t *mgl_wcsdup(const wchar_t *s);
-void mglCanvas::AddLegend(const char *str,const char *style)
-{
- if(!str) return;
- unsigned s = strlen(str)+1;
- wchar_t *wcs = new wchar_t[s];
- mbstowcs(wcs,str,s);
- AddLegend(wcs, style);
- delete []wcs;
-}
-//-----------------------------------------------------------------------------
void mglCanvas::Legend(const std::vector<mglText> &leg, float x, float y, const char *font, float size, float ll)
{
- long n=leg.size();
+ long n=leg.size(), iw, ih;
if(n<1) { SetWarn(mglWarnLeg); return; }
static int cgid=1; StartGroup("Legend",cgid++);
if(ll<=0 || isnan(ll)) ll=0.1;
@@ -654,10 +670,12 @@ void mglCanvas::Legend(const std::vector<mglText> &leg, float x, float y, const
if(!font) font="#";
char *pA, *ff = new char[strlen(font)+3];
strcpy(ff,font); strcat(ff,":L"); Push();
- if((pA=strchr(ff,'A'))) { *pA = ' '; InPlot(0,1,0,1,false); }
+ if((pA=strchr(ff,'A')))
+ { *pA = ' '; InPlot(0,1,0,1,false); iw=B1.b[0]; ih=B1.b[4]; }
+ else { iw=B1.b[0]/B1.pf; ih=B1.b[4]/B1.pf; }
// find sizes
float h=TextHeight(font,size)/2;
- float dx = 0.03*inW, dy = 0.03*inH, w=0, t;
+ float dx = 0.03*iw, dy = 0.03*ih, w=0, t;
register long i,j;
for(i=0;i<n;i++) // find text length
{
@@ -665,15 +683,26 @@ void mglCanvas::Legend(const std::vector<mglText> &leg, float x, float y, const
if(leg[i].stl.empty()) t -= ll;
w = w>t ? w:t;
}
- w += ll+0.01*inW; // add space for lines
- x = x*(inW-w-2*dx)+B.x-inW/2+dx;
- y = y*(inH-h*n-2*dy)+B.y-inH/2+dy;
+ w += ll+0.01*iw; // add space for lines
+ x = x*(iw-w-2*dx)+B.x-iw/2+dx;
+ y = y*(ih-h*n-2*dy)+B.y-ih/2+dy;
// draw it
- long k1,k2,k3,k4;
+ long k1=0,k2=0,k3=0,k4=0;
mglPoint p,q=mglPoint(NAN);
- float c1=AddTexture('w'), c2=AddTexture('k');
+
+ for(i=0;ff[i] && ff[i]!=':';i++) if(strchr(MGL_COLORS,ff[i]))
+ {
+
+ if(k1 && k2) { k3=ff[i]; k4++; }
+ if(k1 && !k2) { k2=ff[i]; k4++; }
+ if(!k1) { k1=ff[i]; k4++; }
+ }
+ if(k4==2) k2=0;
+ if(k4==1) k1=k2=0;
+ float c1=AddTexture(char(k1?k1:'w')), c2=AddTexture(char(k2?k2:'k'));
if((Flag&3)==2) { float cc=c1; c2=c2; c2=cc; };
- if(strchr(font,'#')) // draw bounding box
+
+ if(strchr(ff,'#')) // draw bounding box
{
k1=AddPnt(mglPoint(x,y,Depth),c1,q,-1,0);
k2=AddPnt(mglPoint(x+w,y,Depth),c1,q,-1,0);
@@ -688,15 +717,15 @@ void mglCanvas::Legend(const std::vector<mglText> &leg, float x, float y, const
for(i=0;i<n;i++) // draw lines and legend
{
char m=SetPenPal(leg[i].stl.c_str());
- k1=AddPnt(mglPoint(x+0.1*ll,y+i*h+0.45*h,Depth),CDef,q,-1,0);
- k2=AddPnt(mglPoint(x+0.9*ll,y+i*h+0.45*h,Depth),CDef,q,-1,0);
- pPos=0; line_plot(k1,k2);
+ k1=AddPnt(mglPoint(x+0.1*ll,y+(n-i-1)*h+0.45*h,Depth),CDef,q,-1,0);
+ k2=AddPnt(mglPoint(x+0.9*ll,y+(n-i-1)*h+0.45*h,Depth),CDef,q,-1,0); pPos=0;
+ if(!leg[i].stl.empty()) line_plot(k1,k2);
if(m) for(j=0;j<LegendMarks;j++)
{
- p = mglPoint(x+0.1f*ll + (j+1)*0.8f*ll/(1.+LegendMarks),y+i*h+0.45*h,Depth);
+ p = mglPoint(x+0.1f*ll + (j+1)*0.8f*ll/(1.+LegendMarks),y+(n-i-1)*h+0.45*h,Depth);
mark_plot(AddPnt(p,CDef,q,-1,0),m);
}
- p = mglPoint(x+((!leg[i].stl.empty())?ll:0), y+i*h+0.15*h, Depth);
+ p = mglPoint(x+((!leg[i].stl.empty())?ll:0.01*iw), y+(n-i-1)*h+0.15*h, Depth);
text_plot(AddPnt(p,-1,q,-1,0), leg[i].text.c_str(), ff, size);
}
Pop(); EndGroup(); delete []ff;
@@ -717,8 +746,8 @@ void mglCanvas::Title(const char *title,const char *stl,float size)
//-----------------------------------------------------------------------------
void mglCanvas::Title(const wchar_t *title,const char *stl,float size)
{
- float s = size>0 ? size/FontSize:-size, h=TextHeight(stl,size)*s/2;
- if(h>=inH) { SetWarn(mglWarnSpc,"FrameBox"); return; }
+ float s = size>0 ? size/FontSize:-size, h=TextHeight(stl,size)*s/4;
+ if(h>=inH) { SetWarn(mglWarnSpc,"Title"); return; }
bool box=(stl && strchr(stl,'#'));
int align; mglGetStyle(stl,0,&align); align = align&3;
float x=B1.x-inW/2, y=B1.y+inH/2-h;
@@ -739,12 +768,8 @@ void mglCanvas::Title(const wchar_t *title,const char *stl,float size)
line_plot(k1,k2); line_plot(k2,k4);
line_plot(k4,k3); line_plot(k3,k1);
}
-
- B.clear(); B=B1;
- B.y = B1.y - h/2;
- B.b[4] = B1.b[4]-h;
- inH-=h; Persp = 0;
- font_factor = B.b[0] < B.b[4] ? B.b[0] : B.b[4];
+ B1.y -= h/2; B1.b[4] -= h; B=B1;
+ inH-=h; font_factor = B.b[0] < B.b[4] ? B.b[0] : B.b[4];
}
//-----------------------------------------------------------------------------
void mglCanvas::StartAutoGroup (const char *lbl)
@@ -755,5 +780,5 @@ void mglCanvas::StartAutoGroup (const char *lbl)
MGL_PUSH(Grp,mglGroup(lbl,ObjId),mutexGrp);
}
//-----------------------------------------------------------------------------
-void mglCanvas::EndGroup() { LoadState(); }
+void mglCanvas::EndGroup() { LoadState(); clr(MGL_HIGHLIGHT); }
//-----------------------------------------------------------------------------
diff --git a/src/canvas_cf.cpp b/src/canvas_cf.cpp
index 4c7bd0d..5e83da2 100644
--- a/src/canvas_cf.cpp
+++ b/src/canvas_cf.cpp
@@ -28,9 +28,9 @@ const unsigned char *mgl_get_rgb(HMGL gr) { return _Gr_->GetBits(); }
const unsigned char *mgl_get_rgba(HMGL gr) { return _Gr_->GetRGBA(); }
int mgl_get_width(HMGL gr) { return _Gr_->GetWidth(); }
int mgl_get_height(HMGL gr) { return _Gr_->GetHeight(); }
-void mgl_calc_xyz(HMGL gr, int xs, int ys, mreal *x, mreal *y, mreal *z)
+void mgl_calc_xyz(HMGL gr, int xs, int ys, float *x, float *y, float *z)
{ mglPoint p = _Gr_->CalcXYZ(xs,ys); *x = p.x; *y = p.y; *z = p.z; }
-void mgl_calc_scr(HMGL gr, mreal x, mreal y, mreal z, int *xs, int *ys)
+void mgl_calc_scr(HMGL gr, float x, float y, float z, int *xs, int *ys)
{ _Gr_->CalcScr(mglPoint(x,y,z),xs,ys); }
void mgl_set_obj_id(HMGL gr, int id) { _Gr_->SetObjId(id); }
int mgl_get_obj_id(HMGL gr, long x, long y) { return _Gr_->GetObjId(x,y); }
@@ -43,42 +43,84 @@ void mgl_reset_frames(HMGL gr) { _Gr_->ResetFrames(); }
//-----------------------------------------------------------------------------
void mgl_set_transp_type(HMGL gr, int type) { _Gr_->SetTranspType(type); }
void mgl_set_alpha(HMGL gr, int enable) { _Gr_->Alpha(enable); }
-void mgl_set_fog(HMGL gr, float d, float dz) { _Gr_->Fog(d,dz); }
+void mgl_set_fog(HMGL gr, float d, float dz) { _Gr_->Fog(d,dz); }
void mgl_set_light(HMGL gr, int enable) { _Gr_->Light(enable); }
void mgl_set_light_n(HMGL gr, int n, int enable) { _Gr_->Light(n, enable); }
-void mgl_add_light_ext(HMGL gr, int n, float x, float y, float z, char c, float br, int inf, float ap)
-{ _Gr_->AddLight(n,mglPoint(x,y,z),c,br,inf,ap); }
-void mgl_add_light(HMGL gr, int n, float x, float y, float z, char c)
-{ _Gr_->AddLight(n,mglPoint(x,y,z),c,0.5); }
+void mgl_add_light_ext(HMGL gr, int n, float x, float y, float z, char c, float br, float ap)
+{ _Gr_->AddLight(n,mglPoint(x,y,z),c,br,ap); }
+void mgl_add_light_loc(HMGL gr, int n, float x, float y, float z, float dx, float dy, float dz, char c, float br, float ap)
+{ _Gr_->AddLight(n,mglPoint(x,y,z),mglPoint(dx,dy,dz),c,br,ap); }
+void mgl_add_light(HMGL gr, int n, float x, float y, float z)
+{ _Gr_->AddLight(n,mglPoint(x,y,z)); }
//-----------------------------------------------------------------------------
void mgl_mat_push(HMGL gr) { _Gr_->Push(); }
void mgl_mat_pop(HMGL gr) { _Gr_->Pop(); }
void mgl_clf(HMGL gr) { _Gr_->Clf(); }
void mgl_clf_rgb(HMGL gr, float r, float g, float b){ _Gr_->Clf(mglColor(r,g,b)); }
//-----------------------------------------------------------------------------
-void mgl_subplot(HMGL gr, int nx,int ny,int m) { _Gr_->SubPlot(nx,ny,m); }
+void mgl_subplot(HMGL gr, int nx,int ny,int m)
+{ mgl_subplot_d(gr,nx,ny,m,0,0); }
+//-----------------------------------------------------------------------------
void mgl_subplot_d(HMGL gr, int nx,int ny,int m,float dx,float dy)
-{ _Gr_->SubPlot(nx,ny,m,dx,dy); }
+{
+ float x1,x2,y1,y2;
+ int mx = m%nx, my = m/nx;
+ if(_Gr_->get(MGL_AUTO_FACTOR)) { dx /= 1.55; dy /= 1.55; }
+ else { dx /= 2; dy /= 2; }
+ x1 = (mx+dx)/nx; x2 = (mx+1+dx)/nx;
+ y2 = 1.f-(my+dy)/ny; y1 = 1.f-(my+1+dy)/ny;
+ _Gr_->InPlot(x1,x2,y1,y2,false);
+}
+//-----------------------------------------------------------------------------
void mgl_subplot_s(HMGL gr, int nx,int ny,int m,const char *style)
-{ _Gr_->SubPlot(nx,ny,m,style); }
+{
+ float x1,x2,y1,y2;
+ int mx = m%nx, my = m/nx;
+ x1 = float(mx)/nx; x2 = float(mx+1)/nx;
+ y2 = 1.f-float(my)/ny; y1 = 1.f-float(my+1)/ny;
+ _Gr_->InPlot(x1,x2,y1,y2,style);
+}
+//-----------------------------------------------------------------------------
void mgl_multiplot(HMGL gr, int nx,int ny,int m,int dx,int dy,const char *style)
-{ _Gr_->MultiPlot(nx,ny,m,dx,dy,style); }
+{
+ float x1,x2,y1,y2;
+ int mx = m%nx, my = m/nx;
+ dx = (dx<1 || dx+mx>nx) ? 1 : dx;
+ dy = (dy<1 || dy+my>ny) ? 1 : dy;
+ x1 = float(mx)/nx; x2 = float(mx+dx)/nx;
+ y2 = 1-float(my)/ny; y1 = 1-float(my+dy)/ny;
+ _Gr_->InPlot(x1,x2,y1,y2,style);
+}
+//-----------------------------------------------------------------------------
void mgl_inplot(HMGL gr, float x1,float x2,float y1,float y2)
{ _Gr_->InPlot(x1,x2,y1,y2,false); }
void mgl_relplot(HMGL gr, float x1,float x2,float y1,float y2)
{ _Gr_->InPlot(x1,x2,y1,y2,true); }
-void mgl_columnplot(HMGL gr, int num, int i)
-{ _Gr_->ColumnPlot(num,i); }
-void mgl_columnplot_d(HMGL gr, int num, int i, float d)
-{ _Gr_->ColumnPlot(num,i,d); }
+//-----------------------------------------------------------------------------
+void mgl_columnplot(HMGL gr, int num, int i, float dd)
+{
+ register float w = 1./num;
+ _Gr_->InPlot(0,1,1-w*(i+1-dd),1-i*w,true);
+}
+//-----------------------------------------------------------------------------
+void mgl_gridplot(HMGL gr, int nx, int ny, int i, float dd)
+{
+ register int ix=i%nx, iy=i/nx;
+ register float wx = 1./nx, wy = 1./ny;
+ _Gr_->InPlot(ix*wx,wx*(ix+1-dd),1-wy*(iy+1-dd),1-iy*wy,true);
+}
+//-----------------------------------------------------------------------------
void mgl_stickplot(HMGL gr, int num, int i, float tet, float phi)
{ _Gr_->StickPlot(num, i, tet, phi); }
+//-----------------------------------------------------------------------------
void mgl_aspect(HMGL gr, float Ax,float Ay,float Az)
{ _Gr_->Aspect(Ax,Ay,Az); }
void mgl_rotate(HMGL gr, float TetX,float TetZ,float TetY)
{ _Gr_->Rotate(TetX,TetZ,TetY); }
void mgl_view(HMGL gr, float TetX,float TetZ,float TetY)
{ _Gr_->View(TetX,TetZ,TetY); }
+void mgl_zoom(HMGL gr, float x1, float y1, float x2, float y2)
+{ _Gr_->Zoom(x1,y1,x2,y2); }
void mgl_rotate_vector(HMGL gr, float Tet,float x,float y,float z)
{ _Gr_->RotateN(Tet,x,y,z); }
void mgl_perspective(HMGL gr, float val)
@@ -95,14 +137,16 @@ void mgl_reset_frames_(uintptr_t *gr) { _GR_->ResetFrames(); }
//-----------------------------------------------------------------------------
void mgl_set_transp_type_(uintptr_t *gr, int *type) { _GR_->SetTranspType(*type); }
void mgl_set_alpha_(uintptr_t *gr, int *enable) { _GR_->Alpha(*enable); }
-void mgl_set_fog_(uintptr_t *gr, float *d, float *dz) { _GR_->Fog(*d, *dz); }
+void mgl_set_fog_(uintptr_t *gr, float *d, float *dz) { _GR_->Fog(*d, *dz); }
void mgl_set_light_(uintptr_t *gr, int *enable) { _GR_->Light(*enable); }
void mgl_set_light_n_(uintptr_t *gr, int *n, int *enable)
{ _GR_->Light(*n, *enable); }
-void mgl_add_light_(uintptr_t *gr, int *n, float *x, float *y, float *z, char *c, int)
-{ _GR_->AddLight(*n,mglPoint(*x,*y,*z),*c); }
-void mgl_add_light_ext_(uintptr_t *gr, int *n, float *x, float *y, float *z, char *c, float *br, int *inf, float *ap, int)
-{ _GR_->AddLight(*n,mglPoint(*x,*y,*z),*c,*br,*inf,*ap); }
+void mgl_add_light_(uintptr_t *gr, int *n, float *x, float *y, float *z)
+{ _GR_->AddLight(*n,mglPoint(*x,*y,*z)); }
+void mgl_add_light_ext_(uintptr_t *gr, int *n, float *x, float *y, float *z, char *c, float *br, float *ap, int)
+{ _GR_->AddLight(*n,mglPoint(*x,*y,*z),*c,*br,*ap); }
+void mgl_add_light_loc_(uintptr_t *gr, int *n, float *x, float *y, float *z, float *dx, float *dy, float *dz, char *c, float *br, float *ap, int)
+{ _GR_->AddLight(*n,mglPoint(*x,*y,*z),mglPoint(*dx,*dy,*dz),*c,*br,*ap); }
//-----------------------------------------------------------------------------
void mgl_mat_push_(uintptr_t *gr) { _GR_->Push(); }
void mgl_mat_pop_(uintptr_t *gr) { _GR_->Pop(); }
@@ -112,23 +156,23 @@ void mgl_clf_rgb_(uintptr_t *gr, float *r, float *g, float *b)
{ _GR_->Clf(mglColor(*r,*g,*b)); }
//-----------------------------------------------------------------------------
void mgl_subplot_(uintptr_t *gr, int *nx,int *ny,int *m)
-{ _GR_->SubPlot(*nx,*ny,*m); }
+{ mgl_subplot_d(_GR_,*nx,*ny,*m,0,0); }
void mgl_subplot_d_(uintptr_t *gr, int *nx,int *ny,int *m,float *dx,float *dy)
-{ _GR_->SubPlot(*nx,*ny,*m,*dx,*dy); }
+{ mgl_subplot_d(_GR_,*nx,*ny,*m,*dx,*dy); }
void mgl_subplot_s_(uintptr_t *gr, int *nx,int *ny,int *m,const char *st,int l)
{ char *s=new char[l+1]; memcpy(s,st,l); s[l]=0;
- _GR_->SubPlot(*nx,*ny,*m,s); delete []s; }
+ mgl_subplot_s(_GR_,*nx,*ny,*m,s); delete []s; }
void mgl_multiplot_(uintptr_t *gr, int *nx,int *ny,int *m,int *dx,int *dy,const char *st,int l)
{ char *s=new char[l+1]; memcpy(s,st,l); s[l]=0;
- _GR_->MultiPlot(*nx,*ny,*m,*dx,*dy,s); delete []s; }
+ mgl_multiplot(_GR_,*nx,*ny,*m,*dx,*dy,s); delete []s; }
void mgl_inplot_(uintptr_t *gr, float *x1,float *x2,float *y1,float *y2)
{ _GR_->InPlot(*x1,*x2,*y1,*y2,false); }
void mgl_relplot_(uintptr_t *gr, float *x1,float *x2,float *y1,float *y2)
{ _GR_->InPlot(*x1,*x2,*y1,*y2,true); }
-void mgl_columnplot_(uintptr_t *gr, int *num, int *i)
-{ _GR_->ColumnPlot(*num,*i); }
-void mgl_columnplot_d_(uintptr_t *gr, int *num, int *i, float *d)
-{ _GR_->ColumnPlot(*num,*i,*d); }
+void mgl_columnplot_(uintptr_t *gr, int *num, int *i, float *d)
+{ mgl_columnplot(_GR_,*num,*i,*d); }
+void mgl_columnplot_d_(uintptr_t *gr, int *nx, int *ny, int *i, float *d)
+{ mgl_gridplot(_GR_,*nx,*ny,*i,*d); }
void mgl_stickplot_(uintptr_t *gr, int *num, int *i, float *tet, float *phi)
{ _GR_->StickPlot(*num, *i, *tet, *phi); }
@@ -142,6 +186,8 @@ void mgl_rotate_(uintptr_t *gr, float *TetX,float *TetZ,float *TetY)
{ _GR_->Rotate(*TetX,*TetZ,*TetY); }
void mgl_view_(uintptr_t *gr, float *TetX,float *TetZ,float *TetY)
{ _GR_->View(*TetX,*TetZ,*TetY); }
+void mgl_zoom_(uintptr_t *gr, float *x1, float *y1, float *x2, float *y2)
+{ _GR_->Zoom(*x1,*y1,*x2,*y2); }
void mgl_rotate_vector_(uintptr_t *gr, float *Tet,float *x,float *y,float *z)
{ _GR_->RotateN(*Tet,*x,*y,*z); }
void mgl_perspective_(uintptr_t *gr, float val)
@@ -197,8 +243,8 @@ void mgl_set_tick_time(HMGL gr, char dir, float d, const char *t)
void mgl_box(HMGL gr) { _Gr_->Box(); }
void mgl_box_str(HMGL gr, const char *col, int ticks)
{ _Gr_->Box(col,ticks); }
-void mgl_axis(HMGL gr, const char *dir, int adj)
-{ _Gr_->Axis(dir,adj); }
+void mgl_axis(HMGL gr, const char *dir, const char *stl)
+{ _Gr_->Axis(dir,stl); }
void mgl_axis_grid(HMGL gr, const char *dir,const char *pen)
{ _Gr_->Grid(dir,pen); }
void mgl_label(HMGL gr, char dir, const char *text)
@@ -207,19 +253,19 @@ void mgl_label_ext(HMGL gr, char dir, const char *text, float pos, float shift)
{ _Gr_->Label(dir,text,pos,shift); }
void mgl_labelw_ext(HMGL gr, char dir, const wchar_t *text, float pos, float shift)
{ _Gr_->Labelw(dir,text,pos,shift); }
-void mgl_label_xy(HMGL gr, float x, float y, const char *text, const char *fnt)
+void mgl_label_pos(HMGL gr, float x, float y, const char *text, const char *fnt)
{ _Gr_->Label(x,y,text,fnt); }
-void mgl_labelw_xy(HMGL gr, float x, float y, const wchar_t *text, const char *fnt)
+void mgl_labelw_pos(HMGL gr, float x, float y, const wchar_t *text, const char *fnt)
{ _Gr_->Labelw(x,y,text,fnt); }
//-----------------------------------------------------------------------------
-void mgl_colorbar(HMGL gr, const char *sch,int where)
-{ _Gr_->Colorbar(sch,where); }
-void mgl_colorbar_ext(HMGL gr, const char *sch, int where, float x, float y, float w, float h)
-{ _Gr_->Colorbar(sch,where,x,y,w,h); }
-void mgl_colorbar_val(HMGL gr, HCDT dat, const char *sch,int where)
-{ _Gr_->Colorbar(dat,sch,where); }
-void mgl_colorbar_val_ext(HMGL gr, HCDT dat, const char *sch,int where,float x, float y, float w, float h)
-{ _Gr_->Colorbar(dat,sch,where,x,y,w,h); }
+void mgl_colorbar(HMGL gr, const char *sch)
+{ _Gr_->Colorbar(sch); }
+void mgl_colorbar_ext(HMGL gr, const char *sch, float x, float y, float w, float h)
+{ _Gr_->Colorbar(sch,x,y,w,h); }
+void mgl_colorbar_val(HMGL gr, HCDT dat, const char *sch)
+{ _Gr_->Colorbar(dat,sch); }
+void mgl_colorbar_val_ext(HMGL gr, HCDT dat, const char *sch,float x, float y, float w, float h)
+{ _Gr_->Colorbar(dat,sch,x,y,w,h); }
//-----------------------------------------------------------------------------
void mgl_add_legend(HMGL gr, const char *text,const char *style)
{ _Gr_->AddLegend(text,style); }
@@ -227,7 +273,7 @@ void mgl_add_legendw(HMGL gr, const wchar_t *text,const char *style)
{ _Gr_->AddLegend(text,style); }
void mgl_clear_legend(HMGL gr)
{ _Gr_->ClearLegend(); }
-void mgl_legend_xy(HMGL gr, float x, float y, const char *font, float size, float llen)
+void mgl_legend_pos(HMGL gr, float x, float y, const char *font, float size, float llen)
{ _Gr_->Legend(x,y,font,size,llen); }
void mgl_legend(HMGL gr, int where, const char *font, float size, float llen)
{ _Gr_->Legend(where,font,size,llen); }
@@ -274,8 +320,10 @@ void mgl_box_(uintptr_t *gr) { _GR_->Box(); }
void mgl_box_str_(uintptr_t *gr, const char *col, int *ticks, int l)
{ char *s=new char[l+1]; memcpy(s,col,l); s[l]=0;
_GR_->Box(s,*ticks); delete []s; }
-void mgl_axis_(uintptr_t *gr, const char *dir, int *adj,int l)
-{ char *s=new char[l+1]; memcpy(s,dir,l); s[l]=0; _GR_->Axis(s,*adj); delete []s; }
+void mgl_axis_(uintptr_t *gr, const char *dir, const char *stl,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,dir,l); s[l]=0;
+ char *p=new char[n+1]; memcpy(p,stl,l); p[n]=0;
+ _GR_->Axis(s,p); delete []s; delete []p; }
void mgl_axis_grid_(uintptr_t *gr, const char *dir,const char *pen,int l,int n)
{ char *s=new char[l+1]; memcpy(s,dir,l); s[l]=0;
char *p=new char[n+1]; memcpy(p,pen,n); p[n]=0;
@@ -286,30 +334,30 @@ void mgl_label_(uintptr_t *gr, const char *dir, const char *text,int,int l)
void mgl_label_ext_(uintptr_t *gr, const char *dir, const char *text, float *pos, float *shift,int,int l)
{ char *s=new char[l+1]; memcpy(s,text,l); s[l]=0;
_GR_->Label(*dir, s, *pos, *shift); delete []s; }
-void mgl_label_xy_(uintptr_t *gr, float *x, float *y, const char *txt, const char *fnt,int l,int n)
+void mgl_label_pos_(uintptr_t *gr, float *x, float *y, const char *txt, const char *fnt,int l,int n)
{ char *s=new char[l+1]; memcpy(s,txt,l); s[l]=0;
char *p=new char[n+1]; memcpy(p,fnt,n); p[n]=0;
_GR_->Label(*x,*y,s,p); delete []s; delete []p; }
//-----------------------------------------------------------------------------
-void mgl_colorbar_(uintptr_t *gr, const char *sch,int *where,int l)
+void mgl_colorbar_(uintptr_t *gr, const char *sch,int l)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- _GR_->Colorbar(s,*where); delete []s; }
-void mgl_colorbar_ext_(uintptr_t *gr, const char *sch,int *where, float *x, float *y, float *w, float *h, int l)
+ _GR_->Colorbar(s); delete []s; }
+void mgl_colorbar_ext_(uintptr_t *gr, const char *sch, float *x, float *y, float *w, float *h, int l)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- _GR_->Colorbar(s,*where,*x,*y,*w,*h); delete []s; }
-void mgl_colorbar_val_(uintptr_t *gr, uintptr_t *dat, const char *sch,int *where,int l)
+ _GR_->Colorbar(s,*x,*y,*w,*h); delete []s; }
+void mgl_colorbar_val_(uintptr_t *gr, uintptr_t *dat, const char *sch,int l)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- _GR_->Colorbar(_DA_(dat), s,*where); delete []s; }
-void mgl_colorbar_val_ext_(uintptr_t *gr, uintptr_t *dat, const char *sch,int *where, float *x, float *y, float *w, float *h, int l)
+ _GR_->Colorbar(_DA_(dat), s); delete []s; }
+void mgl_colorbar_val_ext_(uintptr_t *gr, uintptr_t *dat, const char *sch, float *x, float *y, float *w, float *h, int l)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- _GR_->Colorbar(_DA_(dat),s,*where,*x,*y,*w,*h); delete []s; }
+ _GR_->Colorbar(_DA_(dat),s,*x,*y,*w,*h); delete []s; }
//-----------------------------------------------------------------------------
void mgl_add_legend_(uintptr_t *gr, const char *text,const char *style,int l,int n)
{ char *s=new char[l+1]; memcpy(s,text,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,style,n); f[n]=0;
_GR_->AddLegend(s,f); delete []s; delete []f; }
void mgl_clear_legend_(uintptr_t *gr) { if(gr) _GR_->ClearLegend(); }
-void mgl_legend_xy_(uintptr_t *gr, float *x, float *y, const char *font, float *size, float *llen,int l)
+void mgl_legend_pos_(uintptr_t *gr, float *x, float *y, const char *font, float *size, float *llen,int l)
{ char *s=new char[l+1]; memcpy(s,font,l); s[l]=0;
_GR_->Legend(*x, *y, s, *size,*llen); delete []s; }
void mgl_legend_(uintptr_t *gr, int *where, const char *font, float *size, float *llen,int l)
@@ -331,3 +379,6 @@ void mgl_mpi_recv(HMGL gr, int id) { _Gr_->MPI_Recv(id); }
void mgl_mpi_send_(uintptr_t *gr, int *id) { _GR_->MPI_Send(*id); }
void mgl_mpi_recv_(uintptr_t *gr, int *id) { _GR_->MPI_Recv(*id); }
//-----------------------------------------------------------------------------
+void mgl_wnd_set_delay_(uintptr_t *gr, mreal *dt) { _GR_->SetDelay(*dt); }
+void mgl_wnd_set_delay(HMGL gr, mreal dt) { _Gr_->SetDelay(dt); }
+//-----------------------------------------------------------------------------
diff --git a/src/cont.cpp b/src/cont.cpp
index f66dac4..db9fd12 100644
--- a/src/cont.cpp
+++ b/src/cont.cpp
@@ -54,12 +54,13 @@ void mgl_string_curve(mglBase *gr,long f,long ,long *ff,long *nn,const wchar_t *
register long i,j,k,m;
std::vector<mglPoint> qa, qb; // curves above and below original
- mglPoint p=gr->GetPnt(ff[f]), q=p, s=gr->GetPnt(ff[nn[f]]), l=!(s-q), t=l;
+ mglPoint p=gr->GetPntP(ff[f]), q=p, s=gr->GetPntP(ff[nn[f]]), l=!(s-q), t=l;
qa.push_back(q+l*h); qb.push_back(q-l*h);
for(i=nn[f];i>=0 && i!=f;i=nn[i]) // construct curves
{
+ if(gr->Stop) { delete []wdt; delete []pt; delete []fnt; return; }
p=q; q=s; l=t;
- if(nn[i]>=0) { s=gr->GetPnt(ff[nn[i]]); t=!(s-q); }
+ if(nn[i]>=0 && ff[nn[i]]>=0) { s=gr->GetPntP(ff[nn[i]]); t=!(s-q); }
tet = t.x*l.y-t.y*l.x;
tt = 1+fabs(t.x*l.x+t.y*l.y);
if(tet>0)
@@ -87,6 +88,7 @@ void mgl_string_curve(mglBase *gr,long f,long ,long *ff,long *nn,const wchar_t *
float a,b,d,w,t1,t2;
for(i=j=0,tt=0;j<len;j++)
{
+ if(gr->Stop) { delete []wdt; delete []pt; delete []fnt; return; }
w = align==1 ? wdt[j] : (wdt[j]+wdt[j+1])/2; p = pt[j];
for(k=i+1;k<m;k++) if((p-qa[k]).norm()>w) break;
if(k>i+1 && k<m) tt=-1;
@@ -102,7 +104,7 @@ void mgl_string_curve(mglBase *gr,long f,long ,long *ff,long *nn,const wchar_t *
if(rev) pos=-pos;
for(j=0;j<len;j++) // draw text
{ L[0] = text[align!=2?j:len-1-j]; s = pt[j+1]-pt[j]; l = !s;
- gr->text_plot(gr->AddPnt(pt[j]-(pos*h)*l,c,s,-1,0),L,font,size,0,c); }
+ gr->text_plot(gr->AddPnt(pt[j]-(pos*h)*l,c,s,-1,-1),L,font,size,0,c); }
delete []wdt; delete []pt; delete []fnt;
}
//-----------------------------------------------------------------------------
@@ -176,23 +178,23 @@ void mgl_text_y(HMGL gr, HCDT y, const char *text, const char *font, const char
//-----------------------------------------------------------------------------
void mgl_text_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z,const char *text,const char *font, const char *opt,int l,int n,int lo)
{ char *s=new char[l+1]; memcpy(s,text,l); s[l]=0;
- char *f=new char[n+1]; memcpy(f,font,n); f[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_text_xyz(_GR_, _DA_(x),_DA_(y), _DA_(z), s, f, o);
- delete []o; delete []s; delete []f; }
+char *f=new char[n+1]; memcpy(f,font,n); f[n]=0;
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_text_xyz(_GR_, _DA_(x),_DA_(y), _DA_(z), s, f, o);
+delete []o; delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_text_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, const char *text, const char *font, const char *opt, int l,int n,int lo)
{ char *s=new char[l+1]; memcpy(s,text,l); s[l]=0;
- char *f=new char[n+1]; memcpy(f,font,n); f[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_text_xy(_GR_, _DA_(x),_DA_(y),s,f,o);
- delete []o; delete []s; delete []f; }
+char *f=new char[n+1]; memcpy(f,font,n); f[n]=0;
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_text_xy(_GR_, _DA_(x),_DA_(y),s,f,o);
+delete []o; delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_text_y_(uintptr_t *gr, uintptr_t *y, const char *text, const char *font, const char *opt, int l,int n,int lo)
{ char *s=new char[l+1]; memcpy(s,text,l); s[l]=0;
- char *f=new char[n+1]; memcpy(f,font,n); f[n]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_text_y(_GR_, _DA_(y),s,f,o); delete []o; delete []s; delete []f; }
+char *f=new char[n+1]; memcpy(f,font,n); f[n]=0;
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_text_y(_GR_, _DA_(y),s,f,o); delete []o; delete []s; delete []f; }
//-----------------------------------------------------------------------------
//
// Cont series
@@ -210,7 +212,7 @@ void mgl_connect(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, float c, in
long n=a->GetNx(), m=a->GetNy();
if(n<2 || m<2 || x->GetNx()*x->GetNy()!=n*m || y->GetNx()*y->GetNy()!=n*m || z->GetNx()*z->GetNy()!=n*m)
{ gr->SetWarn(mglWarnDim,"ContGen"); return; }
- std::vector<mglSegment> ss;
+ std::vector<mglSegment> ss,cc;
register long i,j;
float d1,d2,d3,d4;
@@ -218,6 +220,7 @@ void mgl_connect(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, float c, in
mglPoint p1,p2,p3,p4,q1,q2,q3,q4;
for(i=0;i<n;i++) for(j=0;j<m;j++) // prepare segments
{
+ if(gr->Stop) return;
d1 = mgl_d(val,a->v(i,j,ak),a->v(i+1,j,ak)); o1 = d1>=0 && d1<1;
d2 = mgl_d(val,a->v(i,j,ak),a->v(i,j+1,ak)); o2 = d2>=0 && d2<1;
d3 = mgl_d(val,a->v(i+1,j+1,ak),a->v(i+1,j,ak)); o3 = d3>=0 && d3<1;
@@ -235,50 +238,45 @@ void mgl_connect(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, float c, in
if(o2 && o4) { o2 = o4 = false; ss.push_back(mglSegment(q2,q4)); }
if(o3 && o4) { o3 = o4 = false; ss.push_back(mglSegment(q3,q4)); }
}
- if(ss.size()==0) return;
// connect it
-
+ if(ss.size()==0) return;
+ for(i=0;i<ss.size();i++) // lets try most stupid algorithm (can be VERY slow)
+ {
+ mglSegment &s1=ss[i];
+ for(j=0;j<ss.size();j++)
+ {
+ mglSegment &s2=ss[j];
+ if(s2.prev<0 && s1.p2==s2.p1) { s1.next = j; s2.prev=i; continue; }
+ if(s2.next<0 && s1.p1==s2.p2) { s1.prev = j; s2.next=i; continue; }
+ // if(s2.prev<0 && s1.p2==s2.p1)
+ // { s1.next = j; s2.prev=i; continue; }
+ }
}
-
-// NOTE! All data MUST have the same size! Only first slice is used!
-void mgl_cont_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, float c, int text,long ak)
+}
+//-----------------------------------------------------------------------------
+// NOTE! returned must be deleted!!!
+struct mglPnt2 { float x,y; mglPnt2(float xx=0,float yy=0) {x=xx;y=yy;} };
+long *mgl_cont_prep(float val, HCDT a,long ak, std::vector<mglPnt2> &kk)
{
long n=a->GetNx(), m=a->GetNy();
- if(n<2 || m<2 || x->GetNx()*x->GetNy()!=n*m || y->GetNx()*y->GetNy()!=n*m || z->GetNx()*z->GetNy()!=n*m)
- { gr->SetWarn(mglWarnDim,"ContGen"); return; }
-
- mglPoint *kk = new mglPoint[2*n*m],p;
float d, r, kx, ky;
register long i,j,k, pc=0;
- // Usually number of points is much smaller. So, there is no reservation.
-// gr->Reserve(2*n*m);
-
+ kk.clear();
// add intersection point of isoline and Y axis
for(i=0;i<n-1;i++) for(j=0;j<m;j++)
{
d = mgl_d(val,a->v(i,j,ak),a->v(i+1,j,ak));
- if(d>=0 && d<1)
- {
- p = mglPoint(x->v(i,j)*(1-d)+x->v(i+1,j)*d,
- y->v(i,j)*(1-d)+y->v(i+1,j)*d,
- z->v(i,j)*(1-d)+z->v(i+1,j)*d);
- kk[pc] = mglPoint(i+d,j,gr->AddPnt(p,c)); pc++;
- }
+ if(d>=0 && d<1) kk.push_back(mglPnt2(i+d,j));
}
// add intersection point of isoline and X axis
for(i=0;i<n;i++) for(j=0;j<m-1;j++)
{
d = mgl_d(val,a->v(i,j,ak),a->v(i,j+1,ak));
- if(d>=0 && d<1)
- {
- p = mglPoint(x->v(i,j)*(1-d)+x->v(i,j+1)*d,
- y->v(i,j)*(1-d)+y->v(i,j+1)*d,
- z->v(i,j)*(1-d)+z->v(i,j+1)*d);
- kk[pc] = mglPoint(i,j+d,gr->AddPnt(p,c)); pc++;
- }
+ if(d>=0 && d<1) kk.push_back(mglPnt2(i,j+d));
}
- // deallocate arrays and finish if no point
- if(pc==0) { delete []kk; return; }
+
+ pc = kk.size();
+ if(pc==0) return NULL; // deallocate arrays and finish if no point
// allocate arrays for curve (nn - next, ff - prev)
long *nn = new long[pc], *ff = new long[pc];
// -1 is not parsed, -2 starting
@@ -300,7 +298,7 @@ void mgl_cont_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, float c, i
j21 = long(kk[k].y+1e-5); j22 = long(kk[k].y-1e-5);
// check if in the same cell
register bool cond = (i11==i21 || i11==i22 || i12==i21 || i12==i22) &&
- (j11==j21 || j11==j22 || j12==j21 || j12==j22);
+ (j11==j21 || j11==j22 || j12==j21 || j12==j22);
d = hypot(kk[k].x-kx,kk[k].y-ky); // if several then select closest
if(cond && d<r) { r=d; i=k; }
}
@@ -319,7 +317,27 @@ void mgl_cont_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, float c, i
{ j = k; nn[k]=-2; break; }
}
}while(j>=0);
- for(i=0;i<pc;i++) { ff[i] = long(0.5+kk[i].z); } // return to PntC numbering
+ delete []ff; return nn;
+}
+//-----------------------------------------------------------------------------
+// NOTE! All data MUST have the same size! Only first slice is used!
+void mgl_cont_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, float c, int text,long ak)
+{
+ long n=a->GetNx(), m=a->GetNy();
+ if(n<2 || m<2 || x->GetNx()*x->GetNy()!=n*m || y->GetNx()*y->GetNy()!=n*m || z->GetNx()*z->GetNy()!=n*m)
+ { gr->SetWarn(mglWarnDim,"ContGen"); return; }
+
+ std::vector<mglPnt2> kk;
+ long *nn = mgl_cont_prep(val, a, ak, kk), *ff;
+ if(!nn) return; // nothing to do
+ register long i, pc=kk.size();
+ register float xx, yy;
+ ff = new long[pc]; gr->Reserve(pc);
+ for(i=0;i<pc;i++)
+ {
+ xx = kk[i].x; yy = kk[i].y;
+ ff[i] = gr->AddPnt(mglPoint(mgl_data_linear(x,xx,yy,ak), mgl_data_linear(y,xx,yy,ak), mgl_data_linear(z,xx,yy,ak)), c);
+ }
if(text && pc>1)
{
@@ -336,22 +354,23 @@ void mgl_cont_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, float c, i
float *rr=new float[n*m];
for(i=0;i<n*m;i++) { oo[i]=-1; rr[i]=del*del/4; }
+ register long j,k;
for(k=0;k<pc;k++) // print label several times if possible
{
if(nn[k]<0) continue;
- t = gr->GetPnt(ff[k]);
+ t = gr->GetPntP(ff[k]);
i = long(t.x/del); t.x -= i*del;
j = long(t.y/del); t.y -= j*del;
if(i<0 || i>=m || j<0 || j>=n) continue; // never should be here!
- r = t.x*t.x+t.y*t.y; i += m*j;
- if(rr[i]>r) { rr[i]=r; oo[i]=k; }
+ xx = t.x*t.x+t.y*t.y; i += m*j;
+ if(rr[i]>xx) { rr[i]=xx; oo[i]=k; }
}
for(i=0;i<n*m;i++) if(oo[i]>=0)
mgl_string_curve(gr,oo[i],pc,ff,nn,wcs,"t:C",-0.5);
delete []oo; delete []rr;
}
for(i=0;i<pc;i++) if(nn[i]>=0) gr->line_plot(ff[i], ff[nn[i]]);
- delete []kk; delete []nn; delete []ff;
+ delete []nn; delete []ff;
}
//-----------------------------------------------------------------------------
void mgl_cont_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, HCDT z, const char *sch)
@@ -389,6 +408,7 @@ void mgl_cont_xy_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch, c
float z0, v0;
for(j=0;j<z->GetNz();j++) for(i=0;i<v->GetNx();i++)
{
+ if(gr->Stop) return;
v0 = v->v(i); z0 = fixed ? gr->Min.z : v0;
if(z->GetNz()>1)
z0 = gr->Min.z+(gr->Max.z-gr->Min.z)*float(j)/(z->GetNz()-1);
@@ -430,24 +450,24 @@ void mgl_cont(HMGL gr, HCDT z, const char *sch, const char *opt)
//-----------------------------------------------------------------------------
void mgl_cont_xy_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_cont_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_cont_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_cont_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_cont_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_cont_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_cont_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_cont_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_cont_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_cont_(uintptr_t *gr, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_cont(_GR_, _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_cont(_GR_, _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// ContF series
@@ -509,6 +529,7 @@ void mgl_contf_gen(HMGL gr, float v1, float v2, HCDT a, HCDT x, HCDT y, HCDT z,
memset(kk,-1,2*n*sizeof(long));
for(i=0;i<n-1;i++) // add intersection points for first line
{
+ if(gr->Stop) { delete []kk; return; }
mgl_add_range(gr,a,x,y,z, i,0,1,0, c,u1,u2, ak,v1,v2);
kk[4*i]=u1; kk[4*i+1]=u2;
mgl_add_edges(gr,a,x,y,z, i,0,1,0, c,d1,d2, ak,v1,v2);
@@ -519,6 +540,7 @@ void mgl_contf_gen(HMGL gr, float v1, float v2, HCDT a, HCDT x, HCDT y, HCDT z,
mgl_add_range(gr,a,x,y,z, 0,j-1,0,1, c,r1,r2, ak,v1,v2);
for(i=0;i<n-1;i++)
{
+ if(gr->Stop) { delete []kk; return; }
l1 = r1; l2 = r2; num=0;
t1 = kk[4*i]; t2 = kk[4*i+1];
b1 = kk[4*i+2]; b2 = kk[4*i+3];
@@ -586,6 +608,7 @@ void mgl_contf_xy_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch,
float z0, v0;
for(j=0;j<z->GetNz();j++) for(i=0;i<v->GetNx()-1;i++)
{
+ if(gr->Stop) return;
v0 = v->v(i); z0 = fixed ? gr->Min.z : v0;
if(z->GetNz()>1)
z0 = gr->Min.z+(gr->Max.z-gr->Min.z)*float(j)/(z->GetNz()-1);
@@ -610,7 +633,8 @@ void mgl_contf_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *
float r = gr->SaveState(opt);
long Num = isnan(r)?7:long(r+0.5);
if(Num<1) { gr->SetWarn(mglWarnCnt,"Cont"); return; }
- mglData v(Num); v.Fill(gr->Min.c, gr->Max.c);
+ mglData v(Num+2);
+ for(long i=0;i<=Num+1;i++) v.a[i] = gr->Min.c + (gr->Max.c-gr->Min.c)*float(i+1)/(Num+1);
mgl_contf_xy_val(gr,&v,x,y,z,sch,0);
}
//-----------------------------------------------------------------------------
@@ -619,31 +643,32 @@ void mgl_contf(HMGL gr, HCDT z, const char *sch, const char *opt)
float r = gr->SaveState(opt);
long Num = isnan(r)?7:long(r+0.5);
if(Num<1) { gr->SetWarn(mglWarnCnt,"Cont"); return; }
- mglData v(Num); v.Fill(gr->Min.c, gr->Max.c);
+ mglData v(Num+2);
+ for(long i=0;i<=Num+1;i++) v.a[i] = gr->Min.c + (gr->Max.c-gr->Min.c)*float(i+1)/(Num+1);
mgl_contf_val(gr,&v,z,sch,0);
}
//-----------------------------------------------------------------------------
void mgl_contf_xy_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contf_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contf_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_contf_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contf_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contf_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_contf_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contf_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contf_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_contf_(uintptr_t *gr, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contf(_GR_, _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contf(_GR_, _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// ContD series
@@ -651,27 +676,27 @@ void mgl_contf_(uintptr_t *gr, uintptr_t *a, const char *sch, const char *opt,in
//-----------------------------------------------------------------------------
int mgl_get_ncol(const char *sch, char *res)
{
- int i,j,n=strlen(sch);
- for(i=j=0;i<n;i++) if(mglColor(sch[i]).Valid())
+ register long i,j;
+ if(sch) for(i=j=0;sch[i]&&sch[i]!=':';i++) if(strchr(MGL_COLORS,sch[i]))
{ if(res) res[j]=sch[i]; j++; }
- return j;
+ return j?j:strlen(MGL_DEF_PAL);
}
//-----------------------------------------------------------------------------
void mgl_contd_xy_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt)
{
- register long i,j,n=z->GetNx(),m=z->GetNy();
+ register long i,j=0,n=z->GetNx(),m=z->GetNy();
if(x->GetNx()!=n) { gr->SetWarn(mglWarnDim,"ContD"); return; }
if(n<2 || m<2) { gr->SetWarn(mglWarnLow,"ContD"); return; }
bool both = x->GetNx()*x->GetNy()==m*n && y->GetNx()*y->GetNy()==m*n;
if(y->GetNx()!=z->GetNy() && !both) { gr->SetWarn(mglWarnDim, "ContD"); return; }
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("ContD",cgid++);
- if(!sch || !sch[0]) sch = MGL_DEF_PAL;
-// char *cc = new char[strlen(sch)];
- long s = gr->AddTexture(sch,1);
- int nc = gr->GetNumPal(s*256);
bool fixed=(sch && strchr(sch,'_')) || (gr->Min.z==gr->Max.z);
+ if(sch) for(i=0;sch[i];i++) if(strchr(MGL_COLORS,sch[i])) j++;
+ if(j==0) sch = MGL_DEF_PAL;
+ long s = gr->AddTexture(sch,1);
+ int nc = gr->GetNumPal(s*256);
mglData xx, yy, zz(z->GetNx(), z->GetNy());
if(!both) // make
{
@@ -685,6 +710,7 @@ void mgl_contd_xy_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch,
float z0, v0, dc = nc>1 ? 1/(MGL_FLT_EPS*(nc-1)) : 0;
for(j=0;j<z->GetNz();j++) for(i=0;i<v->GetNx()-1;i++)
{
+ if(gr->Stop) return;
v0 = v->v(i); z0 = fixed ? gr->Min.z : v0;
if(z->GetNz()>1)
z0 = gr->Min.z+(gr->Max.z-gr->Min.z)*float(j)/(z->GetNz()-1);
@@ -706,7 +732,6 @@ void mgl_contd_val(HMGL gr, HCDT v, HCDT z, const char *sch, const char *opt)
//-----------------------------------------------------------------------------
void mgl_contd_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt)
{
- if(!sch || !sch[0]) sch = MGL_DEF_PAL;
gr->SaveState(opt);
mglData v(mgl_get_ncol(sch,0)+1);
v.Fill(gr->Min.c, gr->Max.c);
@@ -715,7 +740,6 @@ void mgl_contd_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *
//-----------------------------------------------------------------------------
void mgl_contd(HMGL gr, HCDT z, const char *sch, const char *opt)
{
- if(!sch || !sch[0]) sch = MGL_DEF_PAL;
gr->SaveState(opt);
mglData v(mgl_get_ncol(sch,0)+1);
v.Fill(gr->Min.c, gr->Max.c);
@@ -724,24 +748,145 @@ void mgl_contd(HMGL gr, HCDT z, const char *sch, const char *opt)
//-----------------------------------------------------------------------------
void mgl_contd_xy_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contd_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contd_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_contd_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contd_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contd_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_contd_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contd_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contd_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_contd_(uintptr_t *gr, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contd(_GR_, _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contd(_GR_, _DA_(a), s, o); delete []o; delete []s; }
+//-----------------------------------------------------------------------------
+//
+// ContV series
+//
+//-----------------------------------------------------------------------------
+// NOTE! All data MUST have the same size! Only first slice is used!
+void mgl_contv_gen(HMGL gr, float val, float dval, HCDT a, HCDT x, HCDT y, HCDT z, float c, long ak)
+{
+ long n=a->GetNx(), m=a->GetNy();
+ if(n<2 || m<2 || x->GetNx()*x->GetNy()!=n*m || y->GetNx()*y->GetNy()!=n*m || z->GetNx()*z->GetNy()!=n*m)
+ { gr->SetWarn(mglWarnDim,"ContGen"); return; }
+
+ std::vector<mglPnt2> kk;
+ long *nn = mgl_cont_prep(val, a, ak, kk), *ff;
+ if(!nn) return; // nothing to do
+ register long i, pc=kk.size();
+ register float xx, yy;
+ ff = new long[2*pc]; gr->Reserve(2*pc);
+ mglPoint p,q;
+ for(i=0;i<pc;i++)
+ {
+ xx = kk[i].x; yy = kk[i].y;
+ p = mglPoint(mgl_data_linear(x,xx,yy,ak), mgl_data_linear(y,xx,yy,ak), mgl_data_linear(z,xx,yy,ak));
+ q = mglPoint(p.y,-p.x); ff[i] = gr->AddPnt(p, c, q);
+ ff[i+pc] = gr->AddPnt(mglPoint(p.x, p.y, p.z+dval), c, q);
+ }
+
+ for(i=0;i<pc;i++) if(nn[i]>=0) gr->quad_plot(ff[i], ff[nn[i]], ff[i+pc], ff[nn[i]+pc]);
+ delete []nn; delete []ff;
+}
+//-----------------------------------------------------------------------------
+void mgl_contv_xy_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt)
+{
+ register long i,j,n=z->GetNx(),m=z->GetNy();
+ if(x->GetNx()!=n) { gr->SetWarn(mglWarnDim,"Cont"); return; }
+ if(n<2 || m<2) { gr->SetWarn(mglWarnLow,"Cont"); return; }
+ bool both = x->GetNx()*x->GetNy()==m*n && y->GetNx()*y->GetNy()==m*n;
+ if(y->GetNx()!=z->GetNy() && !both) { gr->SetWarn(mglWarnDim, "Cont"); return; }
+ gr->SaveState(opt);
+ static int cgid=1; gr->StartGroup("Cont",cgid++);
+
+ bool fixed=(sch && strchr(sch,'_')) || (gr->Min.z==gr->Max.z);
+ long s=gr->AddTexture(sch);
+ gr->SetPenPal(sch);
+
+ mglData xx, yy, zz(z->GetNx(), z->GetNy());
+ if(!both) // make
+ {
+ xx.Create(z->GetNx(), z->GetNy());
+ yy.Create(z->GetNx(), z->GetNy());
+ for(i=0;i<n;i++) for(j=0;j<m;j++)
+ { xx.a[i+n*j] = x->v(i); yy.a[i+n*j] = y->v(j); }
+ x = &xx; y = &yy;
+ }
+ // x, y -- have the same size z
+ float z0, v0;
+ for(j=0;j<z->GetNz();j++) for(i=0;i<v->GetNx();i++)
+ {
+ if(gr->Stop) return;
+ v0 = v->v(i); z0 = fixed ? gr->Min.z : v0;
+ if(z->GetNz()>1) z0 = gr->Min.z+(gr->Max.z-gr->Min.z)*float(j)/(z->GetNz()-1);
+ zz.Fill(z0,z0);
+ float dv = (gr->Max.c-gr->Min.c)/8;
+ if(i>0) dv = v->v(i-1)-v->v(i);
+ else if(i<v->GetNx()-1) dv = v->v(i)-v->v(i+1);
+ if(fixed) dv=-dv;
+ mgl_contv_gen(gr,v0,dv,z,x,y,&zz,gr->GetC(s,v0),j); // TODO: ContV -- change here!!!
+ }
+ gr->EndGroup();
+}
+//-----------------------------------------------------------------------------
+void mgl_contv_val(HMGL gr, HCDT v, HCDT z, const char *sch, const char *opt)
+{
+ if(z->GetNx()<2 || z->GetNy()<2) { gr->SetWarn(mglWarnLow,"Cont"); return; }
+ gr->SaveState(opt);
+ mglData x(z->GetNx(), z->GetNy()), y(z->GetNx(), z->GetNy());
+ x.Fill(gr->Min.x,gr->Max.x,'x');
+ y.Fill(gr->Min.y,gr->Max.y,'y');
+ mgl_contv_xy_val(gr,v,&x,&y,z,sch,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_contv_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt)
+{
+ float r = gr->SaveState(opt);
+ long Num = isnan(r)?7:long(r+0.5);
+ if(Num<1) { gr->SetWarn(mglWarnCnt,"Cont"); return; }
+ mglData v(Num);
+ for(long i=0;i<Num;i++) v.a[i] = gr->Min.c + (gr->Max.c-gr->Min.c)*float(i+1)/(Num+1);
+ mgl_contv_xy_val(gr,&v,x,y,z,sch,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_contv(HMGL gr, HCDT z, const char *sch, const char *opt)
+{
+ float r = gr->SaveState(opt);
+ long Num = isnan(r)?7:long(r+0.5);
+ if(Num<1) { gr->SetWarn(mglWarnCnt,"Cont"); return; }
+ mglData v(Num);
+ for(long i=0;i<Num;i++) v.a[i] = gr->Min.c + (gr->Max.c-gr->Min.c)*float(i+1)/(Num+1);
+ mgl_contv_val(gr,&v,z,sch,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_contv_xy_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contv_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
+delete []o; delete []s; }
+//-----------------------------------------------------------------------------
+void mgl_contv_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contv_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
+//-----------------------------------------------------------------------------
+void mgl_contv_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contv_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o); delete []o; delete []s; }
+//-----------------------------------------------------------------------------
+void mgl_contv_(uintptr_t *gr, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contv(_GR_, _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// Cont3 series
@@ -823,7 +968,7 @@ void mgl_get_slice(_mgl_slice &s, HCDT x, HCDT y, HCDT z, HCDT a, char dir, floa
}
}
//-----------------------------------------------------------------------------
-void mgl_cont3_xyz_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_cont3_xyz_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt)
{
long n=a->GetNx(),m=a->GetNy(),l=a->GetNz();
if(n<2 || m<2 || l<2) { gr->SetWarn(mglWarnLow,"Cont3"); return; }
@@ -832,6 +977,9 @@ void mgl_cont3_xyz_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, char dir
{ gr->SetWarn(mglWarnDim,"Cont3"); return; }
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Cont3",cgid++);
+ char dir='y';
+ if(sch && strchr(sch,'x')) dir='x';
+ if(sch && strchr(sch,'z')) dir='z';
bool text=(sch && strchr(sch,'t'));
long ss=gr->AddTexture(sch);
@@ -847,7 +995,7 @@ void mgl_cont3_xyz_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, char dir
gr->EndGroup();
}
//-----------------------------------------------------------------------------
-void mgl_cont3_val(HMGL gr, HCDT v, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_cont3_val(HMGL gr, HCDT v, HCDT a, const char *sch, float sVal, const char *opt)
{
if(a->GetNx()<2 || a->GetNy()<2 || a->GetNz()<2)
{ gr->SetWarn(mglWarnLow,"Cont3"); return; }
@@ -856,71 +1004,73 @@ void mgl_cont3_val(HMGL gr, HCDT v, HCDT a, char dir, float sVal, const char *sc
x.Fill(gr->Min.x,gr->Max.x);
y.Fill(gr->Min.y,gr->Max.y);
z.Fill(gr->Min.z,gr->Max.z);
- mgl_cont3_xyz_val(gr,v,&x,&y,&z,a,dir,sVal,sch,0);
+ mgl_cont3_xyz_val(gr,v,&x,&y,&z,a,sch,sVal,0);
}
//-----------------------------------------------------------------------------
-void mgl_cont3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_cont3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt)
{
float r = gr->SaveState(opt);
long Num = isnan(r)?7:long(r+0.5);
if(Num<1) { gr->SetWarn(mglWarnCnt,"Cont3"); return; }
mglData v(Num);
for(long i=0;i<Num;i++) v.a[i] = gr->Min.c + (gr->Max.c-gr->Min.c)*float(i+1)/(Num+1);
- mgl_cont3_xyz_val(gr,&v,x,y,z,a,dir,sVal,sch,0);
+ mgl_cont3_xyz_val(gr,&v,x,y,z,a,sch,sVal,0);
}
//-----------------------------------------------------------------------------
-void mgl_cont3(HMGL gr, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_cont3(HMGL gr, HCDT a, const char *sch, float sVal, const char *opt)
{
float r = gr->SaveState(opt);
long Num = isnan(r)?7:long(r+0.5);
if(Num<1) { gr->SetWarn(mglWarnCnt,"Cont3"); return; }
mglData v(Num);
for(long i=0;i<Num;i++) v.a[i] = gr->Min.c + (gr->Max.c-gr->Min.c)*float(i+1)/(Num+1);
- mgl_cont3_val(gr,&v,a,dir,sVal,sch,0);
+ mgl_cont3_val(gr,&v,a,sch,sVal,0);
}
//-----------------------------------------------------------------------------
-void mgl_cont3_xyz_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_cont3_xyz_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_cont3_xyz_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(z), _DA_(a), *dir, *sVal, s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_cont3_xyz_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(z), _DA_(a), s, *sVal, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
-void mgl_cont3_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_cont3_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_cont3_val(_GR_, _DA_(v), _DA_(a), *dir, *sVal, s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_cont3_val(_GR_, _DA_(v), _DA_(a), s, *sVal, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
-void mgl_cont3_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_cont3_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_cont3_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), *dir, *sVal, s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_cont3_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), s, *sVal, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
-void mgl_cont3_(uintptr_t *gr, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_cont3_(uintptr_t *gr, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_cont3(_GR_, _DA_(a), *dir, *sVal, s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_cont3(_GR_, _DA_(a), s, *sVal, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// Dens3 series
//
//-----------------------------------------------------------------------------
-void mgl_dens3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_dens3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt)
{
long n=a->GetNx(),m=a->GetNy(),l=a->GetNz();
if(n<2 || m<2 || l<2) { gr->SetWarn(mglWarnLow,"Dens3"); return; }
bool both = x->GetNx()*x->GetNy()*x->GetNz()==n*m*l && y->GetNx()*y->GetNy()*y->GetNz()==n*m*l && z->GetNx()*z->GetNy()*z->GetNz()==n*m*l;
if(!(both || (x->GetNx()==n && y->GetNx()==m && z->GetNx()==l)))
{ gr->SetWarn(mglWarnDim,"Dens3"); return; }
- gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Dens3",cgid++);
+ char dir='y';
+ if(sch && strchr(sch,'x')) dir='x';
+ if(sch && strchr(sch,'z')) dir='z';
_mgl_slice s;
mgl_get_slice(s,x,y,z,a,dir,sVal,both);
mgl_surfc_xy(gr,&s.x,&s.y,&s.z,&s.a,sch,0);
}
//-----------------------------------------------------------------------------
-void mgl_dens3(HMGL gr, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_dens3(HMGL gr, HCDT a, const char *sch, float sVal, const char *opt)
{
if(a->GetNx()<2 || a->GetNy()<2 || a->GetNz()<2)
{ gr->SetWarn(mglWarnLow,"Dens3"); return; }
@@ -929,25 +1079,25 @@ void mgl_dens3(HMGL gr, HCDT a, char dir, float sVal, const char *sch, const cha
x.Fill(gr->Min.x,gr->Max.x);
y.Fill(gr->Min.y,gr->Max.y);
z.Fill(gr->Min.z,gr->Max.z);
- mgl_dens3_xyz(gr,&x,&y,&z,a,dir,sVal,sch,0);
+ mgl_dens3_xyz(gr,&x,&y,&z,a,sch,sVal,0);
}
//-----------------------------------------------------------------------------
-void mgl_dens3_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_dens3_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *sch, float *sVal, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_dens3_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), *dir, *sVal, s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_dens3_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), s, *sVal, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
-void mgl_dens3_(uintptr_t *gr, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_dens3_(uintptr_t *gr, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_dens3(_GR_, _DA_(a), *dir, *sVal, s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_dens3(_GR_, _DA_(a), s, *sVal, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// Grid3 series
//
//-----------------------------------------------------------------------------
-void mgl_grid3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_grid3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt)
{
long n=a->GetNx(),m=a->GetNy(),l=a->GetNz();
if(n<2 || m<2 || l<2) { gr->SetWarn(mglWarnLow,"Grid3"); return; }
@@ -956,13 +1106,16 @@ void mgl_grid3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal
{ gr->SetWarn(mglWarnDim,"Grid3"); return; }
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Grid3",cgid++);
+ char dir='y';
+ if(sch && strchr(sch,'x')) dir='x';
+ if(sch && strchr(sch,'z')) dir='z';
_mgl_slice s;
mgl_get_slice(s,x,y,z,a,dir,sVal,both);
mgl_mesh_xy(gr,&s.x,&s.y,&s.z,sch,0);
}
//-----------------------------------------------------------------------------
-void mgl_grid3(HMGL gr, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_grid3(HMGL gr, HCDT a, const char *sch, float sVal, const char *opt)
{
if(a->GetNx()<2 || a->GetNy()<2 || a->GetNz()<2)
{ gr->SetWarn(mglWarnLow,"Grid3"); return; }
@@ -971,25 +1124,25 @@ void mgl_grid3(HMGL gr, HCDT a, char dir, float sVal, const char *sch, const cha
x.Fill(gr->Min.x,gr->Max.x);
y.Fill(gr->Min.y,gr->Max.y);
z.Fill(gr->Min.z,gr->Max.z);
- mgl_grid3_xyz(gr,&x,&y,&z,a,dir,sVal,sch,0);
+ mgl_grid3_xyz(gr,&x,&y,&z,a,sch,sVal,0);
}
//-----------------------------------------------------------------------------
-void mgl_grid3_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_grid3_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_grid3_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), *dir, *sVal, s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_grid3_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), s, *sVal, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
-void mgl_grid3_(uintptr_t *gr, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_grid3_(uintptr_t *gr, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_grid3(_GR_, _DA_(a), *dir, *sVal, s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_grid3(_GR_, _DA_(a), s, *sVal, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// ContF3 series
//
//-----------------------------------------------------------------------------
-void mgl_contf3_xyz_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_contf3_xyz_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt)
{
long n=a->GetNx(),m=a->GetNy(),l=a->GetNz();
if(n<2 || m<2 || l<2) { gr->SetWarn(mglWarnLow,"ContF3"); return; }
@@ -998,11 +1151,14 @@ void mgl_contf3_xyz_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, char di
{ gr->SetWarn(mglWarnDim,"ContF3"); return; }
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("ContF3",cgid++);
+ char dir='y';
+ if(sch && strchr(sch,'x')) dir='x';
+ if(sch && strchr(sch,'z')) dir='z';
long ss=gr->AddTexture(sch);
_mgl_slice s;
mgl_get_slice(s,x,y,z,a,dir,sVal,both);
- for(long i=0;i<v->GetNx();i++)
+ for(long i=0;i<v->GetNx()-1;i++)
{
float v0 = v->v(i);
mgl_contf_gen(gr,v0,v->v(i+1),&s.a,&s.x,&s.y,&s.z,gr->GetC(ss,v0),0);
@@ -1010,7 +1166,7 @@ void mgl_contf3_xyz_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, HCDT a, char di
gr->EndGroup();
}
//-----------------------------------------------------------------------------
-void mgl_contf3_val(HMGL gr, HCDT v, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_contf3_val(HMGL gr, HCDT v, HCDT a, const char *sch, float sVal, const char *opt)
{
if(a->GetNx()<2 || a->GetNy()<2 || a->GetNz()<2)
{ gr->SetWarn(mglWarnLow,"ContF3"); return; }
@@ -1019,51 +1175,50 @@ void mgl_contf3_val(HMGL gr, HCDT v, HCDT a, char dir, float sVal, const char *s
x.Fill(gr->Min.x,gr->Max.x);
y.Fill(gr->Min.y,gr->Max.y);
z.Fill(gr->Min.z,gr->Max.z);
- mgl_contf3_xyz_val(gr,v,&x,&y,&z,a,dir,sVal,sch,0);
+ mgl_contf3_xyz_val(gr,v,&x,&y,&z,a,sch,sVal,0);
}
//-----------------------------------------------------------------------------
-void mgl_contf3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_contf3_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, float sVal, const char *opt)
{
float r = gr->SaveState(opt);
long Num = isnan(r)?7:long(r+0.5);
if(Num<1) { gr->SetWarn(mglWarnCnt,"ContF3"); return; }
- mglData v(Num+2);
- for(long i=0;i<Num+2;i++) v.a[i] = gr->Min.c + (gr->Max.c-gr->Min.c)*float(i)/(Num+1);
- mgl_contf3_xyz_val(gr,&v,x,y,z,a,dir,sVal,sch,0);
+ mglData v(Num+2); v.Fill(gr->Min.c, gr->Max.c);
+ mgl_contf3_xyz_val(gr,&v,x,y,z,a,sch,sVal,0);
}
//-----------------------------------------------------------------------------
-void mgl_contf3(HMGL gr, HCDT a, char dir, float sVal, const char *sch, const char *opt)
+void mgl_contf3(HMGL gr, HCDT a, const char *sch, float sVal, const char *opt)
{
float r = gr->SaveState(opt);
long Num = isnan(r)?7:long(r+0.5);
if(Num<1) { gr->SetWarn(mglWarnCnt,"ContF3"); return; }
mglData v(Num+2); v.Fill(gr->Min.c, gr->Max.c);
- mgl_contf3_val(gr,&v,a,dir,sVal,sch,0);
+ mgl_contf3_val(gr,&v,a,sch,sVal,0);
}
//-----------------------------------------------------------------------------
-void mgl_contf3_xyz_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_contf3_xyz_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contf3_xyz_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(z), _DA_(a), *dir, *sVal, s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contf3_xyz_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(z), _DA_(a), s, *sVal, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
-void mgl_contf3_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_contf3_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contf3_val(_GR_, _DA_(v), _DA_(a), *dir, *sVal, s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contf3_val(_GR_, _DA_(v), _DA_(a), s, *sVal, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
-void mgl_contf3_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_contf3_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contf3_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), *dir, *sVal, s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contf3_xyz(_GR_, _DA_(x), _DA_(y), _DA_(z), _DA_(a), s, *sVal, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
-void mgl_contf3_(uintptr_t *gr, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int,int l,int lo)
+void mgl_contf3_(uintptr_t *gr, uintptr_t *a, const char *dir, float *sVal, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_contf3(_GR_, _DA_(a), *dir, *sVal, s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_contf3(_GR_, _DA_(a), s, *sVal, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// Axial series
@@ -1087,6 +1242,7 @@ void mgl_axial_plot(mglBase *gr,long pc, mglPoint *ff, long *nn,char dir,float c
if(wire) gr->Reserve(pc*82); else gr->Reserve(pc*82);
for(i=0;i<pc;i++)
{
+ if(gr->Stop) return;
k = mgl_find_prev(i,pc,nn);
if(nn[i]<0) continue;
q1 = k<0 ? ff[nn[i]]-ff[i] : (ff[nn[i]]-ff[k])*0.5;
@@ -1108,7 +1264,7 @@ void mgl_axial_plot(mglBase *gr,long pc, mglPoint *ff, long *nn,char dir,float c
p2 = wire ? gr->AddPnt(p,cc) : gr->AddPnt(p,cc,(a*q2.y + b*(si*q2.x) + c*(co*q2.x))^(b*co-c*si));
if(wire)
{ gr->line_plot(p1,p2); gr->line_plot(p1,p3);
- gr->line_plot(p4,p2); gr->line_plot(p4,p3); }
+ gr->line_plot(p4,p2); gr->line_plot(p4,p3); }
else gr->quad_plot(p3,p4,p1,p2);
}
}
@@ -1125,32 +1281,34 @@ void mgl_axial_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, float c, char dir
float d, kx, ky;
register long i,j,k, pc=0;
// Usually number of points is much smaller. So, there is no reservation.
-// gr->Reserve(2*n*m);
+ // gr->Reserve(2*n*m);
// add intersection point of isoline and Y axis
for(j=0;j<m;j++) for(i=0;i<n-1;i++)
{
+ if(gr->Stop) { delete []kk; delete []pp; return; }
d = mgl_d(val,a->v(i,j,ak),a->v(i+1,j,ak));
if(d>=0 && d<1)
{
pp[pc] = mglPoint(x->v(i,j)*(1-d)+x->v(i+1,j)*d,
- y->v(i,j)*(1-d)+y->v(i+1,j)*d);
+ y->v(i,j)*(1-d)+y->v(i+1,j)*d);
kk[pc] = mglPoint(i+d,j); pc++;
}
}
// add intersection point of isoline and X axis
for(j=0;j<m-1;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []kk; delete []pp; return; }
d = mgl_d(val,a->v(i,j,ak),a->v(i,j+1,ak));
if(d>=0 && d<1)
{
pp[pc] = mglPoint(x->v(i,j)*(1-d)+x->v(i,j+1)*d,
- y->v(i,j)*(1-d)+y->v(i,j+1)*d);
+ y->v(i,j)*(1-d)+y->v(i,j+1)*d);
kk[pc] = mglPoint(i,j+d); pc++;
}
}
// deallocate arrays and finish if no point
- if(pc==0) { delete []kk; return; }
+ if(pc==0) { delete []kk; delete []pp; return; }
// allocate arrays for curve
long *nn = new long[pc], *ff = new long[pc];
for(i=0;i<pc;i++) nn[i] = ff[i] = -1;
@@ -1158,6 +1316,7 @@ void mgl_axial_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, float c, char dir
long i11,i12,i21,i22,j11,j12,j21,j22;
j=-1; // current point
do{
+ if(gr->Stop) { delete []kk; delete []pp; delete []nn; delete []ff; return; }
if(j>=0)
{
kx = kk[j].x; ky = kk[j].y; i = -1;
@@ -1170,7 +1329,7 @@ void mgl_axial_gen(HMGL gr, float val, HCDT a, HCDT x, HCDT y, float c, char dir
j21 = long(kk[k].y+1e-5); j22 = long(kk[k].y-1e-5);
// check if in the same cell
register bool cond = (i11==i21 || i11==i22 || i12==i21 || i12==i22) &&
- (j11==j21 || j11==j22 || j12==j21 || j12==j22);
+ (j11==j21 || j11==j22 || j12==j21 || j12==j22);
if(cond){ i=k; break; }
}
if(i<0) j = -1; // no free close points
@@ -1204,11 +1363,8 @@ void mgl_axial_xy_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch,
long s=gr->AddTexture(sch);
char dir='y';
- if(sch)
- {
- if(strchr(sch,'x')) dir = 'x';
- if(strchr(sch,'z')) dir = 'z';
- }
+ if(sch && strchr(sch,'x')) dir = 'x';
+ if(sch && strchr(sch,'z')) dir = 'z';
mglData xx, yy;
if(!both) // make
@@ -1224,6 +1380,7 @@ void mgl_axial_xy_val(HMGL gr, HCDT v, HCDT x, HCDT y, HCDT z, const char *sch,
bool wire = sch && strchr(sch,'#');
for(j=0;j<z->GetNz();j++) for(i=0;i<v->GetNx();i++)
{
+ if(gr->Stop) return;
v0 = v->v(i);
mgl_axial_gen(gr,v0,z,x,y,gr->GetC(s,v0),dir,j,wire);
}
@@ -1263,24 +1420,24 @@ void mgl_axial(HMGL gr, HCDT a, const char *sch, const char *opt)
//-----------------------------------------------------------------------------
void mgl_axial_xy_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_axial_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
- delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_axial_xy_val(_GR_, _DA_(v), _DA_(x), _DA_(y), _DA_(a), s, o);
+delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_axial_val_(uintptr_t *gr, uintptr_t *v, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_axial_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_axial_val(_GR_, _DA_(v), _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_axial_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_axial_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_axial_xy(_GR_, _DA_(x), _DA_(y), _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
void mgl_axial_(uintptr_t *gr, uintptr_t *a, const char *sch, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,sch,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_axial(_GR_, _DA_(a), s, o); delete []o; delete []s; }
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_axial(_GR_, _DA_(a), s, o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// Torus series
@@ -1298,11 +1455,8 @@ void mgl_torus(HMGL gr, HCDT r, HCDT z, const char *sch, const char *opt)
long *nn = new long[n];
long ss=gr->AddTexture(sch);
char dir='y';
- if(sch)
- {
- if(strchr(sch,'x')) dir = 'x';
- if(strchr(sch,'z')) dir = 'z';
- }
+ if(sch && strchr(sch,'x')) dir = 'x';
+ if(sch && strchr(sch,'z')) dir = 'z';
float c = gr->GetC(ss,gr->Min.c);
for(j=0;j<r->GetNy();j++)
@@ -1320,6 +1474,6 @@ void mgl_torus(HMGL gr, HCDT r, HCDT z, const char *sch, const char *opt)
//-----------------------------------------------------------------------------
void mgl_torus_(uintptr_t *gr, uintptr_t *r, uintptr_t *z, const char *pen, const char *opt,int l,int lo)
{ char *s=new char[l+1]; memcpy(s,pen,l); s[l]=0;
- char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
- mgl_torus(_GR_, _DA_(r), _DA_(z), s, o); delete []o; delete []s; }
-//-----------------------------------------------------------------------------
+char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+mgl_torus(_GR_, _DA_(r), _DA_(z), s, o); delete []o; delete []s; }
+//-----------------------------------------------------------------------------
\ No newline at end of file
diff --git a/src/crust.cpp b/src/crust.cpp
index ac1ac13..42cafcb 100644
--- a/src/crust.cpp
+++ b/src/crust.cpp
@@ -34,24 +34,26 @@ void mgl_triplot_xyzc(HMGL gr, HCDT nums, HCDT x, HCDT y, HCDT z, HCDT a, const
long ss=gr->AddTexture(sch);
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("TriPlot",cgid++);
- mglPoint p,q=mglPoint(NAN);
+ mglPoint p1,p2,p3,q;
- register long i,k,k1,k2,k3;
+ register long i,k1,k2,k3;
long nc = a->GetNx();
if(nc!=n && nc>=m) // colors per triangle
{
gr->Reserve(m*3);
for(i=0;i<m;i++)
{
- k = long(nums->v(0,i)+0.5);
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- k1 = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
- k = long(nums->v(1,i)+0.5);
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- k2 = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
- k = long(nums->v(2,i)+0.5);
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- k3 = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
+ if(gr->Stop) return;
+ k1 = long(nums->v(0,i)+0.5);
+ p1 = mglPoint(x->v(k1), y->v(k1), z->v(k1));
+ k2 = long(nums->v(1,i)+0.5);
+ p2 = mglPoint(x->v(k2), y->v(k2), z->v(k2));
+ k3 = long(nums->v(2,i)+0.5);
+ p3 = mglPoint(x->v(k3), y->v(k3), z->v(k3));
+ q = (p2-p1) ^ (p3-p1);
+ k1 = gr->AddPnt(p1,gr->GetC(ss,a->v(k1)),q);
+ k2 = gr->AddPnt(p2,gr->GetC(ss,a->v(k2)),q);
+ k3 = gr->AddPnt(p3,gr->GetC(ss,a->v(k3)),q);
gr->trig_plot(k1,k2,k3);
}
}
@@ -59,19 +61,34 @@ void mgl_triplot_xyzc(HMGL gr, HCDT nums, HCDT x, HCDT y, HCDT z, HCDT a, const
{
gr->Reserve(n);
long *kk = new long[n];
- for(k=0;k<n;k++)
+ mglPoint *pp = new mglPoint[n];
+ for(i=0;i<m;i++) // add averaged normales
+ {
+ if(gr->Stop) { delete []kk; delete []pp; return; }
+ k1 = long(nums->v(0,i)+0.5);
+ k2 = long(nums->v(1,i)+0.5);
+ k3 = long(nums->v(2,i)+0.5);
+ q = mglPoint(x->v(k2)-x->v(k1), y->v(k2)-y->v(k1), z->v(k2)-z->v(k1)) ^ mglPoint(x->v(k3)-x->v(k1), y->v(k3)-y->v(k1), z->v(k3)-z->v(k1));
+ // try be sure that in the same direction ... but it is so slow :(
+ if(pp[k1]*q<0) q*=-1; pp[k1] += q;
+ if(pp[k2]*q<0) q*=-1; pp[k2] += q;
+ if(pp[k3]*q<0) q*=-1; pp[k3] += q;
+ }
+ for(i=0;i<n;i++) // add points
{
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- kk[k] = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
+ if(gr->Stop) { delete []kk; delete []pp; return; }
+ q = mglPoint(x->v(i), y->v(i), z->v(i));
+ kk[i] = gr->AddPnt(q,gr->GetC(ss,a->v(i)),pp[i]);
}
- for(i=0;i<m;i++)
+ for(i=0;i<m;i++) // draw triangles
{
+ if(gr->Stop) { delete []kk; delete []pp; return; }
k1 = long(nums->v(0,i)+0.5);
k2 = long(nums->v(1,i)+0.5);
k3 = long(nums->v(2,i)+0.5);
gr->trig_plot(kk[k1],kk[k2],kk[k3]);
}
- delete []kk;
+ delete []kk; delete []pp;
}
gr->EndGroup();
}
@@ -115,27 +132,29 @@ void mgl_quadplot_xyzc(HMGL gr, HCDT nums, HCDT x, HCDT y, HCDT z, HCDT a, const
long ss=gr->AddTexture(sch);
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("QuadPlot",cgid++);
- mglPoint p,q=mglPoint(NAN);
+ mglPoint p1,p2,p3,p4,q;
- register long i,k,k1,k2,k3,k4;
+ register long i,k1,k2,k3,k4;
long nc = a->GetNx();
if(nc!=n && nc>=m) // colors per triangle
{
gr->Reserve(m*4);
for(i=0;i<m;i++)
{
- k = long(nums->v(0,i)+0.5);
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- k1 = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
- k = long(nums->v(1,i)+0.5);
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- k2 = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
- k = long(nums->v(2,i)+0.5);
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- k3 = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
- k = long(nums->v(3,i)+0.5);
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- k4 = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
+ if(gr->Stop) return;
+ k1 = long(nums->v(0,i)+0.5);
+ p1 = mglPoint(x->v(k1), y->v(k1), z->v(k1));
+ k2 = long(nums->v(1,i)+0.5);
+ p2 = mglPoint(x->v(k2), y->v(k2), z->v(k2));
+ k3 = long(nums->v(2,i)+0.5);
+ p3 = mglPoint(x->v(k3), y->v(k3), z->v(k3));
+ k4 = floor(nums->v(3,i)+0.5);
+ p4 = mglPoint(x->v(k4), y->v(k4), z->v(k4));
+ q = (p2-p1) ^ (p3-p1);
+ k1 = gr->AddPnt(p1,gr->GetC(ss,a->v(k1)),q);
+ k2 = gr->AddPnt(p2,gr->GetC(ss,a->v(k2)),q);
+ k3 = gr->AddPnt(p3,gr->GetC(ss,a->v(k3)),q);
+ k4 = gr->AddPnt(p4,gr->GetC(ss,a->v(k4)),q);
gr->quad_plot(k1,k2,k3,k4);
}
}
@@ -143,20 +162,40 @@ void mgl_quadplot_xyzc(HMGL gr, HCDT nums, HCDT x, HCDT y, HCDT z, HCDT a, const
{
gr->Reserve(n);
long *kk = new long[n];
- for(k=0;k<n;k++)
- {
- p = mglPoint(x->v(k), y->v(k), z->v(k));
- kk[k] = gr->AddPnt(p,gr->GetC(ss,a->v(k)),q);
- }
- for(i=0;i<m;i++)
+ mglPoint *pp = new mglPoint[n];
+ for(i=0;i<m;i++) // add averaged normales
{
+ if(gr->Stop) { delete []kk; delete []pp; return; }
k1 = long(nums->v(0,i)+0.5);
+ p1 = mglPoint(x->v(k1), y->v(k1), z->v(k1));
k2 = long(nums->v(1,i)+0.5);
+ p2 = mglPoint(x->v(k2), y->v(k2), z->v(k2));
k3 = long(nums->v(2,i)+0.5);
- k4 = long(nums->v(3,i)+0.5);
+ p3 = mglPoint(x->v(k3), y->v(k3), z->v(k3));
+ k4 = floor(nums->v(3,i)+0.5);
+ p4 = mglPoint(x->v(k4), y->v(k4), z->v(k4));
+
+ q = (p2-p1) ^ (p3-p1); if(pp[k1]*q<0) q*=-1; pp[k1] += q;
+ q = (p2-p4) ^ (p3-p4); if(pp[k2]*q<0) q*=-1; pp[k2] += q;
+ q = (p1-p2) ^ (p4-p2); if(pp[k3]*q<0) q*=-1; pp[k3] += q;
+ q = (p1-p4) ^ (p4-p3); if(pp[k4]*q<0) q*=-1; pp[k4] += q;
+ }
+ for(i=0;i<n;i++) // add points
+ {
+ if(gr->Stop) { delete []kk; delete []pp; return; }
+ q = mglPoint(x->v(i), y->v(i), z->v(i));
+ kk[i] = gr->AddPnt(q,gr->GetC(ss,a->v(i)),pp[i]);
+ }
+ for(i=0;i<m;i++) // draw quads
+ {
+ if(gr->Stop) { delete []kk; delete []pp; return; }
+ k1 = floor(nums->v(0,i)+0.5);
+ k2 = floor(nums->v(1,i)+0.5);
+ k3 = floor(nums->v(2,i)+0.5);
+ k4 = floor(nums->v(3,i)+0.5);
gr->quad_plot(kk[k1],kk[k2],kk[k3],kk[k4]);
}
- delete []kk;
+ delete []kk; delete []pp;
}
gr->EndGroup();
}
@@ -224,6 +263,7 @@ void mgl_tricont_xyzcv(HMGL gr, HCDT v, HCDT nums, HCDT x, HCDT y, HCDT z, HCDT
bool zVal = (sch && strchr(sch,'_'));
for(k=0;k<v->GetNx();k++) for(i=0;i<m;i++)
{
+ if(gr->Stop) return;
k1 = long(nums->v(0,i)+0.1); if(k1<0 || k1>=n) continue;
k2 = long(nums->v(1,i)+0.1); if(k2<0 || k2>=n) continue;
k3 = long(nums->v(2,i)+0.1); if(k3<0 || k3>=n) continue;
@@ -292,6 +332,7 @@ void mgl_dots_a(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, const
for(long i=0;i<n;i++)
{
+ if(gr->Stop) return;
p = mglPoint(x->v(i),y->v(i),z->v(i));
pp = gr->AddPnt(p,gr->GetC(ss,a->v(i)));
gr->mark_plot(pp, mk);
diff --git a/src/data.cpp b/src/data.cpp
index fbc3bc4..0ca22be 100644
--- a/src/data.cpp
+++ b/src/data.cpp
@@ -19,7 +19,7 @@
***************************************************************************/
#include <stdlib.h>
#include <string.h>
-#include <sys/sysinfo.h>
+#include <unistd.h>
#include "mgl/data.h"
#include "mgl/eval.h"
@@ -32,7 +32,7 @@ void mglFillP5(long x, const mreal *a,long nx,mreal _p[6]);
void mglSetNumThr(int n)
{
#ifdef HAVE_PTHREAD
- mglNumThr = n>0 ? n : get_nprocs_conf();
+ mglNumThr = n>0 ? n : sysconf(_SC_NPROCESSORS_CONF);
#else
mglNumThr = 1;
#endif
@@ -168,24 +168,24 @@ void mgl_data_smooth(HMDT d, const char *dirs, float delta)
long nx=d->nx,ny=d->ny,nz=d->nz;
// if(Type == SMOOTH_NONE) return;
long p[3]={nx,ny,Type};
- mreal *b = new mreal[nx*ny*nz];
+ mreal *b = new mreal[nx*ny*nz],dd=delta;
// ����������� �� x
memset(b,0,nx*ny*nz*sizeof(mreal));
if(nx>4 && strchr(dirs,'x'))
{
- mglStartThread(mgl_smth_x,0,nx*ny*nz,b,d->a,&delta,p);
+ mglStartThread(mgl_smth_x,0,nx*ny*nz,b,d->a,&dd,p);
memcpy(d->a,b,nx*ny*nz*sizeof(mreal));
memset(b,0,nx*ny*nz*sizeof(mreal));
}
if(ny>4 && strchr(dirs,'y'))
{
- mglStartThread(mgl_smth_y,0,nx*ny*nz,b,d->a,&delta,p);
+ mglStartThread(mgl_smth_y,0,nx*ny*nz,b,d->a,&dd,p);
memcpy(d->a,b,nx*ny*nz*sizeof(mreal));
memset(b,0,nx*ny*nz*sizeof(mreal));
}
if(nz>4 && strchr(dirs,'z'))
{
- mglStartThread(mgl_smth_z,0,nx*ny*nz,b,d->a,&delta,p);
+ mglStartThread(mgl_smth_z,0,nx*ny*nz,b,d->a,&dd,p);
memcpy(d->a,b,nx*ny*nz*sizeof(mreal));
}
delete []b;
@@ -351,7 +351,7 @@ void *mgl_dif_y(void *par)
k = (i%nx)+nx*ny*(i/nx);
b[k] = -(3*a[k]-4*a[k+nx]+a[k+2*nx])*dd;
b[k+(ny-1)*nx] = (3*a[k+(ny-1)*nx]-4*a[k+(ny-2)*nx]+a[k+(ny-3)*nx])*dd;
- for(j=1;j<ny;j++) b[k+j*nx] = (a[k+j*nx+nx]-a[k+j*nx-nx])*dd;
+ for(j=1;j<ny-1;j++) b[k+j*nx] = (a[k+j*nx+nx]-a[k+j*nx-nx])*dd;
}
return 0;
}
@@ -366,7 +366,7 @@ void *mgl_dif_x(void *par)
k = i*nx;
b[k] = -(3*a[k]-4*a[k+1]+a[k+2])*dd;
b[k+nx-1] = (3*a[k+nx-1]-4*a[k+nx-2]+a[k+nx-3])*dd;
- for(j=1;j<nx;j++) b[j+k] = (a[j+k+1]-a[j+k-1])*dd;
+ for(j=1;j<nx-1;j++) b[j+k] = (a[j+k+1]-a[j+k-1])*dd;
}
return 0;
}
@@ -418,7 +418,7 @@ void *mgl_dif2_y(void *par)
for(i=t->id;i<nn;i+=mglNumThr)
{
k = (i%nx)+nx*ny*(i/nx); b[k] = b[k+(ny-1)*nx] = 0;
- for(j=1;j<ny;j++) b[k+j*nx] = (a[k+j*nx+nx]+a[k+j*nx-nx]-2*a[k+j*nx])*dd;
+ for(j=1;j<ny-1;j++) b[k+j*nx] = (a[k+j*nx+nx]+a[k+j*nx-nx]-2*a[k+j*nx])*dd;
}
return 0;
}
@@ -431,7 +431,7 @@ void *mgl_dif2_x(void *par)
for(i=t->id;i<nn;i+=mglNumThr)
{
k = i*nx; b[k] = b[k+nx-1] = 0;
- for(j=1;j<nx;j++) b[j+k] = (a[j+k+1]+a[j+k-1]-2*a[j+k])*dd;
+ for(j=1;j<nx-1;j++) b[j+k] = (a[j+k+1]+a[j+k-1]-2*a[j+k])*dd;
}
return 0;
}
@@ -550,12 +550,12 @@ void mgl_data_mirror_(uintptr_t *d, const char *dir,int l)
//-----------------------------------------------------------------------------
float mgl_data_linear(HCDT d, float x,float y,float z)
{
- register long kx=long(x), ky=long(y), kz=long(z);
- register mreal b0,b1;
+ long kx=long(x), ky=long(y), kz=long(z);
+ mreal b0,b1;
const mglData *dd=dynamic_cast<const mglData *>(d);
if(dd)
{
- register long nx=dd->nx, ny=dd->ny, nz=dd->nz;
+ long nx=dd->nx, ny=dd->ny, nz=dd->nz, d=ny>1?nx:0;
kx = kx<nx-1 ? kx:nx-2; kx = kx>=0 ? kx:0;
ky = ky<ny-1 ? ky:ny-2; ky = ky>=0 ? ky:0;
kz = kz<nz-1 ? kz:nz-2; kz = kz>=0 ? kz:0;
@@ -563,15 +563,13 @@ float mgl_data_linear(HCDT d, float x,float y,float z)
y -= ky; if(ny==1) y=0;
z -= kz; if(nz==1) z=0;
- register long i0 = kx+nx*(ky+ny*kz);
- const mreal *aa=dd->a+i0;
- b0 = aa[0]*(1-x-y+x*y) + x*(1-y)*aa[1] + y*(1-x)*aa[nx] + x*y*aa[1+nx];
- aa = dd->a + i0 + nx*ny;
- b1 = aa[0]*(1-x-y+x*y) + x*(1-y)*aa[1] + y*(1-x)*aa[nx] + x*y*aa[1+nx];
+ const mreal *aa=dd->a+kx+nx*(ky+ny*kz), *bb = aa+(nz>1?nx*ny:0);
+ b0 = aa[0]*(1-x-y+x*y) + x*(1-y)*aa[1] + y*(1-x)*aa[d] + x*y*aa[1+d];
+ b1 = bb[0]*(1-x-y+x*y) + x*(1-y)*bb[1] + y*(1-x)*bb[d] + x*y*bb[1+d];
}
else
{
- register long n=d->GetNx(), ny=d->GetNy(), nz=d->GetNz();
+ long n=d->GetNx(), ny=d->GetNy(), nz=d->GetNz();
kx = (kx>=0 ? (kx<n ? kx:n -1):0);
ky = (ky>=0 ? (ky<ny? ky:ny-1):0);
kz = (kz>=0 ? (kz<nz? kz:nz-1):0);
@@ -602,8 +600,10 @@ mreal mglSpline3(const mreal *a, long nx, long ny, long nz, mreal x, mreal y, mr
long kx=long(x),ky=long(y),kz=long(z);
bool dd = (dx && dy && dz);
mreal b=0;
- if(x<0 || y<0 || z<0 || x>nx-1 || y>ny-1 || z>nz-1)
- return 0;
+ x = x>0 ?(x<nx-1 ? x:nx-1):0;
+ y = y>0 ?(y<ny-1 ? y:ny-1):0;
+ z = z>0 ?(z<nz-1 ? z:nz-1):0;
+ // if(x<0 || y<0 || z<0 || x>nx-1 || y>ny-1 || z>nz-1) return 0;
if(dd) { *dx=*dy=*dz=0; }
if(nz>1 && z!=kz) // 3d interpolation
{ // TODO: add dx,dy,dz evaluation
@@ -939,7 +939,7 @@ int mgl_data_find_any_(uintptr_t *d, const char *cond, int l)
{ char *s=new char[l+1]; memcpy(s,cond,l); s[l]=0;
int res = mgl_data_find_any(_DT_,s); delete []s; return res; }
//-----------------------------------------------------------------------------
-mreal mgl_data_momentum_val(HCDT dd, char dir, mreal *x, mreal *w, mreal *s, mreal *k)
+float mgl_data_momentum_val(HCDT dd, char dir, mreal *x, mreal *w, mreal *s, mreal *k)
{
long nx=dd->GetNx(),ny=dd->GetNy(),nz=dd->GetNz();
mreal i0=0,i1=0,i2=0,i3=0,i4=0,d,t,v;
@@ -1092,7 +1092,7 @@ void mgl_data_insert(HMDT d, char dir, long at, long num)
{
if(num<1) return;
at = at<0 ? 0:at;
- register long k,nn;
+ register long i,k,nn;
long nx=d->nx, ny=d->ny, nz=d->nz;
mglData b;
if(dir=='x')
@@ -1103,6 +1103,7 @@ void mgl_data_insert(HMDT d, char dir, long at, long num)
{
if(at>0) memcpy(b.a+nn*k, d->a+nx*k,at*sizeof(mreal));
if(at<nx) memcpy(b.a+at+num+nn*k, d->a+at+nx*k,(nx-at)*sizeof(mreal));
+ for(i=0;i<num;i++) b.a[nn*k+at+i]=d->a[nx*k+at]; // copy values
}
d->Set(b); nx+=num;
}
@@ -1114,6 +1115,7 @@ void mgl_data_insert(HMDT d, char dir, long at, long num)
{
if(at>0) memcpy(b.a+nx*nn*k, d->a+nx*ny*k,at*nx*sizeof(mreal));
if(at<ny) memcpy(b.a+nx*(at+num+nn*k), d->a+nx*(at+ny*k),(ny-at)*nx*sizeof(mreal));
+ for(i=0;i<num;i++) memcpy(b.a+nx*(nn*k+at+i),d->a+nx*(ny*k+at),nx*sizeof(mreal));
}
d->Set(b); ny+=num;
}
@@ -1123,6 +1125,7 @@ void mgl_data_insert(HMDT d, char dir, long at, long num)
b.Create(nx,ny,nz+num);
if(at>0) memcpy(b.a, d->a,at*nx*ny*sizeof(mreal));
if(at<nz) memcpy(b.a+nx*ny*(at+num), d->a+nx*ny*at,(nz-at)*nx*ny*sizeof(mreal));
+ for(i=0;i<num;i++) memcpy(b.a+nx*ny*(at+i),d->a+nx*ny*at,nx*ny*sizeof(mreal));
d->Set(b); nz+=num;
}
}
@@ -1269,10 +1272,11 @@ void *mgl_sew_x(void *par)
for(i=t->id;i<nn;i+=mglNumThr) mgl_omod(t->a+i*nx, t->b[0], nx, 1);
return 0;
}
-void mgl_data_sew(HMDT d, const char *dirs, float da)
+void mgl_data_sew(HMDT d, const char *dirs, float delta)
{
long nx=d->nx, ny=d->ny, nz=d->nz;
long p[3]={nx,ny,nz};
+ mreal da = delta;
if(strchr(dirs,'x') && nx>1) mglStartThread(mgl_sew_x,0,nz*ny,d->a,&da,0,p);
if(strchr(dirs,'y') && ny>1) mglStartThread(mgl_sew_y,0,nz*nx,d->a,&da,0,p);
if(strchr(dirs,'z') && nz>1) mglStartThread(mgl_sew_z,0,nx*ny,d->a,&da,0,p);
@@ -1555,3 +1559,5 @@ float mgl_data_get_value(HCDT dat, long i, long j, long k)
float mgl_data_get_value_(uintptr_t *d, int *i, int *j, int *k)
{ return mgl_data_get_value(_DA_(d),*i,*j,*k); }
//-----------------------------------------------------------------------------
+mreal *mgl_data_data(HMDT dat) { return dat->a; }
+//-----------------------------------------------------------------------------
diff --git a/src/data_io.cpp b/src/data_io.cpp
index db76d6d..58ad464 100644
--- a/src/data_io.cpp
+++ b/src/data_io.cpp
@@ -56,7 +56,7 @@ uintptr_t mgl_create_data_file_(const char *fname,int l)
void mgl_delete_data_(uintptr_t *d)
{ if(_DT_) delete _DT_; };
//-----------------------------------------------------------------------------
-void mglFromStr(HMDT d,char *buf,long NX,long NY,long NZ)
+void mglFromStr(HMDT d,char *buf,long NX,long NY,long NZ) // TODO: add multithreading read
{
if(NX<1 || NY <1 || NZ<1) return;
mgl_data_create(d, NX,NY,NZ);
@@ -347,15 +347,15 @@ void mgl_data_create(HMDT d,long mx,long my,long mz)
d->nx = mx>0 ? mx:1; d->ny = my>0 ? my:1; d->nz = mz>0 ? mz:1;
if(d->a && d->id) delete []d->id;
if(d->a && !d->link) delete []d->a;
- d->a = new mreal[mx*my*mz];
- d->id = new char[mx]; d->link=false;
- memset(d->a,0,mx*my*mz*sizeof(mreal));
- memset(d->id,0,mx*sizeof(char));
+ d->a = new mreal[d->nx*d->ny*d->nz];
+ d->id = new char[d->nx]; d->link=false;
+ memset(d->a,0,d->nx*d->ny*d->nz*sizeof(mreal));
+ memset(d->id,0,d->nx*sizeof(char));
}
void mgl_data_create_(uintptr_t *d, int *nx,int *ny,int *nz)
{ mgl_data_create(_DT_,*nx,*ny,*nz); }
//-----------------------------------------------------------------------------
-void mgl_data_link(HMDT d, float *A, long mx,long my,long mz)
+void mgl_data_link(HMDT d, mreal *A, long mx,long my,long mz)
{
if(!A) return;
if(d->id && d->a) delete []d->id;
@@ -363,7 +363,7 @@ void mgl_data_link(HMDT d, float *A, long mx,long my,long mz)
d->nx = mx>0 ? mx:1; d->ny = my>0 ? my:1; d->nz = mz>0 ? mz:1;
d->link=true; d->NewId();
}
-void mgl_data_link_(uintptr_t *d, float *A, int *nx,int *ny,int *nz)
+void mgl_data_link_(uintptr_t *d, mreal *A, int *nx,int *ny,int *nz)
{ mgl_data_link(_DT_,A,*nx,*ny,*nz); }
//-----------------------------------------------------------------------------
int mgl_data_read_dim(HMDT d, const char *fname,long mx,long my,long mz)
@@ -424,7 +424,7 @@ int mgl_data_read_mat_(uintptr_t *d, const char *fname,int *dim,int l)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
int r = mgl_data_read_mat(_DT_,s,*dim); delete []s; return r; }
//-----------------------------------------------------------------------------
-mreal mgl_data_max(HCDT d)
+float mgl_data_max(HCDT d)
{
register mreal m=-1e10, v;
register long nn=d->GetNN();
@@ -435,9 +435,9 @@ mreal mgl_data_max(HCDT d)
{ v = d->vthr(i); if(!isnan(v)) m = m>v ? m:v; }
return m;
}
-mreal mgl_data_max_(uintptr_t *d) { return mgl_data_max(_DT_); }
+float mgl_data_max_(uintptr_t *d) { return mgl_data_max(_DT_); }
//-----------------------------------------------------------------------------
-mreal mgl_data_min(HCDT d)
+float mgl_data_min(HCDT d)
{
register mreal m=1e10, v;
register long nn=d->GetNN();
@@ -448,9 +448,9 @@ mreal mgl_data_min(HCDT d)
{ v = d->vthr(i); if(!isnan(v)) m = m<v ? m:v; }
return m;
}
-mreal mgl_data_min_(uintptr_t *d) { return mgl_data_min(_DT_); }
+float mgl_data_min_(uintptr_t *d) { return mgl_data_min(_DT_); }
//-----------------------------------------------------------------------------
-mreal mgl_data_max_int(HCDT d, long *i, long *j, long *k)
+float mgl_data_max_int(HCDT d, long *i, long *j, long *k)
{
register mreal m=-1e10, v;
long nx=d->GetNx(), ny=d->GetNy(), nn=d->GetNN();
@@ -462,11 +462,11 @@ mreal mgl_data_max_int(HCDT d, long *i, long *j, long *k)
}
return m;
}
-mreal mgl_data_max_int_(uintptr_t *d, int *i, int *j, int *k)
+float mgl_data_max_int_(uintptr_t *d, int *i, int *j, int *k)
{ long ii,jj,kk; float res=mgl_data_max_int(_DT_,&ii,&jj,&kk);
*i=ii; *j=jj; *k=kk; return res; }
//-----------------------------------------------------------------------------
-mreal mgl_data_min_int(HCDT d, long *i, long *j, long *k)
+float mgl_data_min_int(HCDT d, long *i, long *j, long *k)
{
register mreal m=1e10, v;
long nx=d->GetNx(), ny=d->GetNy(), nn=d->GetNN();
@@ -478,11 +478,11 @@ mreal mgl_data_min_int(HCDT d, long *i, long *j, long *k)
}
return m;
}
-mreal mgl_data_min_int_(uintptr_t *d, int *i, int *j, int *k)
+float mgl_data_min_int_(uintptr_t *d, int *i, int *j, int *k)
{ long ii,jj,kk; float res=mgl_data_min_int(_DT_,&ii,&jj,&kk);
*i=ii; *j=jj; *k=kk; return res; }
//-----------------------------------------------------------------------------
-mreal mgl_data_max_real(HCDT d, mreal *x, mreal *y, mreal *z)
+float mgl_data_max_real(HCDT d, mreal *x, mreal *y, mreal *z)
{
long im=-1,jm=-1,km=-1;
long nx=d->GetNx(), ny=d->GetNy(), nz=d->GetNz();
@@ -513,10 +513,10 @@ mreal mgl_data_max_real(HCDT d, mreal *x, mreal *y, mreal *z)
}
return m;
}
-mreal mgl_data_max_real_(uintptr_t *d, mreal *x, mreal *y, mreal *z)
+float mgl_data_max_real_(uintptr_t *d, mreal *x, mreal *y, mreal *z)
{ return mgl_data_max_real(_DT_,x,y,z); }
//-----------------------------------------------------------------------------
-mreal mgl_data_min_real(HCDT d, mreal *x, mreal *y, mreal *z)
+float mgl_data_min_real(HCDT d, mreal *x, mreal *y, mreal *z)
{
long im=-1,jm=-1,km=-1;
long nx=d->GetNx(), ny=d->GetNy(), nz=d->GetNz();
@@ -547,7 +547,7 @@ mreal mgl_data_min_real(HCDT d, mreal *x, mreal *y, mreal *z)
}
return m;
}
-mreal mgl_data_min_real_(uintptr_t *d, mreal *x, mreal *y, mreal *z)
+float mgl_data_min_real_(uintptr_t *d, mreal *x, mreal *y, mreal *z)
{ return mgl_data_min_real(_DT_,x,y,z); }
//-----------------------------------------------------------------------------
void *mgl_fill_x(void *par)
@@ -638,7 +638,7 @@ void mgl_data_extend(HMDT d, long n1, long n2)
{
long nx=d->nx, ny=d->ny, nz=d->nz;
if(nz>2 || n1==0) return;
- long mx,my,mz;
+ long mx, my, mz;
mreal *b=0;
register long i,j;
if(n1>0) // extend to higher dimension(s)
@@ -656,16 +656,17 @@ void mgl_data_extend(HMDT d, long n1, long n2)
mx = -n1; my = n2<0 ? -n2 : nx; mz = n2<0 ? nx : ny;
if(n2>0 && ny==1) mz = n2;
b = new mreal[mx*my*mz];
- if(n2<0) for(j=0;j<nx;j++) for(i=0;i<mx*my;i++)
- b[i+mx*my*j] = d->a[j];
- else for(j=0;j<nx*ny;j++) for(i=0;i<mx;i++)
- b[i+mx*j] = d->a[j];
+ register mreal v;
+ if(n2<0) for(j=0;j<nx;j++) for(i=0,v=d->a[j];i<mx*my;i++)
+ b[i+mx*my*j] = v;
+ else for(j=0;j<nx*ny;j++) for(i=0,v=d->a[j];i<mx;i++)
+ b[i+mx*j] = v;
if(n2>0 && ny==1) for(i=0;i<n2;i++)
memcpy(b+i*mx*my, d->a, mx*my*sizeof(mreal));
}
- if(b)
- { if(!d->link) delete []d->a;
- d->a=b; d->nx=mx; d->ny=my; d->nz=mz; d->NewId(); d->link=false; }
+ if(!d->link) delete [](d->a);
+ d->a=b; d->nx=mx; d->ny=my; d->nz=mz;
+ d->NewId(); d->link=false;
}
void mgl_data_extend_(uintptr_t *d, int *n1, int *n2)
{ mgl_data_extend(_DT_,*n1,*n2); }
@@ -731,6 +732,7 @@ void *mgl_modify(void *par)
}
void mgl_data_modify(HMDT d, const char *eq,long dim)
{
+mglNumThr=1;
long nx=d->nx, ny=d->ny, nz=d->nz, par[3]={nx,ny,nz};
mglFormula f(eq);
if(dim<0) dim=0;
@@ -863,20 +865,16 @@ void mgl_data_save_hdf(HCDT dat,const char *fname,const char *data,int rewrite)
else { rank=3; dims[0]=d->nz; dims[1]=d->ny; dims[2]=d->nx; }
hs = H5Screate_simple(rank, dims, 0);
#if(MGL_USE_DOUBLE==1)
-#ifndef H5_USE_16_API
- hd = H5Dcreate(hf, data, H5T_NATIVE_DOUBLE, hs, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
-#else /* ! HAVE_HDF5_18 */
- hd = H5Dcreate(hf, data, H5T_NATIVE_DOUBLE, hs, H5P_DEFAULT);
-#endif /* HAVE_HDF5_18 */
- H5Dwrite(hd, H5T_NATIVE_DOUBLE, hs, hs, H5P_DEFAULT, d->a);
+ hid_t mem_type_id = H5T_NATIVE_DOUBLE;
#else
+ hid_t mem_type_id = H5T_NATIVE_FLOAT;
+#endif
#ifndef H5_USE_16_API
- hd = H5Dcreate(hf, data, H5T_NATIVE_FLOAT, hs, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+ hd = H5Dcreate(hf, data, mem_type_id, hs, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
#else /* ! HAVE_HDF5_18 */
- hd = H5Dcreate(hf, data, H5T_NATIVE_FLOAT, hs, H5P_DEFAULT);
+ hd = H5Dcreate(hf, data, mem_type_id, hs, H5P_DEFAULT);
#endif /* HAVE_HDF5_18 */
- H5Dwrite(hd, H5T_NATIVE_FLOAT, hs, hs, H5P_DEFAULT, d->a);
-#endif
+ H5Dwrite(hd, mem_type_id, hs, hs, H5P_DEFAULT, d->a);
H5Dclose(hd); H5Sclose(hs); H5Fclose(hf);
}
//-----------------------------------------------------------------------------
@@ -909,8 +907,9 @@ int mgl_data_read_hdf(HMDT d,const char *fname,const char *data)
H5Dread(hd, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, d->a);
#endif
}
- H5Dclose(hd); H5Sclose(hs); H5Fclose(hf); return true;
+ H5Sclose(hs); H5Dclose(hd); H5Fclose(hf); return true;
}
+//-----------------------------------------------------------------------------
int mgl_datas_hdf(const char *fname, char *buf, long size)
{
hid_t hf,hg,hd,ht;
diff --git a/src/data_new.cpp b/src/data_new.cpp
index 6bacd0f..6fe209c 100644
--- a/src/data_new.cpp
+++ b/src/data_new.cpp
@@ -228,8 +228,8 @@ uintptr_t mgl_data_column_(uintptr_t *d, const char *eq,int l)
void *mgl_resize(void *par)
{
mglThreadD *t=(mglThreadD *)par;
- register long i,j,k,i0, nx=t->p[0], ny=t->p[1];
- long n1=t->p[3],n2=t->p[4],n3=t->p[5];
+ register long i,j,k,i0, nx=t->p[0]+0.1, ny=t->p[1]+0.1;
+ long n1=t->p[3]+0.1,n2=t->p[4]+0.1,n3=t->p[5]+0.1;
mreal *b=t->a;
const mreal *a=t->b, *c=t->c;
for(i0=t->id;i0<t->n;i0+=mglNumThr)
@@ -1038,8 +1038,8 @@ void mgl_data_mul_dat(HMDT d, HCDT a)
//-----------------------------------------------------------------------------
void mgl_data_mul_num(HMDT d, float a)
{
- long n=1, nx=d->nx, ny=d->ny, nz=d->nz;
- mglStartThread(mgl_eqmul,0,nx*ny*nz,d->a,&a,0,&n);
+ long n=1, nx=d->nx, ny=d->ny, nz=d->nz; mreal aa=a;
+ mglStartThread(mgl_eqmul,0,nx*ny*nz,d->a,&aa,0,&n);
}
//-----------------------------------------------------------------------------
void *mgl_eqdiv(void *par)
@@ -1070,8 +1070,8 @@ void mgl_data_div_dat(HMDT d, HCDT a)
//-----------------------------------------------------------------------------
void mgl_data_div_num(HMDT d, float a)
{
- long n=1, nx=d->nx, ny=d->ny, nz=d->nz;
- mglStartThread(mgl_eqdiv,0,nx*ny*nz,d->a,&a,0,&n);
+ long n=1, nx=d->nx, ny=d->ny, nz=d->nz; mreal aa=a;
+ mglStartThread(mgl_eqdiv,0,nx*ny*nz,d->a,&aa,0,&n);
}
//-----------------------------------------------------------------------------
void *mgl_eqadd(void *par)
@@ -1102,8 +1102,8 @@ void mgl_data_add_dat(HMDT d, HCDT a)
//-----------------------------------------------------------------------------
void mgl_data_add_num(HMDT d, float a)
{
- long n=1, nx=d->nx, ny=d->ny, nz=d->nz;
- mglStartThread(mgl_eqadd,0,nx*ny*nz,d->a,&a,0,&n);
+ long n=1, nx=d->nx, ny=d->ny, nz=d->nz; mreal aa=a;
+ mglStartThread(mgl_eqadd,0,nx*ny*nz,d->a,&aa,0,&n);
}
//-----------------------------------------------------------------------------
void *mgl_eqsub(void *par)
@@ -1134,8 +1134,8 @@ void mgl_data_sub_dat(HMDT d, HCDT a)
//-----------------------------------------------------------------------------
void mgl_data_sub_num(HMDT d, float a)
{
- long n=1, nx=d->nx, ny=d->ny, nz=d->nz;
- mglStartThread(mgl_eqsub,0,nx*ny*nz,d->a,&a,0,&n);
+ long n=1, nx=d->nx, ny=d->ny, nz=d->nz; mreal aa=a;
+ mglStartThread(mgl_eqsub,0,nx*ny*nz,d->a,&aa,0,&n);
}
//-----------------------------------------------------------------------------
void mgl_data_mul_dat_(uintptr_t *d, uintptr_t *b) { mgl_data_mul_dat(_DT_, _DA_(b)); }
@@ -1265,3 +1265,23 @@ mreal mglLinear(const mreal *a, long nx, long ny, long nz, mreal x, mreal y, mre
return b;
}
//-----------------------------------------------------------------------------
+long mgl_idx_var;
+int mgl_cmd_idx(const void *a, const void *b)
+{
+ mreal *aa = (mreal *)a, *bb = (mreal *)b;
+ return (aa[mgl_idx_var]>bb[mgl_idx_var] ? 1:(aa[mgl_idx_var]<bb[mgl_idx_var]?-1:0) );
+}
+void mgl_data_sort(HMDT dat, long idx, long idy)
+{
+ mglData *d = dynamic_cast<mglData *>(dat);
+ if(!d || idx>=d->nx || idx<0) return;
+ bool single = (d->nz==1 || idy<0);
+ if(idy<0 || idy>d->ny) idy=0;
+ mgl_idx_var = idx+d->nx*idy; // NOTE: not thread safe!!!
+ if(single) qsort(d->a, d->ny*d->nz, d->nx*sizeof(mreal), mgl_cmd_idx);
+ else qsort(d->a, d->nz, d->ny*d->nx*sizeof(mreal), mgl_cmd_idx);
+}
+//-----------------------------------------------------------------------------
+void mgl_data_sort_(uintptr_t *d, int *idx, int *idy)
+{ mgl_data_sort(_DT_,*idx,*idy); }
+//-----------------------------------------------------------------------------
diff --git a/src/data_png.cpp b/src/data_png.cpp
index b1479e3..d8d2434 100644
--- a/src/data_png.cpp
+++ b/src/data_png.cpp
@@ -18,6 +18,7 @@
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#include <stdlib.h>
+#include <zlib.h>
#ifndef NO_PNG
#include <png.h>
#endif
diff --git a/src/eval.cpp b/src/eval.cpp
index a28502d..1e1a422 100644
--- a/src/eval.cpp
+++ b/src/eval.cpp
@@ -20,6 +20,7 @@
#include <stdlib.h>
#include <time.h>
#include <math.h>
+#include <ctype.h>
#include <string.h>
#ifndef NO_GSL
#include <gsl/gsl_sf.h>
@@ -28,7 +29,7 @@
#endif
#include "mgl/eval.h"
//-----------------------------------------------------------------------------
-// êîÃñòà Ãòû äëÿ ðà ñïîçÃîâà Ãèÿ âûðà æåÃèÿ
+// constants for expression parsing
enum{
EQ_NUM=0, // a variable substitution
EQ_RND, // random number
@@ -115,7 +116,7 @@ EQ_DN, // Jacobian elliptic function dn(u|m)
EQ_DS, // Jacobian elliptic function dn(u|m)/sn(u|m)
EQ_DC, // Jacobian elliptic function dn(u|m)/cn(u|m)
// MUST BE LAST ELLIPTIC FUNCTION
-// non-ready
+// not-ready
EQ_EN,
EQ_CL, // Clausen function
};
@@ -165,14 +166,13 @@ double mgl_rnd()
#endif
}
//-----------------------------------------------------------------------------
-// äåñòðóêòîð ôîðìóëû
mglFormula::~mglFormula()
{
if(Left) delete Left;
if(Right) delete Right;
}
//-----------------------------------------------------------------------------
-// êîÃñòðóêòîð ôîðìóëû (à âòîìà òè÷åñêè ðà ñïîçÃà åò è "êîìïèëèðóåò" ôîðìóëó)
+// Formula constructor (automatically parse and "compile" formula)
mglFormula::mglFormula(const char *string)
{
#ifndef NO_GSL
@@ -190,14 +190,14 @@ mglFormula::mglFormula(const char *string)
mgl_strlwr(str);
len=strlen(str);
if(str[0]==0) { delete []str; return; }
- if(str[0]=='(' && mglCheck(&(str[1]),len-2)) // åñëè âñå âûðà æåÃèå â ñêîáà õ, òî óáèðà åì èõ
+ if(str[0]=='(' && mglCheck(&(str[1]),len-2)) // remove braces
{
strcpy(Buf,str+1);
len-=2; Buf[len]=0;
strcpy(str,Buf);
}
len=strlen(str);
- n=mglFindInText(str,"&|"); // ìåÃüøèé ïðèîðèòåò - ñëîæåÃèå, âû÷èòà Ãèå
+ n=mglFindInText(str,"&|"); // lowest priority -- logical
if(n>=0)
{
if(str[n]=='|') Kod=EQ_OR; else Kod=EQ_AND;
@@ -207,7 +207,7 @@ mglFormula::mglFormula(const char *string)
delete []str;
return;
}
- n=mglFindInText(str,"<>="); // ìåÃüøèé ïðèîðèòåò - ñëîæåÃèå, âû÷èòà Ãèå
+ n=mglFindInText(str,"<>="); // low priority -- conditions
if(n>=0)
{
if(str[n]=='<') Kod=EQ_LT;
@@ -219,8 +219,8 @@ mglFormula::mglFormula(const char *string)
delete []str;
return;
}
- n=mglFindInText(str,"+-"); // ìåÃüøèé ïðèîðèòåò - ñëîæåÃèå, âû÷èòà Ãèå
- if(n>=0)
+ n=mglFindInText(str,"+-"); // normal priority -- additions
+ if(n>=0 && (n<2 || str[n-1]!='e' || (str[n-2]!='.' && !isdigit(str[n-2]))))
{
if(str[n]=='+') Kod=EQ_ADD; else Kod=EQ_SUB;
strcpy(Buf,str); Buf[n]=0;
@@ -229,7 +229,7 @@ mglFormula::mglFormula(const char *string)
delete []str;
return;
}
- n=mglFindInText(str,"*/"); // ñðåäÃèé ïðèîðèòåò - óìÃîæåÃèå, äåëåÃèå
+ n=mglFindInText(str,"*/"); // high priority -- multiplications
if(n>=0)
{
if(str[n]=='*') Kod=EQ_MUL; else Kod=EQ_DIV;
@@ -239,7 +239,7 @@ mglFormula::mglFormula(const char *string)
delete []str;
return;
}
- n=mglFindInText(str,"^"); // âûñîêèé ïðèîðèòåò - âîçâåäåÃèå â ñòåïåÃü
+ n=mglFindInText(str,"^"); // highest priority -- power
if(n>=0)
{
Kod=EQ_IPOW;
@@ -251,15 +251,15 @@ mglFormula::mglFormula(const char *string)
}
for(n=0;n<len;n++) if(str[n]=='(') break;
- if(n>=len) // ýòî ÷èñëî èëè ïåðåìåÃÃà ÿ
+ if(n>=len) // this is number or variable
{
Kod = EQ_NUM;
// Left = Right = 0;
- if(str[1]==0 && str[0]>='a' && str[0]<='z') // äîñòóïÃûå ïåðåìÃÃûå
+ if(str[1]==0 && str[0]>='a' && str[0]<='z') // avalible variables
{ Kod=EQ_A; Res = str[0]-'a'; }
else if(!strcmp(str,"rnd")) Kod=EQ_RND;
else if(!strcmp(str,"pi")) Res=M_PI;
- else Res=atof(str); // ýòî ÷èñëî
+ else Res=atof(str); // this is number
}
else
{
@@ -394,74 +394,74 @@ mglFormula::mglFormula(const char *string)
}
//-----------------------------------------------------------------------------
// evaluate formula for 'x'='r', 'y'='n'='v', 't'='z', 'u'='a' variables
-float mglFormula::Calc(float x,float y,float t,float u) const
+mreal mglFormula::Calc(mreal x,mreal y,mreal t,mreal u) const
{
Error=0;
- float a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(float));
+ mreal a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(float));
a1['a'-'a'] = a1['c'-'a'] = a1['u'-'a'] = u;
a1['x'-'a'] = a1['r'-'a'] = x;
a1['y'-'a'] = a1['n'-'a'] = a1['v'-'a'] = y;
a1['z'-'a'] = a1['t'-'a'] = t;
- float a = CalcIn(a1);
+ mreal a = CalcIn(a1);
return isfinite(a) ? a : NAN;
}
//-----------------------------------------------------------------------------
// evaluate formula for 'x'='r', 'y'='n', 't'='z', 'u'='a', 'v'='b', 'w'='c' variables
-float mglFormula::Calc(float x,float y,float t,float u,float v,float w) const
+mreal mglFormula::Calc(mreal x,mreal y,mreal t,mreal u,mreal v,mreal w) const
{
Error=0;
- float a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(float));
+ mreal a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(float));
a1['c'-'a'] = a1['w'-'a'] = w;
a1['b'-'a'] = a1['v'-'a'] = v;
a1['a'-'a'] = a1['u'-'a'] = u;
a1['x'-'a'] = a1['r'-'a'] = x;
a1['y'-'a'] = a1['n'-'a'] = y;
a1['z'-'a'] = a1['t'-'a'] = t;
- float a = CalcIn(a1);
+ mreal a = CalcIn(a1);
return isfinite(a) ? a : NAN;
}
//-----------------------------------------------------------------------------
// evaluate formula for arbitrary set of variables
-float mglFormula::Calc(const float var[MGL_VS]) const
+mreal mglFormula::Calc(const mreal var[MGL_VS]) const
{
Error=0;
- float a = CalcIn(var);
+ mreal a = CalcIn(var);
return isfinite(a) ? a : NAN;
}
//-----------------------------------------------------------------------------
// evaluate formula for 'x'='r', 'y'='n'='v', 't'='z', 'u'='a' variables
-float mglFormula::CalcD(char diff,float x,float y,float t,float u) const
+mreal mglFormula::CalcD(char diff,mreal x,mreal y,mreal t,mreal u) const
{
Error=0;
- float a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(float));
+ mreal a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(float));
a1['a'-'a'] = a1['c'-'a'] = a1['u'-'a'] = u;
a1['x'-'a'] = a1['r'-'a'] = x;
a1['y'-'a'] = a1['n'-'a'] = a1['v'-'a'] = y;
a1['z'-'a'] = a1['t'-'a'] = t;
- float a = CalcDIn(diff-'a', a1);
+ mreal a = CalcDIn(diff-'a', a1);
return isfinite(a) ? a : NAN;
}
//-----------------------------------------------------------------------------
// evaluate formula for 'x'='r', 'y'='n', 't'='z', 'u'='a', 'v'='b', 'w'='c' variables
-float mglFormula::CalcD(char diff,float x,float y,float t,float u,float v,float w) const
+mreal mglFormula::CalcD(char diff,mreal x,mreal y,mreal t,mreal u,mreal v,mreal w) const
{
Error=0;
- float a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(float));
+ mreal a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(float));
a1['c'-'a'] = a1['w'-'a'] = w;
a1['b'-'a'] = a1['v'-'a'] = v;
a1['a'-'a'] = a1['u'-'a'] = u;
a1['x'-'a'] = a1['r'-'a'] = x;
a1['y'-'a'] = a1['n'-'a'] = y;
a1['z'-'a'] = a1['t'-'a'] = t;
- float a = CalcDIn(diff-'a', a1);
+ mreal a = CalcDIn(diff-'a', a1);
return isfinite(a) ? a : NAN;
}
//-----------------------------------------------------------------------------
// evaluate derivate of formula respect to 'diff' variable for arbitrary set of other variables
-float mglFormula::CalcD(const float var[MGL_VS], char diff) const
+mreal mglFormula::CalcD(const mreal var[MGL_VS], char diff) const
{
Error=0;
- float a = CalcDIn(diff-'a', var);
+ mreal a = CalcDIn(diff-'a', var);
return isfinite(a) ? a : NAN;
}
//-----------------------------------------------------------------------------
@@ -474,7 +474,7 @@ double add(double a,double b) {return a+b;}
double sub(double a,double b) {return a-b;}
double mul(double a,double b) {return a&&b?a*b:0;}
double div(double a,double b) {return b?a/b:NAN;}
-double ipw(double a,double b) {return mgl_ipow(a,int(b));}
+double ipw(double a,double b) {return fabs(b-int(b))<1e-5 ? mgl_ipow(a,int(b)) : pow(a,b);}
double llg(double a,double b) {return log(a)/log(b);}
#ifndef NO_GSL
double gslEllE(double a,double b) {return gsl_sf_ellint_E(a,b,GSL_PREC_SINGLE);}
@@ -501,7 +501,7 @@ double atanh(double x) { return fabs(x)<1 ? log((1+x)/(1-x))/2 : NAN; }
typedef double (*func_1)(double);
typedef double (*func_2)(double, double);
// evaluation of embedded (included) expressions
-float mglFormula::CalcIn(const float *a1) const
+mreal mglFormula::CalcIn(const mreal *a1) const
{
func_2 f2[22] = {clt,cgt,ceq,cor,cand,add,sub,mul,div,ipw,pow,fmod,llg,arg
#ifndef NO_GSL
@@ -573,7 +573,7 @@ double mul1(double ,double b) {return b;}
double mul2(double a,double ) {return a;}
double div1(double ,double b) {return b?1/b:NAN;}
double div2(double a,double b) {return b?-a/(b*b):NAN;}
-double ipw1(double a,double b) {return int(b)*mgl_ipow(a,int(b-1));}
+double ipw1(double a,double b) {return b*(fabs(b-int(b))<1e-5 ? mgl_ipow(a,int(b-1)) : pow(a,b-1));}
double pow1(double a,double b) {return b*pow(a,b-1);}
double pow2(double a,double b) {return log(a)*pow(a,b);}
double llg1(double a,double b) {return 1/(a*log(b));}
@@ -614,7 +614,7 @@ double gamma_d(double a) {return gsl_sf_psi(a)*gsl_sf_gamma(a);}
#endif
//-----------------------------------------------------------------------------
// evaluation of derivative of embedded (included) expressions
-float mglFormula::CalcDIn(int id, const float *a1) const
+mreal mglFormula::CalcDIn(int id, const mreal *a1) const
{
func_2 f21[22] = {mgz2,mgz2,mgz2, mgz2,mgz2,mgp, mgp,mul1,div1, ipw1,pow1,mgp,llg1, mgz2
#ifndef NO_GSL
@@ -623,7 +623,7 @@ float mglFormula::CalcDIn(int id, const float *a1) const
,mgz2,mgz2,mgz2,mgz2,mgz2,mgz2,mgz2,mgz2
#endif
};
- func_2 f22[22] = {mgz2,mgz2,mgz2,mgz2,mgz2,mgp,mgm,mul2,div2,mgz2,pow2,mgz2,llg2, mgz2
+ func_2 f22[22] = {mgz2,mgz2,mgz2,mgz2,mgz2,mgp,mgm,mul2,div2,pow2,pow2,mgz2,llg2, mgz2
#ifndef NO_GSL
,gslJnuD,gslYnuD,gslInuD,gslKnuD,gslEllE2,gslEllF2,mgz2/*gslLegP*/,mgz2
#else
@@ -648,10 +648,10 @@ float mglFormula::CalcDIn(int id, const float *a1) const
{
if(Kod<EQ_SIN)
{
- double b = Right->CalcIn(a1);
- return !isnan(b) ? f21[Kod-EQ_LT](a,b)*d + f22[Kod-EQ_LT](a,b)*Right->CalcDIn(id,a1) : NAN;
+ double b = Right->CalcIn(a1), c = Right->CalcDIn(id,a1);
+ return !isnan(b) ? (d?f21[Kod-EQ_LT](a,b)*d:0) + (c?f22[Kod-EQ_LT](a,b)*c:0) : NAN;
}
- else if(Kod<EQ_SN) return f11[Kod-EQ_SIN](a)*d;
+ else if(Kod<EQ_SN) return (d?f11[Kod-EQ_SIN](a)*d:0);
#ifndef NO_GSL
else if(Kod<=EQ_DC)
{
@@ -679,7 +679,7 @@ float mglFormula::CalcDIn(int id, const float *a1) const
return NAN;
}
//-----------------------------------------------------------------------------
-// ïðîâåðêà êîððåêòÃîñòè ñêîáîê
+// Check braces correctness
bool mglCheck(char *str,int n)
{
register long s = 0,i;
@@ -692,7 +692,7 @@ bool mglCheck(char *str,int n)
return (s==0) ? true : false;
}
//-----------------------------------------------------------------------------
-// ïîèñê îäÃîãî èç ñèìâîëîâ lst â ñòðîêå str
+// Try to find one of symbols lst in the string str
int mglFindInText(char *str,const char *lst)
{
register long l=0,r=0,i;//,j,len=strlen(lst);
diff --git a/src/evalc.cpp b/src/evalc.cpp
new file mode 100644
index 0000000..aa894db
--- /dev/null
+++ b/src/evalc.cpp
@@ -0,0 +1,285 @@
+/***************************************************************************
+ * mgl_evalc.cpp is part of Math Graphic Library
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+#include <stdlib.h>
+#include <time.h>
+#include <math.h>
+#include <string.h>
+#include "mgl/evalc.h"
+#include "mgl/addon.h"
+#include "mgl/data.h"
+#ifndef NO_GSL
+#include <gsl/gsl_sf.h>
+#endif
+//-----------------------------------------------------------------------------
+// êîíñòàíòû äëÿ ðàñïîçíîâàíèÿ âûðàæåíèÿ
+enum{
+EQ_NUM=0, // a variable substitution
+EQ_RND, // random number
+EQ_A, // numeric constant
+// äâóìåñòíûå ôóíêöèè
+EQ_ADD, // addition x+y
+EQ_SUB, // substraction x-y
+EQ_MUL, // multiplication x*y
+EQ_DIV, // division x/y
+EQ_IPOW, // power x^n for integer n
+EQ_POW, // power x^y
+EQ_LOG, // logarithm of x on base a, log_a(x) = ln(x)/ln(a)
+// îäíîìåñòíûå ôóíêöèè
+EQ_SIN, // sine function \sin(x). !!! MUST BE FIRST 1-PLACE FUNCTION
+EQ_COS, // cosine function \cos(x).
+EQ_TAN, // tangent function \tan(x).
+EQ_ASIN, // inverse sine function \asin(x).
+EQ_ACOS, // inverse cosine function \acos(x).
+EQ_ATAN, // inverse tangent function \atan(x).
+EQ_SINH, // hyperbolic sine function \sinh(x).
+EQ_COSH, // hyperbolic cosine function \cosh(x).
+EQ_TANH, // hyperbolic tangent function \tanh(x).
+EQ_ASINH, // inverse hyperbolic sine function \asinh(x).
+EQ_ACOSH, // inverse hyperbolic cosine function \acosh(x).
+EQ_ATANH, // inverse hyperbolic tangent function \atanh(x).
+EQ_SQRT, // square root function \sqrt(x)
+EQ_EXP, // exponential function \exp(x)
+EQ_EXPI, // exponential function \exp(i*x)
+EQ_LN, // logarithm of x, ln(x)
+EQ_LG, // decimal logarithm of x, lg(x) = ln(x)/ln(10)
+EQ_ABS // absolute value
+};
+//-----------------------------------------------------------------------------
+int mglFormulaC::Error=0;
+bool mglCheck(char *str,int n);
+int mglFindInText(char *str,const char *lst);
+//-----------------------------------------------------------------------------
+// äåñòðóêòîð ôîðìóëû
+mglFormulaC::~mglFormulaC()
+{
+ if(Left) delete Left;
+ if(Right) delete Right;
+}
+//-----------------------------------------------------------------------------
+// êîíñòðóêòîð ôîðìóëû (àâòîìàòè÷åñêè ðàñïîçíàåò è "êîìïèëèðóåò" ôîðìóëó)
+mglFormulaC::mglFormulaC(const char *string)
+{
+ Error=0;
+ Left=Right=0;
+ Res=0; Kod=0;
+ if(!string) { Kod = EQ_NUM; Res = 0; return; }
+//printf("%s\n",string); fflush(stdout);
+ char *str = new char[strlen(string)+1];
+ strcpy(str,string);
+ static char Buf[2048];
+ long n,len;
+ mgl_strtrim(str);
+ mgl_strlwr(str);
+ len=strlen(str);
+ if(str[0]==0) { delete []str; return; }
+ if(str[0]=='(' && mglCheck(&(str[1]),len-2)) // åñëè âñå âûðàæåíèå â ñêîáàõ, òî óáèðàåì èõ
+ {
+ strcpy(Buf,str+1);
+ len-=2; Buf[len]=0;
+ strcpy(str,Buf);
+ }
+ len=strlen(str);
+ n=mglFindInText(str,"+-"); // ìåíüøèé ïðèîðèòåò - ñëîæåíèå, âû÷èòàíèå
+ if(n>=0)
+ {
+ if(str[n]=='+') Kod=EQ_ADD; else Kod=EQ_SUB;
+ strcpy(Buf,str); Buf[n]=0;
+ Left=new mglFormulaC(Buf);
+ Right=new mglFormulaC(Buf+n+1);
+ delete []str;
+ return;
+ }
+ n=mglFindInText(str,"*/"); // ñðåäíèé ïðèîðèòåò - óìíîæåíèå, äåëåíèå
+ if(n>=0)
+ {
+ if(str[n]=='*') Kod=EQ_MUL; else Kod=EQ_DIV;
+ strcpy(Buf,str); Buf[n]=0;
+ Left=new mglFormulaC(Buf);
+ Right=new mglFormulaC(Buf+n+1);
+ delete []str;
+ return;
+ }
+ n=mglFindInText(str,"^"); // âûñîêèé ïðèîðèòåò - âîçâåäåíèå â ñòåïåíü
+ if(n>=0)
+ {
+ Kod=EQ_IPOW;
+ strcpy(Buf,str); Buf[n]=0;
+ Left=new mglFormulaC(Buf);
+ Right=new mglFormulaC(Buf+n+1);
+ delete []str;
+ return;
+ }
+
+ for(n=0;n<len;n++) if(str[n]=='(') break;
+ if(n>=len) // ýòî ÷èñëî èëè ïåðåìåííàÿ
+ {
+ Kod = EQ_NUM;
+// Left = Right = 0;
+ if(str[1]==0 && str[0]>='a' && str[0]<='z') // äîñòóïíûå ïåðåìííûå
+ { Kod=EQ_A; Res = str[0]-'a'; }
+ else if(!strcmp(str,"rnd")) Kod=EQ_RND;
+ else if(!strcmp(str,"pi")) Res=M_PI;
+ else if(str[0]=='i') Res = dual(0,atof(str+1));
+ else Res=atof(str); // ýòî ÷èñëî
+ }
+ else
+ {
+ char name[128];
+ strcpy(name,str);
+// strcpy(Buf,str);
+ name[n]=0;
+// len-=n;
+ memcpy(Buf,&(str[n+1]),len-n);
+ len=strlen(Buf);
+ Buf[--len]=0;
+ if(!strcmp(name,"sin")) Kod=EQ_SIN;
+ else if(!strcmp(name,"cos")) Kod=EQ_COS;
+ else if(!strcmp(name,"tg")) Kod=EQ_TAN;
+ else if(!strcmp(name,"tan")) Kod=EQ_TAN;
+ else if(!strcmp(name,"asin")) Kod=EQ_ASIN;
+ else if(!strcmp(name,"acos")) Kod=EQ_ACOS;
+ else if(!strcmp(name,"atan")) Kod=EQ_ATAN;
+ else if(!strcmp(name,"sinh")) Kod=EQ_SINH;
+ else if(!strcmp(name,"cosh")) Kod=EQ_COSH;
+ else if(!strcmp(name,"tanh")) Kod=EQ_TANH;
+ else if(!strcmp(name,"sh")) Kod=EQ_SINH;
+ else if(!strcmp(name,"ch")) Kod=EQ_COSH;
+ else if(!strcmp(name,"th")) Kod=EQ_TANH;
+ else if(!strcmp(name,"sqrt")) Kod=EQ_SQRT;
+ else if(!strcmp(name,"log")) Kod=EQ_LOG;
+ else if(!strcmp(name,"pow")) Kod=EQ_POW;
+ else if(!strcmp(name,"exp")) Kod=EQ_EXP;
+ else if(!strcmp(name,"lg")) Kod=EQ_LG;
+ else if(!strcmp(name,"ln")) Kod=EQ_LN;
+ else if(!strcmp(name,"abs")) Kod=EQ_ABS;
+ else { delete []str; return; } // unknown function
+ n=mglFindInText(Buf,",");
+ if(n>=0)
+ {
+ Buf[n]=0;
+ Left=new mglFormulaC(Buf);
+ Right=new mglFormulaC(&(Buf[n+1]));
+ }
+ else
+ Left=new mglFormulaC(Buf);
+ }
+ delete []str;
+}
+//-----------------------------------------------------------------------------
+// evaluate formula for 'x'='r', 'y'='n'='v', 't'='z', 'u'='a' variables
+dual mglFormulaC::Calc(dual x,dual y,dual t,dual u) const
+{
+ Error=0;
+ dual a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(dual));
+ a1['a'-'a'] = a1['u'-'a'] = u;
+ a1['x'-'a'] = a1['r'-'a'] = x;
+ a1['y'-'a'] = a1['n'-'a'] = a1['v'-'a'] = y;
+ a1['z'-'a'] = a1['t'-'a'] = t;
+ return CalcIn(a1);
+}
+//-----------------------------------------------------------------------------
+// evaluate formula for 'x'='r', 'y'='n', 't'='z', 'u'='a', 'v'='b', 'w'='c' variables
+dual mglFormulaC::Calc(dual x,dual y,dual t,dual u,dual v,dual w) const
+{
+ Error=0;
+ dual a1[MGL_VS]; memset(a1,0,MGL_VS*sizeof(dual));
+ a1['c'-'a'] = a1['w'-'a'] = w;
+ a1['b'-'a'] = a1['v'-'a'] = v;
+ a1['a'-'a'] = a1['u'-'a'] = u;
+ a1['x'-'a'] = a1['r'-'a'] = x;
+ a1['y'-'a'] = a1['n'-'a'] = y;
+ a1['z'-'a'] = a1['t'-'a'] = t;
+ return CalcIn(a1);
+}
+//-----------------------------------------------------------------------------
+// evaluate formula for arbitrary set of variables
+dual mglFormulaC::Calc(const dual var[MGL_VS]) const
+{
+ Error=0;
+ return CalcIn(var);
+}
+//-----------------------------------------------------------------------------
+dual addc(dual a,dual b) {return a+b;}
+dual subc(dual a,dual b) {return a-b;}
+dual mulc(dual a,dual b) {return a*b;}
+dual divc(dual a,dual b) {return a/b;}
+dual ipwc(dual a,dual b) {return mgl_ipowc(a,int(b.real()));}
+dual powc(dual a,dual b) {return exp(b*log(a)); }
+dual llgc(dual a,dual b) {return log(a)/log(b); }
+dual expi(dual a) { return exp(dual(0,1)*a); }
+dual expi(double a) { return dual(cos(a),sin(a)); }
+//-----------------------------------------------------------------------------
+dual ic = dual(0,1);
+dual asinhc(dual x) { return log(x+sqrt(x*x+1.)); }
+dual acoshc(dual x) { return log(x+sqrt(x*x-1.)); }
+dual atanhc(dual x) { return log((1.+x)/(1.-x))/2.; }
+dual sinc(dual x) { return sin(x); }
+dual cosc(dual x) { return cos(x); }
+dual tanc(dual x) { return tan(x); }
+dual sinhc(dual x) { return sinh(x); }
+dual coshc(dual x) { return cosh(x); }
+dual tanhc(dual x) { return tanh(x); }
+dual asinc(dual x) { return log(ic*x+sqrt(1.-x*x))/ic; }
+dual acosc(dual x) { return log(x+sqrt(x*x-1.))/ic; }
+dual atanc(dual x) { return log((ic-x)/(ic+x))/(2.*ic); }
+dual expc(dual x) { return exp(x); }
+dual sqrtc(dual x) { return sqrt(x); }
+dual logc(dual x) { return log(x); }
+dual absc(dual x) { return abs(x); }
+dual lgc(dual x) { return log10(x);}
+//-----------------------------------------------------------------------------
+typedef dual (*func_1)(dual);
+typedef dual (*func_2)(dual, dual);
+// evaluation of embedded (included) expressions
+dual mglFormulaC::CalcIn(const dual *a1) const
+{
+ func_2 f2[7] = {addc,subc,mulc,divc,ipwc,powc,llgc};
+ func_1 f1[18] = {sinc,cosc,tanc,asinc,acosc,atanc,sinhc,coshc,tanhc,
+ asinhc,acoshc,atanhc,sqrtc,expc,expi,logc,lgc,absc};
+// if(Error) return 0;
+ if(Kod==EQ_A) return a1[(int)Res.real()];
+ if(Kod==EQ_RND) return mgl_rnd();
+ if(Kod==EQ_NUM) return Res;
+
+ dual a = Left->CalcIn(a1);
+ if(isnan(a.real()) || isnan(a.imag())) return NAN;
+
+ if(Kod<EQ_SIN)
+ {
+ dual b = Right->CalcIn(a1);
+ if(isnan(b.real()) || isnan(b.imag())) return NAN;
+ return f2[Kod-EQ_ADD](a,b);
+ }
+ else return f1[Kod-EQ_SIN](a);
+ return Res;
+}
+//-----------------------------------------------------------------------------
+dual mgl_ipowc(dual x,int n)
+{
+ dual t;
+ if(n==2) return x*x;
+ if(n==1) return x;
+ if(n<0) return 1./mgl_ipowc(x,-n);
+ if(n==0) return 1.;
+ t = mgl_ipowc(x,n/2); t = t*t;
+ if(n%2==1) t *= x;
+ return t;
+}
+//-----------------------------------------------------------------------------
diff --git a/src/evalp.cpp b/src/evalp.cpp
index 14113cb..ce42592 100644
--- a/src/evalp.cpp
+++ b/src/evalp.cpp
@@ -194,7 +194,7 @@ mglData mglFormulaCalc(const wchar_t *string, mglParser *arg)
delete []str; return res;
}
n=mglFindInText(str,"+-"); // normal priority -- additions
- if(n>=0 && (n<2 || str[n-1]!='e' || str[n-2]<'0' || str[n-2]>'9'))
+ if(n>=0 && (n<2 || str[n-1]!='e' || (str[n-2]!='.' && !isdigit(str[n-2]))))
{
wcscpy(Buf,str); Buf[n]=0;
res = mglApplyOper(Buf,Buf+n+1,arg, str[n]=='+'?add:sub);
@@ -275,7 +275,7 @@ mglData mglFormulaCalc(const wchar_t *string, mglParser *arg)
else if(!wcscmp(str,L"pi")) res.a[0] = M_PI;
else if(!wcscmp(str,L"on")) res.a[0] = 1;
else if(!wcscmp(str,L"off")) res.a[0] = 0;
- else if(!wcscmp(str,L":")) res.a[0] = -1;
+ else if(!wcscmp(str,L":")) res.a[0] = -1;
else res.a[0] = wcstod(str,0); // this is number
delete []str; return res;
}
diff --git a/src/exec.cpp b/src/exec.cpp
index 6f8772d..c7ea4ca 100644
--- a/src/exec.cpp
+++ b/src/exec.cpp
@@ -17,6 +17,7 @@
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
+#include <stdio.h>
#include <wchar.h>
#ifdef WIN32
#include <io.h>
@@ -51,6 +52,17 @@ void mglc_addto(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
else if(k[0]==1 && k[1]==3) mglprintf(out,1024,L"%s += %g;",a[0].s.c_str(), a[1].v);
}
//-----------------------------------------------------------------------------
+int mgls_sort(mglGraph *, long , mglArg *a, int k[10], const char *)
+{
+ if(k[0]==1 && k[1]==3) a[0].d->Sort(a[1].v, k[2]==3?a[2].v:-1);
+ else return 1;
+ return 0;
+}
+void mglc_sort(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
+{
+ if(k[0]==1 && k[1]==3) mglprintf(out,1024,L"%s.Sort(%d,%d);",a[0].s.c_str(), a[1].v, k[2]==3?a[2].v:-1);
+}
+//-----------------------------------------------------------------------------
int mgls_alpha(mglGraph *gr, long , mglArg *a, int k[10], const char *)
{
gr->Alpha(k[0]==3 ? a[0].v!=0 : true); return 0;
@@ -127,7 +139,7 @@ void mglc_axial(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
int mgls_axis(mglGraph *gr, long , mglArg *a, int k[10], const char *)
{
if(k[0]==2 && k[1]==2) gr->SetFunc(a[0].s.c_str(),a[1].s.c_str(),k[2]==2?a[2].s.c_str():"",k[3]==2?a[3].s.c_str():"");
- else if(k[0]==2) gr->Axis(a[0].s.c_str(), k[1]==3 && a[1].v!=0);
+ else if(k[0]==2) gr->Axis(a[0].s.c_str(), k[1]==2?a[1].s.c_str():"");
else if(k[0]==3) gr->SetCoor(iint(a[0].v));
else if(k[0]==0) gr->Axis("xyz");
else return 1;
@@ -137,7 +149,7 @@ void mglc_axis(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
{
if(k[0]==2 && k[1]==2 && k[2]==2)
mglprintf(out,1024,L"gr->SetFunc(\"%s\", \"%s\", \"%s\", \"%s\");", a[0].s.c_str(),a[1].s.c_str(),a[2].s.c_str(),k[2]==2?a[2].s.c_str():"",k[3]==2?a[3].s.c_str():"");
- else if(k[0]==2) mglprintf(out,1024,L"gr->Axis(\"%s\");", a[0].s.c_str());
+ else if(k[0]==2) mglprintf(out,1024,L"gr->Axis(\"%s\", \"%s\");", a[0].s.c_str(), k[1]==2?a[1].s.c_str():"");
else if(k[0]==3) mglprintf(out,1024,L"gr->SetCoor(\"%d\");", iint(a[0].v));
else if(k[0]==0) mglprintf(out,1024,L"gr->Axis(\"xyz\");");
}
@@ -201,6 +213,25 @@ void mglc_barh(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
mglprintf(out,1024,L"gr->Barh(%s, %s, \"%s\", \"%s\");",a[0].s.c_str(), a[1].s.c_str(), k[2]==2?a[2].s.c_str():"",opt);
}
//-----------------------------------------------------------------------------
+int mgls_cones(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
+{
+ if(k[0]!=1) return 1;
+ else if(k[1]!=1) gr->Cones(*(a[0].d), k[1]==2?a[1].s.c_str():"",opt);
+ else if(k[2]!=1) gr->Cones(*(a[0].d), *(a[1].d), k[2]==2?a[2].s.c_str():"",opt);
+ else gr->Cones(*(a[0].d), *(a[1].d), *(a[2].d), k[3]==2?a[3].s.c_str():"",opt);
+ return 0;
+}
+void mglc_cones(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
+{
+ if(k[0]!=1) return;
+ else if(k[1]!=1)
+ mglprintf(out,1024,L"gr->Cones(%s, \"%s\", \"%s\");", a[0].s.c_str(), k[1]==2?a[1].s.c_str():"",opt);
+ else if(k[2]!=1)
+ mglprintf(out,1024,L"gr->Cones(%s, %s, \"%s\", \"%s\");",a[0].s.c_str(), a[1].s.c_str(), k[2]==2?a[2].s.c_str():"",opt);
+ else
+ mglprintf(out,1024,L"gr->Cones(%s, %s, %s, \"%s\", \"%s\");",a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), k[3]==2?a[3].s.c_str():"",opt);
+}
+//-----------------------------------------------------------------------------
int mgls_belt(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return 1;
@@ -385,20 +416,24 @@ void mglc_crust(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
//-----------------------------------------------------------------------------
int mgls_colorbar(mglGraph *gr, long , mglArg *a, int k[10], const char *)
{
- if(k[0]==2 && k[1]==3 && k[2]==3 && k[3]==3 && k[4]==3 && k[5]==3)
- gr->Colorbar(a[0].s.c_str(), iint(a[1].v), a[2].v, a[3].v, a[4].v, a[5].v);
- else if(k[0]==1) gr->Colorbar(*(a[0].d), k[1]==2 ? a[1].s.c_str():"", k[2]==3 ? iint(a[2].v):0);
- else gr->Colorbar(k[0]==2 ? a[0].s.c_str():"", k[1]==3 ? iint(a[1].v):0);
+ if(k[0]==1 && k[1]==2 && k[2]==3 && k[3]==3 && k[4]==3 && k[5]==3)
+ gr->Colorbar(*(a[0].d), a[1].s.c_str(), a[2].v, a[3].v, a[4].v, a[5].v);
+ else if(k[0]==2 && k[1]==3 && k[2]==3 && k[3]==3 && k[4]==3)
+ gr->Colorbar(a[0].s.c_str(), a[1].v, a[2].v, a[3].v, a[4].v);
+ else if(k[0]==1) gr->Colorbar(*(a[0].d), k[1]==2 ? a[1].s.c_str():"");
+ else gr->Colorbar(k[0]==2 ? a[0].s.c_str():"");
return 0;
}
void mglc_colorbar(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
{
- if(k[0]==2 && k[1]==3 && k[2]==3 && k[3]==3 && k[4]==3 && k[5]==3)
- mglprintf(out,1024,L"gr->Colorbar(\"%s\", %d, %g, %g, %g, %g);",a[0].s.c_str(), iint(a[1].v), a[2].v, a[3].v, a[4].v, a[5].v);
+ if(k[0]==1 && k[1]==2 && k[2]==3 && k[3]==3 && k[4]==3 && k[5]==3)
+ mglprintf(out,1024,L"gr->Colorbar(%s, \"%s\", %g, %g, %g, %g);",a[0].s.c_str(), a[1].s.c_str(), a[2].v, a[3].v, a[4].v, a[5].v);
+ else if(k[0]==2 && k[1]==3 && k[2]==3 && k[3]==3 && k[4]==3)
+ mglprintf(out,1024,L"gr->Colorbar(\"%s\", %g, %g, %g, %g);",a[0].s.c_str(), a[1].v, a[2].v, a[3].v, a[4].v);
else if(k[0]==1)
- mglprintf(out,1024,L"gr->Colorbar(%s, \"%s\", %d);",a[0].s.c_str(), k[1]==2 ? a[1].s.c_str():"", k[2]==3 ? iint(a[2].v):0);
+ mglprintf(out,1024,L"gr->Colorbar(%s, \"%s\");",a[0].s.c_str(), k[1]==2 ? a[1].s.c_str():"");
else
- mglprintf(out,1024,L"gr->Colorbar(\"%s\", %d);",k[0]==2 ? a[0].s.c_str():"", k[1]==3 ? iint(a[1].v):0);
+ mglprintf(out,1024,L"gr->Colorbar(\"%s\");",k[0]==2 ? a[0].s.c_str():"");
}
//-----------------------------------------------------------------------------
int mgls_copy(mglGraph *gr, long , mglArg *a, int k[10], const char *)
@@ -455,6 +490,32 @@ void mglc_cont(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
mglprintf(out,1024,L"gr->Cont(%s, %s, %s, %s, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), k[4]==2?a[4].s.c_str():"",opt);
}
//-----------------------------------------------------------------------------
+int mgls_contv(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
+{
+ if(k[0]!=1) return 1;
+ else if(k[1]!=1) gr->ContV(*(a[0].d),k[1]==2?a[1].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]!=1)
+ gr->ContV(*(a[0].d), *(a[1].d), k[2]==2?a[2].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]==1 && k[3]!=1)
+ gr->ContV(*(a[0].d), *(a[1].d), *(a[2].d), k[3]==2?a[3].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]!=1)
+ gr->ContV(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), k[4]==2?a[4].s.c_str():"",opt);
+ else return 1;
+ return 0;
+}
+void mglc_contv(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
+{
+ if(k[0]!=1) return;
+ else if(k[1]!=1)
+ mglprintf(out,1024,L"gr->ContV(%s, \"%s\", \"%s\");", a[0].s.c_str(), k[1]==2?a[1].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]!=1)
+ mglprintf(out,1024,L"gr->ContV(%s, %s, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), k[2]==2?a[2].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]==1 && k[3]!=1)
+ mglprintf(out,1024,L"gr->ContV(%s, %s, %s, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), k[3]==2?a[3].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]!=1)
+ mglprintf(out,1024,L"gr->ContV(%s, %s, %s, %s, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), k[4]==2?a[4].s.c_str():"",opt);
+}
+//-----------------------------------------------------------------------------
int mgls_contf(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return 1;
@@ -512,55 +573,49 @@ void mglc_contd(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
int mgls_cont3(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return 1;
- else if(k[1]==2)
- gr->Cont3(*(a[0].d), a[1].s.c_str()[0], k[2]==3?iint(a[2].v):-1, k[3]==2?a[3].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==2)
- gr->Cont3(*(a[0].d), *(a[1].d), a[2].s.c_str()[0], k[3]==3?iint(a[3].v):-1, k[4]==2?a[4].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==2)
- gr->Cont3(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), a[4].s.c_str()[0], k[5]==3?iint(a[5].v):-1, k[6]==2?a[6].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==1 && k[5]==2)
- gr->Cont3(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), *(a[4].d), a[5].s.c_str()[0], k[6]==3?iint(a[6].v):-1, k[7]==2?a[7].s.c_str():"",opt);
- else return 1;
+ else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==1)
+ gr->Cont3(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), *(a[4].d), k[5]==2?a[5].s.c_str():"", k[6]==3?iint(a[6].v):-1, opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1)
+ gr->Cont3(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), k[4]==2?a[4].s.c_str():"", k[5]==3?iint(a[5].v):-1, opt);
+ else if(k[1]==1)
+ gr->Cont3(*(a[0].d), *(a[1].d), k[2]==2?a[2].s.c_str():"", k[3]==3?iint(a[3].v):-1, opt);
+ else gr->Cont3(*(a[0].d), k[1]==2?a[1].s.c_str():"", k[2]==3?iint(a[2].v):-1, opt);
return 0;
}
void mglc_cont3(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return;
- else if(k[1]==2)
- mglprintf(out,1024,L"gr->Cont3(%s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str()[0], k[2]==3?iint(a[2].v):-1, k[3]==2?a[3].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==2)
- mglprintf(out,1024,L"gr->Cont3(%s, %s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str()[0], k[3]==3?iint(a[3].v):-1, k[4]==2?a[4].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==2)
- mglprintf(out,1024,L"gr->Cont3(%s, %s, %s, %s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), a[4].s.c_str()[0], k[5]==3?iint(a[5].v):-1, k[6]==2?a[6].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==1 && k[5]==2)
- mglprintf(out,1024,L"gr->Cont3(%s, %s, %s, %s, %s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), a[4].s.c_str(), a[5].s.c_str()[0], k[6]==3?iint(a[6].v):-1, k[7]==2?a[7].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==1)
+ mglprintf(out,1024,L"gr->Cont3(%s, %s, %s, %s, %s, \"%s\", %d, \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), a[4].s.c_str(), k[5]==2?a[5].s.c_str():"", k[6]==3?iint(a[6].v):-1, opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1)
+ mglprintf(out,1024,L"gr->Cont3(%s, %s, %s, %s, \"%s\", %d, \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), k[4]==2?a[4].s.c_str():"", k[5]==3?iint(a[5].v):-1, opt);
+ else if(k[1]==1)
+ mglprintf(out,1024,L"gr->Cont3(%s, %s, \"%s\", %d, \"%s\");", a[0].s.c_str(), a[1].s.c_str(), k[2]==2?a[2].s.c_str():"", k[3]==3?iint(a[3].v):-1, opt);
+ else mglprintf(out,1024,L"gr->Cont3(%s, \"%s\", %d, \"%s\");", a[0].s.c_str(), k[1]==2?a[1].s.c_str():"", k[2]==3?iint(a[2].v):-1, opt);
}
//-----------------------------------------------------------------------------
int mgls_contf3(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return 1;
- else if(k[1]==2)
- gr->ContF3(*(a[0].d), a[1].s.c_str()[0], k[2]==3?iint(a[2].v):-1, k[3]==2?a[3].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==2)
- gr->ContF3(*(a[0].d), *(a[1].d), a[2].s.c_str()[0], k[3]==3?iint(a[3].v):-1, k[4]==2?a[4].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==2)
- gr->ContF3(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), a[4].s.c_str()[0], k[5]==3?iint(a[5].v):-1, k[6]==2?a[6].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==1 && k[5]==2)
- gr->ContF3(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), *(a[4].d), a[5].s.c_str()[0], k[6]==3?iint(a[6].v):-1, k[7]==2?a[7].s.c_str():"",opt);
- else return 1;
+ else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==1)
+ gr->ContF3(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), *(a[4].d), k[5]==2?a[5].s.c_str():"", k[6]==3?iint(a[6].v):-1, opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1)
+ gr->ContF3(*(a[0].d), *(a[1].d), *(a[2].d), *(a[3].d), k[4]==2?a[4].s.c_str():"", k[5]==3?iint(a[5].v):-1, opt);
+ else if(k[1]==1)
+ gr->ContF3(*(a[0].d), *(a[1].d), k[2]==2?a[2].s.c_str():"", k[3]==3?iint(a[3].v):-1, opt);
+ else gr->ContF3(*(a[0].d), k[1]==2?a[1].s.c_str():"", k[2]==3?iint(a[2].v):-1, opt);
return 0;
}
void mglc_contf3(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return;
- else if(k[1]==2)
- mglprintf(out,1024,L"gr->ContF3(%s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str()[0], k[2]==3?iint(a[2].v):-1, k[3]==2?a[3].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==2)
- mglprintf(out,1024,L"gr->ContF3(%s, %s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str()[0], k[3]==3?iint(a[3].v):-1, k[4]==2?a[4].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==2)
- mglprintf(out,1024,L"gr->ContF3(%s, %s, %s, %s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), a[4].s.c_str()[0], k[5]==3?iint(a[5].v):-1, k[6]==2?a[6].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==1 && k[5]==2)
- mglprintf(out,1024,L"gr->ContF3(%s, %s, %s, %s, %s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), a[4].s.c_str(), a[5].s.c_str()[0], k[6]==3?iint(a[6].v):-1, k[7]==2?a[7].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==1)
+ mglprintf(out,1024,L"gr->ContF3(%s, %s, %s, %s, %s, \"%s\", %d, \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), a[4].s.c_str(), k[5]==2?a[5].s.c_str():"", k[6]==3?iint(a[6].v):-1, opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1)
+ mglprintf(out,1024,L"gr->ContF3(%s, %s, %s, %s, \"%s\", %d, \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), k[4]==2?a[4].s.c_str():"", k[5]==3?iint(a[5].v):-1, opt);
+ else if(k[1]==1)
+ mglprintf(out,1024,L"gr->ContF3(%s, %s, \"%s\", %d, \"%s\");", a[0].s.c_str(), a[1].s.c_str(), k[2]==2?a[2].s.c_str():"", k[3]==3?iint(a[3].v):-1, opt);
+ else mglprintf(out,1024,L"gr->ContF3(%s, \"%s\", %d, \"%s\");", a[0].s.c_str(), k[1]==2?a[1].s.c_str():"", k[2]==3?iint(a[2].v):-1, opt);
}
//-----------------------------------------------------------------------------
int mgls_contx(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
@@ -643,10 +698,10 @@ int mgls_cone(mglGraph *gr, long , mglArg *a, int [10], const char *)
{
if(a[7].type==2)
gr->Cone(mglPoint(a[0].v,a[1].v,a[2].v), mglPoint(a[3].v,a[4].v,a[5].v),
- a[6].v, a[7].v, (a[8].type==1) ? a[8].s.c_str() : 0, (a[9].type==2) ? a[9].v!=0 : false);
+ a[6].v, a[7].v, (a[8].type==1) ? a[8].s.c_str() : 0);
else
gr->Cone(mglPoint(a[0].v,a[1].v,a[2].v), mglPoint(a[3].v,a[4].v,a[5].v),
- a[6].v, -1, (a[7].type==1) ? a[7].s.c_str() : 0, (a[8].type==2) ? a[8].v!=0 : false);
+ a[6].v, -1, (a[7].type==1) ? a[7].s.c_str() : 0);
}
else return 1;
return 0;
@@ -658,9 +713,9 @@ void mglc_cone(wchar_t out[1024], long , mglArg *a, int [10], const char *)
if(ok)
{
if(a[7].type==2)
- mglprintf(out,1024,L"gr->Cone(mglPoint(%g, %g, %g), mglPoint(%g, %g, %g), %g, %g, \"%s\", %s);", a[0].v,a[1].v,a[2].v, a[3].v,a[4].v,a[5].v, a[6].v, a[7].v, (a[8].type==2) ? a[8].s.c_str() : "", (a[9].type==2 && a[9].v!=0) ? "true" : "false");
+ mglprintf(out,1024,L"gr->Cone(mglPoint(%g, %g, %g), mglPoint(%g, %g, %g), %g, %g, \"%s\");", a[0].v,a[1].v,a[2].v, a[3].v,a[4].v,a[5].v, a[6].v, a[7].v, (a[8].type==2) ? a[8].s.c_str() : "");
else
- mglprintf(out,1024,L"gr->Cone(mglPoint(%g, %g, %g), mglPoint(%g, %g, %g), %g, -1, \"%s\", %s);", a[0].v,a[1].v,a[2].v, a[3].v,a[4].v,a[5].v, a[6].v, (a[7].type==2) ? a[7].s.c_str() : "", (a[8].type==2 && a[8].v!=0)? "true" : "false");
+ mglprintf(out,1024,L"gr->Cone(mglPoint(%g, %g, %g), mglPoint(%g, %g, %g), %g, -1, \"%s\");", a[0].v,a[1].v,a[2].v, a[3].v,a[4].v,a[5].v, a[6].v, (a[7].type==2) ? a[7].s.c_str() : "");
}
}
//-----------------------------------------------------------------------------
@@ -756,21 +811,17 @@ void mglc_dens(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
int mgls_dens3(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return 1;
- else if(k[1]==2)
- gr->Dens3(*(a[0].d),a[1].s.c_str()[0],k[2]==3?iint(a[2].v):-1,k[3]==2?a[3].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==2)
- gr->Dens3(*(a[0].d),*(a[1].d),*(a[2].d),*(a[3].d),a[4].s.c_str()[0],
- k[5]==3?iint(a[5].v):-1, k[6]==2?a[6].s.c_str():"",opt);
- else return 1;
+ else if(k[1]==1 && k[2]==1 && k[3]==1)
+ gr->Dens3(*(a[0].d),*(a[1].d),*(a[2].d),*(a[3].d),k[4]==2?a[4].s.c_str():"", k[5]==3?iint(a[5].v):-1, opt);
+ else gr->Dens3(*(a[0].d),k[1]==2?a[1].s.c_str():"",k[2]==3?iint(a[2].v):-1,opt);
return 0;
}
void mglc_dens3(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return;
- else if(k[1]==2)
- mglprintf(out,1024,L"gr->Dens3(%s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str()[0], k[2]==3?iint(a[2].v):-1, k[3]==2?a[3].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==2)
- mglprintf(out,1024,L"gr->Dens3(%s, %s, %s, %s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), a[4].s.c_str()[0], k[5]==3?iint(a[5].v):-1, k[6]==2?a[6].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1)
+ mglprintf(out,1024,L"gr->Dens3(%s, %s, %s, %s, \"%s\", %d, \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), k[4]==2?a[4].s.c_str():"", k[5]==3?iint(a[5].v):-1, opt);
+ else mglprintf(out,1024,L"gr->Dens3(%s, \"%s\", %d, \"%s\");", a[0].s.c_str(), k[1]==2?a[1].s.c_str():"",k[2]==3?iint(a[2].v):-1,opt);
}
//-----------------------------------------------------------------------------
int mgls_densx(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
@@ -1196,21 +1247,17 @@ void mglc_grid2(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
int mgls_grid3(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return 1;
- else if(k[1]==2)
- gr->Grid3(*(a[0].d),a[1].s.c_str()[0],k[2]==3?iint(a[2].v):-1,k[3]==2?a[3].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==2)
- gr->Grid3(*(a[0].d),*(a[1].d),*(a[2].d),*(a[3].d),a[4].s.c_str()[0],
- k[5]==3?iint(a[5].v):-1, k[6]==2?a[6].s.c_str():"",opt);
- else return 1;
+ else if(k[1]==1 && k[2]==1 && k[3]==1)
+ gr->Grid3(*(a[0].d),*(a[1].d),*(a[2].d),*(a[3].d),k[4]==2?a[4].s.c_str():"", k[5]==3?iint(a[5].v):-1, opt);
+ else gr->Grid3(*(a[0].d),k[1]==2?a[1].s.c_str():"",k[2]==3?iint(a[2].v):-1,opt);
return 0;
}
void mglc_grid3(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return;
- else if(k[1]==2)
- mglprintf(out,1024,L"gr->Grid3(%s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str()[0], k[2]==3?iint(a[2].v):-1, k[3]==2?a[3].s.c_str():"",opt);
- else if(k[1]==1 && k[2]==1 && k[3]==1 && k[4]==2)
- mglprintf(out,1024,L"gr->Grid3(%s, %s, %s, %s, '%c', %d, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), a[4].s.c_str()[0], k[5]==3?iint(a[5].v):-1, k[6]==2?a[6].s.c_str():"",opt);
+ else if(k[1]==1 && k[2]==1 && k[3]==1)
+ mglprintf(out,1024,L"gr->Grid3(%s, %s, %s, %s, \"%s\", %d, \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str(), k[4]==2?a[4].s.c_str():"", k[5]==3?iint(a[5].v):-1, opt);
+ else mglprintf(out,1024,L"gr->Grid3(%s, \"%s\", %d, \"%s\");", a[0].s.c_str(), k[1]==2?a[1].s.c_str():"",k[2]==3?iint(a[2].v):-1,opt);
}
//-----------------------------------------------------------------------------
int mgls_light(mglGraph *gr, long , mglArg *a, int k[10], const char *)
@@ -1218,9 +1265,10 @@ int mgls_light(mglGraph *gr, long , mglArg *a, int k[10], const char *)
if(k[0]==0) gr->Light(true);
else if(k[0]!=3) return 1;
else if(k[1]!=3) gr->Light(a[0].v!=0);
+ else if(k[2]==3 && k[3]==3 && k[4]==3 && k[5]==3 && k[6]==3)
+ gr->AddLight(iint(a[0].v),mglPoint(a[1].v,a[2].v,a[3].v),mglPoint(a[4].v,a[5].v,a[6].v), k[7]==2?a[7].s.c_str()[0]:'w',k[8]==3?a[8].v:0.5,k[9]==3?a[9].v:0);
else if(k[2]==3 && k[3]==3)
- gr->AddLight(iint(a[0].v),mglPoint(a[1].v,a[2].v,a[3].v),
- k[4]==2?a[4].s.c_str()[0]:'w',k[5]==3?a[5].v:0.5,true,k[6]==3?a[6].v:0);
+ gr->AddLight(iint(a[0].v),mglPoint(a[1].v,a[2].v,a[3].v), k[4]==2?a[4].s.c_str()[0]:'w',k[5]==3?a[5].v:0.5,k[6]==3?a[6].v:0);
else gr->Light(iint(a[0].v),a[1].v!=0);
return 0;
}
@@ -1229,9 +1277,10 @@ void mglc_light(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
if(k[0]==0) mglprintf(out,1024,L"gr->Light(true);");
else if(k[0]!=3) return;
else if(k[1]!=3) mglprintf(out,1024,L"gr->Light(%s);", a[0].v!=0 ? "true":"false");
+ else if(k[2]==3 && k[3]==3 && k[4]==3 && k[5]==3 && k[6]==3)
+ mglprintf(out,1024,L"gr->AddLight(%d, mglPoint(%g, %g, %g), mglPoint(%g, %g, %g), '%c', %g, %g);", iint(a[0].v), a[1].v, a[2].v, a[3].v, a[4].v, a[5].v, a[6].v, k[7]==2?a[7].s.c_str()[0]:'w', k[8]==3?a[8].v:0.5, k[9]==3?a[9].v:0);
else if(k[2]==3 && k[3]==3)
- mglprintf(out,1024,L"gr->AddLight(%d, mglPoint(%g, %g, %g), '%c', %g, true, %g);",
- iint(a[0].v), a[1].v, a[2].v, a[3].v, k[4]==2?a[4].s.c_str()[0]:'w', k[5]==3?a[5].v:0.5, k[6]==3?a[6].v:0);
+ mglprintf(out,1024,L"gr->AddLight(%d, mglPoint(%g, %g, %g), '%c', %g, %g);", iint(a[0].v), a[1].v, a[2].v, a[3].v, k[4]==2?a[4].s.c_str()[0]:'w', k[5]==3?a[5].v:0.5, k[6]==3?a[6].v:0);
else mglprintf(out,1024,L"gr->Light(%d, %s);", iint(a[0].v), a[1].v!=0 ? "true":"false");
}
//-----------------------------------------------------------------------------
@@ -1613,6 +1662,28 @@ void mglc_rotatetext(wchar_t out[1024], long , mglArg *a, int k[10], const char
if(k[0]==3) mglprintf(out,1024,L"gr->SetRotatedText(%s);", (a[0].v!=0)?"true":"false");
}
//-----------------------------------------------------------------------------
+int mgls_tuneticks(mglGraph *gr, long , mglArg *a, int k[10], const char *)
+{
+ if(k[0]==3) gr->SetTuneTicks(a[0].v!=0,k[1]==3?a[1].v:1.15);
+ else return 1;
+ return 0;
+}
+void mglc_tuneticks(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
+{
+ if(k[0]==3) mglprintf(out,1024,L"gr->SetTuneTicks(%s, %g);", (a[0].v!=0)?"true":"false", k[1]==3?a[1].v:1.15);
+}
+//-----------------------------------------------------------------------------
+int mgls_ticktime(mglGraph *gr, long , mglArg *a, int k[10], const char *)
+{
+ if(k[0]==2) gr->SetTickTime(a[0].s[0],k[1]==3?a[1].v:0,k[2]==2?a[2].s.c_str():"");
+ else return 1;
+ return 0;
+}
+void mglc_ticktime(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
+{
+ if(k[0]==3) mglprintf(out,1024,L"gr->SetTickTime('%c', %g, \"%s\");", a[0].s[0],k[1]==3?a[1].v:0,k[2]==2?a[2].s.c_str():"");
+}
+//-----------------------------------------------------------------------------
int mgls_save(mglGraph *, long , mglArg *a, int k[10], const char *)
{
if(k[0]==1 && k[1]==2) a[0].d->Save(a[1].s.c_str());
@@ -1712,6 +1783,24 @@ void mglc_plot(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
else mglprintf(out,1024,L"gr->Plot(%s, %s, %s, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), k[3]==2?a[3].s.c_str():"",opt);
}
//-----------------------------------------------------------------------------
+int mgls_tape(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
+{
+ if(k[0]!=1) return 1;
+ else if(k[1]!=1) gr->Tape(*(a[0].d),k[1]==2?a[1].s.c_str():"",opt);
+ else if(k[2]!=1) gr->Tape(*(a[0].d),*(a[1].d),k[2]==2?a[2].s.c_str():"",opt);
+ else gr->Tape(*(a[0].d),*(a[1].d),*(a[2].d),k[3]==2?a[3].s.c_str():"",opt);
+ return 0;
+}
+void mglc_tape(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
+{
+ if(k[0]!=1) return;
+ else if(k[1]!=1)
+ mglprintf(out,1024,L"gr->Tape(%s, \"%s\", \"%s\");",a[0].s.c_str(), k[1]==2?a[1].s.c_str():"",opt);
+ else if(k[2]!=1)
+ mglprintf(out,1024,L"gr->Tape(%s, %s, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), k[2]==2?a[2].s.c_str():"",opt);
+ else mglprintf(out,1024,L"gr->Tape(%s, %s, %s, \"%s\", \"%s\");", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), k[3]==2?a[3].s.c_str():"",opt);
+}
+//-----------------------------------------------------------------------------
int mgls_boxplot(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
{
if(k[0]!=1) return 1;
@@ -2435,7 +2524,8 @@ void mglc_zrange(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
//-----------------------------------------------------------------------------
int mgls_xtick(mglGraph *gr, long n, mglArg *a, int k[10], const char *)
{
- if(k[0]==3 && k[1]==2)
+ if(k[0]==1 && k[1]==2) gr->SetTicksVal('x', *(a[0].d), a[1].w.c_str(), k[2]==3 && a[2].v);
+ else if(k[0]==3 && k[1]==2)
{
mreal v[50]; wchar_t *s=new wchar_t[50*256]; int i;
for(i=0;i<50 && i<n/2;i++)
@@ -2467,7 +2557,8 @@ void mglc_xtick(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
//-----------------------------------------------------------------------------
int mgls_ytick(mglGraph *gr, long n, mglArg *a, int k[10], const char *)
{
- if(k[0]==3 && k[1]==2)
+ if(k[0]==1 && k[1]==2) gr->SetTicksVal('x', *(a[0].d), a[1].w.c_str(), k[2]==3 && a[2].v);
+ else if(k[0]==3 && k[1]==2)
{
mreal v[50]; wchar_t *s=new wchar_t[50*256]; int i;
for(i=0;i<50 && i<n/2;i++)
@@ -2498,7 +2589,8 @@ void mglc_ytick(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
//-----------------------------------------------------------------------------
int mgls_ztick(mglGraph *gr, long n, mglArg *a, int k[10], const char *)
{
- if(k[0]==3 && k[1]==2)
+ if(k[0]==1 && k[1]==2) gr->SetTicksVal('x', *(a[0].d), a[1].w.c_str(), k[2]==3 && a[2].v);
+ else if(k[0]==3 && k[1]==2)
{
mreal v[50]; wchar_t *s=new wchar_t[50*256]; int i;
for(i=0;i<50 && i<n/2;i++)
@@ -2626,6 +2718,18 @@ void mglc_columnplot(wchar_t out[1024], long , mglArg *a, int k[10], const char
mglprintf(out,1024,L"gr->ColumnPlot(%d, %d, %g);", iint(a[0].v), iint(a[1].v), k[2]==3?a[2].v:0);
}
//-----------------------------------------------------------------------------
+int mgls_gridplot(mglGraph *gr, long , mglArg *a, int k[10], const char *)
+{
+ if(k[0]==3 && k[1]==3 && k[2]==3) gr->GridPlot(iint(a[0].v), iint(a[1].v), iint(a[2].v), k[3]==3?a[3].v:0);
+ else return 1;
+ return 0;
+}
+void mglc_gridplot(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
+{
+ if(k[0]==3 && k[1]==3)
+ mglprintf(out,1024,L"gr->GridPlot(%d, %d, %d, %g);", iint(a[0].v), iint(a[1].v), iint(a[2].v), k[3]==3?a[3].v:0);
+}
+//-----------------------------------------------------------------------------
int mgls_stickplot(mglGraph *gr, long , mglArg *a, int k[10], const char *)
{
if(k[0]==3 && k[1]==3 && k[2]==3 && k[3]==3)
@@ -2757,16 +2861,37 @@ int mgls_cosfft(mglGraph *, long , mglArg *a, int k[10], const char *)
void mglc_cosfft(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
{ if(k[0]==1 && k[1]==2) mglprintf(out,1024,L"%s.CosFFT('%s');", a[0].s.c_str(), a[1].s.c_str()); }
//-----------------------------------------------------------------------------
-int mgls_new(mglGraph *, long , mglArg *a, int k[10], const char *)
+int mgls_new(mglGraph *gr, long , mglArg *a, int k[10], const char *opt)
{
- if(k[0]==1) a[0].d->Create(k[1]==3?iint(a[1].v):1, k[2]==3?iint(a[2].v):1, k[3]==3?iint(a[3].v):1);
+ if(k[0]==1 && k[1]==3 && k[2]==3 && k[3]==3)
+ { a[0].d->Create(iint(a[1].v),iint(a[2].v),iint(a[3].v));
+ if(k[4]==2) a[0].d->Fill(gr->Self(),a[4].s.c_str(),opt); }
+ else if(k[0]==1 && k[1]==3 && k[2]==3)
+ { a[0].d->Create(iint(a[1].v),iint(a[2].v));
+ if(k[3]==2) a[0].d->Fill(gr->Self(),a[3].s.c_str(),opt); }
+ else if(k[0]==1 && k[1]==3)
+ { a[0].d->Create(iint(a[1].v));
+ if(k[2]==2) a[0].d->Fill(gr->Self(),a[2].s.c_str(),opt); }
else return 1;
return 0;
}
-void mglc_new(wchar_t out[1024], long , mglArg *a, int k[10], const char *)
+void mglc_new(wchar_t out[1024], long , mglArg *a, int k[10], const char *opt)
{
- if(k[0]==1)
- mglprintf(out,1024,L"%s.Create(%d, %d, %d);", a[0].s.c_str(), k[1]==3?iint(a[1].v):1, k[2]==3?iint(a[2].v):1, k[3]==3?iint(a[3].v):1);
+ if(k[0]==1 && k[1]==3 && k[2]==3 && k[3]==3)
+ {
+ mglprintf(out,1024,L"%s.Create(%d, %d, %d);", a[0].s.c_str(), iint(a[1].v),iint(a[2].v),iint(a[3].v));
+ if(k[4]==2) mglprintf(out,1024,L"%s.Fill(gr,\"%s\",\"%s\");",a[4].s.c_str(),opt);
+ }
+ else if(k[0]==1 && k[1]==3 && k[2]==3)
+ {
+ mglprintf(out,1024,L"%s.Create(%d, %d);", a[0].s.c_str(), iint(a[1].v),iint(a[2].v));
+ if(k[3]==2) mglprintf(out,1024,L"%s.Fill(gr,\"%s\",\"%s\");",a[3].s.c_str(),opt);
+ }
+ else if(k[0]==1 && k[1]==3)
+ {
+ mglprintf(out,1024,L"%s.Create(%d);", a[0].s.c_str(), iint(a[1].v));
+ if(k[2]==2) mglprintf(out,1024,L"%s.Fill(gr,\"%s\",\"%s\");",a[2].s.c_str(),opt);
+ }
}
//-----------------------------------------------------------------------------
int mgls_var(mglGraph *, long , mglArg *a, int k[10], const char *)
@@ -3037,14 +3162,15 @@ int mgls_fgets(mglGraph *gr, long , mglArg *a, int k[10], const char *)
fp = fopen(a[j+2].s.c_str(),"rt");
if(!fp)
{
- if(gr->Self()->Message) sprintf(gr->Self()->Message,"Wrong file %s",a[j+2].s.c_str());
+ gr->SetWarn(mglWarnOpen,a[j+2].s.c_str());
return 0;
}
for(i=0;i<n;i++) if(!fgets(buf,1024,fp)) continue;
memset(buf,0,1024);
if(!fgets(buf,1024,fp))
{
- if(gr->Self()->Message) sprintf(gr->Self()->Message,"Couldn't read %d-th string of file %s",n,a[j+2].s.c_str());
+ char b[32]; sprintf(b,"%d",n);
+ gr->SetWarn(mglWarnOpen,(a[j+2].s+" - line "+b).c_str());
fclose(fp); return 0;
}
fclose(fp);
@@ -3291,14 +3417,14 @@ int mgls_ranges(mglGraph *gr, long n, mglArg *a, int k[10], const char *)
if(ok) gr->SetRanges(a[0].v,a[1].v,a[2].v, a[3].v,a[4].v,a[5].v);
else return 1;
}
- else if(n==4)
- {
- if(k[0]==3 && k[1]==3 && k[2]==3 && k[3]==3) gr->SetRanges(a[0].v,a[1].v, a[2].v,a[3].v);
- if(k[0]==1 && k[1]==1 && k[2]==1 && k[3]==1) gr->SetRanges(*(a[0].d),*(a[1].d), *(a[2].d),*(a[3].d));
- else return 1;
- }
- else if(k[0]==1 && k[1]==1 && k[2]==1) gr->SetRanges(*(a[0].d),*(a[1].d), *(a[2].d));
- else if(k[0]==1 && k[1]==1) gr->SetRanges(*(a[0].d),*(a[1].d));
+ else if(k[0]==3 && k[1]==3 && k[2]==3 && k[3]==3)
+ gr->SetRanges(a[0].v,a[1].v, a[2].v,a[3].v);
+ else if(k[0]==1 && k[1]==1 && k[2]==1 && k[3]==1)
+ gr->SetRanges(*(a[0].d),*(a[1].d), *(a[2].d),*(a[3].d));
+ else if(k[0]==1 && k[1]==1 && k[2]==1)
+ gr->SetRanges(*(a[0].d),*(a[1].d), *(a[2].d));
+ else if(k[0]==1 && k[1]==1)
+ gr->SetRanges(*(a[0].d),*(a[1].d));
else return 1;
return 0;
}
@@ -3309,19 +3435,16 @@ void mglc_ranges(wchar_t out[1024], long n, mglArg *a, int k[10], const char *)
{
bool ok=true;
for(i=0;i<6;i++) if(k[i]!=3) ok = false;
- if(ok) mglprintf(out,1024,L"gr->SetRanges(%g, %g, %g, %g, %g, %g);", a[0].v,a[1].v,a[2].v,a[3].v,a[4].v,a[5].v);
- }
- else if(n==4)
- {
- if(k[0]==3 && k[1]==3 && k[2]==3 && k[3]==3)
- mglprintf(out,1024,L"gr->SetRanges(%g, %g, %g, %g);", a[0].v,a[1].v,a[2].v,a[3].v);
- if(k[0]==1 && k[1]==1 && k[2]==1 && k[3]==1)
- mglprintf(out,1024,L"gr->SetRanges(%s, %s, %s, %s);", a[0].s.c_str(),a[1].s.c_str(),a[2].s.c_str(),a[3].s.c_str());
+ if(ok) mglprintf(out,1024,L"gr->SetRanges(%g, %g, %g, %g, %g, %g);", a[0].v, a[1].v, a[2].v, a[3].v, a[4].v, a[5].v);
}
+ else if(k[0]==3 && k[1]==3 && k[2]==3 && k[3]==3)
+ mglprintf(out,1024,L"gr->SetRanges(%g, %g, %g, %g);", a[0].v, a[1].v, a[2].v, a[3].v);
+ else if(k[0]==1 && k[1]==1 && k[2]==1 && k[3]==1)
+ mglprintf(out,1024,L"gr->SetRanges(%s, %s, %s, %s);", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str(), a[3].s.c_str());
else if(k[0]==1 && k[1]==1 && k[2]==1)
- mglprintf(out,1024,L"gr->SetRanges(%s, %s, %s);", a[0].s.c_str(),a[1].s.c_str(),a[2].s.c_str());
+ mglprintf(out,1024,L"gr->SetRanges(%s, %s, %s);", a[0].s.c_str(), a[1].s.c_str(), a[2].s.c_str());
else if(k[0]==1 && k[1]==1)
- mglprintf(out,1024,L"gr->SetRanges(%s, %s);", a[0].s.c_str(),a[1].s.c_str());
+ mglprintf(out,1024,L"gr->SetRanges(%s, %s);", a[0].s.c_str(), a[1].s.c_str());
}
//-----------------------------------------------------------------------------
int mgls_adjust(mglGraph *gr, long , mglArg *a, int k[10], const char *)
@@ -3383,207 +3506,231 @@ void mglc_triangulate(wchar_t out[1024], long , mglArg *a, int k[10], const char
}
//-----------------------------------------------------------------------------
mglCommand mgls_base_cmd[] = {
- {L"addlegend",L"Add legend entry",L"addlegend 'txt' 'fmt'", mgls_addlegend, mglc_addlegend, false, 2},
- {L"addto",L"Add data or number",L"addto Var Dat|Var num", mgls_addto, mglc_addto, false, 3},
- {L"adjust",L"Adjust ticks for best view",L"adjust ['dir']", mgls_adjust, mglc_adjust, false, 2},
- {L"alpha",L"Switch on/off transparency",L"alpha [val]", mgls_alpha, mglc_alpha, false, 2},
- {L"alphadef",L"Set default transparency",L"alphadef val", mgls_alphadef, mglc_alphadef, false, 2},
- {L"ambient",L"Set ambient light brightness",L"ambient val", mgls_ambient, mglc_ambient, false, 2},
- {L"area",L"Draw area plot for 1D data",L"area Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_area, mglc_area, false, 0},
- {L"arrowsize",L"Set size of arrows",L"arrowsize val", mgls_arrowsize, mglc_arrowsize, false, 2},
- {L"aspect",L"Set aspect ration",L"aspect valx valy [valz]", mgls_aspect, mglc_aspect, false, 4},
- {L"axial",L"Draw surfaces of contour lines rotation",L"axial Zdat ['fmt' num]|Xdat Ydat Zdat ['fmt' num]", mgls_axial, mglc_axial, false, 0},
- {L"axis",L"Setup or draw axis",L"axis ['dir' adjust]|'fx' 'fy' ['fz' 'fc']|how", mgls_axis, mglc_axis, false, 1},
- {L"axisstl",L"Set axis and tick style",L"axisstl 'stl' ['sub']", mgls_axisstl, mglc_axisstl, false, 2},
- {L"ball",L"Draw point (ball)",L"ball posx posy ['fmt']|posx posy posz ['fmt']", mgls_ball, mglc_ball, false, 1},
- {L"barh",L"Draw horizontal bars for 1D data", L"barh Ydat ['fmt' above]|Xdat Ydat ['fmt' above]", mgls_barh, mglc_barh, false, 0},
- {L"bars",L"Draw bars for 1D data",L"bars Ydat ['fmt' above]|Xdat Ydat ['fmt' above]|Xdat Ydat Zdat ['fmt' above]", mgls_bars, mglc_bars, false, 0},
- {L"barwidth",L"Set default bars width",L"barwidth val", mgls_barwidth, mglc_barwidth, false, 2},
- {L"beam",L"Draw quasioptical beam",L"beam Tr G1 G2 Adat r ['sch' flag num] ", mgls_beam, mglc_beam, false, 0},
- {L"belt",L"Draw belts",L"belt Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_belt, mglc_belt, false, 0},
- {L"box",L"Draw bounding box",L"box ['fmt' ticks]", mgls_box, mglc_box, false, 1},
- {L"boxplot",L"Draw boxplot for 2D data",L"boxplot Ydat ['fmt']|Xdat Ydat ['fmt']", mgls_boxplot, mglc_boxplot, false, 0},
- {L"boxs",L"Draw boxes",L"boxs Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_boxs, mglc_boxs, false, 0},
- {L"candle",L"Draw candlestick chart",L"candle candle Vdat1 ['fmt']|Vdat1 Vdat2 ['fmt']|Vdat1 Ydat1 Ydat2 ['fmt']||Vdat1 Vdat2 Ydat1 Ydat2 ['fmt']|Xdat Vdat1 Vdat2 Ydat1 Ydat2 ['fmt']", mgls_candle, mglc_candle, false, 0},
- {L"chart",L"Draw chart",L"chart Dat ['fmt']", mgls_chart, mglc_chart, false, 0},
- {L"chdir",L"Change current directory",L"chdir 'dir'", mgls_chdir, mglc_chdir, false, 5},
- {L"clearlegend",L"Clear legend antries",L"clearlegend", mgls_clearlegend, mglc_clearlegend, false, 2},
- {L"clf",L"Clear picture",L"clf", mgls_clf, mglc_clf, false, 5},
- {L"cloud",L"Draw cloud",L"cloud Adat ['fmt']|Xdat Ydat Zdat Adat ['fmt']", mgls_cloud, mglc_cloud, false, 0},
- {L"colorbar",L"Draw colorbar",L"colorbar ['fmt' pos]|Vdat ['fmt' pos]|'sch' pos x y w h ", mgls_colorbar, mglc_colorbar, false, 1},
- {L"column",L"Get data column filled by formula on column ids",L"column Res Dat 'eq'", mgls_column, mglc_column, true, 3},
- {L"columnplot",L"Set position of plot inside cell of column", L"columnplot num ind [d]", mgls_columnplot, mglc_columnplot, false, 4},
- {L"combine", L"Direct multiplication of arrays", L"combine Res Adat Bdat", mgls_combine, mglc_combine, false, 3},
- {L"cone",L"Draw cone",L"cone x1 y1 z1 x2 y2 z2 r1 [r2 'fmt' edge]", mgls_cone, mglc_cone, false, 1},
- {L"cont",L"Draw contour lines",L"cont Zdat ['fmt' num zpos]|Vdat Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' num zpos]|Vdat Xdat Ydat Zdat ['fmt' zpos]", mgls_cont, mglc_cont, false, 0},
- {L"cont3",L"Draw contour lines for 3D data",L"cont3 Adat 'dir' [val 'fmt' num]|Vdat Adat 'dir' [val 'fmt']|Xdat Ydat Zdat Adat 'dir' [val 'fmt' num]|Vdat Xdat Ydat Zdar Adat 'dir' [val 'fmt']", mgls_cont3, mglc_cont3, false, 0},
- {L"contd",L"Draw solid contours with manual colors",L"contd Zdat ['fmt' num zpos]|Vdat Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' num zpos]|Vdat Xdat Ydat Zdat ['fmt' zpos]", mgls_contd, mglc_contd, false, 0},
- {L"contf",L"Draw solid contours",L"contf Zdat ['fmt' num zpos]|Vdat Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' num zpos]|Vdat Xdat Ydat Zdat ['fmt' zpos]", mgls_contf, mglc_contf, false, 0},
- {L"contf3",L"Draw solid contour lines for 3D data",L"contf3 Adat 'dir' [val 'fmt' num]|Vdat Adat 'dir' [val 'fmt']|Xdat Ydat Zdat Adat 'dir' [val 'fmt' num]|Vdat Xdat Ydat Zdar Adat 'dir' [val 'fmt']", mgls_contf3, mglc_contf3, false, 0},
- {L"contfx",L"Draw solid contour lines at x-slice (or x-plane)",L"contfx Dat ['fmt' pos num]", mgls_contfx, mglc_contfx, false, 0},
- {L"contfy",L"Draw solid contour lines at y-slice (or y-plane)",L"contfy Dat ['fmt' pos num]", mgls_contfy, mglc_contfy, false, 0},
- {L"contfz",L"Draw solid contour lines at z-slice (or z-plane)",L"contfz Dat ['fmt' pos num]", mgls_contfz, mglc_contfz, false, 0},
- {L"contx",L"Draw contour lines at x-slice (or x-plane)",L"contx Dat ['fmt' pos num]", mgls_contx, mglc_contx, false, 0},
- {L"conty",L"Draw contour lines at y-slice (or y-plane)",L"conty Dat ['fmt' pos num]", mgls_conty, mglc_conty, false, 0},
- {L"contz",L"Draw contour lines at z-slice (or z-plane)",L"contz Dat ['fmt' pos num]", mgls_contz, mglc_contz, false, 0},
- {L"copy",L"Copy data from another variable",L"copy Dat1 Dat2 ['eq' onaxis]", mgls_copy, mglc_copy, true, 3},
- {L"cosfft",L"Cos-Fourier transform at some direction",L"cosfft Dat 'dir'", mgls_cosfft, mglc_cosfft, false, 3},
- {L"crange",L"Set color range",L"crange Dat [sym] | c1 c2", mgls_crange, mglc_crange, false, 2},
- {L"crop",L"Crop edge of data",L"crop Dat n1 n2 'dir'", mgls_crop, mglc_crop, false, 3},
- {L"crust",L"Draw reconstructed surface for arbitrary data points",L"crust Xdat Ydat Zdat ['fmt']", mgls_crust, mglc_crust, false, 0},
- {L"ctick",L"Set ticks for colorbar",L"ctick 'tmpl' | dx", mgls_ctick, mglc_ctick, false, 2},
- {L"cumsum",L"Cumulative summation",L"cumsum Dat 'dir'", mgls_cumsum, mglc_cumsum, false, 3},
- {L"curve",L"Draw curve",L"curve x1 y1 dx1 dy1 x2 y2 dx2 dy2 ['fmt']|x1 y1 z1 dx1 dy1 dz1 x2 y2 z2 dx2 dy2 dz2 ['fmt']", mgls_curve, mglc_curve, false, 1},
- {L"cut",L"Setup plot points cutting",L"cut val|x1 y1 z1 x2 y2 z2|'cond'", mgls_cut, mglc_cut, false, 2},
- {L"datas",L"Print list of data names in HDF file",L"datas 'fname'", mgls_datas, mglc_datas, false, 3},
- {L"delete",L"Delete slice of data",L"delete Dat 'dir' [pos=0 num=1]", mgls_delete, mglc_delete, false, 3},
- {L"dens",L"Draw density plot",L"dens Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' zpos]", mgls_dens, mglc_dens, false, 0},
- {L"dens3",L"Draw density plot at slices of 3D data",L"dens3 Adat 'dir' [pos 'fmt']|Xdat Ydat Zdat Adat 'dir' [pos 'fmt']", mgls_dens3, mglc_dens3, false, 0},
- {L"densx",L"Draw density plot at x-slice (or x-plane)",L"densx Dat ['fmt' pos]", mgls_densx, mglc_densx, false, 0},
- {L"densy",L"Draw density plot at y-slice (or y-plane)",L"densy Dat ['fmt' pos]", mgls_densy, mglc_densy, false, 0},
- {L"densz",L"Draw density plot at z-slice (or z-plane)",L"densz Dat ['fmt' pos]", mgls_densz, mglc_densz, false, 0},
- {L"dew",L"Draw dew plot",L"dew Udat Vdat ['fmt']|Xdat Ydat Udat Vdat ['fmt']", mgls_dew, mglc_dew, false, 0},
- {L"diff",L"Numerically differentiate data",L"diff Var 'dir'", mgls_diff, mglc_diff, false, 3},
- {L"diff2",L"Numerically double differentiate data",L"diff2 Var 'dir'", mgls_diff2, mglc_diff2, false, 3},
- {L"divto",L"Divide by data or number",L"divto Var Dat|Var num", mgls_divto, mglc_divto, false, 3},
- {L"dots",L"Draw dots for arbitrary data points",L"dots Xdat Ydat Zdat ['fmt']", mgls_dots, mglc_dots, false, 0},
- {L"drop",L"Draw drop",L"drop x0 y0 dx dy r ['col' sh asp]|x0 y0 z0 dx dy dz r ['col' sh asp]", mgls_drop, mglc_drop, false, 0},
- {L"envelop",L"Find envelop for the data",L"envelop Dat ['dir']", mgls_envelop, mglc_envelop, false, 3},
- {L"error",L"Draw error boxes",L"error Ydat Yerr ['fmt']|Xdat Ydat Yerr ['fmt']|Xdat Ydat Xerr Yerr ['fmt']", mgls_error, mglc_error, false, 0},
- {L"evaluate",L"Evaluate (interpolate) values of array Dat at points i=idat,j=jdat,k=kdat",L"evaluate Res Dat Idat [norm]|Res Dat Idat Jdat [norm]|Res Dat Idat Jdat Kdat [norm]", mgls_evaluate, mglc_evaluate, true, 3},
- {L"export",L"Export data to PNG picture",L"export Dat 'fname' 'sch' [v1 v2]", mgls_import, mglc_import, false, 3},
- {L"extend",L"Extend data array",L"extend Dat dim1 [dim2]", mgls_extend, mglc_extend, false, 3},
- {L"facex",L"Draw face perpendicular to x-axis",L"facex x0 y0 z0 wy wz ['fmt' d1 d2]", mgls_facex, mglc_facex, false, 1},
- {L"facey",L"Draw face perpendicular to y-axis",L"facex x0 y0 z0 wx wz ['fmt' d1 d2]", mgls_facey, mglc_facey, false, 1},
- {L"facez",L"Draw face perpendicular to z-axis",L"facex x0 y0 z0 wy wz ['fmt' d1 d2]", mgls_facez, mglc_facez, false, 1},
- {L"fall",L"Draw waterfalls",L"fall Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_fall, mglc_fall, false, 0},
- {L"fgets",L"Print string from file",L"fgets x y z 'fname' [pos=0 'fmt' size]|x y z 'fname' [pos=0 'fmt' size]", mgls_fgets, mglc_fgets, false, 1},
- {L"fill",L"Fill data linearly in range [v1, v2]",L"fill Var v1 v2 ['dir'] | Var 'eq' [Vdat Wdat]", mgls_fill, mglc_fill, false, 3},
- {L"fillsample",L"Fill x-,k-samples for transforms",L"fillsample Var num 'how'", mgls_fillsample, mglc_fillsample, false, 3},
- {L"fit",L"Fit data to formula",L"fit Res A 'eq' 'var' [Ini]|Res X A 'eq' 'var' [Ini]|Res X Y A 'eq' 'var' [Ini]|Res X Y Z A 'eq' 'var' [Ini]", mgls_fit, mglc_fit, true, 3},
- {L"fits",L"Fit data to formula",L"fits Res A S 'eq' 'var' [Ini]|Res X A S 'eq' 'var' [Ini]|Res X Y A S 'eq' 'var' [Ini]|Res X Y Z A S 'eq' 'var' [Ini]", mgls_fits, mglc_fits, true, 3},
- {L"flow",L"Draw flow threads for vector field",L"flow Udat Vdat ['fmt' num]|Xdat Ydat Udat Vdat ['fmt' num]|Udat Vdat Wdat ['fmt' num]|Xdat Ydat Zdat Udat Vdat ['fmt' num]|\
- x0 y0 Udat Vdat ['fmt']|x0 y0 Xdat Ydat Udat Vdat ['fmt']|x0 y0 z0 Udat Vdat Wdat ['fmt']|x0 y0 z0 Xdat Ydat Zdat Udat Vdat Wdat ['fmt']", mgls_flow, mglc_flow, false, 0},
- {L"fog",L"Switch on/off fog",L"fog val [pos]", mgls_fog, mglc_fog, false, 2},
- {L"font",L"Setup font",L"font 'fmt' [size]", mgls_font, mglc_font, false, 2},
- {L"fplot",L"Plot curve by formula",L"fplot 'y(x)' ['fmt' num]|'x(t)' 'y(t)' 'z(t)' ['fmt' num]", mgls_fplot, mglc_fplot, false, 1},
- {L"fsurf",L"Plot surface by formula",L"fsurf 'z(x,y)' ['fmt' num]|'x(u,v)' 'y(u,v)' 'z(u,v)' ['fmt' num]", mgls_fsurf, mglc_fsurf, false, 1},
- {L"grad",L"Draw gradient lines for scalar field",L"grad Phi ['fmt' num]|Xdat Ydat Phi ['fmt' num]|Xdat Ydat Zdat Phi ['fmt' num]", mgls_grad, mglc_grad, false, 0},
- {L"grid",L"Draw grid",L"grid ['dir' 'fmt']", mgls_grid, mglc_grid, false, 0},
- {L"grid2",L"Draw grid for data array(s)",L"grid Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_grid2, mglc_grid2, false, 0},
- {L"grid3",L"Draw grid at slices of 3D data",L"grid3 Adat 'dir' [pos 'fmt']|Xdat Ydat Zdat Adat 'dir' [pos 'fmt']", mgls_grid3, mglc_grid3, false, 0},
- {L"hankel",L"Hankel transform at some direction",L"hankel Dat 'dir'", mgls_hankel, mglc_hankel, false, 3},
- {L"hist",L"Create histogram (distribution) of data values",L"hist Res Dat num v1 v2 [nsub]|Res Dat Wdat num v1 v2 [nsub]", mgls_hist, mglc_hist, true, 3},
- {L"idset",L"Set column id for data",L"idset Dat 'ids'", mgls_idset, mglc_idset, false, 3},
- {L"import",L"Import data from PNG picture",L"import Dat 'fname' 'scheme' [v1 v2]", mgls_import, mglc_import, true, 3},
- {L"info",L"Print information about data",L"info Dat [detail]|'message'", mgls_info, mglc_info, false, 3},
- {L"inplot",L"Set position of plot in picture",L"x1 x2 y1 y2 [rel]", mgls_inplot, mglc_inplot, false, 4},
- {L"insert",L"Insert slice of data",L"insert Dat 'dir' [pos=0 num=1]", mgls_insert, mglc_insert, false, 3},
- {L"integrate",L"Integrate data",L"integrate Dat 'dir'", mgls_integrate, mglc_integrate, false, 3},
- {L"jacobian",L"Get Jacobian",L"jacobian Res Xdat Ydat [Zdat]", mgls_jacobian, mglc_jacobian, true, 3},
- {L"label",L"Draw label at arbitrary position",L"label x y 'txt' ['fmt' size]", mgls_label, mglc_label, false, 1},
- {L"legend",L"Draw legend",L"legend [pos 'fmt' size llen]|x y ['fmt' size llen]", mgls_legend, mglc_legend, false, 1},
- {L"legendmarks",L"Set number of marks in the legend",L"legendmarks val", mgls_legendmarks, mglc_legendmarks, false, 2},
- {L"light",L"Setup light",L"light [val] | val num | num xpos ypos zpos ['fmt' br]", mgls_light, mglc_light, false, 2},
- {L"line",L"Draw line",L"line x1 y1 x2 y2 ['fmt']|x1 y1 z1 x2 y2 z2 ['fmt']", mgls_line, mglc_line, false, 1},
- {L"loadfont",L"Load fontfaces",L"loadfont ['fmt']", mgls_loadfont, mglc_loadfont, false, 2},
- {L"map",L"Draw mapping plot",L"map Udat Vdat ['fmt']|Xdat Ydat Udat Vdat ['fmt']", mgls_map, mglc_map, false, 0},
- {L"mark",L"Draw mark plot for 1D data",L"mark Ydat Rdat ['fmt']|Xdat Ydat Rdat ['fmt']|Xdat Ydat Zdat Rdat ['fmt']", mgls_mark, mglc_mark, false, 0},
- {L"marksize",L"Set size of markers",L"marksize val", mgls_marksize, mglc_marksize, false, 2},
- {L"max",L"Find maximal value over direction",L"max Res Dat 'dir'", mgls_max, mglc_max, true, 3},
- {L"mesh",L"Draw mesh surface",L"mesh Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_mesh, mglc_mesh, false, 0},
- {L"meshnum",L"Set number of lines in mesh/fall/vect and so on",L"meshnum val", mgls_meshnum, mglc_meshnum, false, 2},
- {L"min",L"Find minimal value over direction",L"min Res Dat 'dir'", mgls_min, mglc_min, true, 3},
- {L"mirror",L"Mirror data at some direction",L"mirror Dat 'dir'", mgls_mirror, mglc_mirror, false, 3},
- {L"modify",L"Modify data values by formula",L"modify Dat 'eq' [num] | Dat 'eq' Vdat [Wdat]", mgls_modify, mglc_modify, false, 3},
- {L"momentum",L"Get momentum along direction",L"momentum Res Dat 'how' ['dir']", mgls_momentum, mglc_momentum, true, 3},
- {L"multiplot",L"Set position of plot",L"multiplot m n pos dx dy 'style'", mgls_multiplot, mglc_multiplot, false, 4},
- {L"multo",L"Multiply by data or number",L"multo Var Dat|Var num", mgls_multo, mglc_multo, false, 3},
- {L"new",L"Create new data",L"new Dat nx [ny nz]", mgls_new, mglc_new, true, 3},
- {L"norm",L"Normalize data",L"norm Dat v1 v2 [sym dim]", mgls_norm, mglc_norm, false, 3},
- {L"normsl",L"Normalize data slice by slice",L"normsl Dat v1 v2 ['dir' keep sym] ", mgls_normsl, mglc_normsl, false, 3},
- {L"origin",L"Set axis origin",L"origin x0 y0 [z0]", mgls_origin, mglc_origin, false, 2},
- {L"palette",L"Set palette for 1D plots",L"palette 'colors'", mgls_palette, mglc_palette, false, 2},
- {L"pde",L"Solve PDE",L"pde Res 'ham' IniRe IniIm [dz k0]", mgls_pde, mglc_pde, true, 3},
- {L"perspective",L"Set perspective",L"perspective val", mgls_perspective, mglc_perspective, false, 2},
- {L"pipe",L"Draw flow pipes for vector field",L"pipe Udat Vdat ['fmt' rad num]|Xdat Ydat Udat Vdat ['fmt' rad num]|Udat Vdat Wdat ['fmt' rad num]|Xdat Ydat Zdat Udat Vdat Wdat ['fmt' rad num]", mgls_pipe, mglc_pipe, false, 0},
- {L"plot",L"Draw usual plot for 1D data",L"plot Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_plot, mglc_plot, false, 0},
- {L"put",L"Put value (numeric or array) to given data element",L"put Dat val [i j k] | Dat Val [i j k]", mgls_put, mglc_put, false, 3},
- {L"putsfit",L"Print fitted formula",L"putsfit x y ['pre' 'font' size]|x y z ['pre' 'font' size]", mgls_putsfit, mglc_putsfit, false, 0},
- {L"qo2d",L"Solve PDE in accompanied coordinates",L"qo2d Res 'ham' IniRe IniIm Ray [r k0 Xout Yout]", mgls_qo2d, mglc_qo2d, true, 3},
- {L"quadplot",L"Draw surface of quadrangles",L"quadplot Idat Xdat Ydat ['fmt']|Idat Xdat Ydat Zdat ['fmt']|Idat Xdat Ydat Zdat Cdat ['fmt'] ", mgls_quadplot, mglc_quadplot, false, 0},
- {L"quality",L"Set plot quality",L"quality val", mgls_quality, mglc_quality, false, 2},
- {L"radar",L"Draw radar chart",L"radar Rdat ['fmt']", mgls_radar, mglc_radar, false, 0},
- {L"ranges",L"Set axis ranges",L"ranges x1 x2 y1 y2 [z1 z2]", mgls_ranges, mglc_ranges, false, 2},
- {L"ray",L"Solve Hamiltonian ODE (find GO ray or trajectory)",L"ray Res 'ham' x0 y0 z0 px0 py0 pz0 [dz=0.1 tmax=10]", mgls_ray, mglc_ray, true, 3},
- {L"read",L"Read data from file",L"read Dat 'file' [nx ny nz]", mgls_read, mglc_read, true, 3},
- {L"readall",L"Read and join data from several files",L"readall Dat 'templ' [slice]", mgls_readall, mglc_readall, true, 3},
- {L"readhdf",L"Read data from HDF5 file",L"readhdf Dat 'file' 'id'", mgls_readhdf, mglc_readhdf, true, 3},
- {L"readmat",L"Read data from file with sizes specified in first row",L"readmat Dat 'file' [dim]", mgls_readmat, mglc_readmat, true, 3},
- {L"rearrange",L"Rearrange data dimensions",L"rearrange Dat mx [my mz]", mgls_rearrange, mglc_rearrange, false, 3},
- {L"rect",L"Draw rectangle",L"rect x1 y1 x2 y2 ['fmt']|x1 y1 z1 x2 y2 z2 ['fmt']", mgls_rect, mglc_rect, false, 1},
- {L"region",L"Draw filled region between 2 curves",L"region Ydat1 Ydat2 ['fmt' inside]|Xdat Ydat1 Ydat2 ['fmt' inside]", mgls_region, mglc_region, false, 0},
- {L"resize",L"Resize data",L"resize Res Dat mx [my mz]", mgls_resize, mglc_resize, true, 3},
- {L"roll",L"Roll data along direction",L"roll Dat 'dir' num", mgls_roll, mglc_roll, false, 0},
- {L"rotate",L"Rotate plot",L"rotate tetz tetx [tety] | tet x y z", mgls_rotate, mglc_rotate, false, 4},
- {L"rotatetext",L"Set to auto rotate text or not",L"rotatetext val", mgls_rotatetext, mglc_rotatetext, false, 2},
- {L"save",L"Save data to file",L"save Dat 'file'", mgls_save, mglc_save, false, 3},
- {L"savehdf",L"Save data to HDF5 file",L"savehdf Dat 'file' 'id'", mgls_savehdf, mglc_savehdf, false, 3},
- {L"setsize",L"Set picture size",L"setsize width height", mgls_setsize, mglc_setsize, false, 5},
- {L"sew",L"Remove jump into the data, like phase jumps",L"sew Dat ['dir' da]", mgls_sew, mglc_sew, false, 3},
- {L"sinfft",L"Sin-Fourier transform at some direction",L"sinfft Dat 'dir'", mgls_sinfft, mglc_sinfft, false, 3},
- {L"smooth",L"Smooth data",L"smooth Dat [kind 'dir']", mgls_smooth, mglc_smooth, false, 3},
- {L"sphere",L"Draw sphere",L"sphere x0 y0 r ['fmt']|x0 y0 z0 r ['fmt']", mgls_sphere, mglc_sphere, false, 1},
- {L"squeeze",L"Squeeze data",L"squeeze Dat kx [ky kz]", mgls_squeeze, mglc_squeeze, false, 3},
- {L"stem",L"Draw stem plot for 1D data",L"stem Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_stem, mglc_stem, false, 0},
- {L"step",L"Draw step plot for 1D data",L"step Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_step, mglc_step, false, 0},
- {L"stfa",L"Draw STFA diagram",L"stfa Udat Vdat dn ['fmt']|Xdat Ydat Udat Vdat dn ['fmt']", mgls_stfa, mglc_stfa, false, 0},
- {L"stfad",L"Do STFA transform",L"stfad Res Real Imag dn ['dir']", mgls_stfad, mglc_stfad, true, 3},
- {L"stickplot",L"Set position of plot inside cell of stick", L"stickplot num ind tet phi", mgls_stickplot, mglc_stickplot, false, 4},
- {L"subdata",L"Extract sub-array",L"subdata Res Dat nx [ny nz]", mgls_subdata, mglc_subdata, true, 3},
- {L"subplot",L"Set position of plot",L"subplot m n pos [dx dy]|m n pos 'style'", mgls_subplot, mglc_subplot, false, 4},
- {L"subto",L"Subtract data or number",L"subto Var Dat|Var num", mgls_subto, mglc_subto, false, 3},
- {L"sum",L"Find summation over direction",L"sum Res Dat 'dir'", mgls_sum, mglc_sum, true, 3},
- {L"surf",L"Draw solid surface",L"surf Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_surf, mglc_surf, false, 0},
- {L"surf3",L"Draw isosurface for 3D data",L"surf3 Adat ['fmt' num]|Xdat Ydat Zdat Adat ['fmt' num]|Adat val ['fmt']|Xdat Ydat Zdat Adat val ['fmt']", mgls_surf3, mglc_surf3, false, 0},
- {L"surf3a",L"Draw isosurface for 3D data transpared by other data",L"surf3a Adat Cdat ['fmt' num]|Xdat Ydat Zdat Adat Cdat ['fmt' num]|Adat Cdat val ['fmt']|Xdat Ydat Zdat Adat Cdat val ['fmt']", mgls_surf3a, mglc_surf3a, false, 0},
- {L"surf3c",L"Draw isosurface for 3D data colored by other data",L"surf3c Adat Cdat ['fmt' num]|Xdat Ydat Zdat Adat Cdat ['fmt' num]|Adat Cdat val ['fmt']|Xdat Ydat Zdat Adat Cdat val ['fmt']", mgls_surf3c, mglc_surf3c, false, 0},
- {L"surfa",L"Draw solid surface transpared by other data",L"surfa Zdat Cdat ['fmt']|Xdat Ydat Zdat Cdat ['fmt']", mgls_surfa, mglc_surfa, false, 0},
- {L"surfc",L"Draw solid surface colored by other data",L"surfc Zdat Cdat ['fmt']|Xdat Ydat Zdat Cdat ['fmt']", mgls_surfc, mglc_surfc, false, 0},
- {L"swap",L"Swap data (usefull after Fourier transform)",L"swap Dat 'dir'", mgls_swap, mglc_swap, false, 0},
- {L"tens",L"Draw tension plot for 1D data",L"tens Ydat Cdat ['fmt']|Xdat Ydat Cdat ['fmt']|Xdat Ydat Zdat Cdat ['fmt']", mgls_tens, mglc_tens, false, 0},
- {L"ternary",L"Switch on/off to use ternary axis",L"ternary val", mgls_ternary, mglc_ternary, false, 2},
- {L"text",L"Draw text at some position or along curve",L"text x y 'txt' ['fmt' size]|x y z 'txt' ['fmt' size]|x y dx dy 'txt' ['fmt' size]|x y z dx dy dz 'txt' ['fmt' size]|Ydat 'txt' ['font' sise]|Xdat Ydat 'txt' ['font' sise]", mgls_text, mglc_text, false, 0},
- {L"textmark",L"Draw TeX mark at point position",L"textmark Ydat Rdat 'text' ['fmt']|Xdat Ydat Rdat 'text' ['fmt']|Xdat Ydat Zdat Rdat 'text' ['fmt']", mgls_textmark, mglc_textmark, false, 0},
- {L"ticklen",L"Set tick length",L"ticklen val [stt]", mgls_ticklen, mglc_ticklen, false, 2},
- {L"tile",L"Draw horizontal tiles",L"tile Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_tile, mglc_tile, false, 0},
- {L"tiles",L"Draw horizontal tiles with variable size",L"tiles Zdat Rdat ['fmt']|Xdat Ydat Zdat Rdat ['fmt']", mgls_tiles, mglc_tiles, false, 0},
- {L"title",L"Add title for current subplot/inplot",L"title 'txt' ['fmt' size]", mgls_title, mglc_title, false, 0},
- {L"tlabel",L"Draw label for t-axis",L"tlabel 'txt' [pos size shift]", mgls_tlabel, mglc_tlabel, false, 1},
- {L"torus",L"Draw surface of curve rotation",L"torus Rdat ['fmt']|Zdat Rdat ['fmt']", mgls_torus, mglc_torus, false, 0},
- {L"trace",L"Get trace of array",L"trace Res Dat", mgls_trace, mglc_trace, true, 3},
- {L"traj",L"Draw vectors along a curve",L"traj Xdat Ydat Udat Vdat ['fmt' len]|Xdat Ydat Zdat Udat Vdat Wdat ['fmt' len]", mgls_traj, mglc_traj, false, 0},
- {L"transform",L"Do integral transform of data",L"transform Res 'how' Rdat Idat", mgls_transform, mglc_transform, true, 3},
- {L"transforma",L"Do integral transform of data",L"transforma Res 'how' Adat Pdat", mgls_transforma, mglc_transforma, true, 3},
- {L"transpose",L"Transpose data array",L"transpose Dat ['dir']", mgls_transpose, mglc_transpose, false, 3},
- {L"transptype",L"Set type transparency",L"transptype val", mgls_transptype, mglc_transptype, false, 2},
- {L"triangulate",L"Find triangles of randomly placed points",L"triangulate Res Xdat Ydat [er]|Res Xdat Ydat Zdat [er]", mgls_triangulate, mglc_triangulate, true, 3},
- {L"tricont",L"Draw contour lines for surface of triangles",L"tricont Vdat Idat Xdat Ydat ['fmt']|Vdat Idat Xdat Ydat Zdat ['fmt']|Vdat Idat Xdat Ydat Zdat Cdat ['fmt'] ", mgls_tricont, mglc_tricont, false, 0},
- {L"triplot",L"Draw surface of triangles",L"triplot Idat Xdat Ydat ['fmt']|Idat Xdat Ydat Zdat ['fmt']|Idat Xdat Ydat Zdat Cdat ['fmt'] ", mgls_triplot, mglc_triplot, false, 0},
- {L"tube",L"Draw curve by tube",L"tube Ydat Rdat ['fmt']|Ydat rval ['fmt']|Xdat Ydat Rdat ['fmt']|Xdat Ydat rval ['fmt']|Xdat Ydat Zdat Rdat ['fmt']|Xdat Ydat Zdat rval ['fmt']", mgls_tube, mglc_tube, false, 0},
- {L"var",L"Create new 1D data and fill it in range",L"var Dat nx x1 [x2]", mgls_var, mglc_var, true, 3},
- {L"vect",L"Draw vector field",L"vect Udat Vdat ['fmt' kind]|Xdat Ydat Udat Vdat ['fmt' kind]|Udat Vdat Wdat ['fmt' kind]|Xdat Ydat Zdat Udat Vdat Wdat ['fmt' kind]", mgls_vect, mglc_vect, false, 0},
- {L"write",L"Write current image to graphical file",L"write 'fname' [solid]", mgls_write, mglc_write, false, 5},
- {L"xlabel",L"Draw label for x-axis",L"xlabel 'txt' [pos size shift]", mgls_xlabel, mglc_xlabel, false, 1},
- {L"xrange",L"Set range for x-axis",L"xrange Dat [add] | x1 x2", mgls_xrange, mglc_xrange, false, 2},
- {L"xtick",L"Set ticks for x-axis",L"xtick dx [sx tx] | 'tmpl'", mgls_xtick, mglc_xtick, false, 2},
- {L"ylabel",L"Draw label for y-axis",L"ylabel 'txt' [pos size shift]", mgls_ylabel, mglc_ylabel, false, 1},
- {L"yrange",L"Set range for y-axis",L"yrange Dat [add] | y1 y2", mgls_yrange, mglc_yrange, false, 2},
- {L"ytick",L"Set ticks for y-axis",L"ytick dy [sy ty] | 'tmpl'", mgls_ytick, mglc_ytick, false, 2},
- {L"zlabel",L"Draw label for z-axis",L"zlabel 'txt' [pos size shift]", mgls_zlabel, mglc_zlabel, false, 1},
- {L"zrange",L"Set range for z-axis",L"yrange Dat [add] | z1 z2", mgls_zrange, mglc_zrange, false, 2},
- {L"ztick",L"Set ticks for z-axis",L"ztick dz [sz tz] | 'tmpl'", mgls_ztick, mglc_ztick, false, 2},
-{L"",L"",L"",NULL,NULL,0,0}};
+ {"addlegend","Add legend entry","addlegend 'txt' 'fmt'", mgls_addlegend, mglc_addlegend,2},
+ {"addto","Add data or number","addto Var Dat|Var num", mgls_addto, mglc_addto,3},
+ {"adjust","Adjust ticks for best view","adjust ['dir']", mgls_adjust, mglc_adjust,2},
+ {"alpha","Switch on/off transparency","alpha [val]", mgls_alpha, mglc_alpha,2},
+ {"alphadef","Set default transparency","alphadef val", mgls_alphadef, mglc_alphadef,2},
+ {"ambient","Set ambient light brightness","ambient val", mgls_ambient, mglc_ambient,2},
+ {"area","Draw area plot for 1D data","area Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_area, mglc_area,0},
+ {"arrowsize","Set size of arrows","arrowsize val", mgls_arrowsize, mglc_arrowsize,2},
+ {"aspect","Set aspect ration","aspect valx valy [valz]", mgls_aspect, mglc_aspect,5},
+ {"axial","Draw surfaces of contour lines rotation","axial Zdat ['fmt' num]|Xdat Ydat Zdat ['fmt' num]", mgls_axial, mglc_axial,0},
+ {"axis","Setup or draw axis","axis ['dir' adjust]|'fx' 'fy' ['fz' 'fc']|how", mgls_axis, mglc_axis,1},
+ {"axisstl","Set axis and tick style","axisstl 'stl' ['sub']", mgls_axisstl, mglc_axisstl,2},
+ {"ball","Draw point (ball)","ball posx posy ['fmt']|posx posy posz ['fmt']", mgls_ball, mglc_ball,1},
+ {"barh","Draw horizontal bars for 1D data", "barh Ydat ['fmt' above]|Xdat Ydat ['fmt' above]", mgls_barh, mglc_barh,0},
+ {"bars","Draw bars for 1D data","bars Ydat ['fmt' above]|Xdat Ydat ['fmt' above]|Xdat Ydat Zdat ['fmt' above]", mgls_bars, mglc_bars,0},
+ {"barwidth","Set default bars width","barwidth val", mgls_barwidth, mglc_barwidth,2},
+ {"beam","Draw quasioptical beam","beam Tr G1 G2 Adat r ['sch' flag num] ", mgls_beam, mglc_beam,0},
+ {"belt","Draw belts","belt Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_belt, mglc_belt,0},
+ {"box","Draw bounding box","box ['fmt' ticks]", mgls_box, mglc_box,1},
+ {"boxplot","Draw boxplot for 2D data","boxplot Ydat ['fmt']|Xdat Ydat ['fmt']", mgls_boxplot, mglc_boxplot,0},
+ {"boxs","Draw boxes","boxs Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_boxs, mglc_boxs,0},
+ {"break","Break for-cycle","break", 0, 0, 6},
+ {"call","Execute script in external file","call 'name' [args]", 0, 0, 6},
+ {"candle","Draw candlestick chart","candle candle Vdat1 ['fmt']|Vdat1 Vdat2 ['fmt']|Vdat1 Ydat1 Ydat2 ['fmt']||Vdat1 Vdat2 Ydat1 Ydat2 ['fmt']|Xdat Vdat1 Vdat2 Ydat1 Ydat2 ['fmt']", mgls_candle, mglc_candle,0},
+ {"chart","Draw chart","chart Dat ['fmt']", mgls_chart, mglc_chart,0},
+ {"chdir","Change current directory","chdir 'dir'", mgls_chdir, mglc_chdir,2},
+ {"clearlegend","Clear legend antries","clearlegend", mgls_clearlegend, mglc_clearlegend,2},
+ {"clf","Clear picture","clf", mgls_clf, mglc_clf,1},
+ {"cloud","Draw cloud","cloud Adat ['fmt']|Xdat Ydat Zdat Adat ['fmt']", mgls_cloud, mglc_cloud,0},
+ {"colorbar","Draw colorbar","colorbar ['fmt' pos]|Vdat ['fmt' pos]|'sch' pos x y w h|Vdat 'sch' pos x y w h", mgls_colorbar, mglc_colorbar,1},
+ {"column","Get data column filled by formula on column ids","column Res Dat 'eq'", mgls_column, mglc_column,4},
+ {"columnplot","Set position of plot inside cell of column", "columnplot num ind [d]", mgls_columnplot, mglc_columnplot,5},
+ {"combine", "Direct multiplication of arrays", "combine Res Adat Bdat", mgls_combine, mglc_combine,3},
+ {"cone","Draw cone","cone x1 y1 z1 x2 y2 z2 r1 [r2 'fmt' edge]", mgls_cone, mglc_cone,1},
+ {"cones","Draw cones for 1D data","cones Ydat ['fmt' above]|Xdat Ydat ['fmt' above]|Xdat Ydat Zdat ['fmt' above]", mgls_cones, mglc_cones,0},
+ {"cont","Draw contour lines","cont Zdat ['fmt' num zpos]|Vdat Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' num zpos]|Vdat Xdat Ydat Zdat ['fmt' zpos]", mgls_cont, mglc_cont,0},
+ {"cont3","Draw contour lines for 3D data","cont3 Adat 'dir' [val 'fmt' num]|Vdat Adat 'dir' [val 'fmt']|Xdat Ydat Zdat Adat 'dir' [val 'fmt' num]|Vdat Xdat Ydat Zdar Adat 'dir' [val 'fmt']", mgls_cont3, mglc_cont3,0},
+ {"contd","Draw solid contours with manual colors","contd Zdat ['fmt' num zpos]|Vdat Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' num zpos]|Vdat Xdat Ydat Zdat ['fmt' zpos]", mgls_contd, mglc_contd,0},
+ {"contf","Draw solid contours","contf Zdat ['fmt' num zpos]|Vdat Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' num zpos]|Vdat Xdat Ydat Zdat ['fmt' zpos]", mgls_contf, mglc_contf,0},
+ {"contf3","Draw solid contour lines for 3D data","contf3 Adat 'dir' [val 'fmt' num]|Vdat Adat 'dir' [val 'fmt']|Xdat Ydat Zdat Adat 'dir' [val 'fmt' num]|Vdat Xdat Ydat Zdar Adat 'dir' [val 'fmt']", mgls_contf3, mglc_contf3,0},
+ {"contfx","Draw solid contour lines at x-slice (or x-plane)","contfx Dat ['fmt' pos num]", mgls_contfx, mglc_contfx,0},
+ {"contfy","Draw solid contour lines at y-slice (or y-plane)","contfy Dat ['fmt' pos num]", mgls_contfy, mglc_contfy,0},
+ {"contfz","Draw solid contour lines at z-slice (or z-plane)","contfz Dat ['fmt' pos num]", mgls_contfz, mglc_contfz,0},
+ {"continue","Skip commands and iterate for-cycle again","continue", 0, 0, 6},
+ {"contv","Draw contour tubes","contv Zdat ['fmt' num zpos]|Vdat Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' num zpos]|Vdat Xdat Ydat Zdat ['fmt' zpos]", mgls_contv, mglc_contv,0},
+ {"contx","Draw contour lines at x-slice (or x-plane)","contx Dat ['fmt' pos num]", mgls_contx, mglc_contx,0},
+ {"conty","Draw contour lines at y-slice (or y-plane)","conty Dat ['fmt' pos num]", mgls_conty, mglc_conty,0},
+ {"contz","Draw contour lines at z-slice (or z-plane)","contz Dat ['fmt' pos num]", mgls_contz, mglc_contz,0},
+ {"copy","Copy data from another variable","copy Dat1 Dat2 ['eq' onaxis]", mgls_copy, mglc_copy,4},
+ {"cosfft","Cos-Fourier transform at some direction","cosfft Dat 'dir'", mgls_cosfft, mglc_cosfft,3},
+ {"crange","Set color range","crange Dat [sym] | c1 c2", mgls_crange, mglc_crange,2},
+ {"crop","Crop edge of data","crop Dat n1 n2 'dir'", mgls_crop, mglc_crop,3},
+ {"crust","Draw reconstructed surface for arbitrary data points","crust Xdat Ydat Zdat ['fmt']", mgls_crust, mglc_crust,0},
+ {"ctick","Set ticks for colorbar","ctick 'tmpl' | dx", mgls_ctick, mglc_ctick,2},
+ {"cumsum","Cumulative summation","cumsum Dat 'dir'", mgls_cumsum, mglc_cumsum,3},
+ {"curve","Draw curve","curve x1 y1 dx1 dy1 x2 y2 dx2 dy2 ['fmt']|x1 y1 z1 dx1 dy1 dz1 x2 y2 z2 dx2 dy2 dz2 ['fmt']", mgls_curve, mglc_curve,1},
+ {"cut","Setup plot points cutting","cut val|x1 y1 z1 x2 y2 z2|'cond'", mgls_cut, mglc_cut,2},
+ {"datas","Print list of data names in HDF file","datas 'fname'", mgls_datas, mglc_datas,3},
+ {"defchr","Define parameter as character","defchr $N val", 0, 0, 6},
+ {"define","Define constant or parameter","define $N sth | Var val", 0, 0, 6},
+ {"defnum","Define parameter as numerical value","defnum $N val", 0, 0, 6},
+ {"defpal","Define parameter as palette color","defpal $N val", 0, 0, 6},
+ {"delete","Delete slice of data","delete Dat 'dir' [pos=0 num=1]", mgls_delete, mglc_delete,3},
+ {"dens","Draw density plot","dens Zdat ['fmt' zpos]|Xdat Ydat Zdat ['fmt' zpos]", mgls_dens, mglc_dens,0},
+ {"dens3","Draw density plot at slices of 3D data","dens3 Adat 'dir' [pos 'fmt']|Xdat Ydat Zdat Adat 'dir' [pos 'fmt']", mgls_dens3, mglc_dens3,0},
+ {"densx","Draw density plot at x-slice (or x-plane)","densx Dat ['fmt' pos]", mgls_densx, mglc_densx,0},
+ {"densy","Draw density plot at y-slice (or y-plane)","densy Dat ['fmt' pos]", mgls_densy, mglc_densy,0},
+ {"densz","Draw density plot at z-slice (or z-plane)","densz Dat ['fmt' pos]", mgls_densz, mglc_densz,0},
+ {"dew","Draw dew plot","dew Udat Vdat ['fmt']|Xdat Ydat Udat Vdat ['fmt']", mgls_dew, mglc_dew,0},
+ {"diff","Numerically differentiate data","diff Var 'dir'", mgls_diff, mglc_diff,3},
+ {"diff2","Numerically double differentiate data","diff2 Var 'dir'", mgls_diff2, mglc_diff2,3},
+ {"divto","Divide by data or number","divto Var Dat|Var num", mgls_divto, mglc_divto,3},
+ {"dots","Draw dots for arbitrary data points","dots Xdat Ydat Zdat ['fmt']", mgls_dots, mglc_dots,0},
+ {"drop","Draw drop","drop x0 y0 dx dy r ['col' sh asp]|x0 y0 z0 dx dy dz r ['col' sh asp]", mgls_drop, mglc_drop,0},
+ {"else","Execute if condition is false","else", 0, 0, 6},
+ {"elseif","Conditional operator","elseif val|Dat ['cond']", 0, 0, 6},
+ {"endif","Finish if/else block","endif", 0, 0, 6},
+ {"envelop","Find envelop for the data","envelop Dat ['dir']", mgls_envelop, mglc_envelop,3},
+ {"error","Draw error boxes","error Ydat Yerr ['fmt']|Xdat Ydat Yerr ['fmt']|Xdat Ydat Xerr Yerr ['fmt']", mgls_error, mglc_error,0},
+ {"evaluate","Evaluate (interpolate) values of array Dat at points i=idat,j=jdat,k=kdat","evaluate Res Dat Idat [norm]|Res Dat Idat Jdat [norm]|Res Dat Idat Jdat Kdat [norm]", mgls_evaluate, mglc_evaluate,4},
+ {"export","Export data to PNG picture","export Dat 'fname' 'sch' [v1 v2]", mgls_import, mglc_import,3},
+ {"extend","Extend data array","extend Dat dim1 [dim2]", mgls_extend, mglc_extend,3},
+ {"facex","Draw face perpendicular to x-axis","facex x0 y0 z0 wy wz ['fmt' d1 d2]", mgls_facex, mglc_facex,1},
+ {"facey","Draw face perpendicular to y-axis","facex x0 y0 z0 wx wz ['fmt' d1 d2]", mgls_facey, mglc_facey,1},
+ {"facez","Draw face perpendicular to z-axis","facex x0 y0 z0 wy wz ['fmt' d1 d2]", mgls_facez, mglc_facez,1},
+ {"fall","Draw waterfalls","fall Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_fall, mglc_fall,0},
+ {"fgets","Print string from file","fgets x y z 'fname' [pos=0 'fmt' size]|x y z 'fname' [pos=0 'fmt' size]", mgls_fgets, mglc_fgets,1},
+ {"fill","Fill data linearly in range [v1, v2]","fill Var v1 v2 ['dir'] | Var 'eq' [Vdat Wdat]", mgls_fill, mglc_fill,3},
+ {"fillsample","Fill x-,k-samples for transforms","fillsample Var num 'how'", mgls_fillsample, mglc_fillsample,4},
+ {"fit","Fit data to formula","fit Res A 'eq' 'var' [Ini]|Res X A 'eq' 'var' [Ini]|Res X Y A 'eq' 'var' [Ini]|Res X Y Z A 'eq' 'var' [Ini]", mgls_fit, mglc_fit,4},
+ {"fits","Fit data to formula","fits Res A S 'eq' 'var' [Ini]|Res X A S 'eq' 'var' [Ini]|Res X Y A S 'eq' 'var' [Ini]|Res X Y Z A S 'eq' 'var' [Ini]", mgls_fits, mglc_fits,4},
+ {"flow","Draw flow threads for vector field","flow Udat Vdat ['fmt' num]|Xdat Ydat Udat Vdat ['fmt' num]|Udat Vdat Wdat ['fmt' num]|Xdat Ydat Zdat Udat Vdat ['fmt' num]|\
+ x0 y0 Udat Vdat ['fmt']|x0 y0 Xdat Ydat Udat Vdat ['fmt']|x0 y0 z0 Udat Vdat Wdat ['fmt']|x0 y0 z0 Xdat Ydat Zdat Udat Vdat Wdat ['fmt']", mgls_flow, mglc_flow,0},
+ {"fog","Switch on/off fog","fog val [pos]", mgls_fog, mglc_fog,2},
+ {"font","Setup font","font 'fmt' [size]", mgls_font, mglc_font,2},
+ {"for","For cycle","for $N v1 v2 [dv] | $N Dat", 0, 0, 6},
+ {"fplot","Plot curve by formula","fplot 'y(x)' ['fmt' num]|'x(t)' 'y(t)' 'z(t)' ['fmt' num]", mgls_fplot, mglc_fplot,1},
+ {"fsurf","Plot surface by formula","fsurf 'z(x,y)' ['fmt' num]|'x(u,v)' 'y(u,v)' 'z(u,v)' ['fmt' num]", mgls_fsurf, mglc_fsurf,1},
+ {"func","Start function definition and stop execution of main script","func 'name' [narg]", 0, 0, 6},
+ {"grad","Draw gradient lines for scalar field","grad Phi ['fmt' num]|Xdat Ydat Phi ['fmt' num]|Xdat Ydat Zdat Phi ['fmt' num]", mgls_grad, mglc_grad,0},
+ {"grid","Draw grid","grid ['dir' 'fmt']", mgls_grid, mglc_grid,0},
+ {"grid2","Draw grid for data array(s)","grid Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_grid2, mglc_grid2,0},
+ {"grid3","Draw grid at slices of 3D data","grid3 Adat 'dir' [pos 'fmt']|Xdat Ydat Zdat Adat 'dir' [pos 'fmt']", mgls_grid3, mglc_grid3,0},
+ {"gridplot","Set position of plot inside cell of matrix", "gridplot nx ny ind [d]", mgls_gridplot, mglc_gridplot,5},
+ {"hankel","Hankel transform at some direction","hankel Dat 'dir'", mgls_hankel, mglc_hankel,3},
+ {"hist","Create histogram (distribution) of data values","hist Res Dat num v1 v2 [nsub]|Res Dat Wdat num v1 v2 [nsub]", mgls_hist, mglc_hist,4},
+ {"idset","Set column id for data","idset Dat 'ids'", mgls_idset, mglc_idset,3},
+ {"if","Conditional operator","if val|Dat ['cond']", 0, 0, 6},
+ {"import","Import data from PNG picture","import Dat 'fname' 'scheme' [v1 v2]", mgls_import, mglc_import,4},
+ {"info","Print information about data","info Dat [detail]|'message'", mgls_info, mglc_info,3},
+ {"inplot","Set position of plot in picture","x1 x2 y1 y2 [rel]", mgls_inplot, mglc_inplot,5},
+ {"insert","Insert slice of data","insert Dat 'dir' [pos=0 num=1]", mgls_insert, mglc_insert,3},
+ {"integrate","Integrate data","integrate Dat 'dir'", mgls_integrate, mglc_integrate,3},
+ {"jacobian","Get Jacobian","jacobian Res Xdat Ydat [Zdat]", mgls_jacobian, mglc_jacobian,4},
+ {"label","Draw label at arbitrary position","label x y 'txt' ['fmt' size]", mgls_label, mglc_label,1},
+ {"legend","Draw legend","legend [pos 'fmt' size llen]|x y ['fmt' size llen]", mgls_legend, mglc_legend,1},
+ {"legendmarks","Set number of marks in the legend","legendmarks val", mgls_legendmarks, mglc_legendmarks,2},
+ {"light","Setup light","light [val] | val num | num xpos ypos zpos ['fmt' br]", mgls_light, mglc_light,2},
+ {"line","Draw line","line x1 y1 x2 y2 ['fmt']|x1 y1 z1 x2 y2 z2 ['fmt']", mgls_line, mglc_line,1},
+ {"loadfont","Load fontfaces","loadfont ['fmt']", mgls_loadfont, mglc_loadfont,2},
+ {"map","Draw mapping plot","map Udat Vdat ['fmt']|Xdat Ydat Udat Vdat ['fmt']", mgls_map, mglc_map,0},
+ {"mark","Draw mark plot for 1D data","mark Ydat Rdat ['fmt']|Xdat Ydat Rdat ['fmt']|Xdat Ydat Zdat Rdat ['fmt']", mgls_mark, mglc_mark,0},
+ {"marksize","Set size of markers","marksize val", mgls_marksize, mglc_marksize,2},
+ {"max","Find maximal value over direction","max Res Dat 'dir'", mgls_max, mglc_max,4},
+ {"mesh","Draw mesh surface","mesh Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_mesh, mglc_mesh,0},
+ {"meshnum","Set number of lines in mesh/fall/vect and so on","meshnum val", mgls_meshnum, mglc_meshnum,2},
+ {"min","Find minimal value over direction","min Res Dat 'dir'", mgls_min, mglc_min,4},
+ {"mirror","Mirror data at some direction","mirror Dat 'dir'", mgls_mirror, mglc_mirror,3},
+ {"modify","Modify data values by formula","modify Dat 'eq' [num] | Dat 'eq' Vdat [Wdat]", mgls_modify, mglc_modify,3},
+ {"momentum","Get momentum along direction","momentum Res Dat 'how' ['dir']", mgls_momentum, mglc_momentum,4},
+ {"multiplot","Set position of plot","multiplot m n pos dx dy 'style'", mgls_multiplot, mglc_multiplot,5},
+ {"multo","Multiply by data or number","multo Var Dat|Var num", mgls_multo, mglc_multo,3},
+ {"new","Create new data","new Dat nx ny nz ['eq']|new Dat nx ny ['eq']|new Dat nx ['eq']", mgls_new, mglc_new,4},
+ {"next","Start next for-cycle iteration","next", 0, 0, 6},
+ {"norm","Normalize data","norm Dat v1 v2 [sym dim]", mgls_norm, mglc_norm,3},
+ {"normsl","Normalize data slice by slice","normsl Dat v1 v2 ['dir' keep sym] ", mgls_normsl, mglc_normsl,3},
+ {"once","Start/close commands which should executed only once","once val", 0, 0, 6},
+ {"origin","Set axis origin","origin x0 y0 [z0]", mgls_origin, mglc_origin,2},
+ {"palette","Set palette for 1D plots","palette 'colors'", mgls_palette, mglc_palette,2},
+ {"pde","Solve PDE","pde Res 'ham' IniRe IniIm [dz k0]", mgls_pde, mglc_pde,4},
+ {"perspective","Set perspective","perspective val", mgls_perspective, mglc_perspective,2},
+ {"pipe","Draw flow pipes for vector field","pipe Udat Vdat ['fmt' rad num]|Xdat Ydat Udat Vdat ['fmt' rad num]|Udat Vdat Wdat ['fmt' rad num]|Xdat Ydat Zdat Udat Vdat Wdat ['fmt' rad num]", mgls_pipe, mglc_pipe,0},
+ {"plot","Draw usual plot for 1D data","plot Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_plot, mglc_plot,0},
+ {"put","Put value (numeric or array) to given data element","put Dat val [i j k] | Dat Val [i j k]", mgls_put, mglc_put,3},
+ {"putsfit","Print fitted formula","putsfit x y ['pre' 'font' size]|x y z ['pre' 'font' size]", mgls_putsfit, mglc_putsfit,0},
+ {"qo2d","Solve PDE in accompanied coordinates","qo2d Res 'ham' IniRe IniIm Ray [r k0 Xout Yout]", mgls_qo2d, mglc_qo2d,4},
+ {"quadplot","Draw surface of quadrangles","quadplot Idat Xdat Ydat ['fmt']|Idat Xdat Ydat Zdat ['fmt']|Idat Xdat Ydat Zdat Cdat ['fmt'] ", mgls_quadplot, mglc_quadplot,0},
+ {"quality","Set plot quality","quality val", mgls_quality, mglc_quality,2},
+ {"radar","Draw radar chart","radar Rdat ['fmt']", mgls_radar, mglc_radar,0},
+ {"ranges","Set axis ranges","ranges x1 x2 y1 y2 [z1 z2]", mgls_ranges, mglc_ranges,2},
+ {"ray","Solve Hamiltonian ODE (find GO ray or trajectory)","ray Res 'ham' x0 y0 z0 px0 py0 pz0 [dz=0.1 tmax=10]", mgls_ray, mglc_ray,4},
+ {"read","Read data from file","read Dat 'file' [nx ny nz]", mgls_read, mglc_read,4},
+ {"readall","Read and join data from several files","readall Dat 'templ' [slice]", mgls_readall, mglc_readall,4},
+ {"readhdf","Read data from HDF5 file","readhdf Dat 'file' 'id'", mgls_readhdf, mglc_readhdf,4},
+ {"readmat","Read data from file with sizes specified in first row","readmat Dat 'file' [dim]", mgls_readmat, mglc_readmat,4},
+ {"rearrange","Rearrange data dimensions","rearrange Dat mx [my mz]", mgls_rearrange, mglc_rearrange,3},
+ {"rect","Draw rectangle","rect x1 y1 x2 y2 ['fmt']|x1 y1 z1 x2 y2 z2 ['fmt']", mgls_rect, mglc_rect,1},
+ {"region","Draw filled region between 2 curves","region Ydat1 Ydat2 ['fmt' inside]|Xdat Ydat1 Ydat2 ['fmt' inside]", mgls_region, mglc_region,0},
+ {"resize","Resize data","resize Res Dat mx [my mz]", mgls_resize, mglc_resize,4},
+ {"return","Return from function","return", 0, 0, 6},
+ {"roll","Roll data along direction","roll Dat 'dir' num", mgls_roll, mglc_roll,0},
+ {"rotate","Rotate plot","rotate tetz tetx [tety] | tet x y z", mgls_rotate, mglc_rotate,5},
+ {"rotatetext","Set to auto rotate text or not","rotatetext val", mgls_rotatetext, mglc_rotatetext,2},
+ {"save","Save data to file","save Dat 'file'", mgls_save, mglc_save,3},
+ {"savehdf","Save data to HDF5 file","savehdf Dat 'file' 'id'", mgls_savehdf, mglc_savehdf,3},
+ {"setsize","Set picture size","setsize width height", mgls_setsize, mglc_setsize,2},
+ {"sew","Remove jump into the data, like phase jumps","sew Dat ['dir' da]", mgls_sew, mglc_sew,3},
+ {"sinfft","Sin-Fourier transform at some direction","sinfft Dat 'dir'", mgls_sinfft, mglc_sinfft,3},
+ {"smooth","Smooth data","smooth Dat [kind 'dir']", mgls_smooth, mglc_smooth,3},
+ {"sort","Sort data by values in column","sort Dat idx [idy]", mgls_sort, mglc_sort,3},
+ {"sphere","Draw sphere","sphere x0 y0 r ['fmt']|x0 y0 z0 r ['fmt']", mgls_sphere, mglc_sphere,1},
+ {"squeeze","Squeeze data","squeeze Dat kx [ky kz]", mgls_squeeze, mglc_squeeze,3},
+ {"stem","Draw stem plot for 1D data","stem Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_stem, mglc_stem,0},
+ {"step","Draw step plot for 1D data","step Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_step, mglc_step,0},
+ {"stfa","Draw STFA diagram","stfa Udat Vdat dn ['fmt']|Xdat Ydat Udat Vdat dn ['fmt']", mgls_stfa, mglc_stfa,0},
+ {"stfad","Do STFA transform","stfad Res Real Imag dn ['dir']", mgls_stfad, mglc_stfad,4},
+ {"stickplot","Set position of plot inside cell of stick", "stickplot num ind tet phi", mgls_stickplot, mglc_stickplot,5},
+ {"stop","Stop execution","stop", 0, 0, 6},
+ {"subdata","Extract sub-array","subdata Res Dat nx [ny nz]", mgls_subdata, mglc_subdata,4},
+ {"subplot","Set position of plot","subplot m n pos [dx dy]|m n pos 'style'", mgls_subplot, mglc_subplot,5},
+ {"subto","Subtract data or number","subto Var Dat|Var num", mgls_subto, mglc_subto,3},
+ {"sum","Find summation over direction","sum Res Dat 'dir'", mgls_sum, mglc_sum,4},
+ {"surf","Draw solid surface","surf Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_surf, mglc_surf,0},
+ {"surf3","Draw isosurface for 3D data","surf3 Adat ['fmt' num]|Xdat Ydat Zdat Adat ['fmt' num]|Adat val ['fmt']|Xdat Ydat Zdat Adat val ['fmt']", mgls_surf3, mglc_surf3,0},
+ {"surf3a","Draw isosurface for 3D data transpared by other data","surf3a Adat Cdat ['fmt' num]|Xdat Ydat Zdat Adat Cdat ['fmt' num]|Adat Cdat val ['fmt']|Xdat Ydat Zdat Adat Cdat val ['fmt']", mgls_surf3a, mglc_surf3a,0},
+ {"surf3c","Draw isosurface for 3D data colored by other data","surf3c Adat Cdat ['fmt' num]|Xdat Ydat Zdat Adat Cdat ['fmt' num]|Adat Cdat val ['fmt']|Xdat Ydat Zdat Adat Cdat val ['fmt']", mgls_surf3c, mglc_surf3c,0},
+ {"surfa","Draw solid surface transpared by other data","surfa Zdat Cdat ['fmt']|Xdat Ydat Zdat Cdat ['fmt']", mgls_surfa, mglc_surfa,0},
+ {"surfc","Draw solid surface colored by other data","surfc Zdat Cdat ['fmt']|Xdat Ydat Zdat Cdat ['fmt']", mgls_surfc, mglc_surfc,0},
+ {"swap","Swap data (usefull after Fourier transform)","swap Dat 'dir'", mgls_swap, mglc_swap,0},
+ {"tape","Draw binormales for 1D data","tape Ydat ['fmt']|Xdat Ydat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_tape, mglc_tape,0},
+ {"tens","Draw tension plot for 1D data","tens Ydat Cdat ['fmt']|Xdat Ydat Cdat ['fmt']|Xdat Ydat Zdat Cdat ['fmt']", mgls_tens, mglc_tens,0},
+ {"ternary","Switch on/off to use ternary axis","ternary val", mgls_ternary, mglc_ternary,2},
+ {"text","Draw text at some position or along curve","text x y 'txt' ['fmt' size]|x y z 'txt' ['fmt' size]|x y dx dy 'txt' ['fmt' size]|x y z dx dy dz 'txt' ['fmt' size]|Ydat 'txt' ['font' sise]|Xdat Ydat 'txt' ['font' sise]", mgls_text, mglc_text,0},
+ {"textmark","Draw TeX mark at point position","textmark Ydat Rdat 'text' ['fmt']|Xdat Ydat Rdat 'text' ['fmt']|Xdat Ydat Zdat Rdat 'text' ['fmt']", mgls_textmark, mglc_textmark,0},
+ {"ticklen","Set tick length","ticklen val [stt]", mgls_ticklen, mglc_ticklen,2},
+ {"ticktime","Set ticks in time format","timetick 'dir' [dv 'tmpl']", mgls_ticktime, mglc_ticktime,2},
+ {"tile","Draw horizontal tiles","tile Zdat ['fmt']|Xdat Ydat Zdat ['fmt']", mgls_tile, mglc_tile,0},
+ {"tiles","Draw horizontal tiles with variable size","tiles Zdat Rdat ['fmt']|Xdat Ydat Zdat Rdat ['fmt']", mgls_tiles, mglc_tiles,0},
+ {"title","Add title for current subplot/inplot","title 'txt' ['fmt' size]", mgls_title, mglc_title,0},
+ {"tlabel","Draw label for t-axis","tlabel 'txt' [pos size shift]", mgls_tlabel, mglc_tlabel,1},
+ {"torus","Draw surface of curve rotation","torus Rdat ['fmt']|Zdat Rdat ['fmt']", mgls_torus, mglc_torus,0},
+ {"trace","Get trace of array","trace Res Dat", mgls_trace, mglc_trace,4},
+ {"traj","Draw vectors along a curve","traj Xdat Ydat Udat Vdat ['fmt' len]|Xdat Ydat Zdat Udat Vdat Wdat ['fmt' len]", mgls_traj, mglc_traj,0},
+ {"transform","Do integral transform of data","transform Res 'how' Rdat Idat", mgls_transform, mglc_transform,4},
+ {"transforma","Do integral transform of data","transforma Res 'how' Adat Pdat", mgls_transforma, mglc_transforma,4},
+ {"transpose","Transpose data array","transpose Dat ['dir']", mgls_transpose, mglc_transpose,3},
+ {"transptype","Set type transparency","transptype val", mgls_transptype, mglc_transptype,2},
+ {"triangulate","Find triangles of randomly placed points","triangulate Res Xdat Ydat [er]|Res Xdat Ydat Zdat [er]", mgls_triangulate, mglc_triangulate,4},
+ {"tricont","Draw contour lines for surface of triangles","tricont Vdat Idat Xdat Ydat ['fmt']|Vdat Idat Xdat Ydat Zdat ['fmt']|Vdat Idat Xdat Ydat Zdat Cdat ['fmt'] ", mgls_tricont, mglc_tricont,0},
+ {"triplot","Draw surface of triangles","triplot Idat Xdat Ydat ['fmt']|Idat Xdat Ydat Zdat ['fmt']|Idat Xdat Ydat Zdat Cdat ['fmt'] ", mgls_triplot, mglc_triplot,0},
+ {"tube","Draw curve by tube","tube Ydat Rdat ['fmt']|Ydat rval ['fmt']|Xdat Ydat Rdat ['fmt']|Xdat Ydat rval ['fmt']|Xdat Ydat Zdat Rdat ['fmt']|Xdat Ydat Zdat rval ['fmt']", mgls_tube, mglc_tube,0},
+ {"tuneticks","Set ticks tuning","tuneticks val [fctr]", mgls_tuneticks, mglc_tuneticks,2},
+ {"var","Create new 1D data and fill it in range","var Dat nx x1 [x2]", mgls_var, mglc_var,4},
+ {"vect","Draw vector field","vect Udat Vdat ['fmt' kind]|Xdat Ydat Udat Vdat ['fmt' kind]|Udat Vdat Wdat ['fmt' kind]|Xdat Ydat Zdat Udat Vdat Wdat ['fmt' kind]", mgls_vect, mglc_vect,0},
+ {"write","Write current image to graphical file","write 'fname' [solid]", mgls_write, mglc_write,2},
+ {"xlabel","Draw label for x-axis","xlabel 'txt' [pos size shift]", mgls_xlabel, mglc_xlabel,1},
+ {"xrange","Set range for x-axis","xrange Dat [add] | x1 x2", mgls_xrange, mglc_xrange,2},
+ {"xtick","Set ticks for x-axis","xtick dx [sx tx] | 'tmpl' | Xdat 'lbl' [add] | v1 'lbl1' ...", mgls_xtick, mglc_xtick,2},
+ {"ylabel","Draw label for y-axis","ylabel 'txt' [pos size shift]", mgls_ylabel, mglc_ylabel,1},
+ {"yrange","Set range for y-axis","yrange Dat [add] | y1 y2", mgls_yrange, mglc_yrange,2},
+ {"ytick","Set ticks for y-axis","ytick dy [sy ty] | 'tmpl' | Ydat 'lbl' [add] | v1 'lbl1' ...", mgls_ytick, mglc_ytick,2},
+ {"zlabel","Draw label for z-axis","zlabel 'txt' [pos size shift]", mgls_zlabel, mglc_zlabel,1},
+ {"zrange","Set range for z-axis","yrange Dat [add] | z1 z2", mgls_zrange, mglc_zrange,2},
+ {"ztick","Set ticks for z-axis","ztick dz [sz tz] | 'tmpl' | Zdat 'lbl' [add] | v1 'lbl1' ...", mgls_ztick, mglc_ztick,2},
+{"","","",NULL,NULL,0}};
//-----------------------------------------------------------------------------
int mgl_draw_class(mglBase *gr, void *p)
{ mglGraph g(gr); return p ? ((mglDraw *)p)->Draw(&g) : 0; }
diff --git a/src/export.cpp b/src/export.cpp
index e45e020..1e9eac2 100644
--- a/src/export.cpp
+++ b/src/export.cpp
@@ -34,89 +34,6 @@ extern "C" {
#include "mgl/canvas.h"
#include "mgl/canvas_cf.h"
-
-int mgl_tga_save(const char *fname, int w, int h, unsigned char **p);
-int mgl_bps_save(const char *fname, int w, int h, unsigned char **p);
-int mgl_bmp_save(const char *fname, int w, int h, unsigned char **p);
-int mgl_png_save(const char *fname, int w, int h, unsigned char **p);
-int mgl_pnga_save(const char *fname, int w, int h, unsigned char **p);
-int mgl_jpeg_save(const char *fname, int w, int h, unsigned char **p);
-//-----------------------------------------------------------------------------
-void mglCanvas::WriteJPEG(const char *fname,const char *)
-{
-#ifdef HAVE_JPEG
- long w,h;
- unsigned char *f=0, **p=0;
- p = GetRGBLines(w,h,f);
- if(p)
- {
- if(mgl_jpeg_save(fname,w,h,p)) SetWarn(mglWarnOpen,fname);
- free(p); if(f) free(f);
- }
-#else
- SetWarn(mglWarnFmt,"JPEG");
-#endif
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::WritePNGs(const char *fname,const char *)
-{
- long w,h;
- unsigned char *f=0, **p=0;
- p = GetRGBLines(w,h,f,false);
- if(p)
- {
- if(mgl_png_save(fname,w,h,p)) SetWarn(mglWarnOpen,fname);
- free(p); if(f) free(f);
- }
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::WritePNG(const char *fname,const char *)
-{
- long w,h;
- unsigned char *f=0, **p=0;
- p = GetRGBLines(w,h,f,true);
- if(p)
- {
- if(mgl_pnga_save(fname,w,h,p)) SetWarn(mglWarnOpen,fname);
- free(p); if(f) free(f);
- }
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::WriteBMP(const char *fname,const char *)
-{
- long w,h;
- unsigned char *f=0, **p=0;
- p = GetRGBLines(w,h,f);
- if(p)
- {
- if(mgl_bmp_save(fname,w,h,p)) SetWarn(mglWarnOpen,fname);
- free(p); if(f) free(f);
- }
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::WriteTGA(const char *fname,const char *)
-{
- long w,h;
- unsigned char *f=0, **p=0;
- p = GetRGBLines(w,h,f,true);
- if(p)
- {
- if(mgl_tga_save(fname,w,h,p)) SetWarn(mglWarnOpen,fname);
- free(p); if(f) free(f);
- }
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::WriteBPS(const char *fname,const char *)
-{
- long w,h;
- unsigned char *f=0, **p=0;
- p = GetRGBLines(w,h,f);
- if(p)
- {
- if(mgl_bps_save(fname,w,h,p)) SetWarn(mglWarnOpen,fname);
- free(p); if(f) free(f);
- }
-}
//-----------------------------------------------------------------------------
int mgl_pnga_save(const char *fname, int w, int h, unsigned char **p)
{
@@ -143,8 +60,10 @@ int mgl_pnga_save(const char *fname, int w, int h, unsigned char **p)
png_destroy_write_struct(&png_ptr, &info_ptr);
fclose(fp);
-#endif
return 0;
+#else
+ return 1;
+#endif
}
//-----------------------------------------------------------------------------
int mgl_png_save(const char *fname, int w, int h, unsigned char **p)
@@ -172,8 +91,10 @@ int mgl_png_save(const char *fname, int w, int h, unsigned char **p)
png_destroy_write_struct(&png_ptr, &info_ptr);
fclose(fp);
-#endif
return 0;
+#else
+ return 1;
+#endif
}
//-----------------------------------------------------------------------------
int mgl_bmp_save(const char *fname, int w, int h, unsigned char **p)
@@ -252,8 +173,10 @@ int mgl_jpeg_save(const char *fname, int w, int h, unsigned char **p)
jpeg_finish_compress(&cinfo);
jpeg_destroy_compress(&cinfo);
fclose(outfile);
-#endif
return 0;
+#else
+ return 1;
+#endif
}
//-----------------------------------------------------------------------------
void mgl_printf(void *fp, bool gz, const char *str, ...)
@@ -263,18 +186,17 @@ void mgl_printf(void *fp, bool gz, const char *str, ...)
va_start(lst,str);
vsprintf(buf,str,lst);
va_end(lst);
- if(gz) gzprintf(fp, "%s", buf);
+ if(gz) gzprintf((gzFile)fp, "%s", buf);
else fprintf((FILE *)fp, "%s", buf);
}
//---------------------------------------------------------------------------
int mgl_bps_save(const char *fname, int w, int h, unsigned char **p)
{
- time_t now;
- time(&now);
+ time_t now; time(&now);
register long i,j;
bool gz = fname[strlen(fname)-1]=='z';
- void *fp = gz ? gzopen(fname,"wt") : fopen(fname,"wt");
+ void *fp = gz ? (void*)gzopen(fname,"wt") : (void*)fopen(fname,"wt");
mgl_printf(fp, gz, "%%!PS-Adobe-3.0 EPSF-3.0\n%%%%BoundingBox: 0 0 %d %d\n",w,h);
mgl_printf(fp, gz, "%%%%Creator: MathGL library\n%%%%Title: %s\n", fname);
mgl_printf(fp, gz, "%%%%CreationDate: %s\n",ctime(&now));
@@ -286,10 +208,49 @@ int mgl_bps_save(const char *fname, int w, int h, unsigned char **p)
mgl_printf(fp, gz, "%02x%02x%02x",p[j][3*i],p[j][3*i+1],p[j][3*i+2]);
}
mgl_printf(fp, gz, "\n\nshowpage\n%%%%EOF\n");
- if(gz) gzclose(fp); else fclose((FILE *)fp);
+ if(gz) gzclose((gzFile)fp); else fclose((FILE *)fp);
return 0;
}
//-----------------------------------------------------------------------------
+int mgl_gif_save(const char *fname, int w, int h, unsigned char **l)
+{
+#ifdef HAVE_GIF
+ GifFileType *fg = EGifOpenFileName(fname, 0);
+ // define colormap
+ GifColorType col[256];
+ memset(col,0,256*sizeof(GifColorType));
+ register long m;
+ register int i,j,k,ii;
+ for(i=0;i<6;i++) for(j=0;j<6;j++) for(k=0;k<6;k++)
+ {
+ m = i+6*(j+6*k); // part 1
+ col[m].Red = 51*i;
+ col[m].Green=51*j;
+ col[m].Blue =51*k;
+ }
+ // write header
+ ColorMapObject *gmap = MakeMapObject(256, col);
+ EGifPutScreenDesc(fg, w, h, 256,0,gmap);
+ FreeMapObject(gmap);
+ // write frame
+ EGifPutImageDesc(fg, 0, 0, w, h, 0, 0);
+ GifPixelType *line = new GifPixelType[w*h];
+ for(m=0;m<w*h;m++)
+ {
+ ii = 3*(m%w); k = m/w;
+ i = (l[k][ii]+25)/51;
+ j = (l[k][ii+1]+25)/51;
+ k = (l[k][ii+2]+25)/51;
+ line[m] = i+6*(j+6*k);
+ }
+ EGifPutLine(fg, line, w*h);
+ EGifCloseFile(fg);
+ delete []line; return 0;
+#else
+ return 1;
+#endif
+}
+//-----------------------------------------------------------------------------
//
// Save animation
//
@@ -299,6 +260,8 @@ void mglCanvas::StartGIF(const char *fname, int ms)
#ifdef HAVE_GIF
if(gif) EGifCloseFile(gif);
EGifSetGifVersion("89a");
+ std::string fn=fname;
+ if(fn.empty()) { fn=PlotId+".gif"; fname = fn.c_str(); }
gif = EGifOpenFileName(fname, 0);
// get picture sizes
// NOTE: you shouldn't call SetSize() after StartGIF() !!!
@@ -340,8 +303,7 @@ void mglCanvas::CloseGIF()
//-----------------------------------------------------------------------------
int mglCanvas::NewFrame()
{
- Clf(); Identity();
- CurFrameId++;
+ Clf(); Identity(); CurFrameId++;
return CurFrameId-1;
}
//-----------------------------------------------------------------------------
@@ -369,182 +331,194 @@ void mglCanvas::EndFrame()
delete []line; free(l);
if(f) free(f);
#else
+ if(get(MGL_USEDRWDAT)) PushDrwDat();
Finish();
#endif
}
//-----------------------------------------------------------------------------
-void mglCanvas::WriteGIF(const char *fname,const char *)
-{
-#ifdef HAVE_GIF
- // get picture sizes
- long width, height, n;
- unsigned char *f=0, **l=0;
- l = GetRGBLines(width, height, f);
- if(!l) return;
- n = width*height;
-
- GifFileType *fg = EGifOpenFileName(fname, 0);
- // define colormap
- GifColorType col[256];
- memset(col,0,256*sizeof(GifColorType));
- register long m;
- register int i,j,k,ii;
- for(i=0;i<6;i++) for(j=0;j<6;j++) for(k=0;k<6;k++)
- {
- m = i+6*(j+6*k); // part 1
- col[m].Red = 51*i;
- col[m].Green=51*j;
- col[m].Blue =51*k;
- }
- // write header
- ColorMapObject *gmap = MakeMapObject(256, col);
- EGifPutScreenDesc(fg, width, height, 256,0,gmap);
- FreeMapObject(gmap);
- // write frame
- EGifPutImageDesc(fg, 0, 0, width, height, 0, 0);
- GifPixelType *line = new GifPixelType[n];
- for(m=0;m<n;m++)
- {
- ii = 3*(m%width); k = m/width;
- i = (l[k][ii]+25)/51;
- j = (l[k][ii+1]+25)/51;
- k = (l[k][ii+2]+25)/51;
- line[m] = i+6*(j+6*k);
- }
- EGifPutLine(fg, line, n);
- EGifCloseFile(fg);
- delete []line; free(l);
- if(f) free(f);
-#endif
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::WriteIDTF(const char *,const char *) {}
-//-----------------------------------------------------------------------------
-void mglCanvas::WriteFrame(const char *fname, const char *descr)
-{
- char buf[64];
- if(!fname || !fname[0])
- { sprintf(buf,"%s%04d.jpg",PlotId.c_str(),CurFrameId); fname = buf; }
- int len=strlen(fname);
- if(!strcmp(fname+len-4,".jpg")) WriteJPEG(fname,descr);
- if(!strcmp(fname+len-5,".jpeg"))WriteJPEG(fname,descr);
- if(!strcmp(fname+len-5,".idtf"))WriteIDTF(fname,descr);
- if(!strcmp(fname+len-4,".png")) WritePNG(fname,descr);
- if(!strcmp(fname+len-4,".eps")) WriteEPS(fname,descr);
- if(!strcmp(fname+len-4,".svg")) WriteSVG(fname,descr);
- if(!strcmp(fname+len-4,".gif")) WriteGIF(fname,descr);
- if(!strcmp(fname+len-4,".bmp")) WriteBMP(fname,descr);
- if(!strcmp(fname+len-4,".tga")) WriteTGA(fname,descr);
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::ShowImage(const char *viewer, bool keep)
-{
- char fname[128], *cmd = new char [128];
- sprintf(fname,"%s.png", tmpnam(NULL));
- WritePNGs(fname,"MathGL ShowImage file");
- if(!viewer || !viewer[0])
- viewer = MGL_DEF_VIEWER;
-#ifdef WIN32
- if(keep)
- {
- sprintf(cmd,"%s %s &", viewer,fname);
- if(system(cmd)==-1) printf("Error to call external viewer\n");
-// sleep(2);
- sprintf(cmd,"del %s", fname);
- }
- else sprintf(cmd,"%s %s; del %s", viewer,fname,fname);
-#else
- if(keep)
- {
- sprintf(cmd,"%s %s &", viewer,fname);
- if(system(cmd)==-1) printf("Error to call external viewer\n");
- sleep(2);
- sprintf(cmd,"rm %s", fname);
- }
- else sprintf(cmd,"%s %s; rm %s", viewer,fname,fname);
-#endif
- if(system(cmd)==-1) printf("Error to call external viewer\n");
- delete []cmd;
-}
-//-----------------------------------------------------------------------------
#undef _GR_
#define _GR_ ((mglCanvas *)(*gr))
#define _Gr_ ((mglCanvas *)(gr))
//-----------------------------------------------------------------------------
void mgl_write_png(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WritePNG(fname,descr); }
+{
+ long w,h; unsigned char *f=0, **p=0;
+ p =_Gr_->GetRGBLines(w,h,f,true);
+ if(p)
+ {
+ std::string fn=fname;
+ if(fn.empty()) { fn=gr->PlotId+".png"; fname = fn.c_str(); }
+ if(mgl_pnga_save(fname,w,h,p)) gr->SetWarn(mglWarnOpen,fname);
+ free(p); if(f) free(f);
+ }
+}
void mgl_write_png_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WritePNG(s,f); delete []s; delete []f; }
+ mgl_write_png(_GR_,s,f); delete []s; delete []f; }
+//-----------------------------------------------------------------------------
void mgl_write_png_solid(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WritePNGs(fname,descr); }
+{
+ long w,h; unsigned char *f=0, **p=0;
+ p =_Gr_->GetRGBLines(w,h,f);
+ if(p)
+ {
+ std::string fn=fname;
+ if(fn.empty()) { fn=gr->PlotId+".png"; fname = fn.c_str(); }
+ if(mgl_png_save(fname,w,h,p)) gr->SetWarn(mglWarnOpen,fname);
+ free(p); if(f) free(f);
+ }
+}
void mgl_write_png_solid_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WritePNGs(s,f); delete []s; delete []f; }
+ mgl_write_png_solid(_GR_,s,f); delete []s; delete []f; }
//-----------------------------------------------------------------------------
-void mgl_write_jpg(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteJPEG(fname,descr); }
+void mgl_write_jpg(HMGL gr, const char *fname,const char *)
+{
+ long w,h; unsigned char *f=0, **p=0;
+ p =_Gr_->GetRGBLines(w,h,f);
+ if(p)
+ {
+ std::string fn=fname;
+ if(fn.empty()) { fn=gr->PlotId+".jpg"; fname = fn.c_str(); }
+ if(mgl_jpeg_save(fname,w,h,p)) gr->SetWarn(mglWarnOpen,fname);
+ free(p); if(f) free(f);
+ }
+}
void mgl_write_jpg_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WriteJPEG(s,f); delete []s; delete []f; }
+ mgl_write_jpg(_GR_,s,f); delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_write_tga(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteTGA(fname,descr); }
+{
+ long w,h; unsigned char *f=0, **p=0;
+ p =_Gr_->GetRGBLines(w,h,f,true);
+ if(p)
+ {
+ std::string fn=fname;
+ if(fn.empty()) { fn=gr->PlotId+".tga"; fname = fn.c_str(); }
+ if(mgl_tga_save(fname,w,h,p)) gr->SetWarn(mglWarnOpen,fname);
+ free(p); if(f) free(f);
+ }
+}
void mgl_write_tga_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WriteTGA(s,f); delete []s; delete []f; }
+ mgl_write_tga(_GR_,s,f); delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_write_bmp(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteBMP(fname,descr); }
+{
+ long w,h; unsigned char *f=0, **p=0;
+ p =_Gr_->GetRGBLines(w,h,f);
+ if(p)
+ {
+ std::string fn=fname;
+ if(fn.empty()) { fn=gr->PlotId+".bmp"; fname = fn.c_str(); }
+ if(mgl_bmp_save(fname,w,h,p)) gr->SetWarn(mglWarnOpen,fname);
+ free(p); if(f) free(f);
+ }
+}
void mgl_write_bmp_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WriteBMP(s,f); delete []s; delete []f; }
+ mgl_write_bmp(_GR_,s,f); delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_write_bps(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteBPS(fname,descr); }
+{
+ long w,h; unsigned char *f=0, **p=0;
+ p =_Gr_->GetRGBLines(w,h,f);
+ if(p)
+ {
+ std::string fn=fname;
+ if(fn.empty()) { fn=gr->PlotId+".eps"; fname = fn.c_str(); }
+ if(mgl_bps_save(fname,w,h,p)) gr->SetWarn(mglWarnOpen,fname);
+ free(p); if(f) free(f);
+ }
+}
void mgl_write_bps_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WriteBPS(s,f); delete []s; delete []f; }
-//-----------------------------------------------------------------------------
-void mgl_write_idtf(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteIDTF(fname,descr); }
-void mgl_write_idtf_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
-{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
- char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WriteIDTF(s,f); delete []s; delete []f; }
+ mgl_write_bps(_GR_,s,f); delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_write_gif(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteGIF(fname,descr); }
+{
+ long w,h; unsigned char *f=0, **p=0;
+ p =_Gr_->GetRGBLines(w,h,f);
+ if(p)
+ {
+ std::string fn=fname;
+ if(fn.empty()) { fn=gr->PlotId+".gif"; fname = fn.c_str(); }
+ if(mgl_gif_save(fname,w,h,p)) gr->SetWarn(mglWarnOpen,fname);
+ free(p); if(f) free(f);
+ }
+}
void mgl_write_gif_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WriteGIF(s,f); delete []s; delete []f; }
+ mgl_write_gif(_GR_,s,f); delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_start_gif(HMGL gr, const char *fname,int ms)
{ _Gr_->StartGIF(fname,ms); }
void mgl_start_gif_(uintptr_t *gr, const char *fname,int *ms,int l)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
- _GR_->StartGIF(s,*ms); delete []s; }
+ mgl_start_gif(_GR_,s,*ms); delete []s; }
//-----------------------------------------------------------------------------
void mgl_close_gif(HMGL gr) { _Gr_->CloseGIF(); }
-void mgl_close_gif_(uintptr_t *gr) { _GR_->CloseGIF(); }
+void mgl_close_gif_(uintptr_t *gr) { mgl_close_gif(_GR_); }
//-----------------------------------------------------------------------------
void mgl_write_frame(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteFrame(fname,descr); }
+{
+ char buf[64];
+ if(!fname || !fname[0])
+ { sprintf(buf,"%s%04d.jpg",_Gr_->PlotId.c_str(),_Gr_->GetNumFrame()); fname = buf; }
+ int len=strlen(fname);
+ if(!strcmp(fname+len-4,".jpg")) mgl_write_jpg(gr,fname,descr);
+ if(!strcmp(fname+len-5,".jpeg"))mgl_write_jpg(gr,fname,descr);
+ if(!strcmp(fname+len-5,".idtf"))mgl_write_idtf(gr,fname,descr);
+ if(!strcmp(fname+len-4,".png")) mgl_write_png(gr,fname,descr);
+ if(!strcmp(fname+len-4,".eps")) mgl_write_eps(gr,fname,descr);
+ if(!strcmp(fname+len-4,".svg")) mgl_write_svg(gr,fname,descr);
+ if(!strcmp(fname+len-4,".gif")) mgl_write_gif(gr,fname,descr);
+ if(!strcmp(fname+len-4,".bmp")) mgl_write_bmp(gr,fname,descr);
+ if(!strcmp(fname+len-4,".tga")) mgl_write_tga(gr,fname,descr);
+}
void mgl_write_frame_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
- _GR_->WriteFrame(s,f); delete []s; delete []f;}
+ mgl_write_frame(_GR_,s,f); delete []s; delete []f;}
//-----------------------------------------------------------------------------
void mgl_show_image(HMGL gr, const char *viewer, int keep)
-{ _Gr_->ShowImage(viewer,keep); }
+{
+ char fname[128], *cmd = new char [128];
+ sprintf(fname,"%s.png", tmpnam(NULL));
+ mgl_write_png_solid(gr,fname,"MathGL ShowImage file");
+ if(!viewer || !viewer[0])
+ viewer = MGL_DEF_VIEWER;
+ #ifdef WIN32
+ if(keep)
+ {
+ sprintf(cmd,"%s %s &", viewer,fname);
+ if(system(cmd)==-1) printf("Error to call external viewer\n");
+ // sleep(2);
+ sprintf(cmd,"del %s", fname);
+ }
+ else sprintf(cmd,"%s %s; del %s", viewer,fname,fname);
+ #else
+ if(keep)
+ {
+ sprintf(cmd,"%s %s &", viewer,fname);
+ if(system(cmd)==-1) printf("Error to call external viewer\n");
+ sleep(2);
+ sprintf(cmd,"rm %s", fname);
+ }
+ else sprintf(cmd,"%s %s; rm %s", viewer,fname,fname);
+ #endif
+ if(system(cmd)==-1) printf("Error to call external viewer\n");
+ delete []cmd;
+}
void mgl_show_image_(uintptr_t *gr, const char *viewer, int *keep, int l)
{ char *s=new char[l+1]; memcpy(s,viewer,l); s[l]=0;
- _GR_->ShowImage(s,*keep); delete []s; }
+ mgl_show_image(_GR_,s,*keep); delete []s; }
//-----------------------------------------------------------------------------
diff --git a/src/export_2d.cpp b/src/export_2d.cpp
index 9cee46a..bec579c 100644
--- a/src/export_2d.cpp
+++ b/src/export_2d.cpp
@@ -22,6 +22,9 @@
#include <stdlib.h>
#include <time.h>
#include <zlib.h>
+#undef _GR_
+#define _GR_ ((mglCanvas *)(*gr))
+#define _Gr_ ((mglCanvas *)(gr))
void mgl_printf(void *fp, bool gz, const char *str, ...);
//-----------------------------------------------------------------------------
char *mgl_get_dash(unsigned short d, float w)
@@ -45,58 +48,181 @@ char *mgl_get_dash(unsigned short d, float w)
return s;
}
//-----------------------------------------------------------------------------
-bool mglCanvas::IsSame(const mglPrim &pr,float wp,mglColor cp,int st)
+bool mgl_is_same(HMGL gr, const mglPrim &pr,float wp,mglColor cp,int st)
{
if(abs(pr.type)!=1) return false;
if(pr.w>=1 && wp!=pr.w) return false;
if(pr.w<1 && wp!=1) return false;
if(st!=pr.n3) return false;
- mglColor c=put_color(pr);
+ mglColor c=_Gr_->GetColor(pr);
return (cp==c);
}
//-----------------------------------------------------------------------------
-void mglCanvas::WriteEPS(const char *fname,const char *descr)
+void put_line(HMGL gr, void *fp, bool gz, long i, float wp, mglColor cp,int st, const char *ifmt, const char *nfmt, bool neg)
+{
+ const mglPnt pp = gr->GetPnt(gr->GetPrm(i).n1);
+ float x0=pp.x, y0=pp.y;
+ bool ok=true;
+ register unsigned long k = i,j; // first point
+ while(ok)
+ {
+ for(ok=false,j=i+1;j<gr->GetPrmNum();j++)
+ {
+ mglPrim &q = gr->GetPrm(j);
+ if(q.type>1) break;
+ if(mgl_is_same(gr, q,wp,cp,st) && q.type==1) // previous point
+ {
+ const mglPnt p1 = gr->GetPnt(q.n1);
+ const mglPnt p2 = gr->GetPnt(q.n2);
+ if(p2.x==x0 && p2.y==y0)
+ {
+ k=j; ok=true; q.type = -2;
+ x0 = p1.x; y0=p1.y;
+ }
+ else if(p1.x==x0 && p1.y==y0)
+ {
+ k=j; ok=true; q.type = -2;
+ x0 = p2.x; y0=p2.y;
+ }
+ }
+ }
+ }
+ for(j=i;j<gr->GetPrmNum();j++)
+ {
+ mglPrim &q = gr->GetPrm(j);
+ if(q.type==-2) q.type = 1;
+ }
+ mgl_printf(fp, gz, ifmt,x0,neg?_Gr_->GetHeight()-y0:y0); ok=true;
+ long m=1;
+ while(ok)
+ {
+ for(ok=false,j=i;j<gr->GetPrmNum();j++)
+ {
+ mglPrim &q = gr->GetPrm(j);
+ if(q.type>1) break;
+ if(mgl_is_same(gr,q,wp,cp,st) && q.type==1)
+ {
+ const mglPnt p1 = gr->GetPnt(q.n1);
+ const mglPnt p2 = gr->GetPnt(q.n2);
+ if(p1.x==x0 && p1.y==y0)
+ {
+ k=j; q.type = -1; x0 = p2.x; y0=p2.y;
+ mgl_printf(fp, gz, nfmt,x0,neg?_Gr_->GetHeight()-y0:y0);
+ if(m>10) { m=0; mgl_printf(fp, gz, "\n"); }
+ ok=true; m++;
+ }
+ else if(p2.x==x0 && p2.y==y0)
+ {
+ k=j; q.type = -1; x0 = p1.x; y0=p1.y;
+ mgl_printf(fp, gz, nfmt,x0,neg?_Gr_->GetHeight()-y0:y0);
+ if(m>10) { m=0; mgl_printf(fp, gz, "\n"); }
+ ok=true; m++;
+ }
+ }
+ }
+ }
+}
+//-----------------------------------------------------------------------------
+//put_desc(fp,"%c%c%c_%04x {", "np %d %d mt %d %d ll %d %d ll cp fill\n",
+//"np %d %d mt ", "%d %d ll ", "cp dr\n", "} def")
+void put_desc(HMGL gr, void *fp, bool gz, const char *pre, const char *ln1, const char *ln2, const char *ln3, const char *suf)
+{
+ register unsigned long i,j,n;
+ wchar_t *g;
+ int *s;
+ for(n=i=0;i<gr->GetPrmNum();i++) if(gr->GetPrm(i).type==4) n++;
+ if(n==0) return; // no glyphs
+ g = new wchar_t[n]; s = new int[n];
+ for(n=i=0;i<gr->GetPrmNum();i++)
+ {
+ const mglPrim q = gr->GetPrm(i);
+ if(q.type!=4 || (q.n3&8)) continue; // not a glyph
+ bool is=false;
+ for(j=0;j<n;j++) if(g[j]==q.n4 && s[j]==(q.n3&7)) is = true;
+ if(is) continue; // glyph is described
+ // have to describe
+ g[n]=q.n4; s[n]=q.n3&7; n++; // add to list of described
+ // "%c%c%c_%04x {"
+ mgl_printf(fp, gz, pre, q.n3&1?'b':'n', q.n3&2?'i':'n', q.n4);
+ int nl=gr->GetFont()->GetNl(q.n3&3,q.n4);
+ const short *ln=gr->GetFont()->GetLn(q.n3&3,q.n4);
+ long ik,ii;
+ bool np=true;
+ if(ln && nl>0) for(ik=0;ik<nl;ik++)
+ {
+ ii = 2*ik;
+ if(ln[ii]==0x3fff && ln[ii+1]==0x3fff) // line breakthrough
+ { mgl_printf(fp, gz, "%s",ln3); np=true; continue; }
+ else if(np) mgl_printf(fp, gz, ln1,ln[ii],ln[ii+1]);
+ else mgl_printf(fp, gz, ln2,ln[ii],ln[ii+1]);
+ np=false;
+ }
+ mgl_printf(fp, gz, "%s%s",ln3,suf); // finish glyph description suf="} def"
+ }
+ delete []g; delete []s;
+}
+//-----------------------------------------------------------------------------
+mglColor mglCanvas::GetColor(const mglPrim &p)
{
- if(Prm.size()<1) return;
- if(!get(MGL_FINISHED)) Finish();
- time_t now;
- time(&now);
+ unsigned char res[4],buf[4];
+ col2int(Pnt[p.type==1?p.n2:p.n1],res);
+ if(p.type==2 || p.type==3)
+ {
+ col2int(Pnt[p.n2],buf); res[0]=(1L*res[0]+buf[0])/2;
+ res[1]=(1L*res[1]+buf[1])/2; res[2]=(1L*res[2]+buf[2])/2;
+ col2int(Pnt[p.n3],buf); res[0]=(2L*res[0]+buf[0])/3;
+ res[1]=(2L*res[1]+buf[1])/3; res[2]=(2L*res[2]+buf[2])/3;
+ }
+ if(p.type==3)
+ {
+ col2int(Pnt[p.n4],buf); res[0]=(3L*res[0]+buf[0])/4;
+ res[1]=(3L*res[1]+buf[1])/4; res[2]=(3L*res[2]+buf[2])/4;
+ }
+ return mglColor(res[0]/255.,res[1]/255.,res[2]/255.,res[3]/255.);
+}
+//-----------------------------------------------------------------------------
+void mgl_write_eps(HMGL gr, const char *fname,const char *descr)
+{
+ if(gr->GetPrmNum()<1) return;
+ _Gr_->Finish();
+ time_t now; time(&now);
bool gz = fname[strlen(fname)-1]=='z';
- void *fp = gz ? gzopen(fname,"wt") : fopen(fname,"wt");
- if(!fp) { SetWarn(mglWarnOpen,fname); return; }
- mgl_printf(fp, gz, "%%!PS-Adobe-3.0 EPSF-3.0\n%%%%BoundingBox: 0 0 %d %d\n",Width,Height);
+ void *fp = gz ? (void*)gzopen(fname,"wt") : (void*)fopen(fname,"wt");
+ if(!fp) { gr->SetWarn(mglWarnOpen,fname); return; }
+ mgl_printf(fp, gz, "%%!PS-Adobe-3.0 EPSF-3.0\n%%%%BoundingBox: 0 0 %d %d\n", _Gr_->GetWidth(), _Gr_->GetHeight());
mgl_printf(fp, gz, "%%%%Creator: MathGL library\n%%%%Title: %s\n",descr ? descr : fname);
mgl_printf(fp, gz, "%%%%CreationDate: %s\n",ctime(&now));
mgl_printf(fp, gz, "/lw {setlinewidth} def\n/rgb {setrgbcolor} def\n");
mgl_printf(fp, gz, "/np {newpath} def\n/cp {closepath} def\n");
mgl_printf(fp, gz, "/ll {lineto} def\n/mt {moveto} def\n");
mgl_printf(fp, gz, "/rl {rlineto} def\n/rm {rmoveto} def\n/dr {stroke} def\n");
- mgl_printf(fp, gz, "/ss {%g} def\n",MarkSize*0.4*font_factor);// remove *font_factor); ???
- mgl_printf(fp, gz, "/s2 {%g} def\n",MarkSize*0.8*font_factor);// remove *font_factor); ???
- mgl_printf(fp, gz, "/sm {-%g} def\n",MarkSize*0.4*font_factor);//remove *font_factor); ???
+ mgl_printf(fp, gz, "/ss {%g} def\n",0.4*gr->mark_size());
+ mgl_printf(fp, gz, "/s2 {%g} def\n",0.8*gr->mark_size());
+ mgl_printf(fp, gz, "/sm {-%g} def\n",0.4*gr->mark_size());
mgl_printf(fp, gz, "/m_c {ss 0.3 mul 0 360 arc} def\n");
mgl_printf(fp, gz, "/d0 {[] 0 setdash} def\n/sd {setdash} def\n");
bool m_p=false,m_x=false,m_d=false,m_v=false,m_t=false,
- m_s=false,m_a=false,m_o=false,m_T=false,
- m_V=false,m_S=false,m_D=false,m_Y=false,m_l=false,
- m_L=false,m_r=false,m_R=false,m_X=false,m_P=false;
+ m_s=false,m_a=false,m_o=false,m_T=false,
+ m_V=false,m_S=false,m_D=false,m_Y=false,m_l=false,
+ m_L=false,m_r=false,m_R=false,m_X=false,m_P=false;
register unsigned long i;
// add mark definition if present
- for(i=0;i<Prm.size();i++)
+ for(i=0;i<gr->GetPrmNum();i++)
{
- if(Prm[i].type>0) continue; if(Prm[i].n4=='+') m_p = true;
- if(Prm[i].n4=='x') m_x = true; if(Prm[i].n4=='s') m_s = true;
- if(Prm[i].n4=='d') m_d = true; if(Prm[i].n4=='v') m_v = true;
- if(Prm[i].n4=='^') m_t = true; if(Prm[i].n4=='*') m_a = true;
- if(Prm[i].n4=='o' || Prm[i].n4=='O' || Prm[i].n4=='C') m_o = true;
- if(Prm[i].n4=='S') m_S = true; if(Prm[i].n4=='D') m_D = true;
- if(Prm[i].n4=='V') m_V = true; if(Prm[i].n4=='T') m_T = true;
- if(Prm[i].n4=='<') m_l = true; if(Prm[i].n4=='L') m_L = true;
- if(Prm[i].n4=='>') m_r = true; if(Prm[i].n4=='R') m_R = true;
- if(Prm[i].n4=='Y') m_Y = true;
- if(Prm[i].n4=='P') m_P = true; if(Prm[i].n4=='X') m_X = true;
+ const mglPrim q = gr->GetPrm(i);
+ if(q.type>0) continue; if(q.n4=='+') m_p = true;
+ if(q.n4=='x') m_x = true; if(q.n4=='s') m_s = true;
+ if(q.n4=='d') m_d = true; if(q.n4=='v') m_v = true;
+ if(q.n4=='^') m_t = true; if(q.n4=='*') m_a = true;
+ if(q.n4=='o' || q.n4=='O' || q.n4=='C') m_o = true;
+ if(q.n4=='S') m_S = true; if(q.n4=='D') m_D = true;
+ if(q.n4=='V') m_V = true; if(q.n4=='T') m_T = true;
+ if(q.n4=='<') m_l = true; if(q.n4=='L') m_L = true;
+ if(q.n4=='>') m_r = true; if(q.n4=='R') m_R = true;
+ if(q.n4=='Y') m_Y = true;
+ if(q.n4=='P') m_P = true; if(q.n4=='X') m_X = true;
}
if(m_P) { m_p=true; m_s=true; }
if(m_X) { m_x=true; m_s=true; }
@@ -119,128 +245,140 @@ void mglCanvas::WriteEPS(const char *fname,const char *descr)
if(m_L) mgl_printf(fp, gz, "/m_L {ss 2 div sm rm 0 s2 rl sm 1.5 mul sm rl cp} def\n");
if(m_P) mgl_printf(fp, gz, "/m_P {m_p 0 sm rm m_s} def\n");
if(m_X) mgl_printf(fp, gz, "/m_X {m_x ss sm rm m_s} def\n");
-// if(m_C) mgl_printf(fp, gz, "/m_C {m_c m_o} def\n");
+ // if(m_C) mgl_printf(fp, gz, "/m_C {m_c m_o} def\n");
mgl_printf(fp, gz, "\n");
// write definition for all glyphs
- put_desc(fp,gz,"/%c%c_%04x { np\n", "\t%d %d mt ", "%d %d ll ", "cp\n", "} def\n");
+ put_desc(gr,fp,gz,"/%c%c_%04x { np\n", "\t%d %d mt ", "%d %d ll ", "cp\n", "} def\n");
// write primitives
float wp=-1;
mglColor cp;
int st=0;
char str[256]="";
- for(i=0;i<Prm.size();i++)
+ for(i=0;i<gr->GetPrmNum();i++)
{
- if(Prm[i].type<0) continue;
- cp = put_color(Prm[i]);
- if(Prm[i].type>1) sprintf(str,"%.2g %.2g %.2g rgb ", cp.r,cp.g,cp.b);
+ const mglPrim &q = gr->GetPrm(i);
+ if(q.type<0) continue; // q.n1>=0 always
+ cp = _Gr_->GetColor(q);
+ const mglPnt p1 = gr->GetPnt(q.n1);
+ if(q.type>1) sprintf(str,"%.2g %.2g %.2g rgb ", cp.r,cp.g,cp.b);
- if(Prm[i].type==0) // mark
+ if(q.type==0) // mark
{
- float x0 = Pnt[Prm[i].n1].x,y0 = Pnt[Prm[i].n1].y;
+ float x0 = p1.x,y0 = p1.y;
sprintf(str,"1 lw %.2g %.2g %.2g rgb ", cp.r,cp.g,cp.b);
wp=1;
- if(Prm[i].s!=MarkSize)
+ if(q.s!=gr->mark_size()/gr->FontFactor())
{
- mgl_printf(fp, gz, "/ss {%g} def\n",Prm[i].s*0.4*font_factor);
- mgl_printf(fp, gz, "/s2 {%g} def\n",Prm[i].s*0.8*font_factor);
- mgl_printf(fp, gz, "/sm {-%g} def\n",Prm[i].s*0.4*font_factor);
+ mgl_printf(fp, gz, "/ss {%g} def\n",q.s*0.4*gr->FontFactor());
+ mgl_printf(fp, gz, "/s2 {%g} def\n",q.s*0.8*gr->FontFactor());
+ mgl_printf(fp, gz, "/sm {-%g} def\n",q.s*0.4*gr->FontFactor());
}
- switch(Prm[i].n4)
+ switch(q.n4)
{
- case '+': mgl_printf(fp, gz, "np %g %g mt m_p %sdr\n",x0,y0,str); break;
- case 'x': mgl_printf(fp, gz, "np %g %g mt m_x %sdr\n",x0,y0,str); break;
- case 's': mgl_printf(fp, gz, "np %g %g mt m_s %sdr\n",x0,y0,str); break;
- case 'd': mgl_printf(fp, gz, "np %g %g mt m_d %sdr\n",x0,y0,str); break;
- case '*': mgl_printf(fp, gz, "np %g %g mt m_a %sdr\n",x0,y0,str); break;
- case 'v': mgl_printf(fp, gz, "np %g %g mt m_v %sdr\n",x0,y0,str); break;
- case '^': mgl_printf(fp, gz, "np %g %g mt m_t %sdr\n",x0,y0,str); break;
- case 'S': mgl_printf(fp, gz, "np %g %g mt m_S %sfill\n",x0,y0,str); break;
- case 'D': mgl_printf(fp, gz, "np %g %g mt m_D %sfill\n",x0,y0,str); break;
- case 'V': mgl_printf(fp, gz, "np %g %g mt m_V %sfill\n",x0,y0,str); break;
- case 'T': mgl_printf(fp, gz, "np %g %g mt m_T %sfill\n",x0,y0,str); break;
- case 'o': mgl_printf(fp, gz, "%g %g m_o %sdr\n",x0,y0,str);break;
- case 'O': mgl_printf(fp, gz, "%g %g m_o %sfill\n",x0,y0,str);break;
- case 'Y': mgl_printf(fp, gz, "np %g %g mt m_Y %sdr\n",x0,y0,str); break;
- case '<': mgl_printf(fp, gz, "np %g %g mt m_l %sdr\n",x0,y0,str); break;
- case '>': mgl_printf(fp, gz, "np %g %g mt m_r %sdr\n",x0,y0,str); break;
- case 'L': mgl_printf(fp, gz, "np %g %g mt m_L %sfill\n",x0,y0,str); break;
- case 'R': mgl_printf(fp, gz, "np %g %g mt m_R %sfill\n",x0,y0,str); break;
- case 'P': mgl_printf(fp, gz, "np %g %g mt m_P %sdr\n",x0,y0,str); break;
- case 'X': mgl_printf(fp, gz, "np %g %g mt m_X %sdr\n",x0,y0,str); break;
- case 'C': mgl_printf(fp, gz, "%g %g m_o %g %g m_c %sdr\n",x0,y0,x0,y0,str); break;
- default: mgl_printf(fp, gz, "%g %g m_c %sfill\n",x0,y0,str);
+ case '+': mgl_printf(fp, gz, "np %g %g mt m_p %sdr\n",x0,y0,str); break;
+ case 'x': mgl_printf(fp, gz, "np %g %g mt m_x %sdr\n",x0,y0,str); break;
+ case 's': mgl_printf(fp, gz, "np %g %g mt m_s %sdr\n",x0,y0,str); break;
+ case 'd': mgl_printf(fp, gz, "np %g %g mt m_d %sdr\n",x0,y0,str); break;
+ case '*': mgl_printf(fp, gz, "np %g %g mt m_a %sdr\n",x0,y0,str); break;
+ case 'v': mgl_printf(fp, gz, "np %g %g mt m_v %sdr\n",x0,y0,str); break;
+ case '^': mgl_printf(fp, gz, "np %g %g mt m_t %sdr\n",x0,y0,str); break;
+ case 'S': mgl_printf(fp, gz, "np %g %g mt m_S %sfill\n",x0,y0,str); break;
+ case 'D': mgl_printf(fp, gz, "np %g %g mt m_D %sfill\n",x0,y0,str); break;
+ case 'V': mgl_printf(fp, gz, "np %g %g mt m_V %sfill\n",x0,y0,str); break;
+ case 'T': mgl_printf(fp, gz, "np %g %g mt m_T %sfill\n",x0,y0,str); break;
+ case 'o': mgl_printf(fp, gz, "%g %g m_o %sdr\n",x0,y0,str);break;
+ case 'O': mgl_printf(fp, gz, "%g %g m_o %sfill\n",x0,y0,str);break;
+ case 'Y': mgl_printf(fp, gz, "np %g %g mt m_Y %sdr\n",x0,y0,str); break;
+ case '<': mgl_printf(fp, gz, "np %g %g mt m_l %sdr\n",x0,y0,str); break;
+ case '>': mgl_printf(fp, gz, "np %g %g mt m_r %sdr\n",x0,y0,str); break;
+ case 'L': mgl_printf(fp, gz, "np %g %g mt m_L %sfill\n",x0,y0,str); break;
+ case 'R': mgl_printf(fp, gz, "np %g %g mt m_R %sfill\n",x0,y0,str); break;
+ case 'P': mgl_printf(fp, gz, "np %g %g mt m_P %sdr\n",x0,y0,str); break;
+ case 'X': mgl_printf(fp, gz, "np %g %g mt m_X %sdr\n",x0,y0,str); break;
+ case 'C': mgl_printf(fp, gz, "%g %g m_o %g %g m_c %sdr\n",x0,y0,x0,y0,str); break;
+ default: mgl_printf(fp, gz, "%g %g m_c %sfill\n",x0,y0,str);
}
- if(Prm[i].s!=MarkSize)
+ if(q.s!=gr->mark_size()/gr->FontFactor())
{
- mgl_printf(fp, gz, "/ss {%g} def\n",MarkSize*0.4*font_factor);
- mgl_printf(fp, gz, "/s2 {%g} def\n",MarkSize*0.8*font_factor);
- mgl_printf(fp, gz, "/sm {-%g} def\n",MarkSize*0.4*font_factor);
+ mgl_printf(fp, gz, "/ss {%g} def\n",0.4*gr->mark_size());
+ mgl_printf(fp, gz, "/s2 {%g} def\n",0.8*gr->mark_size());
+ mgl_printf(fp, gz, "/sm {-%g} def\n",0.4*gr->mark_size());
}
}
- else if(Prm[i].type==3) // quad
+ else if(q.type==3) // quad
+ {
+ const mglPnt p2=gr->GetPnt(q.n2), p3=gr->GetPnt(q.n3), p4=gr->GetPnt(q.n4);
mgl_printf(fp, gz, "np %g %g mt %g %g ll %g %g ll %g %g ll cp %sfill\n",
- Pnt[Prm[i].n1].x, Pnt[Prm[i].n1].y, Pnt[Prm[i].n2].x, Pnt[Prm[i].n2].y,
- Pnt[Prm[i].n4].x, Pnt[Prm[i].n4].y, Pnt[Prm[i].n3].x, Pnt[Prm[i].n3].y, str);
- else if(Prm[i].type==2) // trig
+ p1.x, p1.y, p2.x, p2.y, p4.x, p4.y, p3.x, p3.y, str);
+ }
+ else if(q.type==2) // trig
+ {
+ const mglPnt p2=gr->GetPnt(q.n2), p3=gr->GetPnt(q.n3);
mgl_printf(fp, gz, "np %g %g mt %g %g ll %g %g ll cp %sfill\n",
- Pnt[Prm[i].n1].x, Pnt[Prm[i].n1].y, Pnt[Prm[i].n2].x, Pnt[Prm[i].n2].y,
- Pnt[Prm[i].n3].x, Pnt[Prm[i].n3].y, str);
- else if(Prm[i].type==1) // line
+ p1.x, p1.y, p2.x, p2.y, p3.x, p3.y, str);
+ }
+ else if(q.type==1) // line
{
- sprintf(str,"%.2g lw %.2g %.2g %.2g rgb ", Prm[i].w>1 ? Prm[i].w:1., cp.r,cp.g,cp.b);
- wp = Prm[i].w>1 ? Prm[i].w:1; st = Prm[i].n3;
- put_line(fp,gz,i,wp,cp,st, "np %g %g mt ", "%g %g ll ", false);
- const char *sd = mgl_get_dash(Prm[i].n3,Prm[i].w);
- if(sd && sd[0]) mgl_printf(fp, gz, "%s [%s] %g sd dr\n",str,sd,Prm[i].w*Prm[i].s);
+ sprintf(str,"%.2g lw %.2g %.2g %.2g rgb ", q.w>1 ? q.w:1., cp.r,cp.g,cp.b);
+ wp = q.w>1 ? q.w:1; st = q.n3;
+ put_line(gr,fp,gz,i,wp,cp,st, "np %g %g mt ", "%g %g ll ", false);
+ const char *sd = mgl_get_dash(q.n3,q.w);
+ if(sd && sd[0]) mgl_printf(fp, gz, "%s [%s] %g sd dr\n",str,sd,q.w*q.s);
else mgl_printf(fp, gz, "%s d0 dr\n",str);
}
- else if(Prm[i].type==4) // glyph
+ else if(q.type==4) // glyph
{
- float ss = Prm[i].s/Prm[i].p/1.1, xx = Pnt[Prm[i].n1].u,
- yy = Pnt[Prm[i].n1].v, zz = Pnt[Prm[i].n1].w;
+ float ss = q.s/2, xx = p1.u, yy = p1.v, zz = p1.w;
mgl_printf(fp, gz, "gsave\t%g %g translate %g %g scale %g rotate %s\n",
- Pnt[Prm[i].n1].x, Pnt[Prm[i].n1].y, ss, ss, -Prm[i].w, str);
- if(Prm[i].n3&8) // this is "line"
+ p1.x, p1.y, ss, ss, -q.w, str);
+ if(q.n3&8) // this is "line"
{
float dy = 0.004,f=fabs(zz);
mgl_printf(fp, gz, "np %g %g mt %g %g ll %g %g ll %g %g ll cp ",
- xx,yy+dy, xx+f,yy+dy, xx+f,yy-dy, xx,yy-dy);
+ xx,yy+dy, xx+f,yy+dy, xx+f,yy-dy, xx,yy-dy);
}
else
mgl_printf(fp, gz, "%.3g %.3g translate %g %g scale %c%c_%04x ",
- xx, yy, zz, zz, Prm[i].n3&1?'b':'n',
- Prm[i].n3&2?'i':'n', Prm[i].n4);
- if(Prm[i].n3&4) mgl_printf(fp, gz, "dr");
+ xx, yy, zz, zz, q.n3&1?'b':'n', q.n3&2?'i':'n', q.n4);
+ if(q.n3&4) mgl_printf(fp, gz, "dr");
else mgl_printf(fp, gz, "eofill");
mgl_printf(fp, gz, " grestore\n");
}
}
- for(i=0;i<Prm.size();i++) if(Prm[i].type==-1) Prm[i].type = 1;
+ for(i=0;i<gr->GetPrmNum();i++)
+ {
+ mglPrim &q = gr->GetPrm(i);
+ if(q.type==-1) q.type = 1;
+ }
mgl_printf(fp, gz, "\nshowpage\n%%%%EOF\n");
- if(gz) gzclose(fp); else fclose((FILE *)fp);
+ if(gz) gzclose((gzFile)fp); else fclose((FILE *)fp);
}
+void mgl_write_eps_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+ mgl_write_eps(_GR_,s,d); delete []s; delete []d; }
//-----------------------------------------------------------------------------
-void mglCanvas::WriteSVG(const char *fname,const char *descr)
+void mgl_write_svg(HMGL gr, const char *fname,const char *descr)
{
- if(Prm.size()<1) return;
- if(!get(MGL_FINISHED)) Finish();
- time_t now;
- time(&now);
+ if(gr->GetPrmNum()<1) return;
+ _Gr_->Finish();
+ time_t now; time(&now);
bool gz = fname[strlen(fname)-1]=='z';
- void *fp = gz ? gzopen(fname,"wt") : fopen(fname,"wt");
- if(!fp) { SetWarn(mglWarnOpen,fname); return; }
+ long hh = _Gr_->GetHeight();
+ void *fp = gz ? (void*)gzopen(fname,"wt") : (void*)fopen(fname,"wt");
+ if(!fp) { gr->SetWarn(mglWarnOpen,fname); return; }
mgl_printf(fp, gz, "<?xml version=\"1.0\" standalone=\"no\"?>\n");
mgl_printf(fp, gz, "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 20000303 Stylable//EN\" \"http://www.w3.org/TR/2000/03/WD-SVG-20000303/DTD/svg-20000303-stylable.dtd\">\n");
- mgl_printf(fp, gz, "<svg width=\"%d\" height=\"%d\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",Width,Height);
+ mgl_printf(fp, gz, "<svg width=\"%d\" height=\"%d\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n", _Gr_->GetWidth(), hh);
mgl_printf(fp, gz, "<!--Creator: MathGL library-->\n");
mgl_printf(fp, gz, "<!--Title: %s-->\n<!--CreationDate: %s-->\n\n",descr?descr:fname,ctime(&now));
// write definition for all glyphs
- put_desc(fp,gz,"<symbol id=\"%c%c_%04x\"><path d=\"", "\tM %d %d ",
- "L %d %d ", "Z\n", "\"/></symbol>\n");
+ put_desc(gr,fp,gz,"<symbol id=\"%c%c_%04x\"><path d=\"", "\tM %d %d ",
+ "L %d %d ", "Z\n", "\"/></symbol>\n");
// currentColor -> inherit ???
mgl_printf(fp, gz, "<g fill=\"none\" stroke=\"none\" stroke-width=\"0.5\">\n");
// write primitives
@@ -249,276 +387,433 @@ void mglCanvas::WriteSVG(const char *fname,const char *descr)
int st=0;
mglColor cp;
- for(i=0;i<Prm.size();i++)
+ for(i=0;i<gr->GetPrmNum();i++)
{
- cp = put_color(Prm[i]);
- if(Prm[i].type==0)
+ const mglPrim &q = gr->GetPrm(i);
+ if(q.type<0) continue; // q.n1>=0 always
+ cp = _Gr_->GetColor(q);
+ const mglPnt p1=gr->GetPnt(q.n1);
+ if(q.type==0)
{
- float x=Pnt[Prm[i].n1].x,y=Pnt[Prm[i].n1].y,s=0.4*font_factor*Prm[i].s;
- if(!strchr("xsSoO",Prm[i].n4)) s *= 1.1;
+ float x=p1.x,y=p1.y,s=0.4*gr->FontFactor()*q.s;
+ if(!strchr("xsSoO",q.n4)) s *= 1.1;
wp = 1;
- if(strchr("SDVTLR",Prm[i].n4))
- mgl_printf(fp, gz, "<g fill=\"#%02x%02x%02x\">\n",
- int(255*cp.r),int(255*cp.g),int(255*cp.b));
+ if(strchr("SDVTLR",q.n4))
+ mgl_printf(fp, gz, "<g fill=\"#%02x%02x%02x\">\n", int(255*cp.r),int(255*cp.g),int(255*cp.b));
else
- mgl_printf(fp, gz, "<g stroke=\"#%02x%02x%02x\">\n",
- int(255*cp.r),int(255*cp.g),int(255*cp.b));
- switch(Prm[i].n4)
+ mgl_printf(fp, gz, "<g stroke=\"#%02x%02x%02x\">\n", int(255*cp.r),int(255*cp.g),int(255*cp.b));
+ switch(q.n4)
{
case 'P':
mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g M %g %g L %g %g M %g %g L %g %g L %g %g L %g %g L %g %g\"/>\n", x-s,y,x+s,y,x,y-s,x,y+s, x-s,y-s,x+s,y-s,x+s,y+s,x-s,y+s,x-s,y-s); break;
case '+':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g M %g %g L %g %g\"/>\n",
- x-s,y,x+s,y,x,y-s,x,y+s); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g M %g %g L %g %g\"/>\n", x-s,y,x+s,y,x,y-s,x,y+s); break;
case 'X':
mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g M %g %g L %g %g M %g %g L %g %g L %g %g L %g %g L %g %g\"/>\n", x-s,y-s,x+s,y+s,x+s,y-s,x-s,y+s, x-s,y-s,x+s,y-s,x+s,y+s,x-s,y+s,x-s,y-s); break;
case 'x':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g M %g %g L %g %g\"/>\n",
- x-s,y-s,x+s,y+s,x+s,y-s,x-s,y+s); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g M %g %g L %g %g\"/>\n", x-s,y-s,x+s,y+s,x+s,y-s,x-s,y+s); break;
case 's':
case 'S':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g L %g %gZ\"/>\n",
- x-s,y-s,x+s,y-s,x+s,y+s,x-s,y+s); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g L %g %gZ\"/>\n", x-s,y-s,x+s,y-s,x+s,y+s,x-s,y+s); break;
case 'd':
case 'D':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g L %g %gZ\"/>\n",
- x-s,y,x,y-s,x+s,y,x,y+s); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g L %g %gZ\"/>\n", x-s,y,x,y-s,x+s,y,x,y+s); break;
case '^':
case 'T':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %gZ\"/>\n",
- x-s,y+s/2,x+s,y+s/2,x,y-s); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %gZ\"/>\n", x-s,y+s/2,x+s,y+s/2,x,y-s); break;
case 'v':
case 'V':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %gZ\"/>\n",
- x-s,y-s/2,x+s,y-s/2,x,y+s); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %gZ\"/>\n", x-s,y-s/2,x+s,y-s/2,x,y+s); break;
case '<':
case 'L':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %gZ\"/>\n",
- x+s/2,y+s,x+s/2,y-s,x-s,y); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %gZ\"/>\n", x+s/2,y+s,x+s/2,y-s,x-s,y); break;
case '>':
case 'R':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %gZ\"/>\n",
- x-s/2,y+s,x-s/2,y-s,x+s,y); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %gZ\"/>\n", x-s/2,y+s,x-s/2,y-s,x+s,y); break;
case 'Y':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g M %g %g L %g %g\"/>\n",
- x,y+s, x,y, x+s,y-s, x,y, x-s,y-s); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g M %g %g L %g %g\"/>\n", x,y+s, x,y, x+s,y-s, x,y, x-s,y-s); break;
case 'C':
mgl_printf(fp, gz, "<circle style=\"fill:#%02x%02x%02x\" cx=\"%g\" cy=\"%g\" r=\"0.15\"/>\n<circle cx=\"%g\" cy=\"%g\" r=\"%g\"/>\n", int(255*cp.r),int(255*cp.g),int(255*cp.b),x,y,x,y,s); break;
case 'o':
- mgl_printf(fp, gz, "<circle cx=\"%g\" cy=\"%g\" r=\"%g\"/>\n",
- x,y,s); break;
+ mgl_printf(fp, gz, "<circle cx=\"%g\" cy=\"%g\" r=\"%g\"/>\n", x,y,s); break;
case 'O':
- mgl_printf(fp, gz, "<circle style=\"fill:#%02x%02x%02x\" cx=\"%g\" cy=\"%g\" r=\"%g\"/>\n",
- int(255*cp.r),int(255*cp.g),int(255*cp.b),x,y,s); break;
+ mgl_printf(fp, gz, "<circle style=\"fill:#%02x%02x%02x\" cx=\"%g\" cy=\"%g\" r=\"%g\"/>\n", int(255*cp.r),int(255*cp.g),int(255*cp.b),x,y,s); break;
case '*':
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g M %g %g L %g %g M %g %g L %g %g\"/>\n",
- x-s,y,x+s,y,x-0.8*s,y-1.6*s,x+0.8*s,y+1.6*s,x+0.8*s,y-1.6*s,x-0.8*s,y+1.6*s); break;
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g M %g %g L %g %g M %g %g L %g %g\"/>\n", x-s,y,x+s,y,x-0.6*s,y-0.8*s,x+0.6*s,y+0.8*s,x+0.6*s,y-0.8*s,x-0.6*s,y+0.8*s); break;
default:
- mgl_printf(fp, gz, "<circle style=\"fill:#%02x%02x%02x\" cx=\"%g\" cy=\"%g\" r=\"0.15\"/>\n",
- int(255*cp.r),int(255*cp.g),int(255*cp.b),x,y); break;
+ mgl_printf(fp, gz, "<circle style=\"fill:#%02x%02x%02x\" cx=\"%g\" cy=\"%g\" r=\"0.15\"/>\n", int(255*cp.r),int(255*cp.g),int(255*cp.b),x,y); break;
}
mgl_printf(fp, gz, "</g>\n");
}
- else if(Prm[i].type==2 && cp.a>0)
+ else if(q.type==2 && cp.a>0)
{
- mgl_printf(fp, gz, "<g fill=\"#%02x%02x%02x\" opacity=\"%g\">\n",
- int(255*cp.r),int(255*cp.g),int(255*cp.b),cp.a);
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g Z\"/> </g>\n",
- Pnt[Prm[i].n1].x, Height-Pnt[Prm[i].n1].y, Pnt[Prm[i].n2].x, Height-Pnt[Prm[i].n2].y,
- Pnt[Prm[i].n3].x, Height-Pnt[Prm[i].n3].y);
+ const mglPnt p2=gr->GetPnt(q.n2), p3=gr->GetPnt(q.n3);
+ mgl_printf(fp, gz, "<g fill=\"#%02x%02x%02x\" opacity=\"%g\">\n", int(255*cp.r),int(255*cp.g),int(255*cp.b),cp.a);
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g Z\"/> </g>\n", p1.x, hh-p1.y, p2.x, hh-p2.y, p3.x, hh-p3.y);
}
- else if(Prm[i].type==3 && cp.a>0)
+ else if(q.type==3 && cp.a>0)
{
- mgl_printf(fp, gz, "<g fill=\"#%02x%02x%02x\" opacity=\"%g\">\n",
- int(255*cp.r),int(255*cp.g),int(255*cp.b),cp.a);
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g L %g %g Z\"/> </g>\n",
- Pnt[Prm[i].n1].x, Height-Pnt[Prm[i].n1].y, Pnt[Prm[i].n2].x, Height-Pnt[Prm[i].n2].y,
- Pnt[Prm[i].n3].x, Height-Pnt[Prm[i].n3].y, Pnt[Prm[i].n4].x, Height-Pnt[Prm[i].n4].y);
+ const mglPnt p2=gr->GetPnt(q.n2), p3=gr->GetPnt(q.n3), p4=gr->GetPnt(q.n4);
+ mgl_printf(fp, gz, "<g fill=\"#%02x%02x%02x\" opacity=\"%g\">\n", int(255*cp.r),int(255*cp.g),int(255*cp.b),cp.a);
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g L %g %g Z\"/> </g>\n", p1.x, hh-p1.y, p2.x, hh-p2.y, p4.x, hh-p4.y, p3.x, hh-p3.y);
}
- else if(Prm[i].type==1)
+ else if(q.type==1)
{
-// const char *dash[]={"", "8 8","4 4","1 3","7 4 1 4","3 2 1 2"};
+ // const char *dash[]={"", "8 8","4 4","1 3","7 4 1 4","3 2 1 2"};
mgl_printf(fp,gz,"<g stroke=\"#%02x%02x%02x\"",int(255*cp.r),int(255*cp.g),int(255*cp.b));
- if(Prm[i].n3)
+ if(q.n3)
{
- mgl_printf(fp, gz, " stroke-dasharray=\"%s\"", mgl_get_dash(Prm[i].n3,Prm[i].w));
- mgl_printf(fp, gz, " stroke-dashoffset=\"%g\"", Prm[i].s*Prm[i].w);
+ mgl_printf(fp, gz, " stroke-dasharray=\"%s\"", mgl_get_dash(q.n3,q.w));
+ mgl_printf(fp, gz, " stroke-dashoffset=\"%g\"", q.s*q.w);
}
- if(Prm[i].w>1) mgl_printf(fp, gz, " stroke-width=\"%g\"", Prm[i].w);
- wp = Prm[i].w>1 ? Prm[i].w:1; st = Prm[i].n3;
- put_line(fp,gz,i,wp,cp,st, "><path d=\" M %g %g", " L %g %g", true);
+ if(q.w>1) mgl_printf(fp, gz, " stroke-width=\"%g\"", q.w);
+ wp = q.w>1 ? q.w:1; st = q.n3;
+ put_line(gr,fp,gz,i,wp,cp,st, "><path d=\" M %g %g", " L %g %g", true);
mgl_printf(fp, gz, "\"/> </g>\n");
}
- else if(Prm[i].type==4)
+ else if(q.type==4)
{
- float ss = Prm[i].s/2, xx = Pnt[Prm[i].n1].u, yy = Pnt[Prm[i].n1].v, zz = Pnt[Prm[i].n1].w;
- if(Prm[i].n3&8) // this is "line"
+ float ss = q.s/2, xx = p1.u, yy = p1.v, zz = p1.w;
+ if(q.n3&8) // this is "line"
{
- mgl_printf(fp, gz, "<g transform=\"translate(%g,%g) scale(%.3g,%.3g) rotate(%g)\"",
- Pnt[Prm[i].n1].x, Height-Pnt[Prm[i].n1].y, ss, -ss, -Prm[i].w);
- if(Prm[i].n3&4)
+ mgl_printf(fp, gz, "<g transform=\"translate(%g,%g) scale(%.3g,%.3g) rotate(%g)\"", p1.x, hh-p1.y, ss, -ss, -q.w);
+ if(q.n3&4)
mgl_printf(fp, gz, " stroke=\"#%02x%02x%02x\">", int(255*cp.r),int(255*cp.g),int(255*cp.b));
else
mgl_printf(fp, gz, " fill=\"#%02x%02x%02x\">", int(255*cp.r),int(255*cp.g),int(255*cp.b));
float dy = 0.004,f=fabs(zz);
- mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g L %g %g\"/></g>\n",
- xx,yy+dy, xx+f,yy+dy, xx+f,yy-dy, xx,yy-dy);
+ mgl_printf(fp, gz, "<path d=\"M %g %g L %g %g L %g %g L %g %g\"/></g>\n", xx,yy+dy, xx+f,yy+dy, xx+f,yy-dy, xx,yy-dy);
}
else
{
ss *= zz;
- mgl_printf(fp, gz, "<g transform=\"translate(%g,%g) scale(%.3g,%.3g) rotate(%g)\"",
- Pnt[Prm[i].n1].x, Height-Pnt[Prm[i].n1].y, ss, -ss, -Prm[i].w);
- if(Prm[i].n3&4)
+ mgl_printf(fp, gz, "<g transform=\"translate(%g,%g) scale(%.3g,%.3g) rotate(%g)\"", p1.x, hh-p1.y, ss, -ss, -q.w);
+ if(q.n3&4)
mgl_printf(fp, gz, " stroke=\"#%02x%02x%02x\">", int(255*cp.r),int(255*cp.g),int(255*cp.b));
else
mgl_printf(fp, gz, " fill=\"#%02x%02x%02x\">", int(255*cp.r),int(255*cp.g),int(255*cp.b));
- mgl_printf(fp, gz, "<use x=\"%g\" y=\"%g\" xlink:href=\"#%c%c_%04x\"/></g>\n",
- xx/zz, yy/zz, Prm[i].n3&1?'b':'n',
- Prm[i].n3&2?'i':'n', Prm[i].n4);
+ mgl_printf(fp, gz, "<use x=\"%g\" y=\"%g\" xlink:href=\"#%c%c_%04x\"/></g>\n", xx/zz, yy/zz, q.n3&1?'b':'n', q.n3&2?'i':'n', q.n4);
}
}
}
- for(i=0;i<Prm.size();i++) if(Prm[i].type==-1) Prm[i].type = 1;
+ for(i=0;i<gr->GetPrmNum();i++)
+ { mglPrim &q=gr->GetPrm(i); if(q.type==-1) q.type = 1; }
mgl_printf(fp, gz, "</g></svg>");
- if(gz) gzclose(fp); else fclose((FILE *)fp);
+ if(gz) gzclose((gzFile)fp); else fclose((FILE *)fp);
}
+void mgl_write_svg_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+ mgl_write_svg(_GR_,s,d); delete []s; delete []d; }
+//-----------------------------------------------------------------------------
+/// Color names easely parsed by LaTeX
+struct mglSVGName { const char *name; float r,g,b; };
+mglSVGName mgl_names[]={{"AliceBlue",.94,.972,1},
+{"AntiqueWhite",.98,.92,.844},
+{"Aqua",0,1,1},
+{"Aquamarine",.498,1,.83},
+{"Azure",.94,1,1},
+{"Beige",.96,.96,.864},
+{"Bisque",1,.894,.77},
+{"Black",0,0,0},
+{"BlanchedAlmond",1,.92,.804},
+{"Blue",0,0,1},
+{"BlueViolet",.54,.17,.888},
+{"Brown,.648",.165,.165},
+{"BurlyWood",.87,.72,.53},
+{"CadetBlue",.372,.62,.628},
+{"Chartreuse",.498,1,0},
+{"Chocolate",.824,.41,.116},
+{"Coral",1,.498,.312},
+{"CornflowerBlue",.392,.585,.93},
+{"Cornsilk",1,.972,.864},
+{"Crimson",.864,.08,.235},
+{"Cyan",0,1,1},
+{"DarkBlue",0,0,.545},
+{"DarkCyan",0,.545,.545},
+{"DarkGoldenrod",.72,.525,.044},
+{"DarkGray",.664,.664,.664},
+{"DarkGreen",0,.392,0},
+{"DarkGrey",.664,.664,.664},
+{"DarkKhaki",.74,.716,.42},
+{"DarkMagenta",.545,0,.545},
+{"DarkOliveGreen",.332,.42,.185},
+{"DarkOrange",1,.55,0},
+{"DarkOrchid",.6,.196,.8},
+{"DarkRed",.545,0,0},
+{"DarkSalmon",.912,.59,.48},
+{"DarkSeaGreen",.56,.736,.56},
+{"DarkSlateBlue",.284,.24,.545},
+{"DarkSlateGray",.185,.31,.31},
+{"DarkSlateGrey",.185,.31,.31},
+{"DarkTurquoise",0,.808,.82},
+{"DarkViolet",.58,0,.828},
+{"DeepPink",1,.08,.576},
+{"DeepSkyBlue",0,.75,1},
+{"DimGray",.41,.41,.41},
+{"DimGrey",.41,.41,.41},
+{"DodgerBlue",.116,.565,1},
+{"FireBrick",.698,.132,.132},
+{"FloralWhite",1,.98,.94},
+{"ForestGreen",.132,.545,.132},
+{"Fuchsia",1,0,1},
+{"Gainsboro",.864,.864,.864},
+{"GhostWhite",.972,.972,1},
+{"Gold",1,.844,0},
+{"Goldenrod",.855,.648,.125},
+{"Gray",.5,.5,.5},
+{"Green",0,.5,0},
+{"GreenYellow",.68,1,.185},
+{"Grey",.5,.5,.5},
+{"Honeydew",.94,1,.94},
+{"HotPink",1,.41,.705},
+{"IndianRed",.804,.36,.36},
+{"Indigo",.294,0,.51},
+{"Ivory",1,1,.94},
+{"Khaki",.94,.9,.55},
+{"Lavender",.9,.9,.98},
+{"LavenderBlush",1,.94,.96},
+{"LawnGreen",.488,.99,0},
+{"LemonChiffon",1,.98,.804},
+{"LightBlue",.68,.848,.9},
+{"LightCoral",.94,.5,.5},
+{"LightCyan",.88,1,1},
+{"LightGoldenrod",.933,.867,.51},
+{"LightGoldenrodYellow",.98,.98,.824},
+{"LightGray",.828,.828,.828},
+{"LightGreen",.565,.932,.565},
+{"LightGrey",.828,.828,.828},
+{"LightPink",1,.712,.756},
+{"LightSalmon",1,.628,.48},
+{"LightSeaGreen",.125,.698,.668},
+{"LightSkyBlue",.53,.808,.98},
+{"LightSlateBlue",.518,.44,1},
+{"LightSlateGray",.468,.532,.6},
+{"LightSlateGrey",.468,.532,.6},
+{"LightSteelBlue",.69,.77,.87},
+{"LightYellow",1,1,.88},
+{"Lime",0,1,0},
+{"LimeGreen",.196,.804,.196},
+{"Linen",.98,.94,.9},
+{"Magenta",1,0,1},
+{"Maroon",.5,0,0},
+{"MediumAquamarine",.4,.804,.668},
+{"MediumBlue",0,0,.804},
+{"MediumOrchid",.73,.332,.828},
+{"MediumPurple",.576,.44,.86},
+{"MediumSeaGreen",.235,.7,.444},
+{"MediumSlateBlue",.484,.408,.932},
+{"MediumSpringGreen",0,.98,.604},
+{"MediumTurquoise",.284,.82,.8},
+{"MediumVioletRed",.78,.084,.52},
+{"MidnightBlue",.098,.098,.44},
+{"MintCream",.96,1,.98},
+{"MistyRose",1,.894,.884},
+{"Moccasin",1,.894,.71},
+{"NavajoWhite",1,.87,.68},
+{"Navy",0,0,.5},
+{"NavyBlue",0,0,.5},
+{"OldLace",.992,.96,.9},
+{"Olive",.5,.5,0},
+{"OliveDrab",.42,.556,.136},
+{"Orange",1,.648,0},
+{"OrangeRed",1,.27,0},
+{"Orchid",.855,.44,.84},
+{"PaleGoldenrod",.932,.91,.668},
+{"PaleGreen",.596,.985,.596},
+{"PaleTurquoise",.688,.932,.932},
+{"PaleVioletRed",.86,.44,.576},
+{"PapayaWhip",1,.936,.835},
+{"PeachPuff",1,.855,.725},
+{"Peru",.804,.52,.248},
+{"Pink",1,.752,.796},
+{"Plum",.868,.628,.868},
+{"PowderBlue",.69,.88,.9},
+{"Purple",.5,0,.5},
+{"Red",1,0,0},
+{"RosyBrown",.736,.56,.56},
+{"RoyalBlue",.255,.41,.884},
+{"SaddleBrown",.545,.27,.075},
+{"Salmon",.98,.5,.448},
+{"SandyBrown",.956,.644,.376},
+{"SeaGreen",.18,.545,.34},
+{"Seashell",1,.96,.932},
+{"Sienna",.628,.32,.176},
+{"Silver",.752,.752,.752},
+{"SkyBlue",.53,.808,.92},
+{"SlateBlue",.415,.352,.804},
+{"SlateGray",.44,.5,.565},
+{"SlateGrey",.44,.5,.565},
+{"Snow",1,.98,.98},
+{"SpringGreen",0,1,.498},
+{"SteelBlue",.275,.51,.705},
+{"Tan",.824,.705,.55},
+{"Teal",0,.5,.5},
+{"Thistle",.848,.75,.848},
+{"Tomato",1,.39,.28},
+{"Turquoise",.25,.88,.815},
+{"Violet",.932,.51,.932},
+{"VioletRed",.816,.125,.565},
+{"Wheat",.96,.87,.7},
+{"White",1,1,1},
+{"WhiteSmoke",.96,.96,.96},
+{"Yellow",1,1,0},
+{"YellowGreen",.604,.804,.196},
+{"",-1,-1,-1}};
//-----------------------------------------------------------------------------
-#define xx(i,n) (Pnt[Prm[i].n].x)
-#define yy(i,n) (Pnt[Prm[i].n].y)
-void mglCanvas::put_line(void *fp, bool gz, long i, float wp, mglColor cp,int st, const char *ifmt, const char *nfmt, bool neg)
+const char *mglColorName(mglColor c) // return closest SVG color
{
- float x0=xx(i,n1), y0=yy(i,n1);
- bool ok=true;
- register unsigned long k = i,j; // first point
- while(ok)
- {
- for(ok=false,j=i+1;j<Prm.size() && Prm[j].type<2;j++)
- if(IsSame(Prm[j],wp,cp,st) && Prm[j].type==1)
- { // previous point
- if(xx(j,n2)==x0 && yy(j,n2)==y0)
- {
- k=j; ok=true; Prm[k].type = -2;
- x0 = xx(k,n1); y0=yy(k,n1);
- }
- else if(xx(j,n1)==x0 && yy(j,n1)==y0)
- {
- k=j; ok=true; Prm[k].type = -2;
- x0 = xx(k,n2); y0=yy(k,n2);
- }
- }
- }
- for(j=i;j<Prm.size() ;j++) if(Prm[j].type==-2) Prm[j].type = 1;
- mgl_printf(fp, gz, ifmt,x0,neg?Height-y0:y0); ok=true;
- long m=1;
- while(ok)
+ register long i;
+ register float d, dm=10;
+ const char *name="";
+ for(i=0;mgl_names[i].name[0];i++)
{
- for(ok=false,j=i;j<Prm.size() && Prm[j].type<2;j++)
- if(IsSame(Prm[j],wp,cp,st) && Prm[j].type==1)
- {
- if(xx(j,n1)==x0 && yy(j,n1)==y0)
- {
- k=j; Prm[k].type = -1;
- x0 = xx(k,n2); y0=yy(k,n2);
- mgl_printf(fp, gz, nfmt,x0,neg?Height-y0:y0);
- if(m>10) { m=0; mgl_printf(fp, gz, "\n"); }
- ok=true; m++;
- }
- else if(xx(j,n2)==x0 && yy(j,n2)==y0)
- {
- k=j; Prm[k].type = -1;
- x0 = xx(k,n1); y0=yy(k,n1);
- mgl_printf(fp, gz, nfmt,x0,neg?Height-y0:y0);
- if(m>10) { m=0; mgl_printf(fp, gz, "\n"); }
- ok=true; m++;
- }
- }
+ d = fabs(c.r-mgl_names[i].r)+fabs(c.g-mgl_names[i].g)+fabs(c.b-mgl_names[i].b);
+ if(d<dm) { dm=d; name=mgl_names[i].name; }
}
+ return name;
}
//-----------------------------------------------------------------------------
-//put_desc(fp,"%c%c%c_%04x {", "np %d %d mt %d %d ll %d %d ll cp fill\n",
-//"np %d %d mt ", "%d %d ll ", "cp dr\n", "} def")
-void mglCanvas::put_desc(void *fp, bool gz, const char *pre, const char *ln1, const char *ln2, const char *ln3, const char *suf)
+void mgl_write_tex(HMGL gr, const char *fname,const char *descr)
{
- register unsigned long i,j,n;
- wchar_t *g;
- int *s;
- for(n=i=0;i<Prm.size();i++) if(Prm[i].type==4) n++;
- if(n==0) return; // no glyphs
- g = new wchar_t[n]; s = new int[n];
- for(n=i=0;i<Prm.size();i++)
+ if(gr->GetPrmNum()<1) return;
+ _Gr_->Finish();
+ FILE *fp = fopen(fname,"wt");
+ if(!fp) { gr->SetWarn(mglWarnOpen,fname); return; }
+ fprintf(fp, "%% Creator: MathGL library\n%% Title: %s\n\\begin{tikzpicture}\n",descr?descr:fname);
+ fprintf(fp, "\\providecommand{mgl1}{%g}\n",0.4*gr->mark_size());
+ fprintf(fp, "\\providecommand{mgl2}{%g}\n",0.2*gr->mark_size());
+
+ // write primitives
+ float wp=-1;
+ register unsigned long i;
+ int st=0;
+ mglColor cp;
+ const char *cname;
+
+ // add mark definition if present
+ bool m_p=false,m_x=false,m_d=false,m_v=false,m_t=false,
+ m_s=false,m_a=false,m_o=false,m_O=false,m_T=false,
+ m_V=false,m_S=false,m_D=false,m_Y=false,m_l=false,
+ m_L=false,m_r=false,m_R=false,m_X=false,m_P=false;
+ for(i=0;i<gr->GetPrmNum();i++)
{
- if(Prm[i].type!=4 || (Prm[i].n3&8)) continue; // not a glyph
- bool is=false;
- for(j=0;j<n;j++) if(g[j]==Prm[i].n4 && s[j]==(Prm[i].n3&7)) is = true;
- if(is) continue; // glyph is described
- // have to describe
- g[n]=Prm[i].n4; s[n]=Prm[i].n3&7; n++; // add to list of described
- // "%c%c%c_%04x {"
- mgl_printf(fp, gz, pre, Prm[i].n3&1?'b':'n', Prm[i].n3&2?'i':'n', Prm[i].n4);
- int nl=fnt->GetNl(Prm[i].n3&3,Prm[i].n4); // TODO: add after font enabled
- const short *ln=fnt->GetLn(Prm[i].n3&3,Prm[i].n4);
- long ik,ii;
- bool np=true;
- if(ln && nl>0) for(ik=0;ik<nl;ik++)
- {
- ii = 2*ik;
- if(ln[ii]==0x3fff && ln[ii+1]==0x3fff) // line breakthrough
- { mgl_printf(fp, gz, "%s",ln3); np=true; continue; }
- else if(np) mgl_printf(fp, gz, ln1,ln[ii],ln[ii+1]);
- else mgl_printf(fp, gz, ln2,ln[ii],ln[ii+1]);
- np=false;
- }
- mgl_printf(fp, gz, "%s%s",ln3,suf); // finish glyph description suf="} def"
+ const mglPrim q = gr->GetPrm(i);
+ if(q.type>0) continue; if(q.n4=='+') m_p = true;
+ if(q.n4=='x') m_x = true; if(q.n4=='s') m_s = true;
+ if(q.n4=='d') m_d = true; if(q.n4=='v') m_v = true;
+ if(q.n4=='^') m_t = true; if(q.n4=='*') m_a = true;
+ if(q.n4=='O') m_O = true; if(q.n4=='o' || q.n4=='C') m_o = true;
+ if(q.n4=='S') m_S = true; if(q.n4=='D') m_D = true;
+ if(q.n4=='V') m_V = true; if(q.n4=='T') m_T = true;
+ if(q.n4=='<') m_l = true; if(q.n4=='L') m_L = true;
+ if(q.n4=='>') m_r = true; if(q.n4=='R') m_R = true;
+ if(q.n4=='Y') m_Y = true;
+ if(q.n4=='P') m_P = true; if(q.n4=='X') m_X = true;
}
- delete []g; delete []s;
-}
-//-----------------------------------------------------------------------------
-mglColor mglCanvas::put_color(const mglPrim &p)
-{
- const mglPnt &q=Pnt[(p.type==1 ? p.n2:p.n1)];
- mglColor c(q.r,q.g,q.b,q.a);
+ if(m_P) { m_p=true; m_s=true; }
+ if(m_X) { m_x=true; m_s=true; }
+ if(m_p) fprintf(fp, "\\providecommand{mglp}[3]{\\draw[#3] (#1-\\mgl1, #2) -- (#1+\\mgl1,#2) (#1,#2-\\mgl1) -- (#1,#2+\\mgl1);}\n");
+ if(m_x) fprintf(fp, "\\providecommand{mglx}[3]{\\draw[#3] (#1-\\mgl1, #2-\\mgl1) -- (#1+\\mgl1,#2+\\mgl1) (#1+\\mgl1,#2-\\mgl1) -- (#1-\\mgl1,#2+\\mgl1);}\n");
+ if(m_s) fprintf(fp, "\\providecommand{mgls}[3]{\\draw[#3] (#1-\\mgl1, #2-\\mgl1) -- (#1+\\mgl1,#2-\\mgl1) -- (#1+\\mgl1,#2+\\mgl1) -- (#1-\\mgl1,#2+\\mgl1) -- cycle;}\n");
+ if(m_S) fprintf(fp, "\\providecommand{mglS}[3]{\\fill[#3] (#1-\\mgl1, #2-\\mgl1) -- (#1+\\mgl1,#2-\\mgl1) -- (#1+\\mgl1,#2+\\mgl1) -- (#1-\\mgl1,#2+\\mgl1) -- cycle;}\n");
+ if(m_d) fprintf(fp, "\\providecommand{mgld}[3]{\\draw[#3] (#1, #2-\\mgl1) -- (#1+\\mgl1,#2) -- (#1,#2+\\mgl1) -- (#1-\\mgl1,#2) -- cycle;}\n");
+ if(m_D) fprintf(fp, "\\providecommand{mglD}[3]{\\fill[#3] (#1, #2-\\mgl1) -- (#1+\\mgl1,#2) -- (#1,#2+\\mgl1) -- (#1-\\mgl1,#2) -- cycle;}\n");
+ if(m_v) fprintf(fp, "\\providecommand{mglv}[3]{\\draw[#3] (#1-\\mgl1, #2+\\mgl2) -- (#1+\\mgl1,#2+\\mgl2) -- (#1,#2-\\mgl1) -- cycle;}\n");
+ if(m_V) fprintf(fp, "\\providecommand{mglV}[3]{\\fill[#3] (#1-\\mgl1, #2+\\mgl2) -- (#1+\\mgl1,#2+\\mgl2) -- (#1,#2-\\mgl1) -- cycle;}\n");
+ if(m_t) fprintf(fp, "\\providecommand{mglt}[3]{\\draw[#3] (#1-\\mgl1, #2-\\mgl2) -- (#1+\\mgl1,#2-\\mgl2) -- (#1,#2+\\mgl1) -- cycle;}\n");
+ if(m_T) fprintf(fp, "\\providecommand{mglT}[3]{\\fill[#3] (#1-\\mgl1, #2-\\mgl2) -- (#1+\\mgl1,#2-\\mgl2) -- (#1,#2+\\mgl1) -- cycle;}\n");
+ if(m_l) fprintf(fp, "\\providecommand{mgll}[3]{\\draw[#3] (#1+\\mgl2, #2-\\mgl1) -- (#1+\\mgl2,#2+\\mgl1) -- (#1-\\mgl1,#2) -- cycle;}\n");
+ if(m_L) fprintf(fp, "\\providecommand{mglL}[3]{\\fill[#3] (#1+\\mgl2, #2-\\mgl1) -- (#1+\\mgl2,#2+\\mgl1) -- (#1-\\mgl1,#2) -- cycle;}\n");
+ if(m_r) fprintf(fp, "\\providecommand{mglr}[3]{\\draw[#3] (#1-\\mgl2, #2-\\mgl1) -- (#1-\\mgl2,#2+\\mgl1) -- (#1+\\mgl1,#2) -- cycle;}\n");
+ if(m_R) fprintf(fp, "\\providecommand{mglR}[3]{\\fill[#3] (#1-\\mgl2, #2-\\mgl1) -- (#1-\\mgl2,#2+\\mgl1) -- (#1+\\mgl1,#2) -- cycle;}\n");
+ if(m_Y) fprintf(fp, "\\providecommand{mglR}[3]{\\draw[#3] (#1, #2-\\mgl1) -- (#1,#2) -- (#1-\\mgl1,#2+\\mgl1) (#1,#2) -- (#1+\\mgl1,#2+\\mgl1);}\n");
+ if(m_a) fprintf(fp, "\\providecommand{mgla}[3]{\\draw[#3] (#1-\\mgl1, #2) -- (#1+\\mgl1,#2) (#1-0.6*\\mgl1,#2-0.8*\\mgl1) -- (#1+0.6*\\mgl1,#2+0.8*\\mgl1) (#1-0.6*\\mgl1,#2+0.8*\\mgl1) -- (#1+0.6*\\mgl1,#2-0.8*\\mgl1);}\n");
+ if(m_o) fprintf(fp, "\\providecommand{mglo}[3]{\\draw[#3] (#1, #2) circle (\\mgl1);}\n");
+ if(m_O) fprintf(fp, "\\providecommand{mglO}[3]{\\fill[#3] (#1, #2) circle (\\mgl1);}\n");
+ // dots command is provided in any case
+ fprintf(fp, "\\providecommand{mglc}[3]{\\draw[#3] (#1, #2) circle (0.1*\\mgl1);}\n\n");
- if(get(MGL_ENABLE_LIGHT) && !isnan(q.u))
+ for(i=0;i<gr->GetPrmNum();i++)
{
- float d0,d1,d2,nn;
- c *= AmbBr;
- register long i;
- for(i=0;i<10;i++)
+ const mglPrim &q = gr->GetPrm(i);
+ if(q.type<0) continue; // q.n1>=0 always
+ cp = _Gr_->GetColor(q); cname = mglColorName(cp);
+ const mglPnt p1=gr->GetPnt(q.n1);
+ float x=p1.x,y=p1.y,s=0.4*gr->FontFactor()*q.s;
+ if(q.type==0)
{
- if(!light[i].n) continue;
- nn = 2*(q.u*light[i].p.x+q.v*light[i].p.y+q.w*light[i].p.z) /
- (q.u*q.u+q.v*q.v+q.w*q.w+1e-6);
- d0 = light[i].p.x - q.u*nn;
- d1 = light[i].p.y - q.v*nn;
- d2 = light[i].p.z - q.w*nn;
- nn = 1 + d2/sqrt(d0*d0+d1*d1+d2*d2+1e-6);
-
- nn = exp(-light[i].a*nn)*light[i].b*2;
- c += nn*light[i].c;
+ if(!strchr("xsSoO",q.n4)) s *= 1.1;
+ wp = 1;
+ switch(q.n4) // TODO up to here !!!!!!!!!!!!!!!!!!!!
+ {
+ case 'P':
+ fprintf(fp, "\\mglp{%g}{%g}{%s} \\mgls{%g}{%g}{%s}\n", x,y,cname,x,y,cname); break;
+ case 'X':
+ fprintf(fp, "\\mglx{%g}{%g}{%s} \\mgls{%g}{%g}{%s}\n", x,y,cname,x,y,cname); break;
+ case 'C':
+ fprintf(fp, "\\mglc{%g}{%g}{%s} \\mglo{%g}{%g}{%s}\n", x,y,cname,x,y,cname); break;
+ case '+': fprintf(fp, "\\mglp{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'x': fprintf(fp, "\\mglx{%g}{%g}{%s}\n", x,y,cname); break;
+ case 's': fprintf(fp, "\\mgls{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'S': fprintf(fp, "\\mglS{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'd': fprintf(fp, "\\mgld{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'D': fprintf(fp, "\\mglD{%g}{%g}{%s}\n", x,y,cname); break;
+ case '^': fprintf(fp, "\\mglt{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'T': fprintf(fp, "\\mglT{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'v': fprintf(fp, "\\mglv{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'V': fprintf(fp, "\\mglV{%g}{%g}{%s}\n", x,y,cname); break;
+ case '<': fprintf(fp, "\\mgll{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'L': fprintf(fp, "\\mglL{%g}{%g}{%s}\n", x,y,cname); break;
+ case '>': fprintf(fp, "\\mglr{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'R': fprintf(fp, "\\mglR{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'Y': fprintf(fp, "\\mglY{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'o': fprintf(fp, "\\mglo{%g}{%g}{%s}\n", x,y,cname); break;
+ case 'O': fprintf(fp, "\\mglO{%g}{%g}{%s}\n", x,y,cname); break;
+ case '*': fprintf(fp, "\\mgla{%g}{%g}{%s}\n", x,y,cname); break;
+ default: fprintf(fp, "\\mglc{%g}{%g}{%s}\n", x,y,cname); break;
+ }
+ }
+ else if(q.type==2 && cp.a>0)
+ {
+ const mglPnt p2=gr->GetPnt(q.n2), p3=gr->GetPnt(q.n3);
+ fprintf(fp, "\\fill[%s, fill opacity=%g] (%g,%g) -- (%g,%g) -- (%g,%g) -- cycle;\n", cname,cp.a, x,y, p2.x,p2.y, p3.x,p3.y);
+ }
+ else if(q.type==3 && cp.a>0)
+ {
+ const mglPnt p2=gr->GetPnt(q.n2), p3=gr->GetPnt(q.n3), p4=gr->GetPnt(q.n4);
+ fprintf(fp, "\\fill[%s, fill opacity=%g] (%g,%g) -- (%g,%g) -- (%g,%g) -- (%g,%g) -- cycle;\n", cname,cp.a, x,y, p2.x,p2.y, p3.x,p3.y, p4.x,p4.y);
+ }
+ else if(q.type==1) // lines
+ {
+ // const char *dash[]={"", "8 8","4 4","1 3","7 4 1 4","3 2 1 2"};
+ const char *w[]={"semithick","thick","very thick","ultra thick"};
+ register int iw=int(q.w-0.5); if(iw>3) iw=3;
+ if(iw<0) fprintf(fp,"\\draw[%s] ",cname);
+ else fprintf(fp,"\\draw[%s,%s] ",cname,w[iw]);
+ // TODO: add line dashing
+ wp = q.w>1 ? q.w:1; st = q.n3;
+ put_line(gr,fp,false,i,wp,cp,st, "(%g,%g)", " -- (%g,%g)", false);
+ fprintf(fp, ";\n");
+ }
+ else if(q.type==6) // text
+ {
+ const mglText &t = gr->GetPtx(q.n3);
+ float ftet = isnan(p1.v)||isnan(p1.u) ? 0:-180*atan2(p1.v,p1.u)/M_PI;
+ int f,a; mglGetStyle(t.stl.c_str(), &f, &a);
+ std::string ss=cname;
+ if((a&3)==2) ss.append(",west"); if((a&3)==0) ss.append(",east");
+ if(f&MGL_FONT_ITAL) ss.append(",font=\\itshape");
+ if(f&MGL_FONT_BOLD) ss.append(",font=\\bfshape");
+ if(t.text.find('\\')!=std::string::npos)
+ fprintf(fp,"\\draw[%s] (%g,%g) node[rotate=%.2g] $%ls$;\n", ss.c_str(),x,y, ftet, t.text.c_str());
+ else
+ fprintf(fp,"\\draw[%s] (%g,%g) node[rotate=%.2g] %ls;\n", ss.c_str(),x,y, ftet, t.text.c_str());
}
- c.r = c.r<1 ? c.r : 1;
- c.g = c.g<1 ? c.g : 1;
- c.b = c.b<1 ? c.b : 1;
}
- return c;
-}
-//-----------------------------------------------------------------------------
-#undef _GR_
-#define _GR_ ((mglCanvas *)(*gr))
-#define _Gr_ ((mglCanvas *)(gr))
-void mgl_write_eps(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteEPS(fname,descr); }
-void mgl_write_eps_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
-{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
- _GR_->WriteEPS(s,d); delete []s; delete []d; }
-//-----------------------------------------------------------------------------
-void mgl_write_svg(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteSVG(fname,descr); }
-void mgl_write_svg_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
-{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
- _GR_->WriteSVG(s,d); delete []s; delete []d; }
-//-----------------------------------------------------------------------------
+ fprintf(fp, "\\end{tikzpicture}\n");
+ for(i=0;i<gr->GetPrmNum();i++)
+ { mglPrim &q=gr->GetPrm(i); if(q.type==-1) q.type = 1; }
+ fclose(fp);
+}
\ No newline at end of file
diff --git a/src/export_3d.cpp b/src/export_3d.cpp
index 9f63393..e81317f 100644
--- a/src/export_3d.cpp
+++ b/src/export_3d.cpp
@@ -1,146 +1,852 @@
-/***************************************************************************
- * export_3d.cpp is part of Math Graphic Library
- * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Library General Public License as *
- * published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU Library General Public *
- * License along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-#include "mgl/canvas.h"
-#include "mgl/canvas_cf.h"
-void mglTexture::GetRGBA(unsigned char *f)
-{
- register long i,j,i0;
- mglColor c1,c2,c;
- for(i=255;i>=0;i--)
- {
- c1 = col[2*i]; c2 = col[2*i+1];
- for(j=0;j<256;j++)
- {
- i0 = 4*(j+256*i);
- c = c1 + (c2-c1)*(j/255.);
- f[i0] = int(255*c.b);
- f[i0+1] = int(255*c.g);
- f[i0+2] = int(255*c.r);
- f[i0+3] = int(255*c.a);
- }
- }
-}
-//-----------------------------------------------------------------------------
-void mglCanvas::WriteOBJ(const char *fname,const char *descr)
-{
- if(Prm.size()<=0) return; // nothing to do
- register unsigned long i,j;
- long m1=0,m2=0,m;
- for(i=0;i<Grp.size();i++) // prepare array of indirect indexing
- { m = Grp[i].Id; if(m<m1) m1=m; if(m>m2) m2=m; }
- long *ng = new long[m2-m1+1];
- for(i=0;i<Grp.size();i++) ng[Grp[i].Id-m1] = i;
- for(i=0;i<Prm.size();i++) // collect data for groups
- // it is rather expensive (extra 4b per primitive) but need for export to 3D
- {
- m = Prm[i].id-m1;
- if(m>=0 && m<m2-m1+1) Grp[ng[m]].p.push_back(i);
- }
- delete []ng;
-
- unsigned len=strlen(fname);
- char *tname = new char[len+1]; strcpy(tname,fname);
- FILE *fp=fopen(fname,"wt");
- // vertices definition
- fprintf(fp,"# Creator: MathGL library\n#Title: %s\n",descr ? descr : fname);
- fprintf(fp,"# List of Vertices, with (x,y,z[,w]) coordinates, w is optional.\n");
- for(i=0;i<Pnt.size();i++) fprintf(fp,"v %.2g %.2g %.2g\n",Pnt[i].x,Pnt[i].y,Pnt[i].z);
- fprintf(fp,"# Texture coordinates, in (u,v[,w]) coordinates, w is optional.\n");
- for(i=0;i<Pnt.size();i++) fprintf(fp,"vt %.2g %.2g\n",256*Pnt[i].t,256*Pnt[i].c);
- fprintf(fp,"# Normals in (x,y,z) form; normals might not be unit.\n");
- for(i=0;i<Pnt.size();i++) fprintf(fp,"vn %.2g %.2g %.2g\n",Pnt[i].u,Pnt[i].v,Pnt[i].w);
- // primitive definition
- tname[len-4]=0; fprintf(fp,"# Primitives Definitions\nusemtl %s\n",tname);
- std::vector<long> p;
+/***************************************************************************
+ * export_3d.cpp is part of Math Graphic Library
+ * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Library General Public License as *
+ * published by the Free Software Foundation; either version 3 of the *
+ * License, or (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+#include <stdio.h>
+#include <time.h>
+#include <zlib.h>
+#include "mgl/canvas.h"
+#include "mgl/canvas_cf.h"
+#undef _GR_
+#define _GR_ ((mglCanvas *)(*gr))
+#define _Gr_ ((mglCanvas *)(gr))
+int mgl_tga_save(const char *fname, int w, int h, unsigned char **p);
+int mgl_png_save(const char *fname, int w, int h, unsigned char **p);
+void mgl_printf(void *fp, bool gz, const char *str, ...);
+//-----------------------------------------------------------------------------
+void mglTexture::GetRGBA(unsigned char *f)
+{
+ register long i,j,i0;
+ mglColor c1,c2,c;
+ for(i=255;i>=0;i--)
+ {
+ c1 = col[2*i]; c2 = col[2*i+1];
+ for(j=0;j<256;j++)
+ {
+ i0 = 4*(j+256*i);
+ c = c1 + (c2-c1)*(j/255.);
+ f[i0] = int(255*c.b);
+ f[i0+1] = int(255*c.g);
+ f[i0+2] = int(255*c.r);
+ f[i0+3] = int(255*c.a);
+ }
+ }
+}
+//-----------------------------------------------------------------------------
+void mgl_obj_prim(const mglPrim &q, const mglPnt &p, FILE *fp, float size)
+{
+ char type = q.n4; float ss=size*0.35;
+ register long i=q.n1,j;
+ switch(q.type)
+ {
+ case 0:
+ if(!strchr("xsSoO",type)) ss *= 1.1;
+ if(type=='.' || ss==0) fprintf(fp,"p %ld\n", i);
+ else switch(type)
+ {
+ case 'P':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -4/%ld\n", i,i);
+ case '+':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i); break;
+ case 'X':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -4/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -4/%ld\n", i,i); break;
+ case 'x':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -4/%ld\n", i,i); break;
+ case 'S':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"f -4/%ld -3/%ld -2/%ld -1/%ld\n",i,i,i,i); break;
+ case 's':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -4/%ld\n", i,i); break;
+ case 'D':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"f -4/%ld -3/%ld -2/%ld -1/%ld\n",i,i,i,i); break;
+ case 'd':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -4/%ld\n", i,i); break;
+ case 'Y':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+0.8*ss,p.y+0.6*ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-0.8*ss,p.y+0.6*ss,p.z);
+ fprintf(fp,"l -3/%ld %ld/%ld\n", i,i,i);
+ fprintf(fp,"l -2/%ld %ld/%ld\n", i,i,i);
+ fprintf(fp,"l -1/%ld %ld/%ld\n", i,i,i); break;
+ case '*':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+0.6*ss,p.y+0.8*ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-0.6*ss,p.y-0.8*ss,p.z);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+0.6*ss,p.y-0.8*ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-0.6*ss,p.y+0.8*ss,p.z);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i); break;
+ case 'T':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"f -3/%ld -2/%ld -1/%ld\n", i,i,i); break;
+ case '^':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i); break;
+ case 'V':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"f -3/%ld -2/%ld -1/%ld\n", i,i,i); break;
+ case 'v':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i); break;
+ case 'L':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss/2,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss/2,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"f -3/%ld -2/%ld -1/%ld\n", i,i,i); break;
+ case '<':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss/2,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss/2,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i); break;
+ case 'R':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss/2,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss/2,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"f -3/%ld -2/%ld -1/%ld\n", i,i,i); break;
+ case '>':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss/2,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss/2,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i); break;
+ case 'O':
+ for(long j=0;j<=20;j++)
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss*cos(j*M_PI/10),p.y+ss*sin(j*M_PI/10),p.z);
+ for(long j=0;j<20;j++)
+ fprintf(fp,"f %ld/%ld %ld/%ld %ld/%ld\n", j-21,i, j-20,i, i,i);
+ break;
+ case 'C': fprintf(fp,"p %ld\n", i);
+ case 'o':
+ for(long j=0;j<=20;j++)
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss*cos(j*M_PI/10),p.y+ss*sin(j*M_PI/10),p.z);
+ for(long j=0;j<20;j++)
+ fprintf(fp,"l %ld/%ld %ld/%ld\n", j-21,i, j-20,i);
+ break;
+ }
+ break;
+ case 1: fprintf(fp,"l %ld/%ld %ld/%ld\n", q.n1,q.n1, q.n2,q.n2); break;
+ case 2: fprintf(fp,"f %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld\n",
+ q.n1,q.n1,q.n1, q.n2,q.n2,q.n2, q.n3,q.n3,q.n3); break;
+ case 3: fprintf(fp,"f %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld\n",
+ q.n1,q.n1,q.n1, q.n2,q.n2,q.n2, q.n3,q.n3,q.n3, q.n4,q.n4,q.n4); break;
+ case 4: break; // TODO: add glyphs export later
+ }
+}
+//-----------------------------------------------------------------------------
+void mgl_write_obj(HMGL gr, const char *fname,const char *descr, int use_png)
+{
+ if(gr->GetPrmNum()<=0) return; // nothing to do
+ register unsigned long i,j;
+ long m1=0,m2=0,m;
+ for(i=0;i<gr->Grp.size();i++) // prepare array of indirect indexing
+ { m = gr->Grp[i].Id; if(m<m1) m1=m; if(m>m2) m2=m; }
+ long *ng = new long[m2-m1+1];
+ for(i=0;i<gr->Grp.size();i++) ng[gr->Grp[i].Id-m1] = i;
+ for(i=0;i<gr->GetPrmNum();i++) // collect data for groups
+ // it is rather expensive (extra 4b per primitive) but need for export to 3D
+ {
+ m = gr->GetPrm(i).id-m1;
+ if(m>=0 && m<m2-m1+1) gr->Grp[ng[m]].p.push_back(i);
+ }
+ delete []ng;
+
+ unsigned len=strlen(fname);
+ char *tname = new char[len+1]; strcpy(tname,fname);
+ FILE *fp=fopen(fname,"wt");
+ // vertices definition
+ fprintf(fp,"# Creator: MathGL library\n# Title: %s\n",descr ? descr : fname);
+ for(i=0;i<gr->GetPntNum();i++)
+ {
+ mglPnt pp = gr->GetPnt(i);
+ fprintf(fp,"v %.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ fprintf(fp,"vt %.2g %.2g\n",256*pp.t,256*pp.c);
+ fprintf(fp,"vn %.2g %.2g %.2g\n",pp.u,pp.v,pp.w);
+ }
+ // primitive definition in groups
+ tname[len-4]=0; fprintf(fp,"# Primitives Definitions\nusemtl %s\n",tname);
+ std::vector<long> p;
mglPrim q;
- for(i=0;i<Grp.size();i++)
- {
- fprintf(fp,"g %s\n",Grp[i].Lbl.c_str()); p = Grp[i].p;
- for(j=0;j<p.size();j++)
- {
- q = Prm[p[j]];
- switch(q.type)
- {
- case 0: fprintf(fp,"p %ld/%ld\n", q.n1,q.n1); break;
- case 1: fprintf(fp,"l %ld/%ld %ld/%ld\n", q.n1,q.n1, q.n2,q.n2); break;
- case 2: fprintf(fp,"f %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld\n",
- q.n1,q.n1,q.n1, q.n2,q.n2,q.n2, q.n3,q.n3,q.n3); break;
- case 3: fprintf(fp,"f %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld\n",
- q.n1,q.n1,q.n1, q.n2,q.n2,q.n2, q.n3,q.n3,q.n3, q.n4,q.n4,q.n4); break;
- case 4: break; // TODO: add glyphs export later
- case 5: break; // TODO: add arrows export later
- }
- }
- Grp[i].p.clear(); // we don't need indexes anymore
- }
- // try to save "ungrouped" primitives
- fprintf(fp,"g ungrouped\n");
- for(i=0;i<Prm.size();i++)
- {
- q = Prm[i]; m = q.id-m1;
- if(m>=0 && m<m2-m1+1) continue;
- switch(q.type) // NOTE: should be never here!
- {
- case 0: fprintf(fp,"p %ld/%ld\n", q.n1,q.n1); break;
- case 1: fprintf(fp,"l %ld/%ld %ld/%ld\n", q.n1,q.n1, q.n2,q.n2); break;
- case 2: fprintf(fp,"f %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld\n",
- q.n1,q.n1,q.n1, q.n2,q.n2,q.n2, q.n3,q.n3,q.n3); break;
- case 3: fprintf(fp,"f %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld\n",
- q.n1,q.n1,q.n1, q.n2,q.n2,q.n2, q.n3,q.n3,q.n3, q.n4,q.n4,q.n4); break;
- case 4: break; // TODO: add glyphs export later
- case 5: break; // TODO: add arrows export later
- }
- }
- fclose(fp);
- // prepare MTL file
- tname[len-4]='.'; tname[len-3]='m'; tname[len-2]='t'; tname[len-1]='l';
- fp=fopen(tname,"wt");
- tname[len-4]=0; fprintf(fp,"newmtl %s\n",tname);
- fprintf(fp,"Ka 1.000 1.000 1.000\n");
- fprintf(fp,"Kd 1.000 1.000 1.000\n");
- fprintf(fp,"Ks 0.000 0.000 0.000\n");
- fprintf(fp,"d 1.0\nillum 2\n");
- tname[len-4]='.'; tname[len-3]='t'; tname[len-2]='g'; tname[len-1]='a';
- fprintf(fp,"map_Ka %s\nmap_Kd %s\nmap_Ks %s\n",tname,tname,tname);
- fclose(fp);
- // prepare texture file (TGA)
- fp = fopen(tname,"wb");
- char head[14]={0,0,2, 0,0,0,0,0, 0,0,0,0, 32,0};
- short w = 256, h = 256*Txt.size();
- fwrite(head,12,1,fp);
- fwrite(&w,2,1,fp); fwrite(&h,2,1,fp);
- fwrite(head+12,2,1,fp);
- unsigned char *buf = new unsigned char[256*256];
- for(i=Txt.size();i>0;i--)
- { Txt[i-1].GetRGBA(buf); fwrite(buf,256*256,1,fp); }
- fclose(fp); delete []buf; delete []tname;
-
-}
-//-----------------------------------------------------------------------------
-#undef _GR_
-#define _GR_ ((mglCanvas *)(*gr))
-#define _Gr_ ((mglCanvas *)(gr))
-void mgl_write_obj(HMGL gr, const char *fname,const char *descr)
-{ _Gr_->WriteOBJ(fname,descr); }
-void mgl_write_obj_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
-{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
- char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
- _GR_->WriteOBJ(s,d); delete []s; delete []d; }
-//-----------------------------------------------------------------------------
+ for(i=0;i<gr->Grp.size();i++)
+ {
+ fprintf(fp,"g %s\n",gr->Grp[i].Lbl.c_str()); p = gr->Grp[i].p;
+ for(j=0;j<p.size();j++)
+ {
+ const mglPrim q=gr->GetPrm(p[j]);
+ mgl_obj_prim(q, gr->GetPnt(q.n1), fp, q.s*gr->FontFactor());
+ }
+ gr->Grp[i].p.clear(); // we don't need indexes anymore
+ }
+ // try to save "ungrouped" primitives
+ fprintf(fp,"g ungrouped\n");
+ for(i=0;i<gr->GetPrmNum();i++)
+ {
+ const mglPrim q=gr->GetPrm(p[j]); m = q.id-m1;
+ if(m<0 || m>=m2-m1+1)
+ mgl_obj_prim(q, gr->GetPnt(q.n1), fp, q.s*gr->FontFactor());
+ }
+ fclose(fp);
+ // prepare MTL file
+ tname[len-4]='.'; tname[len-3]='m'; tname[len-2]='t'; tname[len-1]='l';
+ fp=fopen(tname,"wt");
+ tname[len-4]=0; fprintf(fp,"newmtl %s\n",tname);
+ fprintf(fp,"Ka 1.000 1.000 1.000\n");
+ fprintf(fp,"Kd 1.000 1.000 1.000\n");
+ fprintf(fp,"Ks 0.000 0.000 0.000\n");
+ fprintf(fp,"d 1.0\nillum 2\n");
+ if(use_png)
+ { tname[len-4]='.'; tname[len-3]='p'; tname[len-2]='n'; tname[len-1]='g'; }
+ else
+ { tname[len-4]='.'; tname[len-3]='t'; tname[len-2]='g'; tname[len-1]='a'; }
+ fprintf(fp,"map_Ka %s\nmap_Kd %s\nmap_Ks %s\n",tname,tname,tname);
+ fclose(fp);
+ // prepare texture file (TGA or PNG)
+ j=gr->GetTxtNum();
+ unsigned char *buf = new unsigned char[256*256*j];
+ unsigned char **pbuf= (unsigned char **)malloc(256*j*sizeof(unsigned char *));
+ for(i=0;i<256*j;i++) pbuf[i] = buf+256*i;
+ for(i=0;i<j;i++) gr->GetTxt(i).GetRGBA(buf+i*256*256);
+ if(use_png) mgl_png_save(tname,256,256*j,pbuf);
+ else mgl_tga_save(tname,256,256*j,pbuf);
+ free(pbuf); delete []buf; delete []tname;
+}
+void mgl_write_obj_(uintptr_t *gr, const char *fname,const char *descr, int *use_png,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+ mgl_write_obj(_GR_,s,d,*use_png); delete []s; delete []d; }
+//-----------------------------------------------------------------------------
+void mgl_write_stl(HMGL gr, const char *fname,const char *descr)
+{
+ if(gr->GetPrmNum()<=0) return; // nothing to do
+ FILE *fp = fopen(fname,"wt");
+ fprintf(fp,"solid %s",descr?descr:"mathgl");
+ register long i,j;
+ mglPnt pp;
+ for(i=0;i<gr->GetPrmNum();i++)
+ {
+ const mglPrim &q=gr->GetPrm(i); j = q.n1;
+ if(q.type==2) // triangles
+ {
+ pp = gr->GetPnt(j);
+ fprintf(fp,"facet normal %.2g %.2g %.2g\nouter loop\n",pp.u,pp.v,pp.w);
+ fprintf(fp,"vertex %.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ pp = gr->GetPnt(q.n2);
+ fprintf(fp,"vertex %.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ pp = gr->GetPnt(q.n3);
+ fprintf(fp,"vertex %.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ fprintf(fp,"endloop\nendfacet\n");
+ }
+ if(q.type==3) // quadrangles
+ {
+ pp = gr->GetPnt(j);
+ fprintf(fp,"facet normal %.2g %.2g %.2g\nouter loop\n",pp.u,pp.v,pp.w);
+ fprintf(fp,"vertex %.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ pp = gr->GetPnt(q.n2);
+ fprintf(fp,"vertex %.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ pp = gr->GetPnt(q.n3);
+ fprintf(fp,"vertex %.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ pp = gr->GetPnt(q.n4);
+ fprintf(fp,"vertex %.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ fprintf(fp,"endloop\nendfacet\n");
+ }
+ }
+}
+void mgl_write_stl_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+ mgl_write_stl(_GR_,s,d); delete []s; delete []d; }
+//-----------------------------------------------------------------------------
+void mgl_write_xyz(HMGL gr, const char *fname,const char *descr)
+{
+ if(gr->GetPrmNum()<=0) return; // nothing to do
+
+ register long i;
+ FILE *fp=fopen(fname,"wt"), *ff; // vertices definition
+ fprintf(fp,"# Creator: MathGL library\n# Title: %s\n",descr ? descr : fname);
+ fprintf(fp,"# List of Vertices, with (x,y,z) coordinates.\n");
+ for(i=0;i<gr->GetPntNum();i++)
+ {
+ mglPnt pp = gr->GetPnt(i);
+ fprintf(fp,"%.2g %.2g %.2g\n",pp.x,pp.y,pp.z);
+ }
+ fclose(fp);
+
+ // primitive definition
+ unsigned len=strlen(fname);
+ char *tname = new char[len+2]; strcpy(tname,fname); tname[len+1]=tname[len]=0;
+ tname[len]='l'; fp = fopen(tname,"wt");
+ tname[len]='f'; ff = fopen(tname,"wt");
+ fprintf(fp,"# Creator: MathGL library\n# Title: %s\n",descr ? descr : fname);
+ fprintf(fp,"# Indices of vertices to connect for lines\n");
+ fprintf(ff,"# Creator: MathGL library\n# Title: %s\n",descr ? descr : fname);
+ fprintf(ff,"# Indices of vertices to connect for faces\n");
+ for(i=0;i<gr->GetPrmNum();i++)
+ {
+ const mglPrim q=gr->GetPrm(i);
+ if(q.type==1) fprintf(fp,"%ld %ld\n",q.n1+1,q.n2+1);
+ if(q.type==2) fprintf(ff,"%ld %ld %ld\n",q.n1+1,q.n2+1,q.n3+1);
+ if(q.type==3) fprintf(ff,"%ld %ld %ld %ld\n",q.n1+1,q.n2+1,q.n3+1,q.n4+1);
+ }
+ fclose(fp); fclose(ff); delete []tname;
+}
+void mgl_write_xyz_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+ mgl_write_xyz(_GR_,s,d); delete []s; delete []d; }
+//-----------------------------------------------------------------------------
+void mgl_write_off(HMGL gr, const char *fname,const char *descr)
+{
+ register long i,nf=0;
+ for(i=0;i<gr->GetPrmNum();i++) // find number of faces
+ {
+ const mglPrim q=gr->GetPrm(i);
+ if(q.type==2 || q.type==3) nf++;
+ }
+ if(nf<=0) return; // nothing to do
+
+ FILE *fp=fopen(fname,"wt");
+ // vertices definition
+ fprintf(fp,"cOFF\n# Creator: MathGL library\n# Title: %s\n",descr ? descr : fname);
+ fprintf(fp,"# List of Vertices, with (x,y,z,r,g,b,a) coordinates.\n");
+ fprintf(fp,"%ld %ld 0\n",gr->GetPntNum(), nf);
+ for(i=0;i<gr->GetPntNum();i++)
+ {
+ mglPnt pp = gr->GetPnt(i);
+ fprintf(fp,"%.2g %.2g %.2g %.2g %.2g %.2g %.2g\n", pp.x, pp.y, pp.z, pp.r, pp.g, pp.b, pp.a);
+ }
+ for(i=0;i<gr->GetPrmNum();i++)
+ {
+ const mglPrim q=gr->GetPrm(i);
+ if(q.type==2) fprintf(fp,"3 %ld %ld %ld\n",q.n1,q.n2,q.n3);
+ if(q.type==3) fprintf(fp,"4 %ld %ld %ld %ld\n",q.n1,q.n2,q.n3,q.n4);
+ }
+ fclose(fp);
+}
+void mgl_write_off_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+ mgl_write_off(_GR_,s,d); delete []s; delete []d; }
+//-----------------------------------------------------------------------------
+void mgl_write_idtf(HMGL gr, const char *fname,const char *descr)
+{ /*_Gr_->WriteIDTF(fname,descr);*/ } // TODO: Add idtf support later
+void mgl_write_idtf_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
+ mgl_write_idtf(_GR_,s,f); delete []s; delete []f; }
+//-----------------------------------------------------------------------------
+bool mglCanvas::ExportMGLD(const char *fname, const char *descr)
+{
+ if(Pnt.size()<1 || Prm.size()<1) return true;
+ FILE *fp=fopen(fname,"wt");
+ if(!fp) return true;
+ fprintf(fp,"MGLD %ld %ld\n# %s\n", Pnt.size(), Prm.size(), descr ? descr : fname);
+ register long i;
+ fprintf(fp,"# Vertexes: x y z c t u v w r g b a\n");
+ for(i=0;i<Pnt.size();i++)
+ {
+ const mglPnt &q=Pnt[i];
+ fprintf(fp,"%.2g %.2g %.2g %.2g %.2g %.2g %.2g %.2g %.2g %.2g %.2g %.2g\n", q.x, q.y, q.z, q.c, q.t, q.u, q.v, q.w, q.r, q.g, q.b, q.a);
+ }
+ fprintf(fp,"# Primitives: type n1 n2 n3 n4 id s w p\n");
+ for(i=0;i<Prm.size();i++)
+ {
+ const mglPrim &q=Prm[i];
+ fprintf(fp,"%d %ld %ld %ld %ld %d %.2g %.2g %.2g\n", q.type, q.n1, q.n2, q.n3, q.n4, q.id, q.s, q.w, q.p);
+ }
+ fclose(fp);
+ return false;
+}
+//-----------------------------------------------------------------------------
+void mgl_export_mgld(HMGL gr, const char *fname,const char *descr)
+{ _Gr_->ExportMGLD(fname, descr); }
+void mgl_export_mgld_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *f=new char[n+1]; memcpy(f,descr,n); f[n]=0;
+ mgl_export_mgld(_GR_,s,f); delete []s; delete []f; }
+//-----------------------------------------------------------------------------
+bool mglCanvas::ImportMGLD(const char *fname, bool add)
+{
+ FILE *fp=fopen(fname,"rt");
+ if(!fp) return true;
+ char *buf=new char[512];
+ fgets(buf,512,fp);
+ if(strncmp(buf,"MGLD",4)) { delete []buf; fclose(fp); return true; }
+ register long i,n,m;
+ sscanf(buf+5,"%ld%ld",&n,&m);
+ if(n<=0 || m<=0) { delete []buf; fclose(fp); return true; }
+ if(!add) { Pnt.clear(); Prm.clear(); }
+ Pnt.reserve(n); Prm.reserve(m);
+ mglPnt p; mglPrim q;
+ for(i=0;i<n;)
+ {
+ do { fgets(buf,512,fp); mgl_strtrim(buf); } while(*buf=='#');
+ sscanf(buf,"%g%g%g%g%g%g%g%g%g%g%g%g", &p.x, &p.y, &p.z, &p.c, &p.t, &p.u, &p.v, &p.w, &p.r, &p.g, &p.b, &p.a);
+ Pnt.push_back(p); i++;
+ }
+ for(i=0;i<m;)
+ {
+ do { fgets(buf,512,fp); mgl_strtrim(buf); } while(*buf=='#');
+ sscanf(buf,"%d%ld%ld%ld%ld%d%g%g%g", &q.type, &q.n1, &q.n2, &q.n3, &q.n4, &q.id, &q.s, &q.w, &q.p);
+ Prm.push_back(q); i++;
+ }
+ delete []buf; fclose(fp); return false;
+}
+//-----------------------------------------------------------------------------
+void mgl_import_mgld(HMGL gr, const char *fname, int add)
+{ _Gr_->ImportMGLD(fname, add); }
+void mgl_import_mgld_(uintptr_t *gr, const char *fname, int *add, int l)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ mgl_import_mgld(_GR_,s,*add); delete []s; }
+//-----------------------------------------------------------------------------
+/*void mgl_xgl_prim(const mglPrim &q, const mglPnt &p, FILE *fp, float size)
+{
+ char type = q.n4; float ss=size*0.35;
+ register long i=q.n1,j;
+ switch(q.type)
+ {
+ case 0:
+ if(!strchr("xsSoO",type)) ss *= 1.1;
+ if(type=='.' || ss==0) fprintf(fp,"p %ld\n", i);
+ else switch(type) // TODO: save mark by PATCH
+ {
+ case 'P':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -4/%ld\n", i,i);
+ case '+':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i); break;
+ case 'X':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -4/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -4/%ld\n", i,i); break;
+ case 'x':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -4/%ld\n", i,i); break;
+ case 'S':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"f -4/%ld -3/%ld -2/%ld -1/%ld\n",i,i,i,i); break;
+ case 's':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -4/%ld\n", i,i); break;
+ case 'D':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"f -4/%ld -3/%ld -2/%ld -1/%ld\n",i,i,i,i); break;
+ case 'd':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"l -4/%ld -3/%ld\n", i,i);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -4/%ld\n", i,i); break;
+ case 'Y':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+0.8*ss,p.y+0.6*ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-0.8*ss,p.y+0.6*ss,p.z);
+ fprintf(fp,"l -3/%ld %ld/%ld\n", i,i,i);
+ fprintf(fp,"l -2/%ld %ld/%ld\n", i,i,i);
+ fprintf(fp,"l -1/%ld %ld/%ld\n", i,i,i); break;
+ case '*':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+0.6*ss,p.y+0.8*ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-0.6*ss,p.y-0.8*ss,p.z);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+0.6*ss,p.y-0.8*ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-0.6*ss,p.y+0.8*ss,p.z);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i); break;
+ case 'T':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"f -3/%ld -2/%ld -1/%ld\n", i,i,i); break;
+ case '^':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y-ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y-ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y+ss,p.z);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i); break;
+ case 'V':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"f -3/%ld -2/%ld -1/%ld\n", i,i,i); break;
+ case 'v':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y+ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y+ss/2,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x,p.y-ss,p.z);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i); break;
+ case 'L':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss/2,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss/2,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"f -3/%ld -2/%ld -1/%ld\n", i,i,i); break;
+ case '<':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss/2,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss/2,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss,p.y,p.z);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i); break;
+ case 'R':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss/2,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss/2,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"f -3/%ld -2/%ld -1/%ld\n", i,i,i); break;
+ case '>':
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss/2,p.y+ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x-ss/2,p.y-ss,p.z);
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss,p.y,p.z);
+ fprintf(fp,"l -3/%ld -2/%ld\n", i,i);
+ fprintf(fp,"l -2/%ld -1/%ld\n", i,i);
+ fprintf(fp,"l -1/%ld -3/%ld\n", i,i); break;
+ case 'O':
+ for(long j=0;j<=20;j++)
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss*cos(j*M_PI/10),p.y+ss*sin(j*M_PI/10),p.z);
+ for(long j=0;j<20;j++)
+ fprintf(fp,"f %ld/%ld %ld/%ld %ld/%ld\n", j-21,i, j-20,i, i,i);
+ break;
+ case 'C': fprintf(fp,"p %ld\n", i);
+ case 'o':
+ for(long j=0;j<=20;j++)
+ fprintf(fp,"v %.2g %.2g %.2g\n",p.x+ss*cos(j*M_PI/10),p.y+ss*sin(j*M_PI/10),p.z);
+ for(long j=0;j<20;j++)
+ fprintf(fp,"l %ld/%ld %ld/%ld\n", j-21,i, j-20,i);
+ break;
+ }
+ break;
+ case 1: fprintf(fp,"l %ld/%ld %ld/%ld\n", q.n1,q.n1, q.n2,q.n2); break;
+ case 2: fprintf(fp,"f %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld\n",
+ q.n1,q.n1,q.n1, q.n2,q.n2,q.n2, q.n3,q.n3,q.n3); break;
+ case 3: fprintf(fp,"f %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld %ld/%ld/%ld\n",
+ q.n1,q.n1,q.n1, q.n2,q.n2,q.n2, q.n3,q.n3,q.n3, q.n4,q.n4,q.n4); break;
+ case 4: break; // TODO: add glyphs export later
+ }
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::WriteXGL(const char *fname,const char *descr)
+{
+ if(GetPrmNum()<=0) return; // nothing to do
+ FILE *fp=fopen(fname,"wt");
+ if(!fp) return true;
+ fprintf(fp,"<WORLD>\n<NAME>%s</NAME>\n", descr?descr:fname);
+ fprintf(fp,"<BACKGROUND><BACKCOLOR>%.2g, %.2g, %.2g</BACKCOLOR></BACKGROUND>\n", BDef[0]/255., BDef[1]/255., BDef[2]/255.);
+ fprintf(fp,"<LIGHTING>\n<AMBIENT>%.2g, %.2g, %.2g</AMBIENT>\n",AmbBr, AmbBr, AmbBr);
+ register unsigned long i,j;
+ if(get(MGL_ENABLE_LIGHT)) for(i=0;i<10;i++)
+ if(light[i].n && isnan(light[i].r.x))
+ {
+ fprintf(fp, "<DIRECTIONALLIGHT>\n<DIRECTION>%.2g, %.2g, %.2g</DIRECTION>\n", light[i].d.x, light[i].d.y, light[i].d.z);
+ fprintf(fp, "<SPECULAR>%.2g, %.2g, %.2g</SPECULAR>\n</DIRECTIONALLIGHT>\n", light[i].c.r, light[i].c.g, light[i].c.b);
+ }
+ fprintf(fp,"</LIGHTING>");
+
+ // TODO: add textures
+
+ long m1=0,m2=0,m;
+ for(i=0;i<Grp.size();i++) // prepare array of indirect indexing
+ { m = Grp[i].Id; if(m<m1) m1=m; if(m>m2) m2=m; }
+ long *ng = new long[m2-m1+1];
+ for(i=0;i<Grp.size();i++) ng[gr->Grp[i].Id-m1] = i;
+ for(i=0;i<GetPrmNum();i++) // collect data for groups
+ // it is rather expensive (extra 4b per primitive) but need for export to 3D
+ {
+ m = GetPrm(i).id-m1;
+ if(m>=0 && m<m2-m1+1) Grp[ng[m]].p.push_back(i);
+ }
+ delete []ng;
+
+ std::vector<long> p;
+ mglPrim q;
+ char *pg=new char[GetPntNum()];
+ for(i=0;i<Grp.size();i++) // first write objects
+ {
+ p = Grp[i].p; memset(pg,0,GetPntNum());
+ fprintf(fp,"<OBJECT>\n<NAME>%s</NAME>\n<MESH>\n",Grp[i].Lbl.c_str());
+ for(j=0;j<p.size();j++) // collect Pnt for this object
+ {
+ const mglPrim q=GetPrm(p[j]); pg[q.n1]=1;
+ if(q.type==3) { pg[q.n2]=1; pg[q.n3]=1; pg[q.n4]=1; }
+ else if(q.type==1) pg[q.n2]=1;
+ else if(q.type==2) { pg[q.n2]=1; pg[q.n3]=1; }
+ }
+ for(j=0;j<GetPntNum();j++) if(pg[j]) // write Pnt for this object
+ {
+ const mglPnt s=Pnt[j];
+ fprintf(fp,"<P ID=\"%u\">%.2g, %.2g, %.2g</P>\n",j, s.x, s.y, s.z);
+ fprintf(fp,"<N ID=\"%u\">%.2g, %.2g, %.2g</N>\n",j, s.x, s.y, s.z);
+ }
+ // TODO: add line styles
+ for(j=0;j<p.size();j++) // now write primitives itself
+ {
+ const mglPrim q=GetPrm(p[j]);
+ mgl_xgl_prim(q, GetPnt(q.n1), fp, q.s*FontFactor());
+ }
+ fprintf(fp,"</MESH>\n</OBJECT>"); // finish with this object
+ Grp[i].p.clear(); // we don't need indexes anymore
+ }
+ // TODO: try to save "ungrouped" primitives
+
+ fprintf(fp,"</WORLD>"); fclose(fp); delete []pg;
+}
+//-----------------------------------------------------------------------------
+void mgl_write_xgl(HMGL gr, const char *fname,const char *descr)
+{ _Gr_->WriteXGL(fname,descr); }
+void mgl_write_xgl_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+ char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+ mgl_write_xgl(_GR_,s,d); delete []s; delete []d; }*/
+//-----------------------------------------------------------------------------
+void mgl_x3d_prim(const mglPrim &q, const mglPnt &p, void *fp,bool gz, float size)
+{} // TODO
+//-----------------------------------------------------------------------------
+void mgl_write_x3d(HMGL gr, const char *fname,const char *descr)
+{
+ if(gr->GetPrmNum()<1) return;
+ time_t now; time(&now);
+
+ bool gz = fname[strlen(fname)-1]=='z';
+ void *fp = gz ? (void*)gzopen(fname,"wt") : (void*)fopen(fname,"wt");
+ if(!fp) { gr->SetWarn(mglWarnOpen,fname); return; }
+ mgl_printf(fp, gz, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
+ mgl_printf(fp, gz, "<!DOCTYPE X3D PUBLIC \"ISO//Web3D//DTD X3D 3.0//EN\" \"http://www.web3d.org/specifications/x3d-3.0.dtd\">\n");
+ mgl_printf(fp, gz, "<X3D profile='Immersive'>\n<head>\n<meta name='filename' content='%s'/>\n",fname);
+ mgl_printf(fp, gz, "<meta name='description' content='%s'/>\n",descr?descr:fname);
+ mgl_printf(fp, gz, "<meta name='created' content='%s'/>\n",ctime(&now));
+ mgl_printf(fp, gz, "<meta name='generator' content='MathGL, http://mathgl.sourceforge.net/'/>\n");
+ mgl_printf(fp, gz, "</head>\n<Scene>\n");
+
+ // 1. first we have to define proto for marks and glyphs
+ bool m_p=false,m_x=false,m_d=false,m_v=false,m_t=false,
+ m_s=false,m_a=false,m_o=false,m_T=false,
+ m_V=false,m_S=false,m_D=false,m_Y=false,m_l=false,
+ m_L=false,m_r=false,m_R=false,m_X=false,m_P=false;
+ register unsigned long i,j;
+ for(i=0;i<gr->GetPrmNum();i++)
+ {
+ const mglPrim q = gr->GetPrm(i);
+ if(q.type>0) continue; if(q.n4=='+') m_p = true;
+ if(q.n4=='x') m_x = true; if(q.n4=='s') m_s = true;
+ if(q.n4=='d') m_d = true; if(q.n4=='v') m_v = true;
+ if(q.n4=='^') m_t = true; if(q.n4=='*') m_a = true;
+ if(q.n4=='o' || q.n4=='O' || q.n4=='C') m_o = true;
+ if(q.n4=='S') m_S = true; if(q.n4=='D') m_D = true;
+ if(q.n4=='V') m_V = true; if(q.n4=='T') m_T = true;
+ if(q.n4=='<') m_l = true; if(q.n4=='L') m_L = true;
+ if(q.n4=='>') m_r = true; if(q.n4=='R') m_R = true;
+ if(q.n4=='Y') m_Y = true;
+ if(q.n4=='P') m_P = true; if(q.n4=='X') m_X = true;
+ }
+ if(m_P) { m_p=true; m_s=true; }
+ if(m_X) { m_x=true; m_s=true; }
+ if(m_p) mgl_printf(fp, gz, "<ProtoDeclare name='m_p'><ProtoInterface/>\n<ProtoBody>"
+ "<LineSet vertexCount=''>\n<Coordinate point='-1 0 0, 1 0 0, 0 -1 0, 0 1 0'/>"
+ "\n</LineSet></ProtoBody></ProtoDeclare>\n");
+ /*if(m_x) mgl_printf(fp, gz, "/m_x {sm sm rm s2 s2 rl 0 sm 2 mul rm sm 2 mul s2 rl d0} def\n"); // TODO
+ if(m_s) mgl_printf(fp, gz, "/m_s {sm sm rm 0 s2 rl s2 0 rl 0 sm 2 mul rl cp d0} def\n");
+ if(m_d) mgl_printf(fp, gz, "/m_d {sm 0 rm ss ss rl ss sm rl sm sm rl cp d0} def\n");
+ if(m_v) mgl_printf(fp, gz, "/m_v {sm ss 2 div rm s2 0 rl sm sm 1.5 mul rl d0 cp} def\n");
+ if(m_t) mgl_printf(fp, gz, "/m_t {sm sm 2 div rm s2 0 rl sm ss 1.5 mul rl d0 cp} def\n");
+ if(m_a) mgl_printf(fp, gz, "/m_a {sm 0 rm s2 0 rl sm 1.6 mul sm 0.8 mul rm ss 1.2 mul ss 1.6 mul rl 0 sm 1.6 mul rm sm 1.2 mul ss 1.6 mul rl d0} def\n");
+ if(m_o) mgl_printf(fp, gz, "/m_o {ss 0 360 d0 arc} def\n");
+ if(m_S) mgl_printf(fp, gz, "/m_S {sm sm rm 0 s2 rl s2 0 rl 0 sm 2 mul rl cp} def\n");
+ if(m_D) mgl_printf(fp, gz, "/m_D {sm 0 rm ss ss rl ss sm rl sm sm rl cp} def\n");
+ if(m_V) mgl_printf(fp, gz, "/m_V {sm ss 2 div rm s2 0 rl sm sm 1.5 mul rl cp} def\n");
+ if(m_T) mgl_printf(fp, gz, "/m_T {sm sm 2 div rm s2 0 rl sm ss 1.5 mul rl cp} def\n");
+ if(m_Y) mgl_printf(fp, gz, "/m_Y {0 sm rm 0 ss rl sm ss rl s2 0 rm sm sm rl d0} def\n");
+ if(m_r) mgl_printf(fp, gz, "/m_r {sm 2 div sm rm 0 s2 rl ss 1.5 mul sm rl d0 cp} def\n");
+ if(m_l) mgl_printf(fp, gz, "/m_l {ss 2 div sm rm 0 s2 rl sm 1.5 mul sm rl d0 cp} def\n");
+ if(m_R) mgl_printf(fp, gz, "/m_R {sm 2 div sm rm 0 s2 rl ss 1.5 mul sm rl cp} def\n");
+ if(m_L) mgl_printf(fp, gz, "/m_L {ss 2 div sm rm 0 s2 rl sm 1.5 mul sm rl cp} def\n");
+ if(m_P) mgl_printf(fp, gz, "/m_P {m_p 0 sm rm m_s} def\n");
+ if(m_X) mgl_printf(fp, gz, "/m_X {m_x ss sm rm m_s} def\n");*/
+ // if(m_C) mgl_printf(fp, gz, "/m_C {m_c m_o} def\n");
+ mgl_printf(fp, gz, "\n");
+
+ // 2 define coordinates, colors and so on
+ mgl_printf(fp, gz, "<Coordinate DEF='mypnts' point='");
+ for(i=0;i<gr->GetPntNum();i++)
+ { const mglPnt &p=gr->GetPnt(i); mgl_printf(fp, gz, "%g %g %g, ", p.x,p.y,p.z); }
+ mgl_printf(fp, gz, "0.0 0.0 0.0'/>");
+ mgl_printf(fp, gz, "<Color DEF='myclrs' color='");
+ for(i=0;i<gr->GetPntNum();i++)
+ { const mglPnt &p=gr->GetPnt(i); mgl_printf(fp, gz, "%g %g %g, ", p.r,p.g,p.b); }
+ mgl_printf(fp, gz, "0.0 0.0 0.0'/>");
+/* mgl_printf(fp, gz, "<Normal DEF='mynrms' vector='"); // Let X3D calculate normales by itself ?!?
+ for(i=0;i<gr->GetPntNum();i++)
+ { const mglPnt &p=gr->GetPnt(i);
+ if(isnan(p.u) || isnan(p.v) || isnan(p.w)) mgl_printf(fp, gz, "0 0 0, ");
+ else mgl_printf(fp, gz, "%g %g %g, ", p.u,p.v,p.w); }
+ mgl_printf(fp, gz, "0.0 0.0 0.0'/>");*/
+
+ // now should be defined textures ... but since X3D support RGBA then omit this in this version
+
+ // 3. now find group for primitives
+ long m1=0,m2=0,m;
+ for(i=0;i<gr->Grp.size();i++) // prepare array of indirect indexing
+ { m = gr->Grp[i].Id; if(m<m1) m1=m; if(m>m2) m2=m; }
+ long *ng = new long[m2-m1+1];
+ for(i=0;i<gr->Grp.size();i++) ng[gr->Grp[i].Id-m1] = i;
+ for(i=0;i<gr->GetPrmNum();i++) // collect data for groups
+ // it is rather expensive (extra 4b per primitive) but need for export to 3D
+ {
+ m = gr->GetPrm(i).id-m1;
+ if(m>=0 && m<m2-m1+1) gr->Grp[ng[m]].p.push_back(i);
+ }
+ delete []ng;
+
+ // primitive definition in groups
+ std::vector<long> p;
+ mglPrim q;
+ for(i=0;i<gr->Grp.size();i++)
+ {
+ mgl_printf(fp,gz,"<Group><!--%s-->\n",gr->Grp[i].Lbl.c_str()); p = gr->Grp[i].p;
+ for(j=0;j<p.size();j++)
+ {
+ const mglPrim q=gr->GetPrm(p[j]); // TODO: collect by type (quads,trig,line) and draw together???
+ mgl_x3d_prim(q, gr->GetPnt(q.n1), fp,gz, q.s*gr->FontFactor());
+ }
+ mgl_printf(fp,gz,"</Group><!--%s-->\n",gr->Grp[i].Lbl.c_str());
+ gr->Grp[i].p.clear(); // we don't need indexes anymore
+ }
+ // try to save "ungrouped" primitives
+ mgl_printf(fp,gz,"<!--ungrouped-->\n");
+ for(i=0;i<gr->GetPrmNum();i++)
+ {
+ const mglPrim q=gr->GetPrm(p[j]); m = q.id-m1;
+ if(m<0 || m>=m2-m1+1)
+ mgl_x3d_prim(q, gr->GetPnt(q.n1), fp,gz, q.s*gr->FontFactor());
+ }
+ mgl_printf(fp, gz, "</Scene>\n");
+ if(gz) gzclose((gzFile)fp); else fclose((FILE *)fp);
+}
+void mgl_write_x3d_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+mgl_write_x3d(_GR_,s,d); delete []s; delete []d; }
+//-----------------------------------------------------------------------------
+void mgl_write_wrl(HMGL gr, const char *fname,const char *descr)
+{
+ // TODO: Add export to X3D
+}
+void mgl_write_wrl_(uintptr_t *gr, const char *fname,const char *descr,int l,int n)
+{ char *s=new char[l+1]; memcpy(s,fname,l); s[l]=0;
+char *d=new char[n+1]; memcpy(d,descr,n); d[n]=0;
+mgl_write_wrl(_GR_,s,d); delete []s; delete []d; }
+//-----------------------------------------------------------------------------
diff --git a/src/fit.cpp b/src/fit.cpp
index 4690950..d02c03e 100644
--- a/src/fit.cpp
+++ b/src/fit.cpp
@@ -26,18 +26,18 @@
#include "mgl/eval.h"
#include "mgl/data.h"
//-----------------------------------------------------------------------------
-int mglFitPnts; ///< Number of output points in fitting
+int mglFitPnts=100; ///< Number of output points in fitting
char mglFitRes[1024]; ///< Last fitted formula
//-----------------------------------------------------------------------------
/// Structure for keeping data and precompiled fitted formula
struct mglFitData
{
long n; ///< number of points
- float *x; ///< x values
- float *y; ///< y values
- float *z; ///< z values
- float *a; ///< function values
- float *s; ///< value dispersions (sigma)
+ mreal *x; ///< x values
+ mreal *y; ///< y values
+ mreal *z; ///< z values
+ mreal *a; ///< function values
+ mreal *s; ///< value dispersions (sigma)
mglFormula *eq; ///< approximation formula
int m; ///< number of variables
const char *var; ///< variables for fitting
@@ -48,7 +48,7 @@ int mgl_fit__f (const gsl_vector *x, void *data, gsl_vector *f)
{
mglFitData *fd = (mglFitData *)data;
register long i;
- float val[MGL_VS];
+ mreal val[MGL_VS];
for(i=0;i<fd->m;i++) val[fd->var[i]-'a'] = gsl_vector_get(x,i);
for(i=0;i<fd->n;i++)
{
@@ -64,7 +64,7 @@ int mgl_fit__df (const gsl_vector * x, void *data, gsl_matrix * J)
{
mglFitData *fd = (mglFitData *)data;
register long i,j;
- float val[MGL_VS],s;
+ mreal val[MGL_VS],s;
for(i=0;i<fd->m;i++) val[fd->var[i]-'a'] = gsl_vector_get(x,i);
for(i=0;i<fd->n;i++)
{
@@ -86,7 +86,7 @@ int mgl_fit__fdf (const gsl_vector * x, void *data, gsl_vector * f, gsl_matrix *
#endif
//-----------------------------------------------------------------------------
/// GSL based fitting procedure for formula/arguments specified by string
-float mgl_fit_base(mglFitData *fd, float *ini)
+mreal mgl_fit_base(mglFitData *fd, mreal *ini)
{
#ifndef NO_GSL
register long i,m=fd->m,n=fd->n,iter=0;
@@ -114,7 +114,7 @@ float mgl_fit_base(mglFitData *fd, float *ini)
}
while ( status == GSL_CONTINUE && iter < 500 );
gsl_multifit_covar (s->J, 0.0, covar );
- float res = gsl_blas_dnrm2(s->f);
+ mreal res = gsl_blas_dnrm2(s->f);
for(i=0;i<m;i++) ini[i] = gsl_vector_get(s->x, i);
// free memory
gsl_multifit_fdfsolver_free (s);
@@ -126,19 +126,18 @@ float mgl_fit_base(mglFitData *fd, float *ini)
#endif
}
//-----------------------------------------------------------------------------
-void mglPrepareFitEq(mglBase *gr,float chi, const char *eq, const char *var, float *par)
+void mglPrepareFitEq(mglBase *gr,mreal chi, const char *eq, const char *var, mreal *par)
{
- if(gr->Message)
+ char buf[32]="";
+ sprintf(mglFitRes,"chi=%g",chi);
+ for(int i=0;i<int(strlen(var));i++)
{
- sprintf(gr->Message,"chi=%g,\t",chi);
- for(int i=0;i<int(strlen(var));i++)
- {
- sprintf(mglFitRes,"%c=%g,\t",var[i],par[i]);
- strcat(gr->Message, mglFitRes);
- }
+ sprintf(buf,", %c=%g",var[i],par[i]);
+ strcat(mglFitRes,buf);
}
+ gr->SetWarn(-1,mglFitRes);
+
memset(mglFitRes, 0, 1024); //mglFitRes[0] = 0;
- char buf[32]="";
register long i,k,len=strlen(eq);
for(i=k=0;i<len;i++)
{
@@ -213,7 +212,9 @@ HMDT mgl_fit_xys(HMGL gr, HCDT xx, HCDT yy, HCDT ss, const char *eq, const char
if(m<2) { gr->SetWarn(mglWarnLow,"Fit[S]"); return fit; }
if(ss->GetNx()*ss->GetNy()*ss->GetNz() != m*yy->GetNy()*yy->GetNz())
{ gr->SetWarn(mglWarnDim,"FitS"); return fit; }
- gr->SaveState(opt);
+
+ long nn = long(0.5+gr->SaveState(opt));
+ if(nn<mglFitPnts) nn = mglFitPnts;
mglData x(xx), y(yy), s(ss);
mglFitData fd;
fd.n = m; fd.x = x.a; fd.y = 0;
@@ -221,8 +222,8 @@ HMDT mgl_fit_xys(HMGL gr, HCDT xx, HCDT yy, HCDT ss, const char *eq, const char
fd.var = var; fd.m = strlen(var);
fd.eq = new mglFormula(eq);
mglData in(fd.m);
- fit->Create(mglFitPnts, yy->GetNy(), yy->GetNz());
- float val[MGL_VS],res=-1;
+ fit->Create(nn, yy->GetNy(), yy->GetNz());
+ mreal val[MGL_VS],res=-1;
register long j;
for(long i=0;i<yy->GetNy()*yy->GetNz();i++)
{
@@ -232,10 +233,10 @@ HMDT mgl_fit_xys(HMGL gr, HCDT xx, HCDT yy, HCDT ss, const char *eq, const char
fd.s = s.a+i*m;
res = mgl_fit_base(&fd,in.a);
for(j=0;j<fd.m;j++) val[var[j]-'a'] = in.a[j];
- for(j=0;j<mglFitPnts;j++)
+ for(j=0;j<nn;j++)
{
- val['x'-'a'] = gr->Min.x+j*(gr->Max.x-gr->Min.x)/(mglFitPnts-1);
- fit->a[j+i*mglFitPnts] = fd.eq->Calc(val);
+ val['x'-'a'] = gr->Min.x+j*(gr->Max.x-gr->Min.x)/(nn-1);
+ fit->a[j+i*nn] = fd.eq->Calc(val);
}
if(ini && ini->nx>=fd.m) memcpy(ini->a,in.a,fd.m*sizeof(mreal));
}
@@ -254,7 +255,8 @@ HMDT mgl_fit_xyzs(HMGL gr, HCDT xx, HCDT yy, HCDT zz, HCDT ss, const char *eq, c
{ gr->SetWarn(mglWarnDim); return fit; }
if(m<2|| n<2) { gr->SetWarn(mglWarnLow,"Fit[S]"); return fit; }
- gr->SaveState(opt);
+ long nn = long(0.5+gr->SaveState(opt));
+ if(nn<mglFitPnts) nn = mglFitPnts;
mglData x(m, n), y(m, n), z(zz), s(ss);
register long i,j;
for(i=0;i<m;i++) for(j=0;j<n;j++) // ñîçäà åì ìà ññèâ òî÷åê
@@ -268,8 +270,8 @@ HMDT mgl_fit_xyzs(HMGL gr, HCDT xx, HCDT yy, HCDT zz, HCDT ss, const char *eq, c
fd.var = var; fd.m = strlen(var);
fd.eq = new mglFormula(eq);
mglData in(fd.m);
- fit->Create(mglFitPnts, mglFitPnts, zz->GetNz());
- float val[MGL_VS], res = -1;
+ fit->Create(nn, nn, zz->GetNz());
+ mreal val[MGL_VS], res = -1;
for(i=0;i<zz->GetNz();i++)
{
if(ini && ini->nx>=fd.m) in.Set(ini->a,fd.m);
@@ -277,11 +279,11 @@ HMDT mgl_fit_xyzs(HMGL gr, HCDT xx, HCDT yy, HCDT zz, HCDT ss, const char *eq, c
fd.a = z.a+i*m*n; fd.s = s.a+i*m*n;
res = mgl_fit_base(&fd,in.a);
for(j=0;j<fd.m;j++) val[var[j]-'a'] = in.a[j];
- for(j=0;j<mglFitPnts*mglFitPnts;j++)
+ for(j=0;j<nn*nn;j++)
{
- val['x'-'a'] = gr->Min.x+(j%mglFitPnts)*(gr->Max.x-gr->Min.x)/(mglFitPnts-1);
- val['y'-'a'] = gr->Min.y+(j/mglFitPnts)*(gr->Max.y-gr->Min.y)/(mglFitPnts-1);
- fit->a[j+i*mglFitPnts*mglFitPnts] = fd.eq->Calc(val);
+ val['x'-'a'] = gr->Min.x+(j%nn)*(gr->Max.x-gr->Min.x)/(nn-1);
+ val['y'-'a'] = gr->Min.y+(j/nn)*(gr->Max.y-gr->Min.y)/(nn-1);
+ fit->a[j+i*nn*nn] = fd.eq->Calc(val);
}
if(ini && ini->nx>=fd.m) memcpy(ini->a,in.a,fd.m*sizeof(mreal));
}
@@ -301,7 +303,8 @@ HMDT mgl_fit_xyzas(HMGL gr, HCDT xx, HCDT yy, HCDT zz, HCDT aa, HCDT ss, const c
if(!(both || (xx->GetNx()==m && yy->GetNx()==n && zz->GetNx()==l)))
{ gr->SetWarn(mglWarnDim,"Fit[S]"); return fit; }
- gr->SaveState(opt);
+ long nn = long(0.5+gr->SaveState(opt));
+ if(nn<mglFitPnts) nn = mglFitPnts;
mglData x(aa), y(aa), z(aa), a(aa), s(ss);
for(i=0;i<m;i++) for(j=0;j<n;j++) for(k=0;k<l;k++) // ñîçäà åì ìà ññèâ òî÷åê
{
@@ -316,19 +319,19 @@ HMDT mgl_fit_xyzas(HMGL gr, HCDT xx, HCDT yy, HCDT zz, HCDT aa, HCDT ss, const c
fd.var = var; fd.m = strlen(var);
fd.eq = new mglFormula(eq);
mglData in(fd.m);
- fit->Create(mglFitPnts, mglFitPnts, mglFitPnts);
- float val[MGL_VS], res = -1;
+ fit->Create(nn, nn, nn);
+ mreal val[MGL_VS], res = -1;
if(ini && ini->nx>=fd.m) in.Set(ini->a,fd.m);
else in.Fill(0.,0);
res = mgl_fit_base(&fd,in.a);
for(j=0;j<fd.m;j++) val[var[j]-'a'] = in.a[j];
- for(i=0;i<mglFitPnts;i++) for(j=0;j<mglFitPnts*mglFitPnts;j++)
+ for(i=0;i<nn;i++) for(j=0;j<nn*nn;j++)
{
- val['x'-'a'] = gr->Min.x+(j%mglFitPnts)*(gr->Max.x-gr->Min.x)/(mglFitPnts-1);
- val['y'-'a'] = gr->Min.y+(j/mglFitPnts)*(gr->Max.y-gr->Min.y)/(mglFitPnts-1);
- val['z'-'a'] = gr->Min.z+i*(gr->Max.y-gr->Min.y)/(mglFitPnts-1);
- fit->a[j+mglFitPnts*mglFitPnts*i] = fd.eq->Calc(val);
+ val['x'-'a'] = gr->Min.x+(j%nn)*(gr->Max.x-gr->Min.x)/(nn-1);
+ val['y'-'a'] = gr->Min.y+(j/nn)*(gr->Max.y-gr->Min.y)/(nn-1);
+ val['z'-'a'] = gr->Min.z+i*(gr->Max.y-gr->Min.y)/(nn-1);
+ fit->a[j+nn*nn*i] = fd.eq->Calc(val);
}
if(ini && ini->nx>=fd.m) memcpy(ini->a,in.a,fd.m*sizeof(mreal));
@@ -338,52 +341,59 @@ HMDT mgl_fit_xyzas(HMGL gr, HCDT xx, HCDT yy, HCDT zz, HCDT aa, HCDT ss, const c
//-----------------------------------------------------------------------------
HMDT mgl_hist_x(HMGL gr, HCDT x, HCDT a, const char *opt)
{
- mglData *res = new mglData(mglFitPnts);
long nn=a->GetNx()*a->GetNy()*a->GetNz();
- if(nn!=x->GetNx()*x->GetNy()*x->GetNz()) { gr->SetWarn(mglWarnDim); return res; }
- gr->SaveState(opt);
+ if(nn!=x->GetNx()*x->GetNy()*x->GetNz())
+ { gr->SetWarn(mglWarnDim); return (new mglData); }
+ long n = long(0.5+gr->SaveState(opt));
+ if(n<mglFitPnts) n = mglFitPnts;
+ mglData *res = new mglData(n);
register long i,j1;
for(i=0;i<nn;i++)
{
- j1 = long(mglFitPnts*(x->v(i)-gr->Min.x)/(gr->Max.x-gr->Min.x));
- if(j1>=0 && j1<mglFitPnts) res->a[j1] += a->v(i);
+ if(gr->Stop) { delete res; return 0; }
+ j1 = long(n*(x->v(i)-gr->Min.x)/(gr->Max.x-gr->Min.x));
+ if(j1>=0 && j1<n) res->a[j1] += a->v(i);
}
gr->LoadState(); return res;
}
//-----------------------------------------------------------------------------
HMDT mgl_hist_xy(HMGL gr, HCDT x, HCDT y, HCDT a, const char *opt)
{
- mglData *res = new mglData(mglFitPnts, mglFitPnts);
long nn=a->GetNx()*a->GetNy()*a->GetNz();
if(nn!=x->GetNx()*x->GetNy()*x->GetNz() || nn!=y->GetNx()*y->GetNy()*y->GetNz())
- { gr->SetWarn(mglWarnDim); return res; }
- gr->SaveState(opt);
+ { gr->SetWarn(mglWarnDim); return (new mglData); }
+ long n = long(0.5+gr->SaveState(opt));
+ if(n<mglFitPnts) n = mglFitPnts;
+ mglData *res = new mglData(n, n);
register long i,j1,j2;
for(i=0;i<nn;i++)
{
- j1 = long(mglFitPnts*(x->v(i)-gr->Min.x)/(gr->Max.x-gr->Min.x));
- j2 = long(mglFitPnts*(y->v(i)-gr->Min.y)/(gr->Max.y-gr->Min.y));
- if(j1>=0 && j1<mglFitPnts && j2>=0 && j2<mglFitPnts)
- res->a[j1+mglFitPnts*j2] += a->v(i);
+ if(gr->Stop) { delete res; return 0; }
+ j1 = long(n*(x->v(i)-gr->Min.x)/(gr->Max.x-gr->Min.x));
+ j2 = long(n*(y->v(i)-gr->Min.y)/(gr->Max.y-gr->Min.y));
+ if(j1>=0 && j1<n && j2>=0 && j2<n)
+ res->a[j1+n*j2] += a->v(i);
}
gr->LoadState(); return res;
}
//-----------------------------------------------------------------------------
HMDT mgl_hist_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *opt)
{
- mglData *res = new mglData(mglFitPnts, mglFitPnts, mglFitPnts);
long nn=a->GetNx()*a->GetNy()*a->GetNz();
if(nn!=x->GetNx()*x->GetNy()*x->GetNz() || nn!=y->GetNx()*y->GetNy()*y->GetNz() || nn!=z->GetNx()*z->GetNy()*z->GetNz())
- { gr->SetWarn(mglWarnDim); return res; }
- gr->SaveState(opt);
+ { gr->SetWarn(mglWarnDim); return (new mglData); }
+ long n = long(0.5+gr->SaveState(opt));
+ if(n<mglFitPnts) n = mglFitPnts;
+ mglData *res = new mglData(n, n, n);
register long i,j1,j2,j3;
for(i=0;i<nn;i++)
{
- j1 = long(mglFitPnts*(x->v(i)-gr->Min.x)/(gr->Max.x-gr->Min.x));
- j2 = long(mglFitPnts*(y->v(i)-gr->Min.y)/(gr->Max.y-gr->Min.y));
- j3 = long(mglFitPnts*(z->v(i)-gr->Min.z)/(gr->Max.z-gr->Min.z));
- if(j1>=0 && j1<mglFitPnts && j2>=0 && j2<mglFitPnts && j3>=0 && j3<mglFitPnts)
- res->a[j1+mglFitPnts*(j2+mglFitPnts*j3)] += a->v(i);
+ if(gr->Stop) { delete res; return 0; }
+ j1 = long(n*(x->v(i)-gr->Min.x)/(gr->Max.x-gr->Min.x));
+ j2 = long(n*(y->v(i)-gr->Min.y)/(gr->Max.y-gr->Min.y));
+ j3 = long(n*(z->v(i)-gr->Min.z)/(gr->Max.z-gr->Min.z));
+ if(j1>=0 && j1<n && j2>=0 && j2<n && j3>=0 && j3<n)
+ res->a[j1+n*(j2+n*j3)] += a->v(i);
}
gr->LoadState(); return res;
}
diff --git a/src/font.cpp b/src/font.cpp
index 6be00ed..cac407b 100644
--- a/src/font.cpp
+++ b/src/font.cpp
@@ -17,12 +17,11 @@
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
-//-----------------------------------------------------------------------------
#include <stdlib.h>
#include <locale.h>
#include <ctype.h>
-#include <wctype.h>
-#include <zlib.h>
+#include <wctype.h>
+#include <zlib.h>
#ifdef WIN32
#include <windows.h>
@@ -41,38 +40,39 @@ const float mgl_fgen = 4*14;
extern mglTeXsymb mgl_tex_symb[];
mglFont mglDefFont;
//-----------------------------------------------------------------------------
-char mglGetStyle(const char *how, int *font, int *align)
-{
- const char *cols = "kwrgbcymhWRGBCYMHlenpquLENPQU";
+char mglGetStyle(const char *how, int *font, int *align)
+{
+ const char *cols = MGL_COLORS;
char col=0;
- if(!how || *how==0) return col;
+ if(align) *align = 1; // centering text by default
+ if(!how || *how==0) return col;
// NOTE: no brightness for text color
- for(;*how && *how!=':';how++)
- if(strchr(cols,*how)) col=*how;
- if(align)
- {
- *align = 1;
+ for(;*how && *how!=':';how++)
+ if(strchr(cols,*how)) col=*how;
+ if(align)
+ {
+ *align = 1;
if(strchr(how,'R')) *align = 2;
if(strchr(how,'C')) *align = 1;
if(strchr(how,'L')) *align = 0;
if(strchr(how,'D')) *align+= 4;
- }
- if(font)
- {
- *font = 0;
+ }
+ if(font)
+ {
+ *font = 0;
if(strchr(how,'b')) *font = *font|MGL_FONT_BOLD;
if(strchr(how,'i')) *font = *font|MGL_FONT_ITAL;
if(strchr(how,'w')) *font = *font|MGL_FONT_WIRE;
if(strchr(how,'o')) *font = *font|MGL_FONT_OLINE;
if(strchr(how,'u')) *font = *font|MGL_FONT_ULINE;
- }
+ }
return col;
}
//-----------------------------------------------------------------------------
float mglFont::Puts(const char *str,const char *how,float col)
{
- int font=0, align=1;
- char cc=mglGetStyle(how,&font,&align);
+ int font=0, align=1;
+ char cc=mglGetStyle(how,&font,&align);
unsigned size = strlen(str)+1;
wchar_t *wcs = new wchar_t[size];
mbstowcs(wcs,str,size);
@@ -96,7 +96,7 @@ float mglFont::Width(const char *str,const char *how)
float mglFont::Puts(const wchar_t *str,const char *how,float col)
{
int font=0, align=1;
- char cc=mglGetStyle(how,&font,&align);
+ char cc=mglGetStyle(how,&font,&align);
return Puts(str, font, align,cc?-cc:col);
}
//-----------------------------------------------------------------------------
@@ -111,14 +111,22 @@ float mglFont::Puts(const wchar_t *str,int font,int align, float col)
{
if(numg==0) return 0;
float ww=0,w=0,h = (align&4) ? 500./fact[0] : 0;
- unsigned size = wcslen(str)+1;
+ unsigned size = wcslen(str)+1,i,num=0;
if(parse)
{
- unsigned *wcs = new unsigned[size];
+ unsigned *wcs = new unsigned[size], *buf=wcs;
memcpy(wcs,str,size*sizeof(wchar_t));
Convert(str, wcs);
- ww = w = Puts(wcs,0,0,1.f,0x10|font,col); // find width
- Puts(wcs,-w*(align&3)/2.f,-h,1.f,font,col); // draw it really
+ for(i=0;wcs[i];i++) if(wcs[i]=='\n') // parse '\n' symbol
+ {
+ wcs[i]=0; w = Puts(buf,0,0,1.f,0x10|font,col); // find width
+ Puts(buf,-w*(align&3)/2.f,-h - 500.*num/fact[0],1.f,font,col); // draw it really
+ buf=wcs+i+1; num++; if(w>ww) ww=w;
+ }
+ // draw string itself
+ w = Puts(buf,0,0,1.f,0x10|font,col); // find width
+ Puts(buf,-w*(align&3)/2.f,-h - 500.*num/fact[0],1.f,font,col); // draw it really
+ if(w>ww) ww=w;
delete []wcs;
}
else
@@ -151,14 +159,20 @@ float mglFont::Puts(const wchar_t *str,int font,int align, float col)
float mglFont::Width(const wchar_t *str,int font)
{
if(numg==0) return 0;
- float w=0;
- unsigned size = wcslen(str)+1;
+ float ww=0,w=0;
+ unsigned size = wcslen(str)+1,i;
if(parse)
{
- unsigned *wcs = new unsigned[size];
+ unsigned *wcs = new unsigned[size], *buf=wcs;
memcpy(wcs,str,size*sizeof(wchar_t));
Convert(str, wcs);
- w = Puts(wcs,0,0,1.,0x10+font,'k');
+ for(i=0;wcs[i];i++) if(wcs[i]=='\n') // parse '\n' symbol
+ {
+ wcs[i]=0; w = Puts(buf,0,0,1.,0x10+font,'k'); // find width
+ buf=wcs+i+1; if(w>ww) ww=w;
+ }
+ w = Puts(buf,0,0,1.,0x10+font,'k');
+ if(w>ww) ww=w;
delete []wcs;
}
else
@@ -260,6 +274,7 @@ unsigned mglFont::Parse(const wchar_t *s)
else if(!wcscmp(s,L"r")) res = unsigned(-1);
else if(!wcscmp(s,L"a")) res = MGL_FONT_OLINE;
else if(!wcscmp(s,L"u")) res = MGL_FONT_ULINE;
+ else if(!wcscmp(s,L"n")) res = '\n';
else if(!wcscmp(s,L"overline")) res = MGL_FONT_OLINE;
else if(!wcscmp(s,L"underline"))res = MGL_FONT_ULINE;
else if(!wcscmp(s,L"textbf")) res = MGL_FONT_BOLD;
@@ -298,7 +313,7 @@ void mglFont::Convert(const wchar_t *str, unsigned *res)
}
}
}
- else if(ch<=' ') res[j++] = ' '; // no \t, no \n at this moment :(
+ else if(ch<=' ' && ch!='\n') res[j++] = ' '; // no \t at this moment :(
else if(ch=='_') res[j++] = MGL_FONT_LOWER;
else if(ch=='^') res[j++] = MGL_FONT_UPPER;
else if(ch=='@') res[j++] = MGL_FONT_UPPER|MGL_FONT_LOWER;
@@ -350,12 +365,12 @@ void mglFont::draw_ouline(int st, float x, float y, float f, float g, float ww,
if(st&MGL_FONT_ULINE)
gr->Glyph(x,y-200*f/g, ww*g, (st&MGL_FONT_WIRE)?12:8, 0, ccol);
}
-//-----------------------------------------------------------------------------
+//-----------------------------------------------------------------------------
#define MGL_CLEAR_STYLE {st = style; yy = y; ff = f; ccol=col; a = (st/MGL_FONT_BOLD)&3;}
float mglFont::Puts(const unsigned *text, float x,float y,float f,int style,float col)
{
if(numg==0) return 0;
- register long j,k;
+ register long j,k;
long i;
register unsigned s,ss;
float w=0; // string width
@@ -386,8 +401,15 @@ float mglFont::Puts(const unsigned *text, float x,float y,float f,int style,floa
draw_ouline(st,x,y,f,fact[a],ww,ccol);
MGL_CLEAR_STYLE
}
+ else if(s=='\n') // newline
+ {
+ ww = get_ptr(i, str, &b1, &b2, w1, w2, ff, ff, st);
+ Puts(b1, x+(ww-w1)/2, yy, ff, (st&(~MGL_FONT_OLINE)&(~MGL_FONT_ULINE)), ccol);
+ Puts(b2, x+(ww-w2)/2, yy-600*ff/fact[a], ff, (st&(~MGL_FONT_OLINE)&(~MGL_FONT_ULINE)), ccol);
+ MGL_CLEAR_STYLE
+ }
else if(s==unsigned(-9)) // underset
- {
+ {
ww = get_ptr(i, str, &b1, &b2, w1, w2, ff, ff/4, st);
Puts(b1, x+(ww-w1)/2, yy, ff, (st&(~MGL_FONT_OLINE)&(~MGL_FONT_ULINE)), ccol);
Puts(b2, x+(ww-w2)/2, yy-150*ff/fact[a], ff/4, (st&(~MGL_FONT_OLINE)&(~MGL_FONT_ULINE)), ccol);
@@ -462,32 +484,33 @@ float mglFont::Puts(const unsigned *text, float x,float y,float f,int style,floa
MGL_CLEAR_STYLE
}
else if(s==unsigned(-4)) MGL_CLEAR_STYLE // should be never here but if I miss sth ...
- else if(s==unsigned(-14)) // script symbols
+ else if(s==unsigned(-14)) // script symbols
{
- k=1;
- if(str[i+1]==unsigned(-3)) for(j=i+2;k>0 && str[j];j++)
- {
+ k=1;
+ if(str[i+1]==unsigned(-3)) for(j=i+2;k>0 && str[j];j++)
+ {
if(str[j]==unsigned(-3)) k++;
- if(str[j]==unsigned(-4)) k--;
- if(iswlower(str[j]))
- str[j] = MGL_FONT_UPPER|MGL_FONT_LOWER|towupper(str[j]);
+ if(str[j]==unsigned(-4)) k--;
+ if(iswlower(str[j]))
+ str[j] = MGL_FONT_UPPER|MGL_FONT_LOWER|towupper(str[j]);
}
}
else if(s==unsigned(-5)) // large symbol
ff *= 1.5;
else if(s==unsigned(-1)) // set normal font
st = style & MGL_FONT_ROMAN;
- else if((s&MGL_COLOR_MASK)==MGL_COLOR_MASK) // color specification
- ccol = -float(s & 0xff);
+ else if((s&MGL_COLOR_MASK)==MGL_COLOR_MASK) // color specification
+ ccol = -float(s & 0xff);
else
{
ss = s&MGL_FONT_MASK;
if(ss) // draw symbol (glyph)
{
- if(ss!=' ')
+ if(ss>' ')
{
j = Internal(ss);
if(j==-1) continue;
+ if(s & MGL_FONT_ZEROW) yy += 100*ff/fact[a];
if(gr && !(style&0x10))
{
if(st & MGL_FONT_WIRE) gr->Glyph(x,yy,ff,a+4,j,ccol);
@@ -558,7 +581,7 @@ bool mglFont::read_def(unsigned &cur)
numg = mgl_numg; cur = mgl_cur;
// copy default factor for other font styles;
fact[1] = fact[2] = fact[3] = fact[0] = mgl_fact*mgl_fgen;
- Buf = (short *)malloc(cur*sizeof(short)); // prealocate buffer
+ Buf = (short *)malloc(cur*sizeof(short)); // prealocate buffer
memset(Buf,0,cur*sizeof(short));
// now allocate memory for all fonts
mem_alloc();
@@ -582,47 +605,47 @@ bool mglFont::read_def(unsigned &cur)
bool mglFont::read_data(const char *fname, float *ff, short *wdt, short *lnum,
unsigned *posl, short *tnum, unsigned *post, unsigned &cur)
{
- gzFile fp;
- char str[256];
- int n, tmpw, tmpnl, tmpnt;
- unsigned s, tmpi, tmppl, tmppt;
- register long i,j,ch,retVal;
- fp = gzopen(fname,"r"); if(!fp) return false; // false if no file
- // first string is comment (not used), second string have information
- if(!gzgets(fp,str,256) || !gzgets(fp,str,256))
- { gzclose(fp); return false; }
- retVal = sscanf(str, "%d%f%d", &n, ff, &s);
- //Check sscanf read all data (3 items)
- if(retVal != 3) { gzclose(fp); return false; }
- Buf = (short *)realloc(Buf, (cur+s)*sizeof(short)); // prealocate buffer
- if(!Buf) { gzclose(fp); return false; }
-
- for(i=0;i<n;i++)
- {
- gzgets(fp,str,256);
- retVal = sscanf(str,"%u%d%d%u%d%u", &tmpi, &tmpw, &tmpnl, &tmppl, &tmpnt, &tmppt);
- if(retVal != 6) { gzclose(fp); free(Buf); return false; }
- j=Internal(unsigned(tmpi)); if(j<0) continue;
- if(wdt) wdt[j] = tmpw;
- lnum[j] = tmpnl; posl[j] = tmppl+cur;
- tnum[j] = tmpnt; post[j] = tmppt+cur;
- }
- for(j=i=0;i<int(s);i++)
- {
- for(j=0;j<256;j++)
- { str[j] = ch = gzgetc(fp); if(ch<=' ') break; }
- Buf[i+cur] = atoi(str);
- }
- cur += s;
- gzclose(fp); // finish wire normal font
- return true;
+ gzFile fp;
+ char str[256];
+ int n, tmpw, tmpnl, tmpnt;
+ unsigned s, tmpi, tmppl, tmppt;
+ register long i,j,ch,retVal;
+ fp = gzopen(fname,"r"); if(!fp) return false; // false if no file
+ // first string is comment (not used), second string have information
+ if(!gzgets(fp,str,256) || !gzgets(fp,str,256))
+ { gzclose(fp); return false; }
+ retVal = sscanf(str, "%d%f%d", &n, ff, &s);
+ //Check sscanf read all data (3 items)
+ if(retVal != 3) { gzclose(fp); return false; }
+ Buf = (short *)realloc(Buf, (cur+s)*sizeof(short)); // prealocate buffer
+ if(!Buf) { gzclose(fp); return false; }
+
+ for(i=0;i<n;i++)
+ {
+ gzgets(fp,str,256);
+ retVal = sscanf(str,"%u%d%d%u%d%u", &tmpi, &tmpw, &tmpnl, &tmppl, &tmpnt, &tmppt);
+ if(retVal != 6) { gzclose(fp); free(Buf); return false; }
+ j=Internal(unsigned(tmpi)); if(j<0) continue;
+ if(wdt) wdt[j] = tmpw;
+ lnum[j] = tmpnl; posl[j] = tmppl+cur;
+ tnum[j] = tmpnt; post[j] = tmppt+cur;
+ }
+ for(j=i=0;i<int(s);i++)
+ {
+ for(j=0;j<256;j++)
+ { str[j] = ch = gzgetc(fp); if(ch<=' ') break; }
+ Buf[i+cur] = atoi(str);
+ }
+ cur += s;
+ gzclose(fp); // finish wire normal font
+ return true;
}
//-----------------------------------------------------------------------------
bool mglFont::read_main(const char *fname, unsigned &cur)
{
gzFile fp;
int tmpi, tmpw, tmpnl, tmpnt;
- unsigned s, tmppl, tmppt;
+ unsigned s, tmppl, tmppt;
char str[256];
fp = gzopen(fname,"r"); if(!fp) return false; // this font must be in any case
@@ -631,30 +654,30 @@ bool mglFont::read_main(const char *fname, unsigned &cur)
{ gzclose(fp); return false; }
sscanf(str, "%u%f%u", &numg, fact, &s);
fact[1] = fact[2] = fact[3] = fact[0]; // copy default factor for other font styles;
- Buf = (short *)malloc(s*sizeof(short)); // prealocate buffer
- memset(Buf,0,s*sizeof(short));
- if(!Buf) { gzclose(fp); return false; }
+ Buf = (short *)malloc(s*sizeof(short)); // prealocate buffer
+ memset(Buf,0,s*sizeof(short));
+ if(!Buf) { gzclose(fp); numg=0; return false; }
// now allocate memory for all fonts
mem_alloc();
// and load symbols itself
register long i,j,ch;
for(i=0;i<int(numg);i++)
- {
+ {
gzgets(fp,str,256);
sscanf(str,"%u%d%d%u%d%u", &tmpi, &tmpw, &tmpnl, &tmppl, &tmpnt, &tmppt);
id[i] = tmpi; width[0][i] = tmpw;
numl[0][i] = tmpnl; ln[0][i] = tmppl;
numt[0][i] = tmpnt; tr[0][i] = tmppt;
}
- for(j=i=0;i<int(s);i++)
- {
- for(j=0;j<256;j++)
- { str[j] = ch = gzgetc(fp); if(ch<=' ') break; }
- Buf[i] = atoi(str);
+ for(j=i=0;i<int(s);i++)
+ {
+ for(j=0;j<256;j++)
+ { str[j] = ch = gzgetc(fp); if(ch<=' ') break; }
+ Buf[i] = atoi(str);
}
gzclose(fp); // finish wire normal font
cur += s; numb = cur;
- main_copy(); // copy normal style as default for other styles
+ main_copy(); // copy normal style as default for other styles
return true;
}
//-----------------------------------------------------------------------------
@@ -669,7 +692,7 @@ bool mglFont::Load(const char *base, const char *path)
const char *oldLocale = setlocale(LC_NUMERIC,"C");
unsigned cur=0;
if(!path) path = MGL_FONT_PATH;
- if(base)
+ if(base && *base)
{
buf = new char[strlen(base)+1];
strcpy(buf,base);
@@ -682,10 +705,10 @@ bool mglFont::Load(const char *base, const char *path)
}
Clear(); // first clear old
- sprintf(str,"%s%c%s.vfm",path,sep,base);
- if(!base || !read_main(str,cur))
- { read_def(cur); setlocale(LC_NUMERIC,oldLocale);
- if(buf) delete []buf; return true; }
+ sprintf(str,"%s%c%s.vfm",path,sep,base?base:"");
+ if(!(base && *base) || !read_main(str,cur))
+ { read_def(cur); setlocale(LC_NUMERIC,oldLocale);
+ if(buf) delete []buf; return true; }
//================== bold ===========================================
sprintf(str,"%s%c%s_b.vfm",path,sep,base); // this file may absent
@@ -712,7 +735,7 @@ bool mglFont::Load(const char *base, const char *path)
// Finally normalize all factors
fact[0] *= mgl_fgen; fact[1] *= mgl_fgen;
fact[2] *= mgl_fgen; fact[3] *= mgl_fgen;
- setlocale(LC_NUMERIC,oldLocale);
+ setlocale(LC_NUMERIC,oldLocale);
if(buf) delete []buf;
return true;
}
diff --git a/src/opengl.cpp b/src/opengl.cpp
index 9409f8a..52c1957 100644
--- a/src/opengl.cpp
+++ b/src/opengl.cpp
@@ -28,15 +28,15 @@ void mglCanvasGL::Finish()
glVertexPointer(3, GL_FLOAT, sizeof(mglPnt), &(Pnt[0].x));
glNormalPointer(GL_FLOAT, sizeof(mglPnt), &(Pnt[0].u));
glColorPointer(4, GL_FLOAT, sizeof(mglPnt), &(Pnt[0].r));
- glEnableClientState(GL_VERTEX_ARRAY);
- glEnableClientState(GL_NORMAL_ARRAY);
- glEnableClientState(GL_COLOR_ARRAY);
-
+ glEnableClientState(GL_VERTEX_ARRAY);
+ glEnableClientState(GL_NORMAL_ARRAY);
+ glEnableClientState(GL_COLOR_ARRAY);
+
int pdef=PDef;
- float ss=pPos, ww=PenWidth;
- mglPrim p;
- for(unsigned long i=0;i<Prm.size();i++)
- {
+ float ss=pPos, ww=PenWidth;
+ mglPrim p;
+ for(unsigned long i=0;i<Prm.size();i++)
+ {
p=Prm[i]; PDef=p.n3; pPos=p.s; PenWidth=p.w;
switch(p.type)
{
@@ -75,14 +75,15 @@ bool mglCanvasGL::Alpha(bool enable)
return mglCanvas::Alpha(enable);
}
//-----------------------------------------------------------------------------
-void mglCanvasGL::AddLight(int n,mglPoint p,char cc, float br,bool infty,float /*ap*/)
+void mglCanvasGL::AddLight(int n,mglPoint r,mglPoint d,char cc, float br,float /*ap*/)
{
mglColor c(cc);
mglColor AmbLight = mglColor(AmbBr,AmbBr,AmbBr);
mglColor DifLight = mglColor(br,br,br);
GLenum lght[8] = {GL_LIGHT0,GL_LIGHT1,GL_LIGHT2,GL_LIGHT3,GL_LIGHT4,
GL_LIGHT5,GL_LIGHT6,GL_LIGHT7};
- float amb[4], pos[4],dif[4];
+ float amb[4], pos[4],dif[4],dir[4];
+ bool inf = isnan(r.x);
if(n<0 || n>7) { SetWarn(mglWarnLId); return; }
if(c.Valid())
{
@@ -93,8 +94,11 @@ void mglCanvasGL::AddLight(int n,mglPoint p,char cc, float br,bool infty,float /
dif[2] = DifLight.b; dif[3] = 1.;
amb[0] = AmbLight.r; amb[1] = AmbLight.g;
amb[2] = AmbLight.b; amb[3] = 1.;
- pos[0] = p.x; pos[1] = p.y;
- pos[2] = p.z; pos[3] = infty ? 0:1;
+ if(inf)
+ { pos[0] = d.x; pos[1] = d.y; pos[2] = d.z; pos[3] = 0; }
+ else
+ { pos[0] = r.x; pos[1] = r.y; pos[2] = r.z; pos[3] = 1; }
+ dir[0] = d.x; dir[1] = d.y; dir[2] = d.z;
glShadeModel(GL_SMOOTH);
//glLightf(GL_LIGHT0, GL_SPOT_CUTOFF, 5.0);
//glLightfv(GL_LIGHT0, GL_SPOT_DIRECTION, pos);
@@ -103,6 +107,7 @@ void mglCanvasGL::AddLight(int n,mglPoint p,char cc, float br,bool infty,float /
glLightfv(lght[n], GL_DIFFUSE, dif);
//glLightfv(lght[n], GL_SPECULAR, spc);
glLightfv(lght[n], GL_POSITION, pos);
+ if(!inf) glLightfv(lght[n], GL_SPOT_DIRECTION, dir);
glEnable(lght[n]);
}
//-----------------------------------------------------------------------------
@@ -144,16 +149,17 @@ void mglCanvasGL::View(float TetX,float TetY,float TetZ)
glRotated(TetZ,0.,0.,1.);
}
//-----------------------------------------------------------------------------
-void mglCanvasGL::Fog(float , float)
+void mglCanvasGL::Fog(float d, float)
{
-/* if(d>0) // TODO: Add fog to OpenGL mode
+ if(d>0) // TODO: Check fog to OpenGL mode
{
+ float back[4]={BDef[0]/255.,BDef[1]/255.,BDef[2]/255.,BDef[3]/255.};
glFogf(GL_FOG_MODE,GL_EXP);
glFogf(GL_FOG_DENSITY,5*d);
glFogfv(GL_FOG_COLOR,back);
glEnable(GL_FOG);
}
- else glDisable(GL_FOG);*/
+ else glDisable(GL_FOG);
}
//-----------------------------------------------------------------------------
void mglCanvasGL::Clf(mglColor Back)
diff --git a/src/parser.cpp b/src/parser.cpp
index a58af84..5d93ade 100644
--- a/src/parser.cpp
+++ b/src/parser.cpp
@@ -22,6 +22,7 @@
#include <wchar.h>
//-----------------------------------------------------------------------------
#include "mgl/parser.h"
+#include "mgl/canvas_cf.h"
//-----------------------------------------------------------------------------
#ifdef WIN32
#include <io.h>
@@ -30,9 +31,9 @@ wchar_t *wcstokw32(wchar_t *wcs, const wchar_t *delim) { return wcstok(wcs,delim
#else
#include <unistd.h>
#endif
-//-----------------------------------------------------------------------------
-wchar_t *mgl_wcsdup(const wchar_t *s);
-void mgl_wcstrim(wchar_t *str);
+void (*mgl_ask_func)(const wchar_t *, wchar_t *)=0;
+void mgl_ask_gets(const wchar_t *quest, wchar_t *res)
+{ printf("%ls\n",quest); fgetws(res,1024,stdin); }
//-----------------------------------------------------------------------------
mglFunc::mglFunc(long p, const wchar_t *f, mglFunc *prev)
{
@@ -49,7 +50,7 @@ long mglParser::IsFunc(const wchar_t *name, int *na)
mglFunc *f=func;
while(f)
{
- if(f->func==name)
+ if(!wcscmp(f->func.c_str(), name))
{ if(na) *na=f->narg; return f->pos; }
f = f->next;
}
@@ -82,7 +83,7 @@ int mgl_cmd_cmp(const void *a, const void *b)
{
const mglCommand *aa = (const mglCommand *)a;
const mglCommand *bb = (const mglCommand *)b;
- return wcscmp(aa->name, bb->name);
+ return strcmp(aa->name, bb->name);
}
//-----------------------------------------------------------------------------
bool check_for_name(const wchar_t *s)
@@ -90,9 +91,9 @@ bool check_for_name(const wchar_t *s)
return !isalpha(s[0])||wcschr(s,'.')||wcschr(s,':')||wcschr(s,'(')||wcschr(s,')');
}
//-----------------------------------------------------------------------------
-mglCommand *mglParser::FindCommand(const wchar_t *com, bool prog)
+mglCommand *mglParser::FindCommand(const char *com)
{
- mglCommand tst, *rts, *cmd = prog?Prg:Cmd;
+ mglCommand tst, *rts, *cmd = Cmd;
long i;
for(i=0;cmd[i].name[0];i++); // determine the number of symbols
tst.name = com;
@@ -100,6 +101,12 @@ mglCommand *mglParser::FindCommand(const wchar_t *com, bool prog)
return rts;
}
//-----------------------------------------------------------------------------
+mglCommand *mglParser::FindCommand(const wchar_t *com)
+{
+ char cmd[16]; wcstombs(cmd,com,wcslen(com)+1);
+ return FindCommand(cmd);
+}
+//-----------------------------------------------------------------------------
// return values : 0 -- OK, 1 -- wrong arguments, 2 -- wrong command, 3 -- unclosed string
int mglParser::Exec(mglGraph *gr, const wchar_t *com, long n, mglArg *a, const wchar_t *var, const wchar_t *opt)
{
@@ -107,8 +114,8 @@ int mglParser::Exec(mglGraph *gr, const wchar_t *com, long n, mglArg *a, const w
for(i=0;i<10;i++) k[i] = i<n ? a[i].type + 1 : 0;
for(i=0;i<n;i++) a[i].s.assign(a[i].w.begin(),a[i].w.end());
mglCommand *rts=FindCommand(com);
- if(!rts) return 2;
- if(rts->create)
+ if(!rts || rts->type==6) return 2;
+ if(rts->type == 4)
{
if(n<1 || check_for_name(var)) return 2;
mglVar *v = AddVar(var);
@@ -170,7 +177,7 @@ mglParser::mglParser(bool setsize)
{
DataList=0; NumList=0; func=0; fn_stack=0;
// wchar_t *par[40]; ///< Parameter for substituting instead of $1, ..., $9
- out=0; *leg=0;
+ out=0; *leg=0; InUse = 1;
Skip=Stop=for_br=false;
memset(for_stack,0,40*sizeof(int));
memset(if_stack,0,40*sizeof(int));
@@ -370,9 +377,9 @@ void mglParser::FillArg(mglGraph *gr, int k, wchar_t **arg, mglArg *a)
if(arg[n][0]=='|') a[n-1].type = -1;
else if(arg[n][0]=='\'')
{ // this is string (simplest case)
- a[n-1].type = 1; arg[n][wcslen(arg[n])-1] = 0;
- if(wcslen(arg[n]+1)>=2048) arg[n][2048]=0;
- a[n-1].w = arg[n]+1;
+ a[n-1].type = 1; arg[n][wcslen(arg[n])-1] = 0;
+// if(wcslen(arg[n]+1)>=2048) arg[n][2048]=0;
+ a[n-1].w = arg[n]+1; arg[n][wcslen(arg[n])] = '\'';
}
else if(arg[n][0]=='{')
{ // this is temp data
@@ -510,8 +517,7 @@ int mglParser::Parse(mglGraph *gr, const wchar_t *string, long pos)
if(Stop) return 0;
wchar_t *str, *s = new wchar_t[wcslen(string)+1+40*parlen],*arg[1024],*t;
str = s;
- wcscpy(str,string);
- mgl_wcstrim(str);
+ wcscpy(str,string); mgl_wcstrim(str);
long n,k=0,m=0,mm=0;
// try parse ':' -- several commands in line
for(n=0;n<long(wcslen(str));n++)
@@ -542,7 +548,7 @@ int mglParser::Parse(mglGraph *gr, const wchar_t *string, long pos)
if(*str=='$' && nn>=0 && nn<='z'-'a'+10)
{
str +=2; mgl_wcstrim(str);
- AddParam(n, str); delete []s; return 0;
+ AddParam(nn, str); delete []s; return 0;
}
}
if(!wcsncmp(str+3,L"num",3))
@@ -555,7 +561,7 @@ int mglParser::Parse(mglGraph *gr, const wchar_t *string, long pos)
const mglData &d=mglFormulaCalc(str, this);
char *buf=new char[128];
sprintf(buf,"%g",d.a[0]);
- AddParam(n, buf); delete []buf;
+ AddParam(nn, buf); delete []buf;
}
delete []s; return res;
}
@@ -568,11 +574,27 @@ int mglParser::Parse(mglGraph *gr, const wchar_t *string, long pos)
res = 0; str +=2; mgl_wcstrim(str);
const mglData &d=mglFormulaCalc(str, this);
wchar_t buf[2]={0,0}; buf[0] = wchar_t(d.a[0]);
- AddParam(n, buf);
+ AddParam(nn, buf);
}
delete []s; return res;
}
}
+ if(!skip() && !wcsncmp(str,L"ask",3) && (str[3]==' ' || str[3]=='\t'))
+ {
+ PutArg(string,str,true);
+ str += 4; mgl_wcstrim(str);// int res = 1;
+ int nn = str[1]<='9' ? str[1]-'0' : (str[1]>='a' ? str[1]-'a'+10:-1);
+ if(*str=='$' && nn>=0 && nn<='z'-'a'+10)
+ {
+ static wchar_t res[1024];
+ str +=2; mgl_wcstrim(str);
+ if(*str=='\'') { str++; str[wcslen(str)-1]=0; }
+ if(mgl_ask_func)
+ { mgl_ask_func(str,res); if(*res) AddParam(nn, res); }
+ delete []s; return mgl_ask_func?0:1;
+ }
+ }
+ wcscpy(str,string); mgl_wcstrim(str);
if(!skip() && !wcsncmp(str,L"for",3) && (str[3]==' ' || str[3]=='\t'))
{
for(t=str+4;*t<=' ';t++);
@@ -633,10 +655,10 @@ int mglParser::Parse(mglGraph *gr, const wchar_t *string, long pos)
n=-IsFunc(a[0].w.c_str(),&na);
if(n && k!=na+2)
{
- if(gr->Self()->Message)
- sprintf(gr->Self()->Message,"Bad arguments for %ls: %ld instead of %d\n",
- a[0].w.c_str(),k-2,na);
- n = 1;
+ char buf[64];
+ sprintf(buf,"Bad arguments for %ls: %ld instead of %d\n",
+ a[0].w.c_str(),k-2,na);
+ gr->SetWarn(-1,buf); n = 1;
}
else if(n)
{
@@ -741,7 +763,7 @@ int mglParser::ParseDat(mglGraph *gr, const wchar_t *string, mglData &res)
for(i=0;i<10;i++) kk[i] = i<=k ? a[i].type + 1 : 0;
for(i=0;i<=k;i++) a[i].s.assign(a[i].w.begin(),a[i].w.end());
mglCommand *rts=FindCommand(arg[0]);
- if(!rts || !rts->create) return 2;
+ if(!rts || rts->type!=4) return 2;
n = rts->exec(gr, k, a, kk, 0);
delete []a;
}
@@ -870,15 +892,8 @@ int mglParser::FlowExec(mglGraph *, const wchar_t *com, long m, mglArg *a)
return n+1;
}
//-----------------------------------------------------------------------------
-void mgl_error_print(int line, int r, char *Message)
-{
- if(r==0) printf("%s\n",Message ? Message:"");
- if(r==1) printf("Wrong argument(s) in line %d\n", line);
- if(r==2) printf("Wrong command in line %d\n", line);
- if(r==3) printf("String too long in line %d\n", line);
- if(r==4) printf("Unbalanced ' in line %d\n", line);
- if(Message) Message[0]=0;
-}
+void mgl_error_print(const char *mess, void *)
+{ if(mess && *mess) printf("%s\n",mess); }
#include <string>
void mglParser::Execute(mglGraph *gr, FILE *fp, bool print)
{
@@ -888,25 +903,33 @@ void mglParser::Execute(mglGraph *gr, FILE *fp, bool print)
Execute(gr,str.c_str(),print?mgl_error_print:NULL);
}
//-----------------------------------------------------------------------------
-void mglParser::Execute(mglGraph *gr, int n, const wchar_t **text, void (*error)(int line, int kind, char *mes))
+void mglParser::Execute(mglGraph *gr, int n, const wchar_t **text, void (*error)(const char *mes, void *par), int high, void *par)
{
if(n<1 || text==0) return;
long i, r;
+ char buf[64];
for_br=Skip=false; if_pos=fn_pos=0; ScanFunc(0);
for(i=0;i<n;i++) ScanFunc(text[i]);
for(i=0;i<n;i++)
{
+ gr->SetWarn(-1, NULL);
+ if(i==high) gr->Highlight();
+ gr->SetObjId(i+1);
r = Parse(gr,text[i],i+1);
if(r<0) { i = -r-2; continue; }
- if(error)
- {
- if(r>0) error(i+1, r, 0);
- if(gr->Self()->Message && gr->Self()->Message[0]) error(i,0,gr->Self()->Message);
- }
+ if(r==1) sprintf(buf,"\nWrong argument(s) in line %ld\n", i+1);
+ else if(r==2) sprintf(buf,"\nWrong command in line %ld\n", i+1);
+ else if(r==3) sprintf(buf,"\nString too long in line %ld\n", i+1);
+ else if(r==4) sprintf(buf,"\nUnbalanced ' in line %ld\n", i+1);
+ else if(gr->GetWarn()>0) sprintf(buf," in line %ld\n", i+1);
+ else *buf=0;
+ if(*buf) gr->SetWarn(-2,buf);
}
+ const char *mess=gr->Message();
+ if(error && mess && *mess) error(mess,par);
}
//-----------------------------------------------------------------------------
-void mglParser::Execute(mglGraph *gr, const wchar_t *text, void (*error)(int line, int kind, char *mes))
+void mglParser::Execute(mglGraph *gr, const wchar_t *text, void (*error)(const char *mes, void *par), int high, void *par)
{
unsigned s = wcslen(text)+1;
wchar_t *wcs = new wchar_t[s];
@@ -916,18 +939,32 @@ void mglParser::Execute(mglGraph *gr, const wchar_t *text, void (*error)(int lin
str = (const wchar_t **)malloc(n*sizeof(wchar_t *));
memcpy(wcs, text, s*sizeof(wchar_t));
str[0] = wcs; n=1;
- for(i=0;i<s;i++) if(text[i]=='\n')
- { wcs[i]=0; str[n] = wcs+i+1; n++; }
- Execute(gr, n, str, error);
+ long next=0;
+ for(i=0;i<s;i++)
+ {
+ if(text[i]=='\\') next = i;
+ else if(text[i]>' ')next = 0;
+ if(text[i]=='\n')
+ { // if string need to be continued then I but ' ' instead of 0x0 and
+ // pointer next string to 0x0. Last one for keeping number of strings.
+ if(next)
+ { wcs[i]=wcs[next]=' '; str[n] = wcs+s-1; next=0; }
+ else
+ { wcs[i]=0; str[n] = wcs+i+1; }
+ n++;
+
+ }
+ }
+ Execute(gr, n, str, error, high, par);
delete []wcs; free(str);
}
//-----------------------------------------------------------------------------
-void mglParser::Execute(mglGraph *gr, const char *text, void (*error)(int line, int kind, char *mes))
+void mglParser::Execute(mglGraph *gr, const char *text, void (*error)(const char *mes, void *par), int high, void *par)
{
unsigned s = strlen(text)+1;
wchar_t *wcs = new wchar_t[s];
mbstowcs(wcs,text,s);
- Execute(gr, wcs, error);
+ Execute(gr, wcs, error, high, par);
delete []wcs;
}
//-----------------------------------------------------------------------------
@@ -974,27 +1011,6 @@ void mglParser::AddCommand(mglCommand *cmd, int mc)
Cmd = buf;
}
//-----------------------------------------------------------------------------
-mglCommand mglParser::Prg[]={
- {L"break",L"Break for-cycle",L"break", 0, 0, 0, 5},
- {L"call",L"Execute script in external file",L"call 'name' [args]", 0, 0, 0, 5},
- {L"continue",L"Skip commands and iterate for-cycle again",L"continue", 0, 0, 0, 5},
- {L"defchr",L"Define parameter as character",L"defchr $N val", 0, 0, 0, 5},
- {L"define",L"Define constant or parameter",L"define $N sth | Var val", 0, 0, 0, 5},
- {L"defnum",L"Define parameter as numerical value",L"defnum $N val", 0, 0, 0, 5},
- {L"defpal",L"Define parameter as palette color",L"defpal $N val", 0, 0, 0, 5},
- {L"delete",L"Deleta variable",L"delete Dat", 0, 0, 0, 5},
- {L"else",L"Execute if condition is false",L"else", 0, 0, 0, 5},
- {L"elseif",L"Conditional operator",L"elseif val|Dat ['cond']", 0, 0, 0, 5},
- {L"endif",L"Finish if/else block",L"endif", 0, 0, 0, 5},
- {L"for",L"For cycle",L"for $N v1 v2 [dv] | $N Dat", 0, 0, 0, 5},
- {L"func",L"Start function definition and stop execution of main script",L"func 'name' [narg]", 0, 0, 0, 5},
- {L"if",L"Conditional operator",L"if val|Dat ['cond']", 0, 0, 0, 5},
- {L"next",L"Start next for-cycle iteration",L"next", 0, 0, 0, 5},
- {L"once",L"Start/close commands which should executed only once",L"once val", 0, 0, 0, 5},
- {L"return",L"Return from function",L"return", 0, 0, 0, 5},
- {L"stop",L"Stop execution",L"stop", 0, 0, 0, 5},
-{L"",0,0, 0, 0, 0, 0}};
-//-----------------------------------------------------------------------------
HMPR mgl_create_parser() { return new mglParser; }
void mgl_delete_parser(HMPR p) { delete p; }
void mgl_add_param(HMPR p, int id, const char *str) { p->AddParam(id,str); }
@@ -1006,10 +1022,10 @@ int mgl_parse(HMGL gr, HMPR p, const char *str, int pos)
{ return p->Parse(gr, str, pos); }
int mgl_parsew(HMGL gr, HMPR p, const wchar_t *str, int pos)
{ return p->Parse(gr, str, pos); }
-void mgl_parse_text(HMGL gr, HMPR p, const char *str, void (*error)(int line, int kind, char *mes))
-{ p->Execute(gr, str, error); }
-void mgl_parsew_text(HMGL gr, HMPR p, const wchar_t *str, void (*error)(int line, int kind, char *mes))
-{ p->Execute(gr, str, error); }
+void mgl_parse_text(HMGL gr, HMPR p, const char *str, void (*error)(const char *mes, void *par), int high, void *par)
+{ p->Execute(gr, str, error, high, par); }
+void mgl_parsew_text(HMGL gr, HMPR p, const wchar_t *str, void (*error)(const char *mes, void *par), int high, void *par)
+{ p->Execute(gr, str, error, high, par); }
void mgl_parse_file(HMGL gr, HMPR p, FILE *fp, int print)
{ p->Execute(gr,fp,print); }
void mgl_restore_once(HMPR p) { p->RestoreOnce(); }
@@ -1038,7 +1054,7 @@ void mgl_del_var_(uintptr_t* p, const char *name, int l)
int mgl_parse_(uintptr_t* gr, uintptr_t* p, const char *str, int *pos, int l)
{ char *s=new char[l+1]; memcpy(s,str,l); s[l]=0;
int r = _PR_->Parse(_GR_, s, *pos); delete []s; return r; }
- void mgl_parse_text_(uintptr_t* gr, uintptr_t* p, const char *str, int l)
+void mgl_parse_text_(uintptr_t* gr, uintptr_t* p, const char *str, int l)
{ char *s=new char[l+1]; memcpy(s,str,l); s[l]=0;
_PR_->Execute(_GR_, s); delete []s; }
void mgl_restore_once_(uintptr_t* p) { _PR_->RestoreOnce(); }
@@ -1046,3 +1062,28 @@ void mgl_parser_allow_setsize_(uintptr_t* p, int *a)
{ _PR_->AllowSetSize = *a; }
void mgl_parser_stop_(uintptr_t* p) { _PR_->Stop = true; }
//-----------------------------------------------------------------------------
+long mgl_use_parser(HMPR pr, int inc)
+{ pr->InUse+=inc; return pr->InUse; }
+long mgl_use_parser_(uintptr_t *p, int *inc)
+{ _PR_->InUse+=*inc; return _PR_->InUse; }
+//---------------------------------------------------------------------------
+int mgl_cmd_type(HMPR pr, const char *name)
+{
+ mglCommand *cmd = pr->FindCommand(name);
+ return cmd ? cmd->type + 1 : 0;
+}
+int mgl_cmd_type_(uintptr_t* p, const char *str, int l)
+{ char *s=new char[l+1]; memcpy(s,str,l); s[l]=0;
+ l = mgl_cmd_type(_PR_, s); delete []s; return l; }
+//---------------------------------------------------------------------------
+const char *mgl_cmd_desc(HMPR pr, const char *name)
+{
+ mglCommand *cmd = pr->FindCommand(name);
+ return cmd ? cmd->desc : 0;
+}
+const char *mgl_cmd_frmt(HMPR pr, const char *name)
+{
+ mglCommand *cmd = pr->FindCommand(name);
+ return cmd ? cmd->form : 0;
+}
+//---------------------------------------------------------------------------
diff --git a/src/pde.cpp b/src/pde.cpp
index 8c78368..970fd66 100644
--- a/src/pde.cpp
+++ b/src/pde.cpp
@@ -114,14 +114,14 @@ HMDT mgl_pde_solve(HMGL gr, const char *ham, HCDT ini_re, HCDT ini_im, float dz,
mreal dx = (Max.x-Min.x)/(nx-1), dy = ny>1?(Max.y-Min.y)/(ny-1):0;
mreal dp = M_PI/(Max.x-Min.x)/k0, dq = M_PI/(Max.y-Min.y)/k0;
mreal xs=(Min.x+Max.x)/2, ys=(Min.y+Max.y)/2;
- double xx = Min.x - dx*nx/2, yy = Min.x - dy*ny/2;
+// double xx = Min.x - dx*nx/2, yy = Min.x - dy*ny/2;
double ff = ny>1?4*nx*ny:2*nx, dd = k0*dz;
mgl_pde_ham tmp;tmp.eqs = &eqs;
tmp.nx = nx; tmp.ny = ny; tmp.a=a; tmp.hxy=hxy;
tmp.hxv=hxv; tmp.huy=huy; tmp.huv=huv; tmp.dd = dd;
- tmp.xx = xx; tmp.xs = xs; tmp.dx = dx; tmp.dp = dp;
- tmp.yy = yy; tmp.ys = ys; tmp.dy = dy; tmp.dq = dq;
+ tmp.xx = Min.x-dx*(nx/2); tmp.xs = xs; tmp.dx = dx; tmp.dp = dp;
+ tmp.yy = Min.y-dy*(ny/2); tmp.ys = ys; tmp.dy = dy; tmp.dq = dq;
// prepare fft. NOTE: slow procedures due to unknown nx, ny.
gsl_fft_complex_wavetable *wtx = gsl_fft_complex_wavetable_alloc(2*nx);
@@ -130,6 +130,10 @@ HMDT mgl_pde_solve(HMGL gr, const char *ham, HCDT ini_re, HCDT ini_im, float dz,
gsl_fft_complex_workspace *wsy = gsl_fft_complex_workspace_alloc(2*ny);
for(k=1;k<nz;k++)
{
+ if(gr->Stop)
+ { delete []a; delete []dmp; delete []hxy; delete []hxv;
+ delete []huy; delete []huv; delete []hx; delete []hy;
+ delete []hu; delete []hv; delete res; return 0; }
tmp.zz = Min.z+dz*k;
memset(hxy,0,4*nx*ny*sizeof(dual)); memset(hxv,0,4*nx*ny*sizeof(dual));
memset(huv,0,4*nx*ny*sizeof(dual)); memset(huy,0,4*nx*ny*sizeof(dual));
@@ -177,10 +181,10 @@ HMDT mgl_ray_trace(const char *ham, float x0, float y0, float z0, float px, floa
mglData *res=new mglData;
if(tmax<dt) return res; // nothing to do
int nt = int(tmax/dt)+1;
- mreal x[6], k1[6], k2[6], k3[6], hh=dt/2;
mgl_data_create(res,7,nt,1);
mgl_data_set_id(res,"xyzpqvt");
#ifndef NO_GSL
+ mreal x[6], k1[6], k2[6], k3[6], hh=dt/2;
mglFormula eqs(ham);
// initial conditions
x[0] = res->a[0] = x0; x[1] = res->a[1] = y0; x[2] = res->a[2] = z0;
diff --git a/src/pixel.cpp b/src/pixel.cpp
index 25d95c1..0e6dbb9 100644
--- a/src/pixel.cpp
+++ b/src/pixel.cpp
@@ -24,17 +24,15 @@
//-----------------------------------------------------------------------------
void mglCanvas::SetSize(int w,int h)
{
- if(w<=0 || h<=0) { SetWarn(mglWarnSize); return; }
+ if(w<=0 || h<=0) { SetWarn(mglWarnSize,"SetSize"); return; }
Width = w; Height = h; Depth = long(sqrt(w*h));
if(G) { delete []G; delete []C; delete []Z; delete []G4;delete []OI; }
G = new unsigned char[w*h*3];
- G4 = new unsigned char[w*h*4];
+ G4= new unsigned char[w*h*4];
C = new unsigned char[w*h*12];
Z = new float[w*h*3]; // only 3 planes
OI= new int[w*h];
- InPlot(0,1,0,1,false);
- Persp = 0;
- Clf();
+ InPlot(0,1,0,1,false); Clf();
}
//-----------------------------------------------------------------------------
void mglDrawReg::set(mglCanvas *gr, int nx, int ny, int m)
@@ -64,12 +62,12 @@ void mglCanvas::PostScale(mglPoint &p)
p.x = B.x + q.x*B.b[0] + q.y*B.b[1] + q.z*B.b[2];
p.y = B.y+ q.x*B.b[3] + q.y*B.b[4] + q.z*B.b[5];
p.z = B.z+ q.x*B.b[6] + q.y*B.b[7] + q.z*B.b[8];
- if(Persp)
+/* if(Persp)
{
register float d = (1-Persp*Depth/2)/(1-Persp*p.z);
p.x = Width/2 + d*(p.x-Width/2);
p.y = Height/2 + d*(p.y-Height/2);
- }
+ }*/
}
//-----------------------------------------------------------------------------
bool mglCanvas::ScalePoint(mglPoint &p, mglPoint &n, bool use_nan)
@@ -82,14 +80,15 @@ bool mglCanvas::ScalePoint(mglPoint &p, mglPoint &n, bool use_nan)
n.x = y.x*B.b[0] + y.y*B.b[1] + y.z*B.b[2];
n.y = y.x*B.b[3] + y.y*B.b[4] + y.z*B.b[5];
n.z = y.x*B.b[6] + y.y*B.b[7] + y.z*B.b[8];
- if(Persp)
+ n.Normalize();
+/* if(Persp)
{
register float d = (1-Persp*Depth/2)/(1-Persp*p.z);
// NOTE: No d* since I use transformed p here.
register float dd = Persp*n.z/(1-Persp*p.z);
n.x = d*n.x + dd*(p.x-Width/2);
n.y = d*n.y + dd*(p.y-Height/2);
- }
+ }*/
return res;
}
//-----------------------------------------------------------------------------
@@ -162,14 +161,8 @@ void mglCanvas::LightScale()
for(i=0;i<10;i++)
{
if(!light[i].n) continue;
- // NOTE: I neglect curved coordinates here!!!
- xx = light[i].r.x/(2*B.pf*(FMax.x-FMin.x));
- yy = light[i].r.y/(2*B.pf*(FMax.y-FMin.y));
- zz = light[i].r.z/(2*B.pf*(FMax.z-FMin.z));
-
- light[i].p.x = xx*B.b[0] + yy*B.b[1] + zz*B.b[2];
- light[i].p.y = xx*B.b[3] + yy*B.b[4] + zz*B.b[5];
- light[i].p.z = xx*B.b[6] + yy*B.b[7] + zz*B.b[8];
+ light[i].p=light[i].d; light[i].q=light[i].r;
+ ScalePoint(light[i].q,light[i].p,false);
light[i].p /= light[i].p.norm();
}
}
@@ -245,8 +238,8 @@ bool operator>(const mglPrim &a, const mglPrim &b)
}
//-----------------------------------------------------------------------------
void *mgl_canvas_thr(void *par)
-{ mglThreadG *t=(mglThreadG *)par; (t->gr->*(t->f))(t->id, t->n); return NULL; }
-void mglStartThread(void (mglCanvas::*func)(unsigned long i, unsigned long n), mglCanvas *gr, unsigned long n)
+{ mglThreadG *t=(mglThreadG *)par; (t->gr->*(t->f))(t->id, t->n, t->p); return NULL; }
+void mglStartThread(void (mglCanvas::*func)(unsigned long i, unsigned long n, const void *p), mglCanvas *gr, unsigned long n, const void *p=NULL)
{
if(!func || !gr) return;
#ifdef HAVE_PTHREAD
@@ -257,17 +250,17 @@ void mglStartThread(void (mglCanvas::*func)(unsigned long i, unsigned long n), m
mglThreadG *par=new mglThreadG[mglNumThr];
register int i;
for(i=0;i<mglNumThr;i++) // put parameters into the structure
- { par[i].gr=gr; par[i].f=func; par[i].n=n; par[i].id=i; }
+ { par[i].gr=gr; par[i].f=func; par[i].n=n; par[i].p=p; par[i].id=i; }
for(i=0;i<mglNumThr;i++) pthread_create(tmp+i, 0, mgl_canvas_thr, par+i);
for(i=0;i<mglNumThr;i++) pthread_join(tmp[i], 0);
delete []tmp; delete []par;
}
else
#endif
- { mglNumThr = 1; (gr->*func)(0,n); }
+ { mglNumThr = 1; (gr->*func)(0,n,p); }
}
//-----------------------------------------------------------------------------
-void mglCanvas::pxl_primdr(unsigned long id, unsigned long n)
+void mglCanvas::pxl_primdr(unsigned long id, unsigned long n, const void *)
{
int nx=1,ny=1,pdef=PDef;
register unsigned long i;
@@ -296,7 +289,7 @@ void mglCanvas::pxl_primdr(unsigned long id, unsigned long n)
PDef=pdef; pPos=ss; PenWidth=ww;
}
//-----------------------------------------------------------------------------
-void mglCanvas::pxl_combine(unsigned long id, unsigned long n)
+void mglCanvas::pxl_combine(unsigned long id, unsigned long n, const void *)
{
unsigned char c[4],*cc;
for(unsigned long i=id;i<n;i+=mglNumThr)
@@ -305,23 +298,66 @@ void mglCanvas::pxl_combine(unsigned long id, unsigned long n)
combine(c,cc); memcpy(G4+4*i,c,4); }
}
//-----------------------------------------------------------------------------
-void mglCanvas::pxl_memcpy(unsigned long id, unsigned long n)
+void mglCanvas::pxl_memcpy(unsigned long id, unsigned long n, const void *)
{ for(unsigned long i=id;i<n;i+=mglNumThr) memcpy(G4+4*i,C+12*i,4); }
//-----------------------------------------------------------------------------
-void mglCanvas::pxl_backgr(unsigned long id, unsigned long n)
+void mglCanvas::pxl_backgr(unsigned long id, unsigned long n, const void *)
{
unsigned char c[4];
for(unsigned long i=id;i<n;i+=mglNumThr)
{ memcpy(c,BDef,4); combine(c,G4+4*i); memcpy(G+3*i,c,3); }
}
//-----------------------------------------------------------------------------
-void mglCanvas::Finish()
+void mglCanvas::pxl_transform(unsigned long id, unsigned long n, const void *)
+{
+ register float x,y,z;
+ for(unsigned long i=id;i<n;i+=mglNumThr)
+ {
+ mglPnt &p=Pnt[i];
+ x = p.xx-Width/2.; y = p.yy-Height/2.; z = p.zz-Depth/2.;
+ p.x = Bp.x*Width + Width/2 + Bp.b[0]*x + Bp.b[1]*y + Bp.b[2]*z;
+ p.y = Bp.y*Height+ Height/2+ Bp.b[3]*x + Bp.b[4]*y + Bp.b[5]*z;
+ p.z = Depth/2. + Bp.b[6]*x + Bp.b[7]*y + Bp.b[8]*z;
+ if(Bp.pf)
+ {
+ register float d = (1-Bp.pf*Depth/2)/(1-Bp.pf*p.z);
+ p.x = Width/2 + d*(p.x-Width/2);
+ p.y = Height/2 + d*(p.y-Height/2);
+ }
+ }
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::pxl_setz_adv(unsigned long id, unsigned long n, const void *)
{
+ for(unsigned long i=id;i<n;i+=mglNumThr)
+ {
+ mglPrim &q=Prm[i]; q.z = Pnt[q.n1].z;
+ if(q.type==1) q.z = (q.z + Pnt[q.n2].z)/2;
+ if(q.type==2) q.z = (q.z + Pnt[q.n2].z + Pnt[q.n3].z)/3;
+ if(q.type==3) q.z = (q.z + Pnt[q.n2].z + Pnt[q.n3].z + Pnt[q.n4].z)/4;
+ }
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::pxl_setz(unsigned long id, unsigned long n, const void *)
+{
+ for(unsigned long i=id;i<n;i+=mglNumThr)
+ { mglPrim &q=Prm[i]; q.z = Pnt[q.n1].z; }
+}
+//-----------------------------------------------------------------------------
+void mglCanvas::Finish(bool fast)
+{
+ static mglMatrix bp;
+ if(memcmp(&Bp,&bp,sizeof(mglMatrix)) && !(Quality&4) && Prm.size()>0)
+ clr(MGL_FINISHED);
+ if(get(MGL_FINISHED)) return; // nothing to do
if(!(Quality&4) && Prm.size()>0)
{
- std::sort(Prm.begin(), Prm.end());
+ mglStartThread(&mglCanvas::pxl_transform,this,Pnt.size());
+ if(fast) mglStartThread(&mglCanvas::pxl_setz,this,Prm.size());
+ else mglStartThread(&mglCanvas::pxl_setz_adv,this,Prm.size());
+ std::sort(Prm.begin(), Prm.end()); bp=Bp;
// mglStartThread(&mglCanvas::pxl_primdr,this,Prm.size()); // TODO: check conflicts in pthreads
- pxl_primdr(-1,Prm.size());
+ pxl_primdr(-1,Prm.size(),NULL);
}
unsigned long n=Width*Height;
BDef[3] = (Flag&3)!=2 ? 0:255;
@@ -332,6 +368,13 @@ void mglCanvas::Finish()
set(MGL_FINISHED);
}
//-----------------------------------------------------------------------------
+void mglCanvas::ClfZB()
+{
+ register long i,n=Width*Height;
+ memset(C,0,12*n); memset(OI,0,n*sizeof(int));
+ for(i=0;i<3*n;i++) Z[i] = -1e20f; // TODO: Parallelization ?!?
+}
+//-----------------------------------------------------------------------------
void mglCanvas::Clf(mglColor Back)
{
Fog(0); PDef = 0xffff; pPos = 0; StartAutoGroup(NULL);
@@ -340,28 +383,32 @@ void mglCanvas::Clf(mglColor Back)
if(Back==0) Back = 'w';
if((Flag&3)==2) Back = 'k';
BDef[0]=Back.r*255; BDef[1]=Back.g*255;BDef[2]=Back.b*255; BDef[3]=0;
- register long i,n=Width*Height;
- memset(C,0,12*n); memset(OI,0,n*sizeof(int));
- for(i=0;i<3*n;i++) Z[i] = -1e20f; // TODO: Parallelization ?!?
- clr(MGL_FINISHED);
+ ClfZB(); clr(MGL_FINISHED);
}
//-----------------------------------------------------------------------------
-void mglCanvas::Combine(const mglCanvas *gr)
+void mglCanvas::pxl_other(unsigned long id, unsigned long n, const void *p)
{
- if(Width!=gr->Width || Height!=gr->Height) return; // wrong sizes
- register long i,j,i0;
- for(i=0;i<Width;i++) for(j=0;j<Height;j++)
+ unsigned long i,j,k;
+ const mglCanvas *gr = (const mglCanvas *)p;
+ if(!gr) return;
+ for(k=id;k<n;k+=mglNumThr)
{
- i0=i+Width*(Height-1-j);
+ i = k%Width; j = Height-1-(k/Width);
if(Quality&2)
{
- pnt_plot(i,j,gr->Z[3*i0+2],gr->C+12*i0+8);
- pnt_plot(i,j,gr->Z[3*i0+1],gr->C+12*i0+4);
+ pnt_plot(i,j,gr->Z[3*k+2],gr->C+12*k+8);
+ pnt_plot(i,j,gr->Z[3*k+1],gr->C+12*k+4);
}
- pnt_plot(i,j,gr->Z[3*i0],gr->C+12*i0);
+ pnt_plot(i,j,gr->Z[3*k],gr->C+12*k);
}
}
//-----------------------------------------------------------------------------
+void mglCanvas::Combine(const mglCanvas *gr)
+{
+ if(Width!=gr->Width || Height!=gr->Height) return; // wrong sizes
+ mglStartThread(&mglCanvas::pxl_other,this,Width*Height,gr);
+}
+//-----------------------------------------------------------------------------
void mglCanvas::pnt_plot(long x,long y,float z,const unsigned char ci[4])
{
long i0=x+Width*(Height-1-y);
@@ -369,7 +416,7 @@ void mglCanvas::pnt_plot(long x,long y,float z,const unsigned char ci[4])
unsigned char *cc = C+12*i0, c[4];
memcpy(c,ci,4);
float *zz = Z+3*i0, zf = FogDist*(z/Depth-0.5-FogDz);
- if(zf<0)
+ if(zf<0) // add fog
{
int d = int(255.f-255.f*exp(5.f*zf));
unsigned char cb[4] = {BDef[0], BDef[1], BDef[2], d};
@@ -405,35 +452,77 @@ unsigned char* mglCanvas::col2int(const mglPnt &p,unsigned char *r)
{
if(!r) return r;
if(p.a<=0) { memset(r,0,4*sizeof(unsigned char)); return r; }
- register float b0=p.r,b1=p.g,b2=p.b;
- if(get(MGL_ENABLE_LIGHT) && !isnan(p.u))
+ register float b0=0,b1=0,b2=0, ar,ag,ab;
+ ar = ag = ab = AmbBr;
+
+// if(get(MGL_ENABLE_LIGHT) && !isnan(p.u))
+ if(!isnan(p.u))
{
- b0 *= AmbBr; b1 *= AmbBr; b2 *= AmbBr;
float d0,d1,d2,nn;
register long i;
for(i=0;i<10;i++)
{
if(!light[i].n) continue;
- nn = 2*(p.u*light[i].p.x+p.v*light[i].p.y+p.w*light[i].p.z) /
- (p.u*p.u+p.v*p.v+p.w*p.w+1e-6);
- d0 = light[i].p.x - p.u*nn;
- d1 = light[i].p.y - p.v*nn;
- d2 = light[i].p.z - p.w*nn;
- nn = 1 + d2/sqrt(d0*d0+d1*d1+d2*d2+1e-6);
+ if(isnan(light[i].q.x)) // source at infinity
+ {
+ nn = 2*(p.u*light[i].p.x+p.v*light[i].p.y+p.w*light[i].p.z) /
+ (p.u*p.u+p.v*p.v+p.w*p.w+1e-6);
+ d0 = light[i].p.x - p.u*nn;
+ d1 = light[i].p.y - p.v*nn;
+ d2 = light[i].p.z - p.w*nn;
+ nn = 1 + d2/sqrt(d0*d0+d1*d1+d2*d2+1e-6);
- nn = exp(-light[i].a*nn)*light[i].b*2;
- b0 += nn*light[i].c.r;
- b1 += nn*light[i].c.g;
- b2 += nn*light[i].c.b;
+ nn = exp(-light[i].a*nn)*light[i].b*2;
+ b0 += nn*light[i].c.r;
+ b1 += nn*light[i].c.g;
+ b2 += nn*light[i].c.b;
+ }
+ else if(get(MGL_DIFFUSIVE)) // diffuse light
+ {
+ d0 = light[i].q.x-p.x; // direction to light source
+ d1 = light[i].q.y-p.y;
+ d2 = light[i].q.z-p.z;
+ nn = 2*(d0*light[i].p.x+d1*light[i].p.y+d2*light[i].p.z)/(d0*d0+d1*d1+d2*d2+1e-6);
+ nn = exp(-light[i].a*nn)*light[i].b*2;
+ ar += nn*light[i].c.r;
+ ag += nn*light[i].c.g;
+ ab += nn*light[i].c.b;
+ }
+ else // specular light
+ {
+ d0 = light[i].q.x-p.x; // direction to light source
+ d1 = light[i].q.y-p.y;
+ d2 = light[i].q.z-p.z;
+ nn = d0*d0 + d1*d1 + d2*d2 + 1e-6;
+ float bb = 2*(d0*light[i].p.x+d1*light[i].p.y+d2*light[i].p.z)/nn;
+ bb = exp(-light[i].a*nn)*light[i].b*2;
+ // now difference for angles between normale and direction to light
+ nn = 2*(p.u*d0+p.v*d1+p.w*d2)/(p.u*p.u+p.v*p.v+p.w*p.w+1e-6)/nn;
+ d0 -= p.u*nn; d1 -= p.v*nn; d2 -= p.w*nn;
+ nn = 1 + d2/sqrt(d0*d0+d1*d1+d2*d2+1e-6);
+ // NOTE: here should be another aperture, but for simplicity I use the same
+ nn = exp(-light[i].a*nn)*bb;
+ b0 += nn*light[i].c.r;
+ b1 += nn*light[i].c.g;
+ b2 += nn*light[i].c.b;
+ }
}
- b0 = b0<1 ? b0 : 1;
+ b0 += (ar>1 ? 1:ar)*p.r; // diffuse light
+ b1 += (ar>1 ? 1:ar)*p.g;
+ b2 += (ar>1 ? 1:ar)*p.b;
+ b0 = b0<1 ? b0 : 1; // normalize components
b1 = b1<1 ? b1 : 1;
b2 = b2<1 ? b2 : 1;
}
- r[0] = (unsigned char)(255*b0); r[1] = (unsigned char)(255*b1);
+ else
+ { b0=p.r; b1=p.g; b2=p.b; }
+ // try to highlight faces
+ if(get(MGL_HIGHLIGHT)) { b0*=0.7; b1*=0.7; b2*=0.7; }
+ r[0] = (unsigned char)(255*b0);
+ r[1] = (unsigned char)(255*b1);
r[2] = (unsigned char)(255*b2);
- // p.a should be <1 but I additionally check it here
- r[3] = get(MGL_ENABLE_ALPHA) && p.a<1 ? (unsigned char)(256*p.a) : 255;
+// r[3] = get(MGL_ENABLE_ALPHA) ? (unsigned char)(255*p.a) : 255;
+ r[3] = (unsigned char)(255*p.a);
return r;
}
//-----------------------------------------------------------------------------
@@ -471,19 +560,13 @@ unsigned char **mglCanvas::GetRGBLines(long &w, long &h, unsigned char *&f, bool
{
long d = alpha ? 4:3;
unsigned char **p;
- if(!get(MGL_FINISHED)) Finish();
+ Finish();
p = (unsigned char **)malloc(Height * sizeof(unsigned char *));
for(long i=0;i<Height;i++) p[i] = (alpha?G4:G)+d*Width*i;
w = Width; h = Height; f = 0;
return p;
}
//-----------------------------------------------------------------------------
-const unsigned char *mglCanvas::GetBits()
-{ if(!get(MGL_FINISHED)) Finish(); return G; }
-//-----------------------------------------------------------------------------
-const unsigned char *mglCanvas::GetRGBA()
-{ if(!get(MGL_FINISHED)) Finish(); return G4; }
-//-----------------------------------------------------------------------------
/* Bilinear interpolation r(u,v) = r0 + (r1-r0)*u + (r2-r0)*v + (r3+r0-r1-r2)*u*v
is used (where r is one of {x,y,z,R,G,B,A}. Variables u,v are determined
for each point (x,y) and selected one pair which 0<u<1 and 0<v<1.*/
@@ -544,7 +627,7 @@ void mglCanvas::quad_draw(long k1, long k2, long k3, long k4, mglDrawReg *d)
if(g) continue; // second root bad
}
p = p1+d1*u+d2*v+d3*(u*v);
- if(isnan(p.u))
+ if(isnan(p.u) && !isnan(p.v))
{ p.u = nr.x; p.v = nr.y; p.w = nr.z; }
pnt_plot(i,j,p.z,col2int(p,r));
}
@@ -594,7 +677,7 @@ void mglCanvas::trig_draw(long k1, long k2, long k3, bool anorm, mglDrawReg *d)
if(Quality&2) // slow but accurate
{
p = p1+d1*u+d2*v;
- if(isnan(p.u) && anorm)
+ if(isnan(p.u) && !isnan(p.v) && anorm)
{ p.u = nr.x; p.v = nr.y; p.w = nr.z; }
pnt_plot(i,j,p.z,col2int(p,r));
}
@@ -609,7 +692,8 @@ void mglCanvas::line_draw(long k1, long k2, mglDrawReg *dr)
unsigned char r[4];
long y1,x1,y2,x2;
- float pw=PenWidth*sqrt(font_factor/400), dxu,dxv,dyu,dyv,dd;
+ float pw=PenWidth*sqrt(font_factor/400), dxu,dxv,dyu,dyv,dd,dpw=3;
+ if(get(MGL_HIGHLIGHT)) { pw *= 2; dpw=2; }
const mglPnt &p1=Pnt[k1], &p2=Pnt[k2];
mglPnt d=p2-p1, p;
bool hor = fabs(d.x)>fabs(d.y);
@@ -643,7 +727,7 @@ void mglCanvas::line_draw(long k1, long k2, mglDrawReg *dr)
if(v>pw*pw) continue;
if(!( PDef & ( 1<<long(fmod(pPos+u/pw/1.5, 16)) ) )) continue;
p = p1+d*(u/dd); col2int(p,r);
- r[3] = (unsigned char)(255/cosh(3.f*sqrt(v/pw/pw)));
+ r[3] = v<(pw-1)*(pw-1)/4 ? 255 : (unsigned char)(255/cosh(dpw*(sqrt(v)+(1-pw)/2)));
pnt_plot(i,j,p.z+pw,r);
}
}
@@ -663,7 +747,7 @@ void mglCanvas::line_draw(long k1, long k2, mglDrawReg *dr)
if(v>pw*pw) continue;
if(!(PDef & (1<<long(fmod(pPos+u/pw/1.5, 16))))) continue;
p = p1+d*(u/dd); col2int(p,r);
- r[3] = (unsigned char)(255/cosh(3.f*sqrt(v/pw/pw)));
+ r[3] = v<(pw-1)*(pw-1)/4 ? 255 : (unsigned char)(255/cosh(dpw*(sqrt(v)+(1-pw)/2)));
pnt_plot(i,j,p.z+pw,r);
}
}
@@ -696,22 +780,23 @@ void mglCanvas::fast_draw(long k1, long k2, mglDrawReg *dr)
//-----------------------------------------------------------------------------
void mglCanvas::pnt_draw(long k, mglDrawReg *dr)
{
- bool aa=get(MGL_ENABLE_ALPHA); set(MGL_ENABLE_ALPHA);
register long i,j,s,x,y;
- register float v,pw=PenWidth*sqrt(font_factor/400);
+ register float v,pw=2*PenWidth*sqrt(font_factor/400),dpw=3;
+ if(get(MGL_HIGHLIGHT)) { pw *= 2; dpw=2; }
const mglPnt &p=Pnt[k];
unsigned char cs[4], cc; col2int(p,cs); cc = cs[3];
+ if(cc==0) return;
s = long(5.5+fabs(pw));
for(j=-s;j<=s;j++) for(i=-s;i<=s;i++)
{
- v = (i*i+j*j)/(9*pw*pw);
- cs[3] = (unsigned char)(cc*exp(-6*v));
+ v = i*i+j*j;
+ cs[3] = v<(pw-1)*(pw-1)/4 ? cc : (unsigned char)(cc/cosh(dpw*(sqrt(v)+(1-pw)/2)));
+// cs[3] = (unsigned char)(cc*exp(-6*v));
if(cs[3]==0) continue;
x=p.x+i; y=p.y+j;
if(x>=dr->x1 && x<=dr->x2 && y>=dr->y1 && y<=dr->y2)
pnt_plot(p.x+i,p.y+j,p.z,cs);
}
- set(aa,MGL_ENABLE_ALPHA);
}
//-----------------------------------------------------------------------------
void mglCanvas::mark_draw(long k, char type, float size, mglDrawReg *d)
@@ -724,7 +809,7 @@ void mglCanvas::mark_draw(long k, char type, float size, mglDrawReg *d)
register long i,j;
#ifdef HAVE_PTHREAD
pthread_mutex_lock(&mutexPnt);
-#endif
+#endif
if(type=='.' || ss==0) pnt_draw(k,d);
else
{
@@ -863,17 +948,16 @@ void mglCanvas::mark_draw(long k, char type, float size, mglDrawReg *d)
}
#ifdef HAVE_PTHREAD
pthread_mutex_unlock(&mutexPnt);
-#endif
+#endif
}
//-----------------------------------------------------------------------------
void mglCanvas::glyph_draw(const mglPrim *P, mglDrawReg *d)
{
- if(P->n1<0) return; // Should be never here
mglPnt p=Pnt[P->n1];
float f = p.w;
#ifdef HAVE_PTHREAD
pthread_mutex_lock(&mutexPnt);
-#endif
+#endif
Push(); B.clear();
B.b[0] = B.b[4] = B.b[8] = P->s*P->p;
RotateN(P->w,0,0,1); B.pf = P->p;
@@ -893,14 +977,14 @@ void mglCanvas::glyph_draw(const mglPrim *P, mglDrawReg *d)
Pop();
#ifdef HAVE_PTHREAD
pthread_mutex_unlock(&mutexPnt);
-#endif
+#endif
}
//-----------------------------------------------------------------------------
void mglCanvas::glyph_fill(const mglPnt &pp, float f, int nt, const short *trig, mglDrawReg *d)
{
if(!trig || nt<=0) return;
long ik,ii,pos=Pnt.size();
- mglPnt p=pp; p.u=NAN;
+ mglPnt p=pp; p.u=p.v=NAN;
float pw = Width>2 ? fabs(PenWidth) : 1e-5*Width;
mglPoint p1,p2,p3;
@@ -921,7 +1005,7 @@ void mglCanvas::glyph_wire(const mglPnt &pp, float f, int nl, const short *line,
{
if(!line || nl<=0) return;
long ik,ii,il=0,pos=Pnt.size();
- mglPnt p=pp; p.u=NAN;
+ mglPnt p=pp; p.u=p.v=NAN;
unsigned pdef=PDef; PDef = 0xffff;
float opw=PenWidth; PenWidth=0.75;
mglPoint p1,p2;
@@ -951,7 +1035,7 @@ void mglCanvas::glyph_wire(const mglPnt &pp, float f, int nl, const short *line,
//-----------------------------------------------------------------------------
void mglCanvas::glyph_line(const mglPnt &pp, float f, bool solid, mglDrawReg *d)
{
- mglPnt p=pp; p.u=NAN;
+ mglPnt p=pp; p.u=p.v=NAN;
float pw = Width>2 ? fabs(PenWidth) : 1e-5*Width;
unsigned pdef=PDef; PDef = 0xffff;
float opw=PenWidth; PenWidth=1;
diff --git a/src/plot.cpp b/src/plot.cpp
index 1dc0019..3af4c9c 100644
--- a/src/plot.cpp
+++ b/src/plot.cpp
@@ -37,11 +37,18 @@ void mgl_fplot(HMGL gr, const char *eqY, const char *pen, const char *opt)
mglFormula *eq = new mglFormula(eqY);
register int i;
float d = (gr->Max.x - gr->Min.x)/(n-1.), xs, ys, yr, ym=fabs(gr->Max.y - gr->Min.y)/1000;
- for(i=0;i<n;i++) // initial data filling
+#define islog(a, b) (((a)>0 && (b)>10*(a)) || ((b)<0 && (a)<10*(b)))
+ // initial data filling
+ if(gr->Min.x>0 && gr->Max.x>100*gr->Min.x) for(i=0,d=log(2*gr->Max.x/gr->Min.x)/(n-1);i<n;i++)
+ { x[i]=2*gr->Max.x*exp(d*i)/(2*gr->Max.x/gr->Min.x+exp(d*i)); y[i]=eq->Calc(x[i]); }
+ else if(gr->Max.x<0 && gr->Min.x<100*gr->Max.x) for(i=0,d=log(2*gr->Min.x/gr->Max.x)/n;i<n;i++)
+ { x[i]=2*gr->Min.x*exp(d*i)/(2*gr->Min.x/gr->Max.x+exp(d*i)); y[i]=eq->Calc(x[i]); }
+ else for(i=0;i<n;i++)
{ x[i]=gr->Min.x + i*d; y[i]=eq->Calc(x[i]); }
for(i=0;i<n-1 && n<10000;)
{
+ if(gr->Stop) { delete eq; return; }
xs=(x[i]+x[i+1])/2;
ys=(y[i]+y[i+1])/2; yr=eq->Calc(xs);
if(fabs(yr-ys)>ym) // bad approximation here
@@ -79,6 +86,7 @@ void mgl_fplot_xyz(HMGL gr, const char *eqX, const char *eqY, const char *eqZ, c
float ts, xs, ys, zs, xr, yr, zr, xm=fabs(gr->Max.x - gr->Min.x)/1000, ym=fabs(gr->Max.y - gr->Min.y)/1000, zm=fabs(gr->Max.z - gr->Min.z)/1000;
for(i=0;i<n;i++) // initial data filling
{
+ if(gr->Stop) { delete ex; delete ey; delete ez; return; }
t[i] = i/(n-1.);
x[i] = ex->Calc(0,0,t[i]);
y[i] = ey->Calc(0,0,t[i]);
@@ -87,6 +95,7 @@ void mgl_fplot_xyz(HMGL gr, const char *eqX, const char *eqY, const char *eqZ, c
for(i=0;i<n-1 && n<10000;)
{
+ if(gr->Stop) { delete ex; delete ey; delete ez; return; }
ts=(t[i]+t[i+1])/2;
xs=(x[i]+x[i+1])/2; xr=ex->Calc(0,0,ts);
ys=(y[i]+y[i+1])/2; yr=ey->Calc(0,0,ts);
@@ -182,22 +191,27 @@ void mgl_radar_(uintptr_t *gr, uintptr_t *a, const char *pen, const char *opt, i
//-----------------------------------------------------------------------------
void mgl_candle_xyv(HMGL gr, HCDT x, HCDT v1, HCDT v2, HCDT y1, HCDT y2, const char *pen, const char *opt)
{
- long i,n=v1->GetNx(),pal;
+ long i,n=v1->GetNx(),pal,nx=x->GetNx();
bool d1=false,d2=false;
if(!y1) { y1 = new mglData(n); d1=true; ((mglData *)y1)->Fill(NAN,NAN); }
if(!y2) { y2 = new mglData(n); d2=true; ((mglData *)y2)->Fill(NAN,NAN); }
if(n<2) { gr->SetWarn(mglWarnLow,"Candle"); return; }
- if(x->GetNx()<n || v2->GetNx()!=n || y1->GetNx()!=n || y2->GetNx()!=n)
+ if(nx<n || v2->GetNx()!=n || y1->GetNx()!=n || y2->GetNx()!=n)
{ gr->SetWarn(mglWarnDim,"Candle"); return; }
static int cgid=1; gr->StartGroup("Candle",cgid++);
gr->SaveState(opt); gr->SetPenPal(pen,&pal);
gr->NextColor(pal); gr->Reserve(8*n);
+ bool sh = pen && strchr(pen,'!');
long n1,n2,n3,n4;
float m1,m2,xx,x1,x2,d;
for(i=0;i<n;i++)
{
+ if(gr->Stop) { if(d1) delete y1; if(d2) delete y2; return; }
m1=v1->v(i); m2 = v2->v(i); xx = x->v(i);
+ d = i<nx-1 ? x->v(i+1)-xx : xx-x->v(i-1);
+ x1 = xx + d/2*(1-gr->BarWidth);
+ x2 = x1 + gr->BarWidth*d; xx = (x1+x2)/2;
n1 = gr->AddPnt(mglPoint(xx,y1->v(i),gr->Min.z));
n2 = gr->AddPnt(mglPoint(xx,m1,gr->Min.z));
gr->line_plot(n1,n2);
@@ -205,9 +219,6 @@ void mgl_candle_xyv(HMGL gr, HCDT x, HCDT v1, HCDT v2, HCDT y1, HCDT y2, const c
n4 = gr->AddPnt(mglPoint(xx,m2,gr->Min.z));
gr->line_plot(n3,n4);
- d = i<n-1 ? x->v(i+1)-xx : xx-x->v(i-1);
- x1 = xx + d/2*(1-gr->BarWidth);
- x2 = x1 + gr->BarWidth*d;
n1 = gr->AddPnt(mglPoint(x1,m1,gr->Min.z));
n2 = gr->AddPnt(mglPoint(x2,m1,gr->Min.z));
n3 = gr->AddPnt(mglPoint(x1,m2,gr->Min.z));
@@ -215,6 +226,7 @@ void mgl_candle_xyv(HMGL gr, HCDT x, HCDT v1, HCDT v2, HCDT y1, HCDT y2, const c
gr->line_plot(n1,n2); gr->line_plot(n1,n3);
gr->line_plot(n4,n2); gr->line_plot(n4,n3);
if(m1>m2) gr->quad_plot(n1,n2,n3,n4);
+ if(sh) gr->NextColor(pal);
}
if(d1) delete y1; if(d2) delete y2;
}
@@ -267,6 +279,7 @@ void mgl_plot_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
bool t1,t2,t3;
mglPoint p1,p2,p3,nn;
long n1=-1,n2=-1,n3=-1;
+ bool sh = pen && strchr(pen,'!');
for(j=0;j<m;j++)
{
@@ -276,9 +289,10 @@ void mgl_plot_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
register long i;
for(i=0;i<n;i++)
{
+ if(gr->Stop) return;
if(i>0) { n2=n1; p2=p1; t2=t1; }
p1 = mglPoint(x->v(i,mx), y->v(i,my), z->v(i,mz));
- n1 = gr->AddPnt(p1); t1 = n1>=0; // NOT thread-safe!!!
+ n1 = gr->AddPnt(p1); t1 = n1>=0;
if(mk && t1) gr->mark_plot(n1,mk);
if(t1 && t2)
{
@@ -296,13 +310,14 @@ void mgl_plot_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
p1.x = x->v(i,mx)*ii+x->v(i-1,mx)*(1-ii);
p1.y = y->v(i,my)*ii+y->v(i-1,my)*(1-ii);
p1.z = z->v(i,mz)*ii+z->v(i-1,mz)*(1-ii);
- n1 = gr->AddPnt(p1); t1 = n1>=0; // NOT thread-safe!!!
+ n1 = gr->AddPnt(p1); t1 = n1>=0;
if((t1 && t3) || (t2 && !t1)) i2 = ii;
else i1 = ii;
} while(fabs(i2-i1)>1e-3);
if(t2) gr->line_plot(n1,n2);
else gr->line_plot(n3,n1);
}
+ if(sh) gr->NextColor(pal);
}
}
gr->EndGroup();
@@ -368,9 +383,10 @@ void mgl_tens_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT c, const char *pen, cons
t1 = t2 = false;
for(i=0;i<n;i++)
{
+ if(gr->Stop) return;
if(i>0) { n2=n1; p2=p1; t2=t1; }
p1 = mglPoint(x->v(i,mx), y->v(i,my), z->v(i,mz), c->v(i,mc));
- n1 = gr->AddPnt(p1,gr->GetC(ss,p1.c)); t1 = n1>=0; // NOT thread-safe!!!
+ n1 = gr->AddPnt(p1,gr->GetC(ss,p1.c)); t1 = n1>=0;
if(mk && t1) gr->mark_plot(n1,mk);
if(t1 && t2)
{
@@ -389,7 +405,7 @@ void mgl_tens_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT c, const char *pen, cons
p1.y = y->v(i,my)*ii+y->v(i-1,my)*(1-ii);
p1.z = z->v(i,mz)*ii+z->v(i-1,mz)*(1-ii);
p1.c = c->v(i,mc)*ii+c->v(i-1,mc)*(1-ii);
- n1 = gr->AddPnt(p1,gr->GetC(ss,p1.c)); t1 = n1>=0; // NOT thread-safe!!!
+ n1 = gr->AddPnt(p1,gr->GetC(ss,p1.c)); t1 = n1>=0;
if((t1 && t3) || (t2 && !t1)) i2 = ii;
else i1 = ii;
} while(fabs(i2-i1)>1e-3);
@@ -446,6 +462,8 @@ void mgl_area_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Area3",cgid++);
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy(); m = z->GetNy() > m ? z->GetNy() : m;
+ bool sh = pen && strchr(pen,'!');
+ bool wire = pen && strchr(pen,'#');
float z0=gr->GetOrgZ('x');
float c1,c2;
@@ -455,8 +473,8 @@ void mgl_area_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
long s=gr->AddTexture(pen,1);
for(j=0;j<m;j++)
{
- gr->NextColor(pal); c2=c1=gr->CDef;
- if(gr->GetNumPal(pal)==2*m)
+ c2=c1=gr->NextColor(pal);
+ if(gr->GetNumPal(pal)==2*m && !sh)
{ c1 = s+2*j/(2*m-1.); c2 = s+(2*j+0.999)/(2*m-1); }
// if(gr->GetNumPal(pal)==2*m) c2 = gr->NextColor(pal);
mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0; mz = j<z->GetNy() ? j:0;
@@ -466,11 +484,18 @@ void mgl_area_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
n2 = gr->AddPnt(mglPoint(x->v(0,mx),y->v(0,my),z0),c2,nn);
for(i=1;i<n;i++)
{
+ if(gr->Stop) return;
n3=n1; n4=n2;
nn = mglPoint(-y->dvx(i,my),x->dvx(i,mx));
n1 = gr->AddPnt(mglPoint(x->v(i,mx),y->v(i,my),z->v(i,mz)),c1,nn);
n2 = gr->AddPnt(mglPoint(x->v(i,mx),y->v(i,my),z0),c2,nn);
- gr->quad_plot(n1,n2,n3,n4);
+ if(wire)
+ {
+ gr->line_plot(n1,n2); gr->line_plot(n3,n4);
+ gr->line_plot(n1,n3); gr->line_plot(n4,n2);
+ }
+ else gr->quad_plot(n1,n2,n3,n4);
+ if(sh) c2=c1=gr->NextColor(pal);
}
}
gr->EndGroup();
@@ -487,31 +512,37 @@ void mgl_area_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
float c1,c2;
mglPoint nn=mglPoint(0,0,1);
long n1,n2,n3,n4;
-
- float *f=new float[n]; memset(f,0,n*sizeof(float));
- bool sum = (pen && strchr(pen,'a'));
+ bool sh = pen && strchr(pen,'!');
+ bool wire = pen && strchr(pen,'#');
gr->SetPenPal(pen,&pal); gr->Reserve(2*n*m);
long s=gr->AddTexture(pen,1);
for(j=0;j<m;j++)
{
- gr->NextColor(pal); c2=c1=gr->CDef;
- if(gr->GetNumPal(pal)==2*m)
+ c2=c1=gr->NextColor(pal);
+ if(gr->GetNumPal(pal)==2*m && !sh)
{ c1 = s+2*j/(2*m-1.); c2 = s+(2*j+0.999)/(2*m-1); }
mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0;
z0 = gr->Min.z + (m-1-j)*(gr->Max.z-gr->Min.z)/m;
n1 = gr->AddPnt(mglPoint(x->v(0,mx),y->v(0,my),z0),c1,nn);
- n2 = gr->AddPnt(mglPoint(x->v(0,mx),sum?0:y0,z0),c2,nn);
+ n2 = gr->AddPnt(mglPoint(x->v(0,mx),y0,z0),c2,nn);
for(i=1;i<n;i++)
{
+ if(gr->Stop) return;
n3=n1; n4=n2;
- n1 = gr->AddPnt(mglPoint(x->v(i,mx),sum?f[i]:y->v(i,my),z0),c1,nn);
- n2 = gr->AddPnt(mglPoint(x->v(i,mx),sum?f[i]:y0,z0),c2,nn);
- gr->quad_plot(n1,n2,n3,n4); f[i]+=y->v(i,my);
+ n1 = gr->AddPnt(mglPoint(x->v(i,mx),y->v(i,my),z0),c1,nn);
+ n2 = gr->AddPnt(mglPoint(x->v(i,mx),y0,z0),c2,nn);
+ if(wire)
+ {
+ gr->line_plot(n1,n2); gr->line_plot(n3,n4);
+ gr->line_plot(n1,n3); gr->line_plot(n4,n2);
+ }
+ else gr->quad_plot(n1,n2,n3,n4);
+ if(sh) c2=c1=gr->NextColor(pal);
}
}
- gr->EndGroup(); delete []f;
+ gr->EndGroup();
}
//-----------------------------------------------------------------------------
void mgl_area(HMGL gr, HCDT y, const char *pen, const char *opt)
@@ -555,13 +586,14 @@ void mgl_region_xy(HMGL gr, HCDT x, HCDT y1, HCDT y2, const char *pen, const cha
long n1,n2,n3,n4;
float xx,f1,f2,f3,f4;
bool inside = (pen && strchr(pen,'i')); // NOTE: check if 'i' is free (used here for inside flag)
+ bool sh = pen && strchr(pen,'!');
gr->SetPenPal(pen,&pal); gr->Reserve(2*n*m);
long s=gr->AddTexture(pen,1);
for(j=0;j<m;j++)
{
- gr->NextColor(pal); c2=c1=gr->CDef;
- if(gr->GetNumPal(pal)==2*m)
+ c2=c1=gr->NextColor(pal);
+ if(gr->GetNumPal(pal)==2*m && !sh)
{ c1 = s+2*j/(2*m-1.); c2 = s+(2*j+0.999)/(2*m-1); }
mx = j<x->GetNy() ? j:0;
float z0 = gr->Min.z + (m-1-j)*(gr->Max.z-gr->Min.z)/m;
@@ -571,12 +603,13 @@ void mgl_region_xy(HMGL gr, HCDT x, HCDT y1, HCDT y2, const char *pen, const cha
n2 = gr->AddPnt(mglPoint(xx,f2,z0),c2,nn);
for(i=1;i<n;i++)
{
+ if(gr->Stop) return;
n3=n1; n4=n2; f3=f1; f4=f2;
f1 = y1->v(i,j); f2 = y2->v(i,j); xx = x->v(i,mx);
n1 = gr->AddPnt(mglPoint(xx,f1,z0),c1,nn);
n2 = gr->AddPnt(mglPoint(xx,f2,z0),c2,nn);
- if(!inside || (f2>f1 && f4>f3))
- gr->quad_plot(n1,n2,n3,n4);
+ if(!inside || (f2>f1 && f4>f3)) gr->quad_plot(n1,n2,n3,n4);
+ if(sh) c2=c1=gr->NextColor(pal);
}
}
gr->EndGroup();
@@ -612,6 +645,7 @@ void mgl_step_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Step3",cgid++);
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy(); m = z->GetNy() > m ? z->GetNy() : m;
+ bool sh = pen && strchr(pen,'!');
char mk=gr->SetPenPal(pen,&pal); gr->Reserve(2*n*m);
long n1,n2;
@@ -623,6 +657,7 @@ void mgl_step_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
if(mk) gr->mark_plot(n1,mk);
for(i=1;i<n;i++)
{
+ if(gr->Stop) return;
n2 = n1; // horizontal
n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my), z->v(i-1,mz)));
gr->line_plot(n1,n2);
@@ -633,6 +668,7 @@ void mgl_step_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
if(mk) gr->mark_plot(n1,mk);
gr->line_plot(n1,n2);
if(i==n-1) gr->arrow_plot(n1,n2,gr->Arrow2);
+ if(sh) gr->NextColor(pal);
}
}
gr->EndGroup();
@@ -646,6 +682,7 @@ void mgl_step_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Step",cgid++);
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy();
+ bool sh = pen && strchr(pen,'!');
float zVal = gr->Min.z;
char mk=gr->SetPenPal(pen,&pal); gr->Reserve(2*n*m);
@@ -658,6 +695,7 @@ void mgl_step_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
if(mk) gr->mark_plot(n1,mk);
for(i=1;i<n;i++)
{
+ if(gr->Stop) return;
n2 = n1; // horizontal
n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i-1,my), zVal));
gr->line_plot(n1,n2);
@@ -668,6 +706,7 @@ void mgl_step_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
if(mk) gr->mark_plot(n1,mk);
gr->line_plot(n1,n2);
if(i==n-1) gr->arrow_plot(n1,n2,gr->Arrow2);
+ if(sh) gr->NextColor(pal);
}
}
gr->EndGroup();
@@ -709,6 +748,7 @@ void mgl_stem_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Stem3",cgid++);
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy(); m = z->GetNy() > m ? z->GetNy() : m;
+ bool sh = pen && strchr(pen,'!');
float z0=gr->GetOrgZ('x');
char mk=gr->SetPenPal(pen,&pal); gr->Reserve(2*n*m);
@@ -719,10 +759,12 @@ void mgl_stem_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
mz = j<z->GetNy() ? j:0; gr->NextColor(pal);
for(i=0;i<n;i++)
{
- n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my), z->v(i-1,mz)));
+ if(gr->Stop) return;
+ n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my), z->v(i,mz)));
if(mk) gr->mark_plot(n1,mk);
n2 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my), z0));
gr->line_plot(n1,n2);
+ if(sh) gr->NextColor(pal);
}
}
gr->EndGroup();
@@ -736,6 +778,7 @@ void mgl_stem_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Stem",cgid++);
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy();
+ bool sh = pen && strchr(pen,'!');
float zVal = gr->Min.z;
float y0=gr->GetOrgY('x');
@@ -747,10 +790,12 @@ void mgl_stem_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
gr->NextColor(pal);
for(i=0;i<n;i++)
{
+ if(gr->Stop) return;
n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my), zVal));
if(mk) gr->mark_plot(n1,mk);
n2 = gr->AddPnt(mglPoint(x->v(i,mx), y0, zVal));
gr->line_plot(n1,n2);
+ if(sh) gr->NextColor(pal);
}
}
gr->EndGroup();
@@ -786,12 +831,13 @@ void mgl_stem_(uintptr_t *gr, uintptr_t *y, const char *pen, const char *opt,int
//-----------------------------------------------------------------------------
void mgl_bars_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *opt)
{
- long i,j,m,mx,my,mz,n=y->GetNx(), pal;
- if(x->GetNx()!=n || z->GetNx()!=n) { gr->SetWarn(mglWarnDim,"Bars"); return; }
+ long i,j,m,mx,my,mz,n=z->GetNx(), pal,nx=x->GetNx(),ny=y->GetNx();
+ if(nx<n || ny<n) { gr->SetWarn(mglWarnDim,"Bars"); return; }
if(n<2) { gr->SetWarn(mglWarnLow,"Bars"); return; }
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Bars3",cgid++);
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy(); m = z->GetNy() > m ? z->GetNy() : m;
+ bool sh = pen && strchr(pen,'!');
bool wire = pen && strchr(pen,'#');
bool above = pen && strchr(pen,'a'), fall = pen && strchr(pen,'f');
@@ -806,17 +852,17 @@ void mgl_bars_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
if(wire) gr->Reserve(4*n*m); else gr->Reserve(4*n*m);
for(j=0;j<m;j++)
{
- gr->NextColor(pal); c2=c1=gr->CDef;
- if(gr->GetNumPal(pal)==2*m) c2 = gr->NextColor(pal);
+ c2=c1=gr->NextColor(pal);
+ if(gr->GetNumPal(pal)==2*m && !sh) c2 = gr->NextColor(pal);
mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0; mz = j<z->GetNy() ? j:0;
zp = z0 = gr->GetOrgZ('x');
for(i=0;i<n;i++)
{
- d = i<n-1 ? x->v(i+1,mx)-x->v(i,mx) : x->v(i,mx)-x->v(i-1,mx);
- x1 = x->v(i,mx) + d/2*(1-gr->BarWidth);
- d = i<n-1 ? y->v(i+1,my)-y->v(i,my) : y->v(i,my)-y->v(i-1,my);
- y1 = y->v(i,my) + d/2*(1-gr->BarWidth);
- x2 = x1 + gr->BarWidth*d; y2 = y1 + gr->BarWidth*d;
+ if(gr->Stop) { delete []dd; return; }
+ d = i<nx-1 ? x->v(i+1,mx)-x->v(i,mx) : x->v(i,mx)-x->v(i-1,mx);
+ x1 = x->v(i,mx) + d/2*(1-gr->BarWidth); x2 = x1 + gr->BarWidth*d;
+ d = i<ny-1 ? y->v(i+1,my)-y->v(i,my) : y->v(i,my)-y->v(i-1,my);
+ y1 = y->v(i,my) + d/2*(1-gr->BarWidth); y2 = y1 + gr->BarWidth*d;
zz = z->v(i,mz);
if(!above)
{
@@ -844,6 +890,7 @@ void mgl_bars_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *
n3 = gr->AddPnt(p3,c,nn); n4 = gr->AddPnt(p4,c,nn);
gr->quad_plot(n1,n2,n4,n3);
}
+ if(sh) c2=c1=gr->NextColor(pal);
}
}
gr->EndGroup(); delete []dd;
@@ -857,6 +904,7 @@ void mgl_bars_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Bars",cgid++);
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy();
+ bool sh = pen && strchr(pen,'!');
bool wire = pen && strchr(pen,'#');
bool above = pen && strchr(pen,'a')!=0, fall = pen && strchr(pen,'f')!=0;
@@ -870,12 +918,13 @@ void mgl_bars_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
if(wire) gr->Reserve(4*n*m); else gr->Reserve(4*n*m);
for(j=0;j<m;j++)
{
- gr->NextColor(pal); c2=c1=gr->CDef;
- if(gr->GetNumPal(pal)==2*m) c2 = gr->NextColor(pal);
+ c2=c1=gr->NextColor(pal);
+ if(gr->GetNumPal(pal)==2*m && !sh) c2 = gr->NextColor(pal);
mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0;
yp = y0 = gr->GetOrgZ('x');
for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []dd; return; }
d = i<n-1 ? x->v(i+1,mx)-x->v(i,mx) : x->v(i,mx)-x->v(i-1,mx);
x1 = x->v(i,mx) + d/2*(1-gr->BarWidth);
x2 = x1 + gr->BarWidth*d; yy = y->v(i,my);
@@ -896,12 +945,13 @@ void mgl_bars_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
gr->line_plot(n3,n2); gr->line_plot(n3,n4);
}
else gr->quad_plot(n1,n2,n4,n3);
+ if(sh) c2=c1=gr->NextColor(pal);
}
}
gr->EndGroup(); delete []dd;
}
//-----------------------------------------------------------------------------
-void mgl_bars(HMGL gr, HCDT y, const char *pen, const char *opt)
+void mgl_bars(HMGL gr, HCDT y, const char *pen, const char *opt)
{
if(y->GetNx()<2) { gr->SetWarn(mglWarnLow,"Bars"); return; }
gr->SaveState(opt);
@@ -937,6 +987,7 @@ void mgl_barh_yx(HMGL gr, HCDT y, HCDT v, const char *pen, const char *opt)
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Barh",cgid++);
m = y->GetNy() > v->GetNy() ? y->GetNy() : v->GetNy();
+ bool sh = pen && strchr(pen,'!');
bool wire = pen && strchr(pen,'#');
bool above = pen && strchr(pen,'a'), fall = pen && strchr(pen,'f');
@@ -950,12 +1001,13 @@ void mgl_barh_yx(HMGL gr, HCDT y, HCDT v, const char *pen, const char *opt)
if(wire) gr->Reserve(4*n*m); else gr->Reserve(4*n*m);
for(j=0;j<m;j++)
{
- gr->NextColor(pal); c2=c1=gr->CDef;
- if(gr->GetNumPal(pal)==2*m) c2 = gr->NextColor(pal);
+ c2=c1=gr->NextColor(pal);
+ if(gr->GetNumPal(pal)==2*m && !sh) c2 = gr->NextColor(pal);
mx = j<v->GetNy() ? j:0; my = j<y->GetNy() ? j:0;
xp = x0 = gr->GetOrgX('y');
for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []dd; return; }
d = i<n-1 ? y->v(i+1,my)-y->v(i,my) : y->v(i,my)-y->v(i-1,my);
y1 = y->v(i,my) + d/2*(1-gr->BarWidth);
y2 = y1 + gr->BarWidth*d; xx = v->v(i,mx);
@@ -976,6 +1028,7 @@ void mgl_barh_yx(HMGL gr, HCDT y, HCDT v, const char *pen, const char *opt)
gr->line_plot(n3,n2); gr->line_plot(n3,n4);
}
else gr->quad_plot(n1,n2,n4,n3);
+ if(sh) c2=c1=gr->NextColor(pal);
}
}
gr->EndGroup(); delete []dd;
@@ -1014,15 +1067,17 @@ int mgl_cmp_flt(const void *a, const void *b)
//-----------------------------------------------------------------------------
void mgl_boxplot_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
{
- long n=y->GetNx(), m=y->GetNy();
- if(x->GetNx()<n) { gr->SetWarn(mglWarnDim,"BoxPlot"); return; }
+ long n=y->GetNx(), m=y->GetNy(), nx=x->GetNx();
+ if(nx<n) { gr->SetWarn(mglWarnDim,"BoxPlot"); return; }
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("BoxPlot",cgid++);
float *b = new float[5*n], *d = new float[m], x1, x2, dd;
float zVal = gr->Min.z;
+ bool sh = pen && strchr(pen,'!');
register long i,j;
for(i=0;i<n;i++) // find quartiles by itself
{
+ if(gr->Stop) { delete []d; return; }
register long mm,k;
for(mm=j=0;j<m;j++) if(!isnan(y->v(i,j)))
{ d[mm]=y->v(i,j); mm++; }
@@ -1040,28 +1095,30 @@ void mgl_boxplot_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
gr->SetPenPal(pen,&pal); gr->NextColor(pal); gr->Reserve(18*n);
for(i=0;i<n;i++)
{
- dd = i<n-1 ? x->v(i+1)-x->v(i) : x->v(i)-x->v(i-1);
+ if(gr->Stop) { delete []b; return; }
+ dd = i<nx-1 ? x->v(i+1)-x->v(i) : x->v(i)-x->v(i-1);
x1 = x->v(i) + dd/2*(1-gr->BarWidth);
x2 = x1 + gr->BarWidth*dd;
for(j=0;j<5;j++) // horizontal lines
{
- p1=mglPoint(x1,b[i+j*n],zVal); n1=gr->AddPnt(p1,gr->CDef);
- p2=mglPoint(x2,b[i+j*n],zVal); n2=gr->AddPnt(p2,gr->CDef);
+ p1=mglPoint(x1,b[i+j*n],zVal); n1=gr->AddPnt(p1);
+ p2=mglPoint(x2,b[i+j*n],zVal); n2=gr->AddPnt(p2);
gr->line_plot(n1,n2);
}
//vertical lines
- p1=mglPoint(x1,b[i+n],zVal); n1=gr->AddPnt(p1,gr->CDef);
- p2=mglPoint(x1,b[i+3*n],zVal); n2=gr->AddPnt(p2,gr->CDef);
+ p1=mglPoint(x1,b[i+n],zVal); n1=gr->AddPnt(p1);
+ p2=mglPoint(x1,b[i+3*n],zVal); n2=gr->AddPnt(p2);
gr->line_plot(n1,n2);
- p1=mglPoint(x2,b[i+n],zVal); n1=gr->AddPnt(p1,gr->CDef);
- p2=mglPoint(x2,b[i+3*n],zVal); n2=gr->AddPnt(p2,gr->CDef);
+ p1=mglPoint(x2,b[i+n],zVal); n1=gr->AddPnt(p1);
+ p2=mglPoint(x2,b[i+3*n],zVal); n2=gr->AddPnt(p2);
gr->line_plot(n1,n2);
- p1=mglPoint(x->v(i),b[i],zVal); n1=gr->AddPnt(p1,gr->CDef);
- p2=mglPoint(x->v(i),b[i+n],zVal); n2=gr->AddPnt(p2,gr->CDef);
+ p1=mglPoint((x1+x2)/2,b[i],zVal); n1=gr->AddPnt(p1);
+ p2=mglPoint((x1+x2)/2,b[i+n],zVal); n2=gr->AddPnt(p2);
gr->line_plot(n1,n2);
- p1=mglPoint(x->v(i),b[i+3*n],zVal); n1=gr->AddPnt(p1,gr->CDef);
- p2=mglPoint(x->v(i),b[i+4*n],zVal); n2=gr->AddPnt(p2,gr->CDef);
+ p1=mglPoint((x1+x2)/2,b[i+3*n],zVal); n1=gr->AddPnt(p1);
+ p2=mglPoint((x1+x2)/2,b[i+4*n],zVal); n2=gr->AddPnt(p2);
gr->line_plot(n1,n2);
+ if(sh) gr->NextColor(pal);
}
delete []b; gr->EndGroup();
}
@@ -1100,36 +1157,41 @@ void mgl_error_exy(HMGL gr, HCDT x, HCDT y, HCDT ex, HCDT ey, const char *pen, c
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy();
m = ex->GetNy() > m ? ex->GetNy() : m;
m = ey->GetNy() > m ? ey->GetNy() : m;
+ bool sh = pen && strchr(pen,'!');
bool ma = pen && strchr(pen,'@');
char mk = gr->SetPenPal(pen,&pal);
float zVal=gr->Min.z; gr->Reserve(5*n*m);
- if(ma && !strchr("PXsSdD+xoOC",mk)) mk = 'S';
+ if(ma && (mk==0 || !strchr("PXsSdD+xoOC",mk) )) mk = 'S';
long n1,n2,n3,n4;
+ mglPoint q(NAN,NAN);
for(j=0;j<m;j++)
{
- mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0;
+ if(gr->Stop) return;
+ mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0;
m1 = j<ex->GetNy() ? j:0; m2 = j<ey->GetNy() ? j:0;
gr->NextColor(pal);
if(ma)
{
if(strchr("PXsS",mk)) for(i=0;i<n;i++) // boundary of square
{
- n1 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal));
- n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal));
- n3 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal));
- n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal));
+ n1 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
+ n3 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
gr->line_plot(n1,n2); gr->line_plot(n1,n3);
gr->line_plot(n4,n2); gr->line_plot(n4,n3);
+ if(sh) gr->NextColor(pal);
}
if(strchr("dD",mk)) for(i=0;i<n;i++) // boundary of rhomb
{
- n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)+ey->v(i,m2), zVal));
- n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my), zVal));
- n3 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)-ey->v(i,m2), zVal));
- n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my), zVal));
+ n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my), zVal),-1,q,-1,11);
+ n3 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
+ n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my), zVal),-1,q,-1,11);
gr->line_plot(n1,n2); gr->line_plot(n2,n3);
gr->line_plot(n3,n4); gr->line_plot(n4,n1);
+ if(sh) gr->NextColor(pal);
}
if(strchr("oOC",mk)) for(i=0;i<n;i++) // circle
{
@@ -1137,43 +1199,48 @@ void mgl_error_exy(HMGL gr, HCDT x, HCDT y, HCDT ex, HCDT ey, const char *pen, c
{
n1 = n2;
n2 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1)*cos(k*M_PI/20),
- y->v(i,my)+ey->v(i,m2)*sin(k*M_PI/20), zVal));
+ y->v(i,my)+ey->v(i,m2)*sin(k*M_PI/20), zVal),-1,q,-1,11);
if(k>0) gr->line_plot(n1,n2);
}
+ if(sh) gr->NextColor(pal);
}
switch(mk)
{
case 'P': case '+': for(i=0;i<n;i++)
{
- n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)+ey->v(i,m2), zVal));
- n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my), zVal));
- n3 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)-ey->v(i,m2), zVal));
- n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my), zVal));
+ n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my), zVal),-1,q,-1,11);
+ n3 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
+ n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my), zVal),-1,q,-1,11);
gr->line_plot(n1,n3); gr->line_plot(n2,n4);
+ if(sh) gr->NextColor(pal);
} break;
case 'X': case 'x': for(i=0;i<n;i++)
{
- n1 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal));
- n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal));
- n3 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal));
- n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal));
+ n1 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
+ n3 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
gr->line_plot(n1,n3); gr->line_plot(n2,n4);
+ if(sh) gr->NextColor(pal);
} break;
case 'S': for(i=0;i<n;i++)
{
- n1 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal));
- n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal));
- n3 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal));
- n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal));
+ n1 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
+ n3 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
gr->quad_plot(n1,n2,n3,n4);
+ if(sh) gr->NextColor(pal);
} break;
case 'D': for(i=0;i<n;i++)
{
- n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)+ey->v(i,m2), zVal));
- n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my), zVal));
- n3 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)-ey->v(i,m2), zVal));
- n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my), zVal));
+ n1 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)+ey->v(i,m2), zVal),-1,q,-1,11);
+ n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my), zVal),-1,q,-1,11);
+ n3 = gr->AddPnt(mglPoint(x->v(i,mx), y->v(i,my)-ey->v(i,m2), zVal),-1,q,-1,11);
+ n4 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my), zVal),-1,q,-1,11);
gr->quad_plot(n1,n2,n3,n4);
+ if(sh) gr->NextColor(pal);
} break;
case 'O': for(i=0;i<n;i++)
{
@@ -1182,12 +1249,16 @@ void mgl_error_exy(HMGL gr, HCDT x, HCDT y, HCDT ex, HCDT ey, const char *pen, c
{
n1 = n2;
n2 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1)*cos(k*M_PI/20),
- y->v(i,my)+ey->v(i,m2)*sin(k*M_PI/20), zVal));
+ y->v(i,my)+ey->v(i,m2)*sin(k*M_PI/20), zVal),-1,q,-1,11);
if(k>0) gr->trig_plot(n1,n2,n3);
}
+ if(sh) gr->NextColor(pal);
} break;
case 'C': for(i=0;i<n;i++)
- gr->mark_plot(gr->AddPnt(mglPoint(x->v(i,mx),y->v(i,my),zVal)), '.');
+ {
+ gr->mark_plot(gr->AddPnt(mglPoint(x->v(i,mx),y->v(i,my),zVal),-1,q,-1,3), '.');
+ if(sh) gr->NextColor(pal);
+ }
}
}
else for(i=0;i<n;i++)
@@ -1201,6 +1272,7 @@ void mgl_error_exy(HMGL gr, HCDT x, HCDT y, HCDT ex, HCDT ey, const char *pen, c
n1 = gr->AddPnt(mglPoint(x->v(i,mx)+ex->v(i,m1), y->v(i,my), zVal));
n2 = gr->AddPnt(mglPoint(x->v(i,mx)-ex->v(i,m1), y->v(i,my), zVal));
gr->line_plot(n1,n2); gr->arrow_plot(n1,n2,'I'); gr->arrow_plot(n2,n1,'I');
+ if(sh) gr->NextColor(pal);
}
}
gr->EndGroup();
@@ -1244,7 +1316,7 @@ void mgl_error_exy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *ex, ui
//-----------------------------------------------------------------------------
void face_plot(mglBase *gr, mglPoint o, mglPoint d1, mglPoint d2, float c, bool wire)
{
- const int num=40;
+ const int num=10;
mglPoint p,nn=d1^d2;
d1 = d1/num; d2 = d2/num;
register long i,j,i0,n=num+1;
@@ -1254,6 +1326,7 @@ void face_plot(mglBase *gr, mglPoint o, mglPoint d1, mglPoint d2, float c, bool
{ p = o+d1*i+d2*j; id[i+n*j] = gr->AddPnt(p,c,nn); }
for(i=0;i<num;i++) for(j=0;j<num;j++)
{
+ if(gr->Stop) { delete []id; return; }
i0 = i+n*j;
gr->quad_plot(id[i0],id[i0+1],id[i0+n],id[i0+n+1]);
}
@@ -1265,6 +1338,7 @@ void face_plot(mglBase *gr, mglPoint o, mglPoint d1, mglPoint d2, float c, bool
jj[2] = jj[3] = gr->CopyNtoC(id[n*n-1],gr->CDef);
for(i=1;i<n;i++)
{
+ if(gr->Stop) { delete []id; return; }
memcpy(jj+4,jj,4*sizeof(long));
jj[0] = gr->CopyNtoC(id[i],gr->CDef);
jj[1] = gr->CopyNtoC(id[n*i],gr->CDef);
@@ -1284,18 +1358,16 @@ void mgl_chart(HMGL gr, HCDT a, const char *cols, const char *opt)
if(a->Minimal()<0) { gr->SetWarn(mglWarnNeg,"Chart"); return; }
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Chart",cgid++);
- bool wire = false; // draw edges
- register long n=a->GetNx(),i,j;
- if(cols && !strcmp(cols,"#")) { wire = true; cols = 0; }
- if(!cols) cols = MGL_DEF_PAL;
+ bool wire = cols && !strcmp(cols,"#"); // draw edges
+ register long n=a->GetNx(),i,j=0;
+ if(cols) for(i=0;i<long(strlen(cols));i++)
+ if(strchr("wkrgbcymhRGBCYMHWlenuqpLENUQP ",cols[i])) j++;
+ if(j==0) cols = MGL_DEF_PAL;
float *c = new float[strlen(cols)+1],cc;
long nc=0; // number of colors
for(i=0;i<long(strlen(cols));i++)
- {
if(strchr("wkrgbcymhRGBCYMHWlenuqpLENUQP ",cols[i]))
{ c[nc]=gr->AddTexture(cols[i]); nc++; }
- else if(cols[i]=='#') wire = true;
- }
float dy = (gr->Max.y-gr->Min.y)/a->GetNy(), dx, ss, cs, x1, y1, dz=gr->Max.z-gr->Min.z;
mglPoint d1,d2,o;
@@ -1307,6 +1379,7 @@ void mgl_chart(HMGL gr, HCDT a, const char *cols, const char *opt)
if(ss==0) continue;
for(cs=0,i=0;i<n;i++)
{
+ if(gr->Stop) { delete []c; return; }
dx = a->v(i,j)/ss; cc = c[i%nc];
if(dx==0) continue;
x1 = gr->Min.x + (gr->Max.x-gr->Min.x)*cs/ss; dx *= (gr->Max.x-gr->Min.x);
@@ -1347,6 +1420,7 @@ void mgl_mark_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT r, const char *pen, cons
m = z->GetNy() > m ? z->GetNy() : m;
char mk=gr->SetPenPal(pen,&pal); gr->Reserve(n*m);
if(mk==0) return;
+ bool sh = pen && strchr(pen,'!');
for(j=0;j<m;j++)
{
@@ -1354,7 +1428,11 @@ void mgl_mark_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT r, const char *pen, cons
mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0;
mz = j<z->GetNy() ? j:0; mr = j<r->GetNy() ? j:0;
for(int i=0;i<n;i++)
+ {
+ if(gr->Stop) return;
gr->mark_plot(gr->AddPnt(mglPoint(x->v(i,mx),y->v(i,my),z->v(i,mz))), mk, r->v(i,mr));
+ if(sh) gr->NextColor(pal);
+ }
}
gr->EndGroup();
}
@@ -1408,6 +1486,8 @@ void mgl_tube_xyzr(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT r, const char *pen, con
m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy();
m = z->GetNy() > m ? z->GetNy() : m;
m = r->GetNy() > m ? r->GetNy() : m;
+ bool sh = pen && strchr(pen,'!');
+ bool wire = pen && strchr(pen,'#');
const int num=41;
gr->SetPenPal(pen,&pal);
@@ -1429,13 +1509,16 @@ void mgl_tube_xyzr(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT r, const char *pen, con
float si,co,ff, rr=r->v(i,mr), dr=r->dvx(i,mr);
for(k=0;k<num;k++)
{
+ if(gr->Stop) { delete []nn; return; }
ff = k*2*M_PI/(num-1); co = cos(ff); si = sin(ff);
p = q + t*(rr*co) + u*(rr*si);
d = (t*si - u*co)^(l + t*(dr*co) + u*(dr*si));
- nn[k+num]=nn[k]; nn[k] = gr->AddPnt(p,gr->CDef,d,-1,3);
- if(i*k>0)
- gr->quad_plot(nn[k],nn[k-1],nn[k+num],nn[k+num-1]);
+ nn[k+num]=nn[k]; nn[k] = gr->AddPnt(p,gr->CDef,wire?mglPoint(NAN,NAN):d,-1,3);
+ if(i*k>0 && !wire) gr->quad_plot(nn[k],nn[k-1],nn[k+num],nn[k+num-1]);
+ if(i*k>0 && wire && k%4==0) gr->line_plot(nn[k],nn[k+num]);
+ if(k>0 && wire) gr->line_plot(nn[k],nn[k-1]);
}
+ if(sh) gr->NextColor(pal);
}
}
delete []nn; gr->EndGroup();
@@ -1521,3 +1604,97 @@ void mgl_tube_(uintptr_t *gr, uintptr_t *y, float *r, const char *pen, const cha
mgl_tube(_GR_,_DA_(y),*r,s,o);
delete []s; delete []o; }
//-----------------------------------------------------------------------------
+//
+// Tape series
+//
+//-----------------------------------------------------------------------------
+void mgl_tape_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *opt)
+{
+ long j,m,mx,my,mz,n=y->GetNx(),pal;
+ if(x->GetNx()!=n || z->GetNx()!=n) { gr->SetWarn(mglWarnDim,"Tape"); return; }
+ if(n<2) { gr->SetWarn(mglWarnLow,"Tape"); return; }
+ static int cgid=1; gr->StartGroup("Tape",cgid++);
+ float ll, rr = gr->SaveState(opt);
+ if(rr==0 || isnan(rr)) rr = mgl_norm(gr->Max-gr->Min)*gr->BarWidth/25;
+ m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy(); m = z->GetNy() > m ? z->GetNy() : m;
+ char mk=gr->SetPenPal(pen,&pal); gr->Reserve(4*n*m);
+ mglPoint p1,p2,q1,q2,l,nn,qn=mglPoint(NAN,NAN);
+ long n1=-1,n2=-1,n3=-1,n4=-1, m1=-1,m2=-1,m3=-1,m4=-1;
+ bool sh = pen && strchr(pen,'!'), xo = pen && strchr(pen,'x'), zo = pen && strchr(pen,'z'), wire = pen && strchr(pen,'#');
+ if(!xo && !zo) xo = zo = true;
+ float c1,c2;
+
+ for(j=0;j<m;j++)
+ {
+ c2=c1=gr->NextColor(pal);
+ if(gr->GetNumPal(pal)==2*m && !sh) c2 = gr->NextColor(pal);
+ mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0; mz = j<z->GetNy() ? j:0;
+ // initial values for normales
+ p2 = mglPoint(x->v(0,mx), y->v(0,my), z->v(0,mz));
+ l = mglPoint(x->v(1,mx), y->v(1,my), z->v(1,mz)) - p2; l /= mgl_norm(l);
+ q1 = mglPoint(-l.y,l.x,0); ll = mgl_norm(q1);
+ if(ll) q1 /= ll; else q1 = mglPoint(0,1,0);
+ q2 = (q1^l);
+ if(xo) { n1 = gr->AddPnt(p2,c1,q2,-1,3); n2 = gr->AddPnt(p2+rr*q1,c1,q2,-1,3); }
+ if(zo) { n3 = gr->AddPnt(p2,c2,q1,-1,3); n4 = gr->AddPnt(p2+rr*q2,c2,q1,-1,3); }
+ register long i;
+ for(i=1;i<n;i++)
+ {
+ if(gr->Stop) return;
+ p1 = p2; p2 = mglPoint(x->v(i,mx), y->v(i,my), z->v(i,mz));
+ l = p2-p1; l /= mgl_norm(l);
+ q1 -= l*(l*q1); q1/= mgl_norm(q1); q2 = (q1^l);
+ m1 = n1; m2 = n2; m3 = n3; m4 = n4;
+ if(xo)
+ {
+ n1 = gr->AddPnt(p2,c1,wire?qn:q2,-1,3);
+ n2 = gr->AddPnt(p2+rr*q1,c1,wire?qn:q2,-1,3);
+ if(wire) gr->line_plot(m2,n2);
+ else gr->quad_plot(n1,n2,m1,m2);
+ }
+ if(zo)
+ {
+ n3 = gr->AddPnt(p2,c2,wire?qn:q1,-1,3);
+ n4 = gr->AddPnt(p2+rr*q2,c2,wire?qn:q1,-1,3);
+ if(wire) gr->line_plot(m4,n4);
+ else gr->quad_plot(n3,n4,m3,m4);
+ }
+ if(sh) c2=c1=gr->NextColor(pal);
+ }
+ }
+ gr->EndGroup();
+}
+//-----------------------------------------------------------------------------
+void mgl_tape_xy(HMGL gr, HCDT x, HCDT y, const char *pen, const char *opt)
+{
+ gr->SaveState(opt);
+ mglData z(y->GetNx());
+ z.Fill(gr->Min.z,gr->Min.z);
+ mgl_tape_xyz(gr,x,y,&z,pen,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_tape(HMGL gr, HCDT y, const char *pen, const char *opt)
+{
+ if(y->GetNx()<2) { gr->SetWarn(mglWarnLow,"Plot"); return; }
+ gr->SaveState(opt);
+ mglData x(y->GetNx()), z(y->GetNx());
+ x.Fill(gr->Min.x,gr->Max.x);
+ z.Fill(gr->Min.z,gr->Min.z);
+ mgl_tape_xyz(gr,&x,y,&z,pen,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_tape_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *pen, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,pen,l); s[l]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_tape_xyz(_GR_, _DA_(x),_DA_(y),_DA_(z),s,o); delete []s; delete []o; }
+//-----------------------------------------------------------------------------
+void mgl_tape_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, const char *pen, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,pen,l); s[l]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_tape_xy(_GR_, _DA_(x),_DA_(y),s,o); delete []s; delete []o; }
+//-----------------------------------------------------------------------------
+void mgl_tape_(uintptr_t *gr, uintptr_t *y, const char *pen, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,pen,l); s[l]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_tape(_GR_, _DA_(y),s,o); delete []s; delete []o; }
+//-----------------------------------------------------------------------------
diff --git a/src/prim.cpp b/src/prim.cpp
index 0b0c606..6eb8878 100644
--- a/src/prim.cpp
+++ b/src/prim.cpp
@@ -19,6 +19,7 @@
***************************************************************************/
#include <wchar.h>
#include <stdlib.h>
+#include "mgl/canvas.h"
#include "mgl/prim.h"
#include "mgl/data.h"
//-----------------------------------------------------------------------------
@@ -61,6 +62,7 @@ void mgl_line(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z
k1 = gr->AddPnt(p,gr->CDef,nn,-1,3);
for(i=1;i<n;i++)
{
+ if(gr->Stop) return;
s = i/float(n-1); p = p1*(1-s)+p2*s; k2 = k1;
k1 = gr->AddPnt(p,gr->CDef,nn,-1,3);
gr->line_plot(k2,k1);
@@ -88,6 +90,7 @@ void mgl_curve(HMGL gr, float x1, float y1, float z1, float dx1, float dy1, floa
k1=gr->AddPnt(p,gr->CDef,nn,-1,3);
for(i=0;i<n;i++)
{
+ if(gr->Stop) return;
s = i/(n-1.); p = p1+s*(d1+s*(a+s*b)); k2 = k1;
k1 = gr->AddPnt(p,gr->CDef,nn,-1,3);
gr->line_plot(k2,k1);
@@ -108,7 +111,7 @@ void mgl_error_box(HMGL gr, float x, float y, float z, float ex, float ey, float
mglPoint p(x,y,z), q,nn=mglPoint(NAN);
gr->Reserve(7);
long k1,k2;
- q = p; q.x += ex; k1 = gr->AddPnt(q,gr->CDef,nn,0,3);
+ q = p; q.x += ex; k1 = gr->AddPnt(q,gr->CDef,nn,0,3); // TODO draw lines to show cube (not just perp to line)
q = p; q.x -= ex; k2 = gr->AddPnt(q,gr->CDef,nn,0,3);
gr->line_plot(k1,k2); gr->arrow_plot(k1,k2,'I'); gr->arrow_plot(k2,k1,'I');
q = p; q.y += ey; k1 = gr->AddPnt(q,gr->CDef,nn,0,3);
@@ -191,7 +194,7 @@ void mgl_face_(uintptr_t* gr, float *x0, float *y0, float *z0, float *x1, float
// Cone
//
//-----------------------------------------------------------------------------
-void mgl_cone(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z2, float r1, float r2, const char *stl, int edge)
+void mgl_cone(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z2, float r1, float r2, const char *stl)
{
if(r2<0) r2=r1;
if(r1==0 && r2==0) return;
@@ -202,6 +205,7 @@ void mgl_cone(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z
long ss=gr->AddTexture(stl);
float c1=gr->GetC(ss,p1.z), c2=gr->GetC(ss,p2.z);
long *kk=new long[164],k1=-1,k2=-1;
+ bool edge = stl && strchr(stl,'@');
gr->Reserve(edge?166:82);
if(edge)
{
@@ -212,6 +216,7 @@ void mgl_cone(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z
register long i;
for(i=0;i<41;i++)
{
+ if(gr->Stop) { delete []kk; return; }
f = i*M_PI/20; co = cos(f); si = sin(f);
p = p1+(r1*co)*a+(r1*si)*b;
q = (si*a-co*b)^(d + (dr*co)*a + (dr*si)*b);
@@ -223,6 +228,7 @@ void mgl_cone(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z
}
for(i=0;i<40;i++)
{
+ if(gr->Stop) { delete []kk; return; }
gr->quad_plot(kk[i],kk[i+1],kk[i+41],kk[i+42]);
if(edge)
{
@@ -233,9 +239,86 @@ void mgl_cone(HMGL gr, float x1, float y1, float z1, float x2, float y2, float z
gr->EndGroup(); delete []kk;
}
//-----------------------------------------------------------------------------
-void mgl_cone_(uintptr_t* gr, mreal *x1, mreal *y1, mreal *z1, mreal *x2, mreal *y2, mreal *z2, mreal *r1, mreal *r2, const char *stl, int *edge, int l)
+void mgl_cone_(uintptr_t* gr, mreal *x1, mreal *y1, mreal *z1, mreal *x2, mreal *y2, mreal *z2, mreal *r1, mreal *r2, const char *stl, int l)
{ char *s=new char[l+1]; memcpy(s,stl,l); s[l]=0;
- mgl_cone(_GR_, *x1,*y1,*z1, *x2,*y2,*z2,*r1,*r2,s,*edge); delete []s; }
+ mgl_cone(_GR_, *x1,*y1,*z1, *x2,*y2,*z2,*r1,*r2,s); delete []s; }
+//-----------------------------------------------------------------------------
+//
+// Bars series
+//
+//-----------------------------------------------------------------------------
+void mgl_cones_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *pen, const char *opt)
+{
+ long i,j,m,mx,my,mz,n=z->GetNx(),nx=x->GetNx(), pal;
+ if(x->GetNx()<n || y->GetNx()<n) { gr->SetWarn(mglWarnDim,"Cones"); return; }
+ if(n<2) { gr->SetWarn(mglWarnLow,"Cones"); return; }
+ gr->SaveState(opt);
+ static int cgid=1; gr->StartGroup("Cones",cgid++);
+ m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy(); m = z->GetNy() > m ? z->GetNy() : m;
+
+ bool above = pen && strchr(pen,'a');
+ float *dd=new float[2*n], x1,z0,zz,d;
+ memset(dd,0,n*sizeof(float));
+
+ gr->SetPenPal(pen,&pal);
+ char cols[4]={'@',0,0.0};
+ memset(dd,0,2*n*sizeof(float));
+ z0 = gr->GetOrgZ('x');
+ for(i=0;i<n;i++) for(j=0;j<m;j++) dd[i] += z->v(i, j<z->GetNy() ? j:0);
+ for(j=0;j<m;j++)
+ {
+ gr->NextColor(pal); cols[1]=gr->last_color();
+ if(gr->GetNumPal(pal)==2*m) { gr->NextColor(pal); cols[2]=gr->last_color(); }
+ mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0; mz = j<z->GetNy() ? j:0;
+ for(i=0;i<n;i++)
+ {
+ if(gr->Stop) { delete []dd; return; }
+ d = i<nx-1 ? x->v(i+1,mx)-x->v(i,mx) : x->v(i,mx)-x->v(i-1,mx);
+ x1 = (n<nx?(x->v(i,mx)+x->v(i+1,mx))/2:x->v(i,mx)) + d/2*(1-0.7*gr->BarWidth);
+ if(above)
+ {
+ zz = j>0?dd[i+n]:z0; dd[i+n] += z->v(i,mz);
+ mgl_cone(gr, x1,y->v(i,0),zz, x1,y->v(i,0),dd[i+n],
+ 0.7*gr->BarWidth*d*(dd[i]-zz)/(dd[i]-z0),
+ 0.7*gr->BarWidth*d*(dd[i]-dd[i+n])/(dd[i]-z0), cols);
+ }
+ else mgl_cone(gr, x1,y->v(i,my),z0, x1,y->v(i,my),z->v(i,mz), 0.7*gr->BarWidth*d,0, cols);
+ }
+ }
+ gr->EndGroup(); delete []dd;
+}
+//-----------------------------------------------------------------------------
+void mgl_cones_xz(HMGL gr, HCDT x, HCDT z, const char *pen, const char *opt)
+{
+ gr->SaveState(opt);
+ mglData y(z);
+ y.Fill(gr->Min.y,gr->Max.y,'y');
+ mgl_cones_xyz(gr,x,&y,z,pen,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_cones(HMGL gr, HCDT z, const char *pen, const char *opt)
+{
+ if(z->GetNx()<2) { gr->SetWarn(mglWarnLow,"Bars"); return; }
+ gr->SaveState(opt);
+ mglData x(z->GetNx()+1);
+ x.Fill(gr->Min.x,gr->Max.x);
+ mgl_cones_xz(gr,&x,z,pen,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_cones_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *pen, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,pen,l); s[l]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_cones_xyz(_GR_,_DA_(x),_DA_(y),_DA_(z),s,o); delete []o; delete []s; }
+//-----------------------------------------------------------------------------
+void mgl_cones_xz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, const char *pen, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,pen,l); s[l]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_cones_xz(_GR_,_DA_(x),_DA_(y),s,o); delete []o; delete []s; }
+//-----------------------------------------------------------------------------
+void mgl_cones_(uintptr_t *gr, uintptr_t *y, const char *pen, const char *opt,int l,int lo)
+{ char *s=new char[l+1]; memcpy(s,pen,l); s[l]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_cones(_GR_,_DA_(y),s,o); delete []o; delete []s; }
//-----------------------------------------------------------------------------
//
// Ellipse & Rhomb
@@ -248,7 +331,8 @@ void mgl_ellipse(HMGL gr, float x1, float y1, float z1, float x2, float y2, floa
gr->SetPenPal(stl,&pal);
float c=gr->NextColor(pal);
float k=(gr->GetNumPal(pal)>1)?gr->NextColor(pal):gr->AddTexture('k');
- bool wire = !(stl && strchr(stl,'#')), box = (stl && strchr(stl,'@')) || !wire;
+ bool fill = !(stl && strchr(stl,'#')), box = (stl && strchr(stl,'@')) || !fill;
+ if(!fill) k=c;
gr->Reserve(2*n+1);
mglPoint p1(x1,y1,z1), p2(x2,y2,z2), v=p2-p1, u=mglPoint(0,0,1)^v, q=u^v, p, s;
@@ -257,13 +341,14 @@ void mgl_ellipse(HMGL gr, float x1, float y1, float z1, float x2, float y2, floa
n0 = gr->AddPnt(p1,c,q,-1,3);
for(long i=0;i<n;i++)
{
+ if(gr->Stop) return;
float t = i*2*M_PI/(n-1.);
p = s+v*cos(t)+u*sin(t);
n2 = n1; n1 = gr->AddPnt(p,c,q,-1,3);
m2 = m1; m1 = gr->CopyNtoC(n1,k);
if(i>0)
{
- if(wire) gr->trig_plot(n0,n1,n2);
+ if(fill) gr->trig_plot(n0,n1,n2);
if(box) gr->line_plot(m1,m2);
}
}
@@ -276,7 +361,8 @@ void mgl_rhomb(HMGL gr, float x1, float y1, float z1, float x2, float y2, float
float c=gr->NextColor(pal);
float k=(gr->GetNumPal(pal)>1)?gr->NextColor(pal):gr->AddTexture('k');
float b=(gr->GetNumPal(pal)>2)?gr->NextColor(pal):c;
- bool wire = !(stl && strchr(stl,'#')), box = (stl && strchr(stl,'@')) || !wire;
+ bool fill = !(stl && strchr(stl,'#')), box = (stl && strchr(stl,'@')) || !fill;
+ if(!fill) k=c;
gr->Reserve(8);
mglPoint p1(x1,y1,z1), p2(x2,y2,z2), u=mglPoint(0,0,1)^(p1-p2), q=u^(p1-p2), p, s,qq;
u = (r/u.norm())*u; s = (p1+p2)/2.;
@@ -284,7 +370,7 @@ void mgl_rhomb(HMGL gr, float x1, float y1, float z1, float x2, float y2, float
p = s+u;q = qq; n2 = gr->AddPnt(p,b==c?c:k,qq,-1,3);
p = p2; q = qq; n3 = gr->AddPnt(p,b,qq,-1,3);
p = s-u;q = qq; n4 = gr->AddPnt(p,b==c?c:k,qq,-1,3);
- if(wire) gr->quad_plot(n1,n2,n4,n3);
+ if(fill) gr->quad_plot(n1,n2,n4,n3);
n1 = gr->CopyNtoC(n1,k); n2 = gr->CopyNtoC(n2,k);
n3 = gr->CopyNtoC(n3,k); n4 = gr->CopyNtoC(n4,k);
if(box)
@@ -326,6 +412,7 @@ void mgl_drop(HMGL gr, mglPoint p, mglPoint q, float r, float c, float sh, float
float u,v,x,y,z,rr,dr, co,si;
for(i=0;i<n;i++) for(j=0;j<n;j++)
{
+ if(gr->Stop) { delete []nn; return; }
u = i*M_PI/(n-1.); v = 2*M_PI*j/(n-1.)-1;
si = sin(u); co = cos(u);
rr = r*a*si*(1.+sh*co)/(1+sh);
@@ -385,6 +472,7 @@ void mgl_dew_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, cons
if(ax->GetNz()>1) zVal = gr->Min.z+(gr->Max.z-gr->Min.z)*float(k)/(ax->GetNz()-1);
for(i=0;i<n;i+=tx) for(j=0;j<m;j+=ty)
{
+ if(gr->Stop) return;
float xx=GetX(x,i,j,k).x, yy=GetY(y,i,j,k).x;
dx = i<n-1 ? (GetX(x,i+1,j,k).x-xx) : (xx-GetX(x,i-1,j,k).x);
dy = j<m-1 ? (GetY(y,i,j+1,k).x-yy) : (yy-GetY(y,i,j-1,k).x);
@@ -425,9 +513,9 @@ void mgl_dew_2d_(uintptr_t *gr, uintptr_t *ax, uintptr_t *ay, const char *sch, c
//
//-----------------------------------------------------------------------------
void mgl_puts(HMGL gr, float x, float y, float z,const char *text, const char *font, float size)
-{ mgl_puts_dir(gr, x, y, z, NAN, 0, 0, text, font, size); }
+{ mgl_puts_dir(gr, x, y, z, NAN, NAN, 0, text, font, size); }
void mgl_putsw(HMGL gr, float x, float y, float z,const wchar_t *text, const char *font, float size)
-{ mgl_putsw_dir(gr, x, y, z, NAN, 0, 0, text, font, size); }
+{ mgl_putsw_dir(gr, x, y, z, NAN, NAN, 0, text, font, size); }
//-----------------------------------------------------------------------------
void mgl_puts_dir(HMGL gr, float x, float y, float z, float dx, float dy, float dz, const char *text, const char *font, float size)
{
@@ -440,15 +528,26 @@ void mgl_puts_dir(HMGL gr, float x, float y, float z, float dx, float dy, float
//-----------------------------------------------------------------------------
void mgl_putsw_dir(HMGL gr, float x, float y, float z, float dx, float dy, float dz, const wchar_t *text, const char *font, float size)
{
- mglPoint p(x,y,z), d(dx,dy,dz);
- long k = gr->AddPnt(p,-1,d,-1,3);
+ bool a=font && strchr(font,'a'), A=font && strchr(font,'A');
+ mglCanvas *g = dynamic_cast<mglCanvas *>(gr);
+ if(g && (a||A))
+ {
+ g->Push(); g->Identity(a);
+ gr->set(MGL_DISABLE_SCALE);
+ register float s=a?1:g->GetPlotFactor();
+ x = (2*x-1)*s; y = (2*y-1)*s;
+ dx= (2*dx-1)*s; dy= (2*dy-1)*s;
+ }
+ mglPoint p(x,y,z), d(dx-x,dy-y,dz-z);
+ long k = gr->AddPnt(p,-1,d,-1,7);
+ if(g && (a||A)) { g->Pop(); gr->clr(MGL_DISABLE_SCALE); }
gr->text_plot(k,text,font,size);
}
//-----------------------------------------------------------------------------
void mgl_puts_(uintptr_t *gr, float *x, float *y, float *z,const char *text, const char *font, float *size, int l, int n)
{ wchar_t *s=new wchar_t[l+1]; mbstowcs(s,text,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,font,n); f[n]=0;
- mgl_putsw_dir(_GR_, *x, *y, *z, NAN, 0, 0, s, f, *size);
+ mgl_putsw_dir(_GR_, *x, *y, *z, NAN, NAN, 0, s, f, *size);
delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_puts_dir_(uintptr_t *gr, float *x, float *y, float *z, float *dx, float *dy, float *dz, const char *text, const char *font, float *size, int l, int n)
@@ -465,11 +564,13 @@ void mgl_textmarkw_xyzr(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT r, const wchar_t *
{
long j,m,mx,my,mz,mr,n=y->GetNx();
if(x->GetNx()!=n || z->GetNx()!=n || r->GetNx()!=n)
- { gr->SetWarn(mglWarnDim,"Mark"); return; }
- if(n<2) { gr->SetWarn(mglWarnLow,"Mark"); return; }
+ { gr->SetWarn(mglWarnDim,"TextMark"); return; }
+ if(n<2) { gr->SetWarn(mglWarnLow,"TextMark"); return; }
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("TextMark",cgid++);
- m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy(); m = z->GetNy() > m ? z->GetNy() : m;
+ m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy();
+ m = z->GetNy() > m ? z->GetNy() : m;
+ m = r->GetNy() > m ? r->GetNy() : m;
gr->Reserve(n*m);
mglPoint p,q(NAN);
@@ -480,6 +581,7 @@ void mgl_textmarkw_xyzr(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT r, const wchar_t *
register long i,k;
for(i=0;i<n;i++)
{
+ if(gr->Stop) return;
p = mglPoint(x->v(i,mx), y->v(i,my), z->v(i,mz));
k = gr->AddPnt(p,-1,q);
gr->text_plot(k, text, fnt, -0.5*fabs(r->v(i,mr)));
@@ -538,20 +640,20 @@ void mgl_textmark_xyzr_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z,
delete []o; delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_textmark_xyr_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *r, const char *text, const char *fnt, const char *opt, int l,int n,int lo)
-{ wchar_t *s=new wchar_t[l+1]; memcpy(s,text,l); s[l]=0;
+{ wchar_t *s=new wchar_t[l+1]; mbstowcs(s,text,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,fnt,n); f[n]=0;
char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
mgl_textmarkw_xyr(_GR_, _DA_(x),_DA_(y),_DA_(r),s,f, o);
delete []o; delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_textmark_yr_(uintptr_t *gr, uintptr_t *y, uintptr_t *r, const char *text, const char *fnt, const char *opt, int l,int n,int lo)
-{ wchar_t *s=new wchar_t[l+1]; memcpy(s,text,l); s[l]=0;
+{ wchar_t *s=new wchar_t[l+1]; mbstowcs(s,text,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,fnt,n); f[n]=0;
char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
mgl_textmarkw_yr(_GR_, _DA_(y),_DA_(r),s,f, o); delete []o; delete []s; delete []f; }
//-----------------------------------------------------------------------------
void mgl_textmark_(uintptr_t *gr, uintptr_t *y, const char *text, const char *fnt, const char *opt, int l,int n,int lo)
-{ wchar_t *s=new wchar_t[l+1]; memcpy(s,text,l); s[l]=0;
+{ wchar_t *s=new wchar_t[l+1]; mbstowcs(s,text,l); s[l]=0;
char *f=new char[n+1]; memcpy(f,fnt,n); f[n]=0;
char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
mgl_textmarkw(_GR_, _DA_(y),s,f, o); delete []o; delete []s; delete []f; }
@@ -578,3 +680,97 @@ void mgl_puts_fit_(uintptr_t* gr, mreal *x, mreal *y, mreal *z, const char *pref
delete []s; delete []d;
}
//-----------------------------------------------------------------------------
+//
+// TextMark series
+//
+//-----------------------------------------------------------------------------
+void mgl_labelw_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const wchar_t *text, const char *fnt, const char *opt)
+{
+ long j,m,mx,my,mz,mr,n=y->GetNx();
+ if(x->GetNx()!=n || z->GetNx()!=n)
+ { gr->SetWarn(mglWarnDim,"Label"); return; }
+ if(n<2) { gr->SetWarn(mglWarnLow,"Label"); return; }
+ float size=gr->SaveState(opt); if(isnan(size)) size=-0.7;
+ static int cgid=1; gr->StartGroup("Label",cgid++);
+ m = x->GetNy() > y->GetNy() ? x->GetNy() : y->GetNy(); m = z->GetNy() > m ? z->GetNy() : m;
+
+ register long i,k,kk,l,nn;
+ for(i=k=0;text[i];i++) if(text[i]=='%')
+ {if(text[i+1]=='%') k--; else k++; }
+ nn = wcslen(text)+10*k+1;
+ wchar_t *buf = new wchar_t[nn];
+ mglPoint p,q(NAN);
+ for(j=0;j<m;j++)
+ {
+ mx = j<x->GetNy() ? j:0; my = j<y->GetNy() ? j:0; mz = j<z->GetNy() ? j:0;
+ for(i=0;i<n;i++)
+ {
+ if(gr->Stop) { delete []buf; return; }
+ float xx=x->v(i,mx), yy=y->v(i,my), zz=z->v(i,mz);
+ p = mglPoint(xx,yy,zz);
+ kk = gr->AddPnt(p,-1,q);
+ memset(buf,0,nn*sizeof(wchar_t));
+ for(k=l=0;text[k];k++)
+ {
+ if(text[k]!='%') { buf[l]=text[k]; l++; continue; }
+ else if(text[k+1]=='%') { buf[l]='%'; l++; continue; }
+ else if(text[k+1]=='n') mglprintf(buf+l,nn-l,L"%ld",i);
+ else if(text[k+1]=='x') mglprintf(buf+l,nn-l,L"%.2g",xx);
+ else if(text[k+1]=='y') mglprintf(buf+l,nn-l,L"%.2g",yy);
+ else if(text[k+1]=='z') mglprintf(buf+l,nn-l,L"%.2g",zz);
+ l=wcslen(buf); k++;
+ }
+ gr->text_plot(kk, buf, fnt, size, 0.03);
+ }
+ }
+ delete []buf; gr->EndGroup();
+}
+//-----------------------------------------------------------------------------
+void mgl_labelw_xy(HMGL gr, HCDT x, HCDT y, const wchar_t *text, const char *fnt, const char *opt)
+{
+ gr->SaveState(opt);
+ mglData z(y->GetNx()); z.Fill(gr->Min.z,gr->Min.z);
+ mgl_labelw_xyz(gr,x,y,&z,text,fnt,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_labelw_y(HMGL gr, HCDT y, const wchar_t *text, const char *fnt, const char *opt)
+{
+ if(y->GetNx()<2) { gr->SetWarn(mglWarnLow,"TextMark"); return; }
+ gr->SaveState(opt);
+ mglData x(y->GetNx()); x.Fill(gr->Min.x,gr->Max.x);
+ mglData z(y->GetNx()); z.Fill(gr->Min.z,gr->Min.z);
+ mgl_labelw_xyz(gr,&x,y,&z,text,fnt,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_label_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, const char *str, const char *fnt, const char *opt)
+{ long s = strlen(str)+1; wchar_t *wcs = new wchar_t[s]; mbstowcs(wcs,str,s);
+ mgl_labelw_xyz(gr, x, y, z, wcs, fnt, opt); delete []wcs; }
+//-----------------------------------------------------------------------------
+void mgl_label_xy(HMGL gr, HCDT x, HCDT y, const char *str, const char *fnt, const char *opt)
+{ long s = strlen(str)+1; wchar_t *wcs = new wchar_t[s]; mbstowcs(wcs,str,s);
+ mgl_labelw_xy(gr, x, y, wcs, fnt, opt); delete []wcs; }
+//-----------------------------------------------------------------------------
+void mgl_label_y(HMGL gr, HCDT y, const char *str, const char *fnt, const char *opt)
+{ long s = strlen(str)+1; wchar_t *wcs = new wchar_t[s]; mbstowcs(wcs,str,s);
+ mgl_labelw_y(gr, y, wcs, fnt, opt); delete []wcs; }
+//-----------------------------------------------------------------------------
+void mgl_label_xyz_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, uintptr_t *z, const char *text, const char *fnt, const char *opt, int l,int n,int lo)
+{ wchar_t *s=new wchar_t[l+1]; mbstowcs(s,text,l); s[l]=0;
+ char *f=new char[n+1]; memcpy(f,fnt,n); f[n]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_labelw_xyz(_GR_, _DA_(x),_DA_(y),_DA_(z),s,f, o);
+ delete []o; delete []s; delete []f; }
+//-----------------------------------------------------------------------------
+void mgl_label_xy_(uintptr_t *gr, uintptr_t *x, uintptr_t *y, const char *text, const char *fnt, const char *opt, int l,int n,int lo)
+{ wchar_t *s=new wchar_t[l+1]; mbstowcs(s,text,l); s[l]=0;
+ char *f=new char[n+1]; memcpy(f,fnt,n); f[n]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_labelw_xy(_GR_, _DA_(x),_DA_(y),s,f, o);
+ delete []o; delete []s; delete []f; }
+//-----------------------------------------------------------------------------
+void mgl_label_y_(uintptr_t *gr, uintptr_t *y, const char *text, const char *fnt, const char *opt, int l,int n,int lo)
+{ wchar_t *s=new wchar_t[l+1]; mbstowcs(s,text,l); s[l]=0;
+ char *f=new char[n+1]; memcpy(f,fnt,n); f[n]=0;
+ char *o=new char[lo+1]; memcpy(o,opt,lo); o[lo]=0;
+ mgl_labelw_y(_GR_, _DA_(y),s,f, o); delete []o; delete []s; delete []f; }
+//-----------------------------------------------------------------------------
diff --git a/src/surf.cpp b/src/surf.cpp
index 01abaf5..051907e 100644
--- a/src/surf.cpp
+++ b/src/surf.cpp
@@ -24,11 +24,11 @@
//-----------------------------------------------------------------------------
void mgl_mesh_plot(mglBase *gr, long *pos, long n, long m, int how)
{
- int d = gr->MeshNum>0 ? gr->MeshNum+1 : 1;
+ int d = gr->MeshNum>0 ? gr->MeshNum+1 : n*m, dx = n>d?n/d:1, dy = m>d?m/d:1;
register long i,j;
- if(how&1) for(j=0;j<m;j++) for(i=0;i<n-1;i+=d)
+ if(how&1) for(j=0;j<m;j+=dy) for(i=0;i<n-1;i++)
gr->line_plot(pos[n*j+i],pos[n*j+i+1]);
- if(how&2) for(j=0;j<m-1;j+=d) for(i=0;i<n;i++)
+ if(how&2) for(j=0;j<m-1;j++) for(i=0;i<n;i+=dx)
gr->line_plot(pos[n*j+i],pos[n*j+i+n]);
}
//-----------------------------------------------------------------------------
@@ -53,7 +53,10 @@ void mgl_fsurf(HMGL gr, const char *eqZ, const char *sch, const char *opt)
register int i,j;
float dx = (gr->Max.x - gr->Min.x)/(n-1.), dy = (gr->Max.y - gr->Min.y)/(n-1.);
for(j=0;j<n;j++) for(i=0;i<n;i++)
+ {
+ if(gr->Stop) { delete eq; return; }
z.a[i+n*j] = eq->Calc(gr->Min.x+i*dx, gr->Min.y+j*dy);
+ }
mgl_surf(gr, &z, sch,0);
delete eq;
}
@@ -73,6 +76,7 @@ void mgl_fsurf_xyz(HMGL gr, const char *eqX, const char *eqY, const char *eqZ, c
register float u,v;
for(j=0;j<n;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete ex; delete ey; delete ez; return; }
v = i/(n-1.); u = j/(n-1.);
x.a[i+n*j] = ex->Calc(0,v,0,u);
y.a[i+n*j] = ey->Calc(0,v,0,u);
@@ -123,6 +127,7 @@ void mgl_mesh_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
{
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []pos; return; }
p = mglPoint(GetX(x,i,j,k).x, GetY(y,i,j,k).x, z->v(i,j,k));
c = gr->GetC(ss,p.z); pos[i+n*j] = gr->AddPnt(p,c);
}
@@ -175,6 +180,7 @@ void mgl_fall_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
{
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []pos; return; }
p = mglPoint(GetX(x,i,j,k).x, GetY(y,i,j,k).x, z->v(i,j,k));
c = gr->GetC(ss,p.z); pos[i+n*j] = gr->AddPnt(p,c);
}
@@ -227,6 +233,7 @@ void mgl_grid_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
if(z->GetNz()>1) zVal = gr->Min.z+(gr->Max.z-gr->Min.z)*float(k)/(z->GetNz()-1);
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []pos; return; }
p = mglPoint(GetX(x,i,j,k).x, GetY(y,i,j,k).x, zVal);
pos[i+n*j] = gr->AddPnt(p,gr->CDef);
}
@@ -279,6 +286,7 @@ void mgl_surf_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
{
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []pos; return; }
xx = GetX(x,i,j,k); yy = GetY(y,i,j,k);
p = mglPoint(xx.x, yy.x, z->v(i,j,k));
q = mglPoint(xx.y, yy.y, z->dvx(i,j,k));
@@ -290,8 +298,7 @@ void mgl_surf_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
if(wire)
{
gr->SetPenPal("k-");
- for(i=0;i<n*m;i++)
- pos[i] = gr->CopyNtoC(pos[i],gr->CDef);
+ for(i=0;i<n*m;i++) pos[i] = gr->CopyNtoC(pos[i],gr->CDef);
mgl_mesh_plot(gr,pos,n,m,3);
}
}
@@ -345,6 +352,7 @@ void mgl_belt_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
{
for(j=0;j<m;j++)
{
+ if(gr->Stop) { delete []pos; return; }
xx = GetX(x,i,j,k); yy = GetY(y,i,j,k);
p1 = mglPoint(xx.x, yy.x, z->v(i,j,k));
s = mglPoint(xx.z, yy.z, z->dvy(i,j,k));
@@ -360,6 +368,7 @@ void mgl_belt_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
{
for(i=0;i<n;i++) // ñîçäà åì ìà ññèâ òî÷åê
{
+ if(gr->Stop) { delete []pos; return; }
xx = GetX(x,i,j,k); yy = GetY(y,i,j,k);
p1 = mglPoint(xx.x, yy.x, z->v(i,j,k));
q = mglPoint(xx.y, yy.y, z->dvx(i,j,k));
@@ -422,6 +431,7 @@ void mgl_dens_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
zVal = gr->Min.z+(gr->Max.z-gr->Min.z)*float(k)/(z->GetNz()-1);
for(j=0;j<m;j++) for(i=0;i<n;i++) // ñîçäà åì ìà ññèâ òî÷åê
{
+ if(gr->Stop) { delete []pos; return; }
p = mglPoint(GetX(x,i,j,k).x, GetY(y,i,j,k).x, zVal);
zz = z->v(i,j,k); c = gr->GetC(ss,zz);
if(isnan(zz)) p.x = NAN;
@@ -504,6 +514,7 @@ void mgl_surfc_xy(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT c, const char *sch, cons
{
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []pos; return; }
xx = GetX(x,i,j,k); yy = GetY(y,i,j,k);
p = mglPoint(xx.x, yy.x, z->v(i,j,k));
q = mglPoint(xx.y, yy.y, z->dvx(i,j,k));
@@ -515,8 +526,7 @@ void mgl_surfc_xy(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT c, const char *sch, cons
if(sch && strchr(sch,'#'))
{
gr->Reserve(n*m); gr->SetPenPal("k-");
- for(i=0;i<n*m;i++)
- pos[i] = gr->CopyNtoC(pos[i],gr->CDef);
+ for(i=0;i<n*m;i++) pos[i] = gr->CopyNtoC(pos[i],gr->CDef);
mgl_mesh_plot(gr,pos,n,m,3);
}
}
@@ -569,6 +579,7 @@ void mgl_surfa_xy(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT c, const char *sch, cons
{
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []pos; return; }
xx = GetX(x,i,j,k); yy = GetY(y,i,j,k);
p = mglPoint(xx.x, yy.x, z->v(i,j,k));
q = mglPoint(xx.y, yy.y, z->dvx(i,j,k));
@@ -579,8 +590,7 @@ void mgl_surfa_xy(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT c, const char *sch, cons
if(sch && strchr(sch,'#'))
{
gr->Reserve(n*m); gr->SetPenPal("k-");
- for(i=0;i<n*m;i++)
- pos[i] = gr->CopyNtoC(pos[i],gr->CDef);
+ for(i=0;i<n*m;i++) pos[i] = gr->CopyNtoC(pos[i],gr->CDef);
mgl_mesh_plot(gr,pos,n,m,3);
}
}
@@ -623,7 +633,7 @@ void mgl_boxs_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Boxs",cgid++);
- long ss = gr->AddTexture(sch);
+ long ss = gr->AddTexture(sch);
bool wire = sch && strchr(sch,'#');
bool full = sch && strchr(sch,'@');
gr->Reserve(8*n*m*z->GetNz());
@@ -635,6 +645,7 @@ void mgl_boxs_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
{
for(i=0;i<n;i++) for(j=0;j<m;j++)
{
+ if(gr->Stop) return;
zz = z->v(i,j,k); c = gr->GetC(ss,zz);
xx = GetX(x,i,j,k); yy = GetY(y,i,j,k);
x1 = i<lx-1 ? GetX(x,i+1,j,k).x:NAN;
@@ -646,46 +657,46 @@ void mgl_boxs_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
p1 = mglPoint(xx.x,yy.x,zz); k1 = gr->AddPnt(p1,c,t);
p2 = mglPoint(x1,yy.x,zz); k2 = gr->AddPnt(p2,c,t);
p3 = mglPoint(xx.x,y1,zz); k3 = gr->AddPnt(p3,c,t);
- p4 = mglPoint(x1,y1,zz); k4 = gr->AddPnt(p4,c,t);
- if(wire)
- {
- gr->line_plot(k1,k2); gr->line_plot(k1,k3);
- gr->line_plot(k4,k2); gr->line_plot(k4,k3);
- }
- else gr->quad_plot(k1,k2,k3,k4);
-
- if(full)
- {
+ p4 = mglPoint(x1,y1,zz); k4 = gr->AddPnt(p4,c,t);
+ if(wire)
+ {
+ gr->line_plot(k1,k2); gr->line_plot(k1,k3);
+ gr->line_plot(k4,k2); gr->line_plot(k4,k3);
+ }
+ else gr->quad_plot(k1,k2,k3,k4);
+
+ if(full)
+ {
p1 = mglPoint(xx.x,yy.x,z0); k5 = gr->AddPnt(p1,c,t);
p2 = mglPoint(x1,yy.x,z0); k6 = gr->AddPnt(p2,c,t);
p3 = mglPoint(xx.x,y1,z0); k7 = gr->AddPnt(p3,c,t);
- p4 = mglPoint(x1,y1,z0); k8 = gr->AddPnt(p4,c,t);
- if(wire)
- {
- gr->line_plot(k5,k6); gr->line_plot(k5,k7);
- gr->line_plot(k8,k6); gr->line_plot(k8,k7);
- gr->line_plot(k1,k5); gr->line_plot(k3,k7);
- gr->line_plot(k2,k6); gr->line_plot(k4,k8);
- }
- else
- {
- gr->quad_plot(k1,k2,k5,k6); gr->quad_plot(k1,k3,k5,k7);
- gr->quad_plot(k4,k2,k8,k6); gr->quad_plot(k4,k3,k8,k7);
- gr->quad_plot(k5,k6,k7,k8);
- }
- }
- else
- {
+ p4 = mglPoint(x1,y1,z0); k8 = gr->AddPnt(p4,c,t);
+ if(wire)
+ {
+ gr->line_plot(k5,k6); gr->line_plot(k5,k7);
+ gr->line_plot(k8,k6); gr->line_plot(k8,k7);
+ gr->line_plot(k1,k5); gr->line_plot(k3,k7);
+ gr->line_plot(k2,k6); gr->line_plot(k4,k8);
+ }
+ else
+ {
+ gr->quad_plot(k1,k2,k5,k6); gr->quad_plot(k1,k3,k5,k7);
+ gr->quad_plot(k4,k2,k8,k6); gr->quad_plot(k4,k3,k8,k7);
+ gr->quad_plot(k5,k6,k7,k8);
+ }
+ }
+ else
+ {
p3 = mglPoint(x1,yy.x,z1); k5 = gr->AddPnt(p3,c,wire?t:q);
p4 = mglPoint(x1,y1,z1); k6 = gr->AddPnt(p4,c,wire?t:q);
- if(wire)
- { gr->line_plot(k2,k5); gr->line_plot(k6,k5); gr->line_plot(k6,k4); }
+ if(wire)
+ { gr->line_plot(k2,k5); gr->line_plot(k6,k5); gr->line_plot(k6,k4); }
else gr->quad_plot(k2,k4,k5,k6);
p3 = mglPoint(xx.x,y1,z2); k7 = gr->AddPnt(p3,c,wire?t:s);
p4 = mglPoint(x1,y1,z2); k8 = gr->AddPnt(p4,c,wire?t:s);
- if(wire)
- { gr->line_plot(k3,k7); gr->line_plot(k4,k8); gr->line_plot(k7,k8); }
- else gr->quad_plot(k3,k4,k7,k8);
+ if(wire)
+ { gr->line_plot(k3,k7); gr->line_plot(k4,k8); gr->line_plot(k7,k8); }
+ else gr->quad_plot(k3,k4,k7,k8);
}
}
}
@@ -719,9 +730,9 @@ void mgl_boxs_(uintptr_t *gr, uintptr_t *a, const char *sch, const char *opt,int
void mgl_tile_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *opt)
{
register long i,j,k,n=z->GetNx(),m=z->GetNy();
- if(x->GetNx()<z->GetNx()) { gr->SetWarn(mglWarnDim,"Tile"); return; }
- if(z->GetNx()<2 || z->GetNy()<2){ gr->SetWarn(mglWarnLow,"Tile"); return; }
- long ly = x->GetNy()>=z->GetNy() ? y->GetNy() : y->GetNx(), lx = x->GetNx();
+ if(x->GetNx()<n) { gr->SetWarn(mglWarnDim,"Tile"); return; }
+ if(n<2 || m<2){ gr->SetWarn(mglWarnLow,"Tile"); return; }
+ long ly = x->GetNy()>=m ? y->GetNy() : y->GetNx(), lx = x->GetNx();
if(y->GetNx()<z->GetNy() && (x->GetNy()<z->GetNy() || y->GetNx()<z->GetNx() || y->GetNy()<z->GetNy()))
{ gr->SetWarn(mglWarnDim); return; }
gr->SaveState(opt);
@@ -735,8 +746,9 @@ void mgl_tile_xy(HMGL gr, HCDT x, HCDT y, HCDT z, const char *sch, const char *o
long k1,k2,k3,k4;
for(k=0;k<z->GetNz();k++)
{
- for(j=0;j<m-1;j++) for(i=0;i<n-1;i++)
+ for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) return;
zz = z->v(i,j,k); c = gr->GetC(ss,zz);
x1 = GetX(x,i,j,k).x; y1 = GetY(y,i,j,k).x;
x2 = i<lx-1 ? GetX(x,i+1,j,k).x:NAN;
@@ -775,9 +787,9 @@ void mgl_tile_(uintptr_t *gr, uintptr_t *a, const char *sch, const char *opt,int
void mgl_tiles_xy(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT s, const char *sch, const char *opt)
{
register long i,j,k,n=z->GetNx(),m=z->GetNy();
- if(x->GetNx()!=z->GetNx() || s->GetNx()*s->GetNy()*s->GetNz()!=z->GetNx()*z->GetNy()*z->GetNz())
+ if(x->GetNx()<n || s->GetNx()*s->GetNy()*s->GetNz()!=n*m*z->GetNz())
{ gr->SetWarn(mglWarnDim,"Tile"); return; }
- if(z->GetNx()<2 || z->GetNy()<2){ gr->SetWarn(mglWarnLow,"Tile"); return; }
+ if(n<2 || m<2){ gr->SetWarn(mglWarnLow,"Tile"); return; }
long ly = x->GetNy()>=z->GetNy() ? y->GetNy() : y->GetNx(), lx = x->GetNx();
if(y->GetNx()<z->GetNy() && (x->GetNy()<z->GetNy() || y->GetNx()<z->GetNx() || y->GetNy()<z->GetNy()))
{ gr->SetWarn(mglWarnDim); return; }
@@ -792,10 +804,10 @@ void mgl_tiles_xy(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT s, const char *sch, cons
long k1,k2,k3,k4;
for(k=0;k<z->GetNz();k++)
{
- for(j=0;j<m-1;j++) for(i=0;i<n-1;i++)
+ for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) return;
zz = z->v(i,j,k); c = gr->GetC(cc,zz);
- // TODO check it!!!
ss = (1-gr->GetA(s->v(i,j,k)))/2; sm = 1-ss;
x1 = GetX(x,i,j,k).x; y1 = GetY(y,i,j,k).x;
@@ -857,7 +869,7 @@ void mgl_map_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, cons
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("Map",cgid++);
- long ss = gr->AddTexture((sch && *sch)?sch:"rgb",2);
+ long ss = gr->AddTexture(mgl_have_color(sch)?sch:"rgb",2);
long s = both ? n:1, s1, s2;
float xdy,xdx,ydx,ydy,xx,yy;
@@ -867,6 +879,7 @@ void mgl_map_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, cons
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []pos; return; }
s1 = i>0 ? 1:0; s2 = i<n-1 ? 1:0;
xdx = (ax->v(i+s2,j)-ax->v(i-s1,j))/(GetX(x,i+s2,j).x-GetX(x,i-s1,j).x);
ydx = (ay->v(i+s2,j)-ay->v(i-s1,j))/(GetX(x,i+s2,j).x-GetX(x,i-s1,j).x);
diff --git a/src/vect.cpp b/src/vect.cpp
index 44fab1b..8260c91 100644
--- a/src/vect.cpp
+++ b/src/vect.cpp
@@ -32,8 +32,7 @@ void mgl_traj_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT ax, HCDT ay, HCDT az, co
if(n<2) { gr->SetWarn(mglWarnLow,"Traj"); return; }
if(n!=x->GetNx() || z->GetNx()!=n || y->GetNx()!=n || ay->GetNx()!=n || az->GetNx()!=n)
{ gr->SetWarn(mglWarnDim,"Traj"); return; }
- float len=gr->SaveState(opt);
- if(isnan(len)) len = 0; //isnan(gr->PrevValue()) ? 0:gr->PrevValue();
+ float len=gr->SaveState(opt); if(isnan(len)) len = 0;
static int cgid=1; gr->StartGroup("Traj",cgid++);
register long i, j;
@@ -56,6 +55,7 @@ void mgl_traj_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT ax, HCDT ay, HCDT az, co
gr->NextColor(pal);
for(i=0;i<n;i++)
{
+ if(gr->Stop) return;
nx = j<x->GetNy() ? j:0; ny = j<y->GetNy() ? j:0; nz = j<z->GetNy() ? j:0;
mx = j<ax->GetNy() ? j:0; my = j<ay->GetNy() ? j:0; mz = j<az->GetNy() ? j:0;
da = sqrt(ax->v(i,mx)*ax->v(i,mx)+ay->v(i,my)*ay->v(i,my)+az->v(i,mz)*az->v(i,mz));
@@ -110,9 +110,13 @@ void mgl_vect_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, con
if(n<2 || m<2) { gr->SetWarn(mglWarnLow,"Vect"); return; }
bool both = x->GetNx()==n && y->GetNx()==n && x->GetNy()==m && y->GetNy()==m;
if(!(both || (x->GetNx()==n && y->GetNx()==m))) { gr->SetWarn(mglWarnDim,"Vect"); return; }
- float r = gr->SaveState(opt);
- long flag = isnan(r) ? 0:long(r+0.5);
+
static int cgid=1; gr->StartGroup("Vect",cgid++);
+ bool dot = sch && strchr(sch,'.');
+ bool fix = sch && strchr(sch,'f');
+ bool end = sch && strchr(sch,'>');
+ bool beg = sch && strchr(sch,'<');
+ bool grd = sch && strchr(sch,'=');
long ss = gr->AddTexture(sch);
gr->Reserve(4*n*m);
@@ -139,23 +143,21 @@ void mgl_vect_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, con
if(ax->GetNz()>1) zVal = gr->Min.z+(gr->Max.z-gr->Min.z)*float(k)/(ax->GetNz()-1);
for(i=0;i<n;i+=tx) for(j=0;j<m;j+=ty)
{
+ if(gr->Stop) return;
xx = GetX(x,i,j,k).x; yy = GetY(y,i,j,k).x;
dx = i<n-1 ? (GetX(x,i+1,j,k).x-xx) : (xx-GetX(x,i-1,j,k).x);
dy = j<m-1 ? (GetY(y,i,j+1,k).x-yy) : (yy-GetY(y,i,j-1,k).x);
dx *= tx; dy *= ty; dd = hypot(ax->v(i,j,k),ay->v(i,j,k));
- dx *= (flag&MGL_VEC_LEN) ? (dd>dm ? ax->v(i,j,k)/dd : 0) : ax->v(i,j,k)*xm;
- dy *= (flag&MGL_VEC_LEN) ? (dd>dm ? ay->v(i,j,k)/dd : 0) : ay->v(i,j,k)*xm;
+ dx *= fix ? (dd>dm ? ax->v(i,j,k)/dd : 0) : ax->v(i,j,k)*xm;
+ dy *= fix ? (dd>dm ? ay->v(i,j,k)/dd : 0) : ay->v(i,j,k)*xm;
- if(flag & MGL_VEC_END)
- { p1 = mglPoint(xx-dx,yy-dy,zVal); p2 = mglPoint(xx,yy,zVal); }
- else if(flag & MGL_VEC_MID)
- { p1=mglPoint(xx-dx/2,yy-dy/2,zVal); p2=mglPoint(xx+dx/2,yy+dy/2,zVal); }
- else
- { p1 = mglPoint(xx,yy,zVal); p2 = mglPoint(xx+dx,yy+dy,zVal); }
- if(flag&MGL_VEC_COL) { c1 = c2 = ss; } else
- { c1=gr->GetC(ss,dd*xm*1.5-1,false); c2=gr->GetC(ss,dd*xm*1.5-0.5,false);}
+ if(end) { p1 = mglPoint(xx-dx,yy-dy,zVal); p2 = mglPoint(xx,yy,zVal); }
+ else if(beg) { p1 = mglPoint(xx,yy,zVal); p2 = mglPoint(xx+dx,yy+dy,zVal); }
+ else { p1=mglPoint(xx-dx/2,yy-dy/2,zVal); p2=mglPoint(xx+dx/2,yy+dy/2,zVal); }
+ if(grd) { c1=gr->GetC(ss,dd*xm-0.5,false); c2=gr->GetC(ss,dd*xm,false);}
+ else c1 = c2 = gr->GetC(ss,dd*xm,false);
n1=gr->AddPnt(p1,c1); n2=gr->AddPnt(p2,c2);
- if(flag & MGL_VEC_DOT) gr->line_plot(n1,n2);
+ if(dot) { gr->line_plot(n1,n2); gr->mark_plot(n1,'.'); }
else gr->vect_plot(n1,n2);
}
}
@@ -195,9 +197,12 @@ void mgl_vect_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT ax, HCDT ay, HCDT az, co
bool both = x->GetNx()*x->GetNy()*x->GetNz()==n*m*l && y->GetNx()*y->GetNy()*y->GetNz()==n*m*l && z->GetNx()*z->GetNy()*z->GetNz()==n*m*l;
if(!(both || (x->GetNx()==n && y->GetNx()==m && z->GetNx()==l)))
{ gr->SetWarn(mglWarnDim,"Vect"); return; }
- float r = gr->SaveState(opt);
- long flag = isnan(r) ? 0:long(r+0.5);
static int cgid=1; gr->StartGroup("Vect3",cgid++);
+ bool dot = sch && strchr(sch,'.');
+ bool fix = sch && strchr(sch,'f');
+ bool end = sch && strchr(sch,'>');
+ bool beg = sch && strchr(sch,'<');
+ bool grd = sch && strchr(sch,'=');
float xm=0,ym,dx,dy,dz,dd,dm=(fabs(gr->Max.c)+fabs(gr->Min.c))*1e-5;
long ss = gr->AddTexture(sch);
@@ -220,26 +225,24 @@ void mgl_vect_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT ax, HCDT ay, HCDT az, co
for(k=0;k<l;k+=tz) for(i=0;i<n;i+=tx) for(j=0;j<m;j+=ty)
{
+ if(gr->Stop) return;
xx = GetX(x,i,j,k).x; yy = GetY(y,i,j,k).x; zz = GetZ(z,i,j,k).x;
dx = i<n-1 ? (GetX(x,i+1,j,k).x-xx) : (xx-GetX(x,i-1,j,k).x);
dy = j<m-1 ? (GetY(y,i,j+1,k).x-yy) : (yy-GetY(y,i,j-1,k).x);
dz = k<l-1 ? (GetZ(z,i,j,k+1).x-zz) : (zz-GetZ(z,i,j,k-1).x);
dx *= tx; dy *= ty; dz *= tz;
dd = sqrt(ax->v(i,j,k)*ax->v(i,j,k)+ay->v(i,j,k)*ay->v(i,j,k)+az->v(i,j,k)*az->v(i,j,k));
- dx *= (flag&MGL_VEC_LEN) ? (dd>dm ? ax->v(i,j,k)/dd : 0) : ax->v(i,j,k)*xm;
- dy *= (flag&MGL_VEC_LEN) ? (dd>dm ? ay->v(i,j,k)/dd : 0) : ay->v(i,j,k)*xm;
- dz *= (flag&MGL_VEC_LEN) ? (dd>dm ? az->v(i,j,k)/dd : 0) : az->v(i,j,k)*xm;
+ dx *= fix ? (dd>dm ? ax->v(i,j,k)/dd : 0) : ax->v(i,j,k)*xm;
+ dy *= fix ? (dd>dm ? ay->v(i,j,k)/dd : 0) : ay->v(i,j,k)*xm;
+ dz *= fix ? (dd>dm ? az->v(i,j,k)/dd : 0) : az->v(i,j,k)*xm;
- if(flag & MGL_VEC_END)
- { p1 = mglPoint(xx-dx,yy-dy,zz-dz); p2 = mglPoint(xx,yy,zz); }
- else if(flag & MGL_VEC_MID)
- { p1=mglPoint(xx-dx/2,yy-dy/2,zz-dz/2); p2=mglPoint(xx+dx/2,yy+dy/2,zz+dz/2); }
- else
- { p1 = mglPoint(xx,yy,zz); p2 = mglPoint(xx+dx,yy+dy,zz+dz); }
- if(flag&MGL_VEC_COL) { c1 = c2 = ss; } else
- { c1=gr->GetC(ss,dd*xm*1.5-1,false); c2=gr->GetC(ss,dd*xm*1.5-0.5,false); }
+ if(end) { p1 = mglPoint(xx-dx,yy-dy,zz-dz); p2 = mglPoint(xx,yy,zz); }
+ else if(beg) { p1 = mglPoint(xx,yy,zz); p2 = mglPoint(xx+dx,yy+dy,zz+dz); }
+ else { p1=mglPoint(xx-dx/2,yy-dy/2,zz-dz/2); p2=mglPoint(xx+dx/2,yy+dy/2,zz+dz/2); }
+ if(grd) { c1=gr->GetC(ss,dd*xm-0.5,false); c2=gr->GetC(ss,dd*xm,false); }
+ else c1 = c2 = gr->GetC(ss,dd*xm,false);
n1=gr->AddPnt(p1,c1); n2=gr->AddPnt(p2,c2);
- if(flag & MGL_VEC_DOT) gr->line_plot(n1,n2);
+ if(dot) { gr->line_plot(n1,n2); gr->mark_plot(n1,'.'); }
else gr->vect_plot(n1,n2);
}
gr->EndGroup();
@@ -284,6 +287,7 @@ void flow(mglBase *gr, float zVal, float u, float v, const mglData &x, const mgl
register long k=0,m;
bool end = false;
do{
+ if(gr->Stop) { delete []pp; delete []cc; return; }
pp[k].x = both ? x.Spline1(u,v,0):x.Spline1(u,0,0);
pp[k].y = both ? y.Spline1(u,v,0):y.Spline1(v,0,0);
pp[k].z = zVal;
@@ -314,14 +318,14 @@ void flow(mglBase *gr, float zVal, float u, float v, const mglData &x, const mgl
long i,j,jj,a=long(1./fabs(dt));
gr->Reserve(k); j = gr->AddPnt(pp[0],cc[0]);
for(i=1;i<k;i++)
- {
- jj=j; j = gr->AddPnt(pp[i],cc[i]);
- if(vv && i%a==0)
- {
- if(dt<0) gr->vect_plot(j,jj,a/5);
- else gr->vect_plot(jj,j,a/5);
- }
- else gr->line_plot(jj,j);
+ {
+ jj=j; j = gr->AddPnt(pp[i],cc[i]);
+ if(vv && i%a==0)
+ {
+ if(dt<0) gr->vect_plot(j,jj,a/5);
+ else gr->vect_plot(jj,j,a/5);
+ }
+ else gr->line_plot(jj,j);
}
}
delete []pp; delete []cc;
@@ -336,16 +340,14 @@ void mgl_flow_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, con
bool both = x->GetNx()==n && y->GetNx()==n && x->GetNy()==m && y->GetNy()==m;
if(!(both || (x->GetNx()==n && y->GetNx()==m))) { gr->SetWarn(mglWarnDim,"Flow"); return; }
float r = gr->SaveState(opt);
- if(isnan(r)) r = gr->PrevValue();
long num = isnan(r)?5:long(r+0.5);
static int cgid=1; gr->StartGroup("Flow",cgid++);
- long ss = gr->AddTexture(sch);
+ long ss = gr->AddTexture(sch);
bool vv = sch && strchr(sch,'v');
// allocate memory
float zVal = gr->Min.z;
- bool cnt=(num>0);
- num = abs(num);
+ bool cnt=!(sch && strchr(sch,'#'));
mglData xx(x), yy(y), bx(ax), by(ay);
for(long k=0;k<ax->GetNz();k++)
@@ -353,6 +355,7 @@ void mgl_flow_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, con
if(ax->GetNz()>1) zVal = gr->Min.z+(gr->Max.z-gr->Min.z)*float(k)/(ax->GetNz()-1);
for(long i=0;i<num;i++)
{
+ if(gr->Stop) return;
u = 0; v = (i+1.)/(num+1.);
flow(gr, zVal, u, v, xx, yy, bx, by,ss,vv);
flow(gr, zVal, -u, -v, xx, yy, bx, by,ss,vv);
@@ -468,7 +471,7 @@ void mgl_flowp_2d_(uintptr_t *gr, float *x0, float *y0, float *z0, uintptr_t *ax
// Flow 3d series
//
//-----------------------------------------------------------------------------
-void flow(mglBase *gr, float u, float v, float w, const mglData &x, const mglData &y, const mglData &z, const mglData &ax, const mglData &ay, const mglData &az,long ss,bool vv)
+void flow(mglBase *gr, float u, float v, float w, const mglData &x, const mglData &y, const mglData &z, const mglData &ax, const mglData &ay, const mglData &az,long ss,bool vv, bool xo, bool zo)
{
static long n=10*(ax.nx+ax.ny);
long nn = ax.nx*ax.ny*ax.nz;
@@ -485,6 +488,7 @@ void flow(mglBase *gr, float u, float v, float w, const mglData &x, const mglDat
register long k=0,m;
bool end = false;
do{
+ if(gr->Stop) { delete []pp; delete []cc; return; }
pp[k].x = both ? x.Spline1(u,v,w):x.Spline1(u,0,0);
pp[k].y = both ? y.Spline1(u,v,w):y.Spline1(v,0,0);
pp[k].z = both ? z.Spline1(u,v,w):z.Spline1(w,0,0);
@@ -517,20 +521,36 @@ void flow(mglBase *gr, float u, float v, float w, const mglData &x, const mglDat
if(k>1)
{
long i,j,jj,a=long(1./fabs(dt));
- gr->Reserve(k); j = gr->AddPnt(pp[0],cc[0]);
+ float rr = mgl_norm(gr->Max-gr->Min)*gr->BarWidth/25, ll;
+ mglPoint q1,q2,l;
+ long n1=-1,n2=-1,n3=-1,n4=-1, m1=-1,m2=-1,m3=-1,m4=-1;
+
+ gr->Reserve(4*k); j = gr->AddPnt(pp[0],cc[0]);
+ l = pp[1] - pp[0]; l /= mgl_norm(l);
+ q1 = mglPoint(l.y,-l.x,0); ll = mgl_norm(q1);
+ if(ll) q1 /= ll; else q1 = mglPoint(0,1,0);
+ q2 = q1^l;
+ if(xo) { n1 = gr->AddPnt(pp[0],-1,q2); n2 = gr->AddPnt(pp[0]+rr*q1,-1,q2); }
+ if(zo) { n3 = gr->AddPnt(pp[0],-1,q1); n4 = gr->AddPnt(pp[0]+rr*q2,-1,q1); }
for(i=1;i<k;i++)
- {
- jj=j; j = gr->AddPnt(pp[i],cc[i]);
- if(vv && i%a==0)
- {
- if(dt<0) gr->vect_plot(j,jj,a/5);
- else gr->vect_plot(jj,j,a/5);
- }
- else gr->line_plot(jj,j);
+ {
+ jj=j; j = gr->AddPnt(pp[i],cc[i]);
+ if(vv && i%a==0)
+ {
+ if(dt<0) gr->vect_plot(j,jj,a/5);
+ else gr->vect_plot(jj,j,a/5);
+ }
+ else gr->line_plot(jj,j);
+ l = pp[i]-pp[i-1]; l /= mgl_norm(l);
+ q1 -= l*(l*q1); q1/= mgl_norm(q1); q2 = q1^l;
+ m1 = n1; m2 = n2; m3 = n3; m4 = n4;
+ if(xo)
+ { n1 = gr->AddPnt(pp[i],-1,q2); n2 = gr->AddPnt(pp[i]+rr*q1,-1,q2); gr->quad_plot(n1,n2,m1,m2); }
+ if(zo)
+ { n3 = gr->AddPnt(pp[i],-1,q1); n4 = gr->AddPnt(pp[i]+rr*q2,-1,q1); gr->quad_plot(n3,n4,m3,m4); }
}
}
- delete []pp;
- delete []cc;
+ delete []pp; delete []cc;
}
//-----------------------------------------------------------------------------
void mgl_flow_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT ax, HCDT ay, HCDT az, const char *sch, const char *opt)
@@ -545,45 +565,45 @@ void mgl_flow_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT ax, HCDT ay, HCDT az, co
if(!(both || (x->GetNx()==n && y->GetNx()==m && z->GetNx()==l)))
{ gr->SetWarn(mglWarnDim,"Flow"); return; }
float r = gr->SaveState(opt);
- if(isnan(r)) r = gr->PrevValue();
long num = isnan(r)?3:long(r+0.5);
static int cgid=1; gr->StartGroup("Flow3",cgid++);
- bool cnt=(num>0); num = abs(num); // redefine central parater
+ bool cnt=!(sch && strchr(sch,'#'));
long ss = gr->AddTexture(sch);
- bool vv = sch && strchr(sch,'v');
+ bool vv = sch && strchr(sch,'v'), xo = sch && strchr(sch,'x'), zo = sch && strchr(sch,'z');
mglData xx(x), yy(y), zz(z), bx(ax), by(ay), bz(az);
for(i=0;i<num;i++) for(j=0;j<num;j++)
{
+ if(gr->Stop) return;
u = (i+1.)/(num+1.); v = (j+1.)/(num+1.); w = 0;
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
u = (i+1.)/(num+1.); v = (j+1.)/(num+1.); w = 1;
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
u = 0; v = (j+1.)/(num+1.); w = (i+1.)/(num+1.);
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
u = 1; v = (j+1.)/(num+1.); w = (i+1.)/(num+1.);
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
u = (i+1.)/(num+1.); v = 0; w = (j+1.)/(num+1.);
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
u = (i+1.)/(num+1.); v = 1; w = (j+1.)/(num+1.);
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
if(cnt)
{
u = (i+1.)/(num+1.); v = (j+1.)/(num+1.); w = 0.5;
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
u = 0.5; v = (j+1.)/(num+1.); w = (i+1.)/(num+1.);
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
u = (i+1.)/(num+1.); v = 0.5; w = (j+1.)/(num+1.);
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
- flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
+ flow(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
}
}
gr->EndGroup();
@@ -623,7 +643,7 @@ void mgl_flowp_xyz(HMGL gr, float x0, float y0, float z0, HCDT x, HCDT y, HCDT z
gr->SaveState(opt);
static int cgid=1; gr->StartGroup("FlowP3",cgid++);
long ss = gr->AddTexture(sch);
- bool vv = sch && strchr(sch,'v');
+ bool vv = sch && strchr(sch,'v'), xo = sch && strchr(sch,'x'), zo = sch && strchr(sch,'z');
// find coordinates u, v, w
register long i,j,k;
@@ -663,7 +683,7 @@ void mgl_flowp_xyz(HMGL gr, float x0, float y0, float z0, HCDT x, HCDT y, HCDT z
}
}
mglData xx(x), yy(y), zz(z), bx(ax), by(ay), bz(az);
- flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv);
+ flow(gr, u, v, w, xx, yy, zz, bx, by, bz,ss,vv,xo,zo);
gr->EndGroup();
}
//-----------------------------------------------------------------------------
@@ -768,6 +788,7 @@ void flowr(mglBase *gr, float zVal, float u, float v, const mglData &x, const mg
register long k=0,m;
bool end = false;
do{
+ if(gr->Stop) { delete []pp; delete []cc; return; }
pp[k].x = both ? x.Spline1(u,v,0):x.Spline1(u,0,0);
pp[k].y = both ? y.Spline1(u,v,0):y.Spline1(v,0,0);
pp[k].z = zVal;
@@ -840,14 +861,14 @@ void mgl_pipe_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, flo
bool both = x->GetNx()==n && y->GetNx()==n && x->GetNy()==m && y->GetNy()==m;
if(!(both || (x->GetNx()==n && y->GetNx()==m))) { gr->SetWarn(mglWarnDim,"Pipe"); return; }
float r = gr->SaveState(opt);
- if(isnan(r)) r = gr->PrevValue();
long num = isnan(r)?5:long(r+0.5);
static int cgid=1; gr->StartGroup("Pipe",cgid++);
long ss = gr->AddTexture(sch);
// allocate memory
float zVal = gr->Min.z;
- bool cnt=(num>0); num = abs(num);
+ bool cnt=!(sch && strchr(sch,'#'));
+ if(sch && strchr(sch,'i')) r0 = -fabs(r0);
mglData xx(x), yy(y), bx(ax), by(ay);
for(long k=0;k<ax->GetNz();k++)
@@ -855,6 +876,7 @@ void mgl_pipe_xy(HMGL gr, HCDT x, HCDT y, HCDT ax, HCDT ay, const char *sch, flo
if(ax->GetNz()>1) zVal = gr->Min.z+(gr->Max.z-gr->Min.z)*float(k)/(ax->GetNz()-1);
for(long i=0;i<num;i++)
{
+ if(gr->Stop) return;
u = 0; v = (i+1.)/(num+1.);
flowr(gr, zVal, u, v, xx, yy, bx, by,r0,ss);
flowr(gr, zVal, -u, -v, xx, yy, bx, by,r0,ss);
@@ -922,6 +944,7 @@ void flowr(mglBase *gr, float u, float v, float w, const mglData &x, const mglDa
register long k=0,m;
bool end = false;
do{
+ if(gr->Stop) { delete []pp; delete []cc; return; }
pp[k].x = both ? x.Spline1(u,v,w):x.Spline1(u,0,0);
pp[k].y = both ? y.Spline1(u,v,w):y.Spline1(v,0,0);
pp[k].z = both ? z.Spline1(u,v,w):z.Spline1(w,0,0);
@@ -1001,16 +1024,17 @@ void mgl_pipe_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT ax, HCDT ay, HCDT az, co
if(!(both || (x->GetNx()==n && y->GetNx()==m && z->GetNx()==l)))
{ gr->SetWarn(mglWarnDim,"Pipe"); return; }
float r = gr->SaveState(opt);
- if(isnan(r)) r = gr->PrevValue();
long num = isnan(r)?3:long(r+0.5);
static int cgid=1; gr->StartGroup("Pipe3",cgid++);
+ if(sch && strchr(sch,'i')) r0 = -fabs(r0);
long ss = gr->AddTexture(sch);
- bool cnt=(num>0); num = abs(num);
+ bool cnt=!(sch && strchr(sch,'#'));
mglData xx(x), yy(y), zz(z), bx(ax), by(ay), bz(az);
for(i=0;i<num;i++) for(j=0;j<num;j++)
{
+ if(gr->Stop) return;
u = (i+1.)/(num+1.); v = (j+1.)/(num+1.); w = 0;
flowr(gr, u, v, w, xx, yy, zz, bx, by, bz,r0,ss);
flowr(gr,-u,-v,-w, xx, yy, zz, bx, by, bz,r0,ss);
diff --git a/src/volume.cpp b/src/volume.cpp
index 9f2109a..0bce8f0 100644
--- a/src/volume.cpp
+++ b/src/volume.cpp
@@ -45,7 +45,7 @@ void mgl_cloud_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, con
if(tx<1) tx=1; if(ty<1) ty=1; if(tz<1) tz=1;
float alpha = gr->AlphaDef;
- bool inv = sch && strchr(sch,'-');
+ bool inv = sch && strchr(sch,'!');
bool dot = sch && strchr(sch,'.');
alpha /= pow(n/tx*m/ty*l/tz,1./3)/20;
float aa,bb;
@@ -53,25 +53,26 @@ void mgl_cloud_xyz(HMGL gr, HCDT x, HCDT y, HCDT z, HCDT a, const char *sch, con
long ss = gr->AddTexture(sch);
// x, y, z -- have the same size as a
- long nn=(n/tx)*(m/ty)*(l/tz), *pos=new long[(n/tx)*(m/ty)*(l/tz)];
- gr->Reserve(nn);
+ n /= tx; m /= ty; l /= tz;
+ long *pos=new long[n*m*l]; // TODO check if n<tx
+ gr->Reserve(n*m*l);
mglPoint p,q=mglPoint(NAN);
- for(k=0;k<l;k+=tz) for(j=0;j<m;j+=ty) for(i=0;i<n;i+=tx)
+ for(k=0;k<l;k++) for(j=0;j<m;j++) for(i=0;i<n;i++)
{
- p = both ? mglPoint(x->v(i,j,k),y->v(i,j,k),z->v(i,j,k)) : mglPoint(x->v(i),y->v(j),z->v(k));
- aa = gr->GetA(a->v(i,j,k));
- if(inv) bb = (1-aa)*(1-aa)*alpha;
- else bb = aa*aa*alpha;
- pos[i+(n/tx)*(j+(m/ty)*k)] = gr->AddPnt(p,gr->GetC(ss,aa,false),q,bb);
+ if(gr->Stop) { delete []pos; return; }
+ p = both ? mglPoint(x->v(i*tx,j*ty,k*tz),y->v(i*tx,j*ty,k*tz),z->v(i*tx,j*ty,k*tz)) : mglPoint(x->v(i*tx),y->v(j*ty),z->v(k*tz));
+ aa = gr->GetA(a->v(i*tx,j*ty,k*tz));
+ bb = inv ? (1-aa)*(1-aa)*alpha : aa*aa*alpha;
+ pos[i+n*(j+m*k)] = gr->AddPnt(p,gr->GetC(ss,aa,false),q,bb); // TODO check boundary
}
- n /= tx; m /= ty; l /= tz;
- if(dot) for(i=0;i<nn;i++) gr->mark_plot(pos[i],'.');
+ if(dot) for(i=0;i<n*m*l;i++) gr->mark_plot(pos[i],'.');
else for(i=0;i<n;i++) for(j=0;j<m;j++) for(k=0;k<l;k++)
{
+ if(gr->Stop) { delete []pos; return; }
i0 = i+n*(j+m*k);
if(i<n-1 && j<m-1) gr->quad_plot(pos[i0],pos[i0+1],pos[i0+n],pos[i0+n+1]);
if(i<n-1 && k<l-1) gr->quad_plot(pos[i0],pos[i0+1],pos[i0+n*m],pos[i0+n*m+1]);
- if(k<l-1 && j<m-1) gr->quad_plot(pos[i0],pos[i0+n],pos[i0+n+n*m],pos[i0+n+n*m]);
+ if(k<l-1 && j<m-1) gr->quad_plot(pos[i0],pos[i0+n],pos[i0+n*m],pos[i0+n+n*m]);
}
delete []pos; gr->EndGroup();
}
@@ -162,6 +163,7 @@ void mgl_surf3_plot(HMGL gr, long n,long m,long *kx1,long *kx2,long *ky1,long *k
for(i=0;i<n-1;i++) for(j=0;j<m-1;j++)
{
+ if(gr->Stop) return;
i0 = i+n*j;
// find ID of points of Surf3 intersection with cell i0
memset(id,-1,12*sizeof(long)); ni = 0;
@@ -259,6 +261,8 @@ void mgl_surf3_xyz_val(HMGL gr, float val, HCDT x, HCDT y, HCDT z, HCDT a, const
gr->Reserve(n*m); gr->Reserve(n*m);
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []kx1; delete []kx2; delete []ky1;
+ delete []ky2; delete []kz; return; }
i1 = i+n*j; a0 = a->v(i,j,k);
if(i<n-1)
{
@@ -407,6 +411,8 @@ void mgl_surf3a_xyz_val(HMGL gr, float val, HCDT x, HCDT y, HCDT z, HCDT a, HCDT
gr->Reserve(n*m); gr->Reserve(n*m);
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []kx1; delete []kx2; delete []ky1;
+ delete []ky2; delete []kz; return; }
i1 = i+n*j;
a0 = a->v(i,j,k); b0 = b->v(i,j,k);
if(i<n-1)
@@ -584,6 +590,8 @@ void mgl_surf3c_xyz_val(HMGL gr, float val, HCDT x, HCDT y, HCDT z, HCDT a, HCDT
gr->Reserve(n*m); gr->Reserve(n*m);
for(j=0;j<m;j++) for(i=0;i<n;i++)
{
+ if(gr->Stop) { delete []kx1; delete []kx2; delete []ky1;
+ delete []ky2; delete []kz; return; }
i1 = i+n*j;
a0 = a->v(i,j,k); b0 = b->v(i,j,k);
if(i<n-1)
@@ -736,6 +744,7 @@ void mgl_beam_val(HMGL gr, float val, HCDT tr, HCDT g1, HCDT g2, HCDT a, float r
}
for(j=0;j<m;j++) for(k=0;k<l;k++)
{
+ if(gr->Stop) return;
i0 = j+m*(k+l*i);
if(flag & 1)
{
diff --git a/test.cpp b/test.cpp
deleted file mode 100644
index c6c8d2b..0000000
--- a/test.cpp
+++ /dev/null
@@ -1,1943 +0,0 @@
-/***************************************************************************
- * full_test.cpp is part of Math Graphic Library
- * Copyright (C) 2007 Alexey Balakin <balakin at appl.sci-nnov.ru> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-#include <wchar.h>
-#include <time.h>
-#include <locale.h>
-#include <string.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <getopt.h>
-#include <mgl/mgl.h>
-//#include <mgl/mgl_idtf.h>
-#include "mgl/parser.h"
-void mgls_prepare1d(mglData *y, mglData *y1=0, mglData *y2=0, mglData *x1=0, mglData *x2=0);
-void mgls_prepare2d(mglData *a, mglData *b=0, mglData *v=0);
-void mgls_prepare3d(mglData *a, mglData *b=0);
-void mgls_prepare2v(mglData *a, mglData *b);
-void mgls_prepare3v(mglData *ex, mglData *ey, mglData *ez);
-//-----------------------------------------------------------------------------
-int test(mglGraph *gr)
-{
- gr->Rotate(40,60);
- gr->Puts(mglPoint(0,0),"Test","t");
- gr->Puts(mglPoint(0,0),"Test","T");
- gr->Line(mglPoint(0),mglPoint(1),"r");
- gr->Puts(mglPoint(-1,0),mglPoint(1,1),"angle");
- gr->Line(mglPoint(-1,0),mglPoint(0,1),"r");
- gr->Label('x',"X axis"); gr->Label('y',"Y axis");
- gr->Axis(); gr->Grid();
- return 0;
-
- mglParse par;
- par.AllowSetSize = true;
- FILE *fp=fopen("test.mgl","rt");
- par.Execute(gr,fp,true);
- fclose(fp);
-/* gr->SetDrawReg(2,2,1);
- gr->Rotate(40,60);
- gr->Surf("sin(x*y)");
- gr->SubPlot(2,2,1); gr->Box();*/
-
-// gr->Box();
- gr->ShowImage("",true);
- return 0;
-}
-//=============================================================================
-struct mglSample /// Structure for list of samples
-{
- const char *name;
- void (*func)(mglGraph*);
-};
-//-----------------------------------------------------------------------------
-int mgl_cmd_smp(const void *a, const void *b)
-{
- const mglSample *aa = (const mglSample *)a;
- const mglSample *bb = (const mglSample *)b;
- return strcmp(aa->name, bb->name);
-}
-//-----------------------------------------------------------------------------
-extern mglSample samp[];
-int type = 0;
-int dotest = 0;
-int width = 600;
-int height = 400;
-int mini = 0;
-int big = 0;
-int srnd = 0;
-mglData s;
-//-----------------------------------------------------------------------------
-static struct option longopts[] =
-{
- { "test", no_argument, &dotest, 1 },
- { "srnd", no_argument, &srnd, 1 },
- { "width", required_argument, NULL, 'w' },
- { "height", required_argument, NULL, 'h' },
- { "list", no_argument, NULL, 'l' },
- { "kind", required_argument, NULL, 'k' },
- { "thread", required_argument, NULL, 't' },
- { "mini", no_argument, &mini, 1 },
- { "big", no_argument, &big, 1 },
- { "png", no_argument, &type, 0 },
- { "eps", no_argument, &type, 1 },
- { "svg", no_argument, &type, 2 },
- { "solid", no_argument, &type, 3 },
- { "jpeg", no_argument, &type, 4 },
- { "idtf", no_argument, &type, 5 },
- { "gif", no_argument, &type, 6 },
- { "none", no_argument, &type, 7 },
- { "bps", no_argument, &type, 8 },
- { "u3d", no_argument, &type, 9 },
- { "pdf", no_argument, &type, 10 },
- { "help", no_argument, NULL, '?' },
- { NULL, 0, NULL, 0 }
-};
-//-----------------------------------------------------------------------------
-void usage()
-{
- puts ( \
- "-png - output png\n" \
- "-width=num - png picture width\n" \
- "-height=num - png picture height\n" \
- "-mini - png picture is 200x133\n" \
- "-big - png picture is 1200x800\n" \
- "-idtf - output idtf\n" \
- "-u3d - output u3d\n" \
- "-pdf - output pdf\n" \
- "-eps - output EPS\n" \
- "-jpeg - output JPEG\n" \
- "-solid - output solid PNG\n" \
- "-svg - output SVG\n" \
- "-none - none output\n" \
- "-srnd - use the same random numbers in any run\n" \
- "-kind=name - produce only this picture" \
- "-thread=num - number of threads used" \
- "-test - perform test\n"
- );
-// exit(0);
-};
-//-----------------------------------------------------------------------------
-void save(mglGraph *gr,const char *name,const char *suf="")
-{
-// return;
- char buf[128];
- printf("%s ",name); fflush(stdout);
- switch(type)
- {
- case 1: // EPS
- sprintf(buf,"%s%s.eps",name,suf);
- gr->WriteEPS(buf);
- break;
- case 2: // SVG
- sprintf(buf,"%s%s.svg",name,suf);
- gr->WriteSVG(buf); break;
- case 3: // PNG
- sprintf(buf,"%s%s.png",name,suf);
- gr->WritePNG(buf,0,true); break;
- case 4: // JPEG
- sprintf(buf,"%s%s.jpg",name,suf);
- gr->WriteJPEG(buf); break;
- case 5: // IDTF
- sprintf(buf,"%s%s.idtf",name,suf);
- gr->WriteIDTF(buf); break;
- case 6: // GIF
- sprintf(buf,"%s%s.gif",name,suf);
- gr->WriteGIF(buf); break;
- case 7: // none
- break;
- case 8: // EPS to PNG
- sprintf(buf,"%s%s.png",name,suf);
- gr->WritePNG(buf,0,false);
- break;
- case 9: // U3D
- sprintf(buf,"%s%s.u3d",name,suf);
-// gr->WriteU3D(buf); break; // TODO: Add IDTF support
- case 10: // PDF
- sprintf(buf,"%s%s.pdf",name,suf);
-// gr->WritePDF(buf); break; // TODO: Add IDTF support
- default:// PNG (no alpha)
- sprintf(buf,"%s%s.png",name,suf);
- gr->WritePNG(buf,0,false); break;
- }
-}
-//-----------------------------------------------------------------------------
-// Sample functions
-//-----------------------------------------------------------------------------
-void smgl_tval(mglGraph *gr) // ticks features
-{
- gr->SetRanges(-M_PI,M_PI, 0, 2);
- mreal val[]={-M_PI, -M_PI/2, 0, 0.886, M_PI/2, M_PI};
- mglData xt(6,val);
- gr->SetTicksVal('x', xt, "-\\pi\n-\\pi/2\n\n0\nx^*\n\\pi/2\n\\pi");
- gr->Axis(); gr->Grid();
- gr->Plot("2*cos(x^2)^2", "r2");
-}
-//-----------------------------------------------------------------------------
-void smgl_fonts(mglGraph *gr) // ticks features
-{
- float h=1.1, d=0.25;
- gr->LoadFont("STIX"); gr->Puts(mglPoint(0,h), "default font (STIX)");
- gr->LoadFont("adventor"); gr->Puts(mglPoint(0,h-d), "adventor font");
- gr->LoadFont("bonum"); gr->Puts(mglPoint(0,h-2*d), "bonum font");
- gr->LoadFont("chorus"); gr->Puts(mglPoint(0,h-3*d), "chorus font");
- gr->LoadFont("cursor"); gr->Puts(mglPoint(0,h-4*d), "cursor font");
- gr->LoadFont("heros"); gr->Puts(mglPoint(0,h-5*d), "heros font");
- gr->LoadFont("heroscn"); gr->Puts(mglPoint(0,h-6*d), "heroscn font");
- gr->LoadFont("pagella"); gr->Puts(mglPoint(0,h-7*d), "pagella font");
- gr->LoadFont("schola"); gr->Puts(mglPoint(0,h-8*d), "schola font");
- gr->LoadFont("termes"); gr->Puts(mglPoint(0,h-9*d), "termes font");
- gr->LoadFont("STIX");
-}
-//-----------------------------------------------------------------------------
-void smgl_stick(mglGraph *gr) // column plot
-{
- if(type==5 || type==9 || type==10)
- gr->Puts(mglPoint(0,0),"Does not work in 3D\\n for reasons I do not care to investigate till 2.0");
-
- gr->SetRanges(-1, 1, -1, 1, 0, 1); gr->Light(true);
- gr->StickPlot(3, 0, 40, 30); gr->Axis("xyz_");
- gr->Surf("exp(-10*y^2-6*x^2)");
- gr->Puts(mglPoint(0.2, 0, 1.2), "z=0", "", -2);
- gr->StickPlot(3, 1, 40, 30); gr->Axis("xyz_");
- gr->Surf("exp(-10*y^2/2-6*x^2)/sqrt(2)");
- gr->Puts(mglPoint(0.2, 0, 1.2), "z=1", "", -2);
- gr->StickPlot(3, 2, 40, 30); gr->Axis("xyz_");
- gr->Surf("exp(-10*y^2/5-6*x^2)/sqrt(5)");
- gr->Puts(mglPoint(0.2, 0, 1.2), "z=2", "", -2);
- gr->Label('x',"\\tau", 0); gr->Label('y', "\\rho");
-}
-//-----------------------------------------------------------------------------
-void smgl_column(mglGraph *gr) // column plot
-{
- char str[32];
- for(int i=0;i<4;i++)
- {
- gr->ColumnPlot(4,i);
- gr->Box();
- sprintf(str,"Plot %d of 4",i);
- gr->Puts(mglPoint(-0.5,0.5),str);
- sprintf(str,"sin(pi*x+pi*%d/2)",i);
- gr->Plot(str);
- }
-}
-//-----------------------------------------------------------------------------
-void smgl_map(mglGraph *gr) // example of mapping
-{
- mglData a(50, 40), b(50, 40);
- gr->Puts(mglPoint(0, 0), "\\to", "C", -1.4);
- gr->SetRanges(-1,1,-1,1,-2,2);
-
- gr->SubPlot(2, 1, 0);
- gr->Fill(a,"x"); gr->Fill(b,"y");
- gr->Puts(mglPoint(0, 1.1), "\\{x, y\\}", "C", -2); gr->Box();
- gr->Map(a, b, "brgk");
-
- gr->SubPlot(2, 1, 1);
- gr->Fill(a,"(x^3+y^3)/2"); gr->Fill(b,"(x-y)/2");
- gr->Puts(mglPoint(0, 1.1), "\\{\\frac{x^3+y^3}{2}, \\frac{x-y}{2}\\}", "C", -2);
- gr->Box();
- gr->Map(a, b, "brgk");
-}
-//-----------------------------------------------------------------------------
-void smgl_color_schemes(mglGraph *gr) // Color table
-{
- mglData a(256,2); a.Fill(-1,1);
- gr->SubPlot(2,10,0,0.2); gr->Dens(a,"kw");
- gr->Puts(mglPoint(-1.4, -0.3), "kw", "C", -8);
- gr->SubPlot(2,10,1,0.2); gr->Dens(a,"wk");
- gr->Puts(mglPoint(-1.4, -0.3), "wk", "C", -8);
- gr->SubPlot(2,10,2,0.2); gr->Dens(a,"kHCcw");
- gr->Puts(mglPoint(-1.4, -0.3), "kHCcw", "C", -8);
- gr->SubPlot(2,10,3,0.2); gr->Dens(a,"kBbcw");
- gr->Puts(mglPoint(-1.4, -0.3), "kBbcw", "C", -8);
- gr->SubPlot(2,10,4,0.2); gr->Dens(a,"kRryw");
- gr->Puts(mglPoint(-1.4, -0.3), "kRryw", "C", -8);
- gr->SubPlot(2,10,5,0.2); gr->Dens(a,"kGgew");
- gr->Puts(mglPoint(-1.4, -0.3), "kGgew", "C", -8);
- gr->SubPlot(2,10,6,0.2); gr->Dens(a,"BbwrR");
- gr->Puts(mglPoint(-1.4, -0.3), "BbwrR", "C", -8);
- gr->SubPlot(2,10,7,0.2); gr->Dens(a,"BbwgG");
- gr->Puts(mglPoint(-1.4, -0.3), "BbwgG", "C", -8);
- gr->SubPlot(2,10,8,0.2); gr->Dens(a,"GgwmM");
- gr->Puts(mglPoint(-1.4, -0.3), "GgwmM", "C", -8);
- gr->SubPlot(2,10,9,0.2); gr->Dens(a,"UuwqR");
- gr->Puts(mglPoint(-1.4, -0.3), "UuwqR", "C", -8);
- gr->SubPlot(2,10,10,0.2); gr->Dens(a,"QqwcC");
- gr->Puts(mglPoint(-1.4, -0.3), "QqwcC", "C", -8);
- gr->SubPlot(2,10,11,0.2); gr->Dens(a,"CcwyY");
- gr->Puts(mglPoint(-1.4, -0.3), "CcwyY", "C", -8);
- gr->SubPlot(2,10,12,0.2); gr->Dens(a,"bcwyr");
- gr->Puts(mglPoint(-1.4, -0.3), "bcwyr", "C", -8);
- gr->SubPlot(2,10,13,0.2); gr->Dens(a,"bwr");
- gr->Puts(mglPoint(-1.4, -0.3), "bwr", "C", -8);
- gr->SubPlot(2,10,14,0.2); gr->Dens(a,"BbcyrR");
- gr->Puts(mglPoint(-1.4, -0.3), "BbcyrR", "C", -8);
- gr->SubPlot(2,10,15,0.2); gr->Dens(a,"UbcyqR");
- gr->Puts(mglPoint(-1.4, -0.3), "UbcyqR", "C", -8);
- gr->SubPlot(2,10,16,0.2); gr->Dens(a,"BbcwyrR");
- gr->Puts(mglPoint(-1.4, -0.3), "BbcwyrR", "C", -8);
- gr->SubPlot(2,10,17,0.2); gr->Dens(a,"bcyr");
- gr->Puts(mglPoint(-1.4, -0.3), "bcyr", "C", -8);
- gr->SubPlot(2,10,18,0.2); gr->Dens(a,"BbcyrR|");
- gr->Puts(mglPoint(-1.4, -0.3), "BbcyrR|", "C", -8);
- gr->SubPlot(2,10,19,0.2); gr->Dens(a,"bgr");
- gr->Puts(mglPoint(-1.4, -0.3), "bgr", "C", -8);
-}
-//-----------------------------------------------------------------------------
-void smgl_colors(mglGraph *gr) // Color table
-{
- //#LENUQ
- gr->FaceZ(mglPoint(-1, -1), 0.4, 0.3, "L#"); gr->Puts(mglPoint(-0.8,-0.9), "L", "C:w", -1.4);
- gr->FaceZ(mglPoint(-0.6,-1), 0.4, 0.3, "E#"); gr->Puts(mglPoint(-0.4,-0.9), "E", "C:w", -1.4);
- gr->FaceZ(mglPoint(-0.2,-1), 0.4, 0.3, "N#"); gr->Puts(mglPoint(0, -0.9), "N", "C:w", -1.4);
- gr->FaceZ(mglPoint(0.2, -1), 0.4, 0.3, "U#"); gr->Puts(mglPoint(0.4,-0.9), "U", "C:w", -1.4);
- gr->FaceZ(mglPoint(0.6, -1), 0.4, 0.3, "Q#"); gr->Puts(mglPoint(0.8,-0.9), "Q", "C:w", -1.4);
- //#lenuq
- gr->FaceZ(mglPoint(-1, -0.7), 0.4, 0.3, "l#"); gr->Puts(mglPoint(-0.8,-0.6), "l", "C:k", -1.4);
- gr->FaceZ(mglPoint(-0.6,-0.7), 0.4, 0.3, "e#"); gr->Puts(mglPoint(-0.4,-0.6), "e", "C:k", -1.4);
- gr->FaceZ(mglPoint(-0.2,-0.7), 0.4, 0.3, "n#"); gr->Puts(mglPoint(0, -0.6), "n", "C:k", -1.4);
- gr->FaceZ(mglPoint(0.2, -0.7), 0.4, 0.3, "u#"); gr->Puts(mglPoint(0.4,-0.6), "u", "C:k", -1.4);
- gr->FaceZ(mglPoint(0.6, -0.7), 0.4, 0.3, "q#"); gr->Puts(mglPoint(0.8,-0.6), "q", "C:k", -1.4);
- //#CMYkP
- gr->FaceZ(mglPoint(-1, -0.4), 0.4, 0.3, "C#"); gr->Puts(mglPoint(-0.8,-0.3), "C", "C:w", -1.4);
- gr->FaceZ(mglPoint(-0.6,-0.4), 0.4, 0.3, "M#"); gr->Puts(mglPoint(-0.4,-0.3), "M", "C:w", -1.4);
- gr->FaceZ(mglPoint(-0.2,-0.4), 0.4, 0.3, "Y#"); gr->Puts(mglPoint(0, -0.3), "Y", "C:w", -1.4);
- gr->FaceZ(mglPoint(0.2, -0.4), 0.4, 0.3, "k#"); gr->Puts(mglPoint(0.4,-0.3), "k", "C:w", -1.4);
- gr->FaceZ(mglPoint(0.6, -0.4), 0.4, 0.3, "P#"); gr->Puts(mglPoint(0.8,-0.3), "P", "C:w", -1.4);
- //#cmywp
- gr->FaceZ(mglPoint(-1, -0.1), 0.4, 0.3, "c#"); gr->Puts(mglPoint(-0.8, 0), "c", "C:k", -1.4);
- gr->FaceZ(mglPoint(-0.6,-0.1), 0.4, 0.3, "m#"); gr->Puts(mglPoint(-0.4, 0), "m", "C:k", -1.4);
- gr->FaceZ(mglPoint(-0.2,-0.1), 0.4, 0.3, "y#"); gr->Puts(mglPoint(0, 0), "y", "C:k", -1.4);
- gr->FaceZ(mglPoint(0.2, -0.1), 0.4, 0.3, "w#"); gr->Puts(mglPoint(0.4, 0), "w", "C:k", -1.4);
- gr->FaceZ(mglPoint(0.6, -0.1), 0.4, 0.3, "p#"); gr->Puts(mglPoint(0.8, 0), "p", "C:k", -1.4);
- //#BGRHW
- gr->FaceZ(mglPoint(-1, 0.2), 0.4, 0.3, "B#"); gr->Puts(mglPoint(-0.8, 0.3), "B", "C:w", -1.4);
- gr->FaceZ(mglPoint(-0.6,0.2), 0.4, 0.3, "G#"); gr->Puts(mglPoint(-0.4, 0.3), "G", "C:w", -1.4);
- gr->FaceZ(mglPoint(-0.2,0.2), 0.4, 0.3, "R#"); gr->Puts(mglPoint(0, 0.3), "R", "C:w", -1.4);
- gr->FaceZ(mglPoint(0.2, 0.2), 0.4, 0.3, "H#"); gr->Puts(mglPoint(0.4, 0.3), "H", "C:w", -1.4);
- gr->FaceZ(mglPoint(0.6, 0.2), 0.4, 0.3, "W#"); gr->Puts(mglPoint(0.8, 0.3), "W", "C:w", -1.4);
- //#bgrhw
- gr->FaceZ(mglPoint(-1, 0.5), 0.4, 0.3, "b#"); gr->Puts(mglPoint(-0.8, 0.6), "b", "C:k", -1.4);
- gr->FaceZ(mglPoint(-0.6,0.5), 0.4, 0.3, "g#"); gr->Puts(mglPoint(-0.4, 0.6), "g", "C:k", -1.4);
- gr->FaceZ(mglPoint(-0.2,0.5), 0.4, 0.3, "r#"); gr->Puts(mglPoint(0, 0.6), "r", "C:k", -1.4);
- gr->FaceZ(mglPoint(0.2, 0.5), 0.4, 0.3, "h#"); gr->Puts(mglPoint(0.4, 0.6), "h", "C:k", -1.4);
- gr->FaceZ(mglPoint(0.6, 0.5), 0.4, 0.3, "w#"); gr->Puts(mglPoint(0.8, 0.6), "w", "C:k", -1.4);
- //#brighted
- gr->FaceZ(mglPoint(-1, 0.8), 0.4, 0.3, "{r1}#"); gr->Puts(mglPoint(-0.8, 0.9), "\\{r1\\}", "C:w", -1.4);
- gr->FaceZ(mglPoint(-0.6,0.8), 0.4, 0.3, "{r3}#"); gr->Puts(mglPoint(-0.4, 0.9), "\\{r3\\}", "C:w", -1.4);
- gr->FaceZ(mglPoint(-0.2,0.8), 0.4, 0.3, "{r5}#"); gr->Puts(mglPoint(0, 0.9), "\\{r5\\}", "C:k", -1.4);
- gr->FaceZ(mglPoint(0.2, 0.8), 0.4, 0.3, "{r7}#"); gr->Puts(mglPoint(0.4, 0.9), "\\{r7\\}", "C:k", -1.4);
- gr->FaceZ(mglPoint(0.6, 0.8), 0.4, 0.3, "{r9}#"); gr->Puts(mglPoint(0.8, 0.9), "\\{r9\\}", "C:k", -1.4);
-}
-//-----------------------------------------------------------------------------
-void smgl_qo2d(mglGraph *gr)
-{
- gr->Compression(true); // try to save space
- mglData r, xx, yy, a, im(128), re(128);
- const char *ham = "p^2+q^2-x-1+i*0.5*(y+x)*(y>-x)";
- r = mglRay(ham, mglPoint(-0.7, -1), mglPoint(0, 0.5), 0.02, 2);
- gr->Plot(r.SubData(0), r.SubData(1), "k");
- gr->Axis(); gr->Label('x', "\\i x"); gr->Label('y', "\\i z");
- // now start beam tracing
- gr->Fill(re,"exp(-48*x^2)");
- a = mglQO2d(ham, re, im, r, 1, 30, &xx, &yy);
- gr->SetRange('c',0, 1);
- gr->Dens(xx, yy, a, "wyrRk");
- gr->Plot("-x", "k|");
- gr->Puts(mglPoint(0, 0.85), "absorption: (x+y)/2 for x+y>0");
- gr->Puts(mglPoint(0.7, -0.05), "central ray");
- gr->Puts(mglPoint(0,1.1),"Beam and ray tracing");
- gr->Compression(false); //put setting back
-}
-//-----------------------------------------------------------------------------
-void smgl_pde(mglGraph *gr) // PDE and Ray sample
-{
- gr->Compression(true); // try to save space
- mglData a,re(128),im(128);
- gr->Axis();
- gr->Label('x', "\\i x");
- gr->Label('y', "\\i z");
-
- gr->Fill(re,"exp(-48*(x+0.7)^2)");
- a = gr->PDE("p^2+q^2-x-1+i*0.5*(z+x)*(z>-x)", re, im, 0.01, 30);
- a.Transpose("yxz");
- gr->SetRange('c',0, 1);
- gr->Dens(a,"wyrRk");
- gr->Plot("-x", "k|");
- gr->Puts(mglPoint(0, 0.85), "absorption: (x+z)/2 for x+z>0");
- gr->Puts(mglPoint(0,1.1),"Equation: ik_0\\partial_zu + \\Delta u + x\\cdot u + i \\frac{x+z}{2}\\cdot u = 0");
- gr->Compression(false); //put setting back
-}
-//-----------------------------------------------------------------------------
-void smgl_stfa(mglGraph *gr) // STFA sample
-{
- mglData a(2000), b(2000);
- gr->Fill(a,"cos(50*pi*x)*(x<-.5)+cos(100*pi*x)*(x<0)*(x>-.5)+\
- cos(200*pi*x)*(x<.5)*(x>0)+cos(400*pi*x)*(x>.5)");
- gr->SubPlot(1, 2, 0);
- gr->Plot(a);
- gr->Axis();
- gr->Label('x', "\\i t");
-
- gr->SubPlot(1, 2, 1);
- gr->STFA(a, b, 64, "BbcyrR");
- gr->Axis();
- gr->Label('x', "\\i t");
- gr->Label('y', "\\omega", 0);
-}
-//-----------------------------------------------------------------------------
-void smgl_envelop(mglGraph *gr) // Envelop reconstruction
-{
- mglData a(1000);
- gr->Fill(a,"exp(-8*x^2)*sin(10*pi*x)");
- gr->Plot(a, "b");
- a.Envelop('x');
- gr->Plot(a, "r");
- gr->Axis();
-}
-//-----------------------------------------------------------------------------
-void smgl_sew(mglGraph *gr) // Phase reconstruction
-{
- gr->VertexColor(false);
- mglData a(100, 100);
- a.Modify("mod((y^2-(1-x)^2)/2,0.1)");
- gr->Rotate(40, 60);
- gr->Light(true);
- gr->Alpha(true);
- gr->Surf(a, "b");
- a.Sew("xy", 0.1);
- gr->Surf(a, "r");
- gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_samplee(mglGraph *gr) // TeX sample
-{
- gr->Puts(mglPoint(0), "\\sqrt{\\frac{\\alpha^{\\gamma^2}+\\overset 1{\\big\\infty}}{\\sqrt3{2+b}}}", 0, -4);
-}
-//-----------------------------------------------------------------------------
-void smgl_sampled(mglGraph *gr) // arrow styles
-{
- mreal a=0.1,b=0.4,c=0.5;
- gr->Line(mglPoint(a,1),mglPoint(b,1),"k-A"); gr->Puts(mglPoint(c,1),"Style 'A' or 'A\\_'","rL");
- gr->Line(mglPoint(a,0.8),mglPoint(b,0.8),"k-V"); gr->Puts(mglPoint(c,0.8),"Style 'V' or 'V\\_'","rL");
- gr->Line(mglPoint(a,0.6),mglPoint(b,0.6),"k-K"); gr->Puts(mglPoint(c,0.6),"Style 'K' or 'K\\_'","rL");
- gr->Line(mglPoint(a,0.4),mglPoint(b,0.4),"k-I"); gr->Puts(mglPoint(c,0.4),"Style 'I' or 'I\\_'","rL");
- gr->Line(mglPoint(a,0.2),mglPoint(b,0.2),"k-D"); gr->Puts(mglPoint(c,0.2),"Style 'D' or 'D\\_'","rL");
- gr->Line(mglPoint(a,0),mglPoint(b,0),"k-S"); gr->Puts(mglPoint(c,0),"Style 'S' or 'S\\_'","rL");
- gr->Line(mglPoint(a,-0.2),mglPoint(b,-0.2),"k-O"); gr->Puts(mglPoint(c,-0.2),"Style 'O' or 'O\\_'","rL");
- gr->Line(mglPoint(a,-0.4),mglPoint(b,-0.4),"k-T"); gr->Puts(mglPoint(c,-0.4),"Style 'T' or 'T\\_'","rL");
- gr->Line(mglPoint(a,-0.6),mglPoint(b,-0.6),"k-_"); gr->Puts(mglPoint(c,-0.6),"Style '\\_' or none","rL");
- gr->Line(mglPoint(a,-0.8),mglPoint(b,-0.8),"k-AS"); gr->Puts(mglPoint(c,-0.8),"Style 'AS'","rL");
- gr->Line(mglPoint(a,-1),mglPoint(b,-1),"k-_A"); gr->Puts(mglPoint(c,-1),"Style '\\_A'","rL");
-
- a=-1; b=-0.7; c=-0.6;
- gr->Line(mglPoint(a,1),mglPoint(b,1),"kAA"); gr->Puts(mglPoint(c,1),"Style 'AA'","rL");
- gr->Line(mglPoint(a,0.8),mglPoint(b,0.8),"kVV"); gr->Puts(mglPoint(c,0.8),"Style 'VV'","rL");
- gr->Line(mglPoint(a,0.6),mglPoint(b,0.6),"kKK"); gr->Puts(mglPoint(c,0.6),"Style 'KK'","rL");
- gr->Line(mglPoint(a,0.4),mglPoint(b,0.4),"kII"); gr->Puts(mglPoint(c,0.4),"Style 'II'","rL");
- gr->Line(mglPoint(a,0.2),mglPoint(b,0.2),"kDD"); gr->Puts(mglPoint(c,0.2),"Style 'DD'","rL");
- gr->Line(mglPoint(a,0),mglPoint(b,0),"kSS"); gr->Puts(mglPoint(c,0),"Style 'SS'","rL");
- gr->Line(mglPoint(a,-0.2),mglPoint(b,-0.2),"kOO"); gr->Puts(mglPoint(c,-0.2),"Style 'OO'","rL");
- gr->Line(mglPoint(a,-0.4),mglPoint(b,-0.4),"kTT"); gr->Puts(mglPoint(c,-0.4),"Style 'TT'","rL");
- gr->Line(mglPoint(a,-0.6),mglPoint(b,-0.6),"k-__"); gr->Puts(mglPoint(c,-0.6),"Style '\\_\\_'","rL");
- gr->Line(mglPoint(a,-0.8),mglPoint(b,-0.8),"k-VA"); gr->Puts(mglPoint(c,-0.8),"Style 'VA'","rL");
- gr->Line(mglPoint(a,-1),mglPoint(b,-1),"k-AV"); gr->Puts(mglPoint(c,-1),"Style 'AV'","rL");
-}
-//-----------------------------------------------------------------------------
-void smgl_samplec(mglGraph *gr) // error boxes
-{
- mglData x(10), y(10), ex(10), ey(10), y0(50);
- x.Modify("2*x-1 + 0.2*rnd-0.1");
- y.Modify("(2*x-1)^2 + 0.2*rnd-0.1");
- y0.Modify("(2*x-1)^2");
- ex.Modify("0.2");
- ey.Modify("0.1");
-
- gr->Clf();
- gr->SubPlot(2,2,0);
- gr->Error(y,ey,"ko");
- gr->Plot(y0,"r");
- gr->Axis();
- gr->Puts(mglPoint(0,1.2,0),"Random \\i{y}");
- gr->SubPlot(2,2,1);
- gr->Error(x,y,ex,"ko");
- gr->Plot(y0,"r");
- gr->Axis();
- gr->Puts(mglPoint(0,1.2,0),"Random \\i{x, y}");
- gr->SubPlot(2,2,2);
- gr->Error(x,y,ey,ey,"ko");
- gr->Plot(y0,"r");
- gr->Axis();
- gr->Puts(mglPoint(0,1.2,0),"Random \\i{x, y} and 2d boxes");
- gr->SubPlot(2,2,3);
- gr->Puts(mglPoint(0,1.2,0),"Random point in 3d space");
- gr->Rotate(40,60);
- for(int i=0;i<10;i++)
- gr->Error(mglPoint(mgl_rnd()-0.5,mgl_rnd()-0.5,mgl_rnd()-0.5), mglPoint(0.1,0.1,0.1),"bo");
- gr->Axis();
- gr->Rotate(0,0); // for unrotate in IDTF
-}
-//-----------------------------------------------------------------------------
-void smgl_sampleb(mglGraph *gr) // Gaussian beam
-{
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a(30,30,30), b(30,30,30);
- a.Modify("exp(-16*((z-0.5)^2+(y-0.5)^2)/(1+4*x^2))");
- b.Modify("16*((z-0.5)^2+(y-0.5)^2)*(x)/(1+4*x^2)");
- gr->SetRange('c',0,1);
-
- gr->SubPlot(2,2,0); gr->Rotate(40,60);
- gr->VertexColor(false);
- // since we have one-color trasparent surfaces - disable (per-vertex) coloring
- gr->Surf3(a,"wgk"); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60);
- gr->Dens3(a,'x'); gr->Dens3(a,'y'); gr->Dens3(a,'z');
- gr->Box(); gr->Axis();
- gr->SubPlot(2,2,2); gr->Rotate(40,60);
- gr->Cloud(a); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60);
- gr->VertexColor(false);
- // for variable transparency the only way is to disable smooth (per-vertex) coloring
- gr->Surf3A(b,a,"q"); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_samplea(mglGraph *gr) // flag #
-{
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a(30,20);
- a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-
- gr->SubPlot(2,2,0); gr->Rotate(40,60);
- gr->Surf(a,"BbcyrR#"); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60);
- gr->Dens(a,"BbcyrR#"); gr->Box();
- gr->SubPlot(2,2,2); gr->Rotate(40,60);
- gr->Cont(a,"BbcyrR#"); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60);
- gr->Axial(a,"BbcyrR#"); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_sample9(mglGraph *gr) // 2d plot
-{
- gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
-
- mglData a0(50,40);
- a0.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
- gr->SubPlot(2,2,0); gr->Rotate(60,40);
- gr->Surf(a0); gr->Box();
-
- mglData x(50,40),y(50,40),z(50,40);
- x.Modify("0.8*sin(2*pi*x)*sin(pi*y)");
- y.Modify("0.8*cos(2*pi*x)*sin(pi*y)");
- z.Modify("0.8*cos(pi*y)");
- gr->SubPlot(2,2,1); gr->Rotate(60,40);
- gr->Surf(x,y,z,"BbwrR"); gr->Box();
-
- mglData a1(50,40,3);
- a1.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
- a1.Modify("0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*sin(3*pi*(x*y))",1);
- a1.Modify("0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*cos(3*pi*(x*y))",2);
- gr->SubPlot(2,2,2); gr->Rotate(60,40);
- gr->Alpha(true);
- gr->Surf(a1); gr->Box();
-
- gr->SubPlot(2,2,3); gr->Rotate(60,40);
- gr->Dens(a1); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_sample8(mglGraph *gr) // 1d plot
-{
- mglData y0(50); y0.Modify("sin(pi*(2*x-1))");
- gr->SubPlot(2,2,0);
- gr->Plot(y0); gr->Box();
-
- gr->SubPlot(2,2,1);
- mglData y1(50,2);
- y1.Modify("sin(pi*2*x-pi)"); y1.Modify("cos(pi*2*x-pi)/2",1);
- gr->Plot(y1); gr->Box();
-
- mglData x(50); x.Modify("cos(pi*2*x-pi)");
- gr->Plot(x,y0,"Y+");
-
- gr->Plot(y1.SubData(-1,0),y1.SubData(-1,1),"q|");
-
- gr->SubPlot(2,2,2); gr->Rotate(60,40);
- mglData z(50); z.Modify("2*x-1");
- gr->Plot(x,y0,z); gr->Box();
-
- mglData y2(10,3); y2.Modify("cos(pi*(2*x-1-y))");
- y2.Modify("2*x-1",2);
- gr->Plot(y2.SubData(-1,0),y2.SubData(-1,1),y2.SubData(-1,2),"bo ");
-
- gr->SubPlot(2,2,3); gr->Rotate(60,40);
- gr->Bars(x,y0,z,"ri"); gr->Box();
-
- gr->Rotate(0,0); // for unrotate in IDTF
-}
-//-----------------------------------------------------------------------------
-void smgl_sample7(mglGraph *gr) // smoothing
-{
- mglData y0(30),y1,y2,y3;
- y0.Modify("0.4*sin(2*pi*x) + 0.3*cos(3*pi*x) - 0.4*sin(4*pi*x)+0.2*rnd");
-
- y1=y0; y1.Smooth("3");
- y2=y0; y2.Smooth("5");
- y3=y0; y3.Smooth("");
-
- gr->Plot(y0,"k"); gr->AddLegend("NONE","k");
- gr->Plot(y1,"r"); gr->AddLegend("LINE\\_3","r");
- gr->Plot(y2,"g"); gr->AddLegend("LINE\\_5","g");
- gr->Plot(y3,"b"); gr->AddLegend("QUAD\\_5","b");
- gr->Legend(); gr->Box();
- gr->ClearLegend(); // clear legend strings
-}
-//-----------------------------------------------------------------------------
-void smgl_sample6(mglGraph *gr) // differentiate
-{
- mglData a(30,40); a.Modify("x*y");
- gr->SetRanges(0,1,0,1,0,1);
- gr->SubPlot(2,2,0); gr->Rotate(60,40);
- gr->Surf(a); gr->Box();
- gr->Puts(mglPoint(0.7,1,1.2),"a(x,y)");
- gr->SubPlot(2,2,1); gr->Rotate(60,40);
- a.Diff("x"); gr->Surf(a); gr->Box();
- gr->Puts(mglPoint(0.7,1,1.2),"da/dx");
- gr->SubPlot(2,2,2); gr->Rotate(60,40);
- a.Integral("xy"); gr->Surf(a); gr->Box();
- gr->Puts(mglPoint(0.7,1,1.2),"\\int da/dx dxdy");
- gr->SubPlot(2,2,3); gr->Rotate(60,40);
- a.Diff2("y"); gr->Surf(a); gr->Box();
- gr->Puts(mglPoint(0.7,1,1.2),"\\int {d^2}a/dxdy dx");
-}
-//-----------------------------------------------------------------------------
-void smgl_sample5(mglGraph *gr) // pen styles
-{
- if(type==5 || type==9 || type==10) gr->Puts(mglPoint(0,1.2),"line styles not supported","rL");
- mreal d,x1,x2,x0,y=0.95;
- d=0.3, x0=0.2, x1=0.5, x2=0.6;
- gr->Line(mglPoint(x0,1-0*d),mglPoint(x1,1-0*d),"k-"); gr->Puts(mglPoint(x2,y-0*d),"Solid '-'","rL");
- gr->Line(mglPoint(x0,1-1*d),mglPoint(x1,1-1*d),"k|"); gr->Puts(mglPoint(x2,y-1*d),"Long Dash '|'","rL");
- gr->Line(mglPoint(x0,1-2*d),mglPoint(x1,1-2*d),"k;"); gr->Puts(mglPoint(x2,y-2*d),"Dash ';'","rL");
- gr->Line(mglPoint(x0,1-3*d),mglPoint(x1,1-3*d),"k="); gr->Puts(mglPoint(x2,y-3*d),"Small dash '='","rL");
- gr->Line(mglPoint(x0,1-4*d),mglPoint(x1,1-4*d),"kj"); gr->Puts(mglPoint(x2,y-4*d),"Dash-dot 'j'","rL");
- gr->Line(mglPoint(x0,1-5*d),mglPoint(x1,1-5*d),"ki"); gr->Puts(mglPoint(x2,y-5*d),"Small dash-dot 'i'","rL");
- gr->Line(mglPoint(x0,1-6*d),mglPoint(x1,1-6*d),"k:"); gr->Puts(mglPoint(x2,y-6*d),"Dots ':'","rL");
- gr->Line(mglPoint(x0,1-7*d),mglPoint(x1,1-7*d),"k "); gr->Puts(mglPoint(x2,y-7*d),"None ' '","rL");
-
- d=0.25; x1=-1; x0=-0.8; y = -0.05;
- gr->Mark(mglPoint(x1,5*d),"."); gr->Puts(mglPoint(x0,y+5*d),"'.'","rL");
- gr->Mark(mglPoint(x1,4*d),"+"); gr->Puts(mglPoint(x0,y+4*d),"'+'","rL");
- gr->Mark(mglPoint(x1,3*d),"x"); gr->Puts(mglPoint(x0,y+3*d),"'x'","rL");
- gr->Mark(mglPoint(x1,2*d),"*"); gr->Puts(mglPoint(x0,y+2*d),"'*'","rL");
- gr->Mark(mglPoint(x1,d),"s"); gr->Puts(mglPoint(x0,y+d),"'s'","rL");
- gr->Mark(mglPoint(x1,0),"d"); gr->Puts(mglPoint(x0,y),"'d'","rL");
- gr->Mark(mglPoint(x1,-d,0),"o"); gr->Puts(mglPoint(x0,y-d),"'o'","rL");
- gr->Mark(mglPoint(x1,-2*d,0),"^"); gr->Puts(mglPoint(x0,y-2*d),"'\\^'","rL");
- gr->Mark(mglPoint(x1,-3*d,0),"v"); gr->Puts(mglPoint(x0,y-3*d),"'v'","rL");
- gr->Mark(mglPoint(x1,-4*d,0),"<"); gr->Puts(mglPoint(x0,y-4*d),"'<'","rL");
- gr->Mark(mglPoint(x1,-5*d,0),">"); gr->Puts(mglPoint(x0,y-5*d),"'>'","rL");
-
- d=0.25; x1=-0.5; x0=-0.3; y = -0.05;
- gr->Mark(mglPoint(x1,5*d),"C"); gr->Puts(mglPoint(x0,y+5*d),"'\\#.'","rL");
- gr->Mark(mglPoint(x1,4*d),"P"); gr->Puts(mglPoint(x0,y+4*d),"'\\#+'","rL");
- gr->Mark(mglPoint(x1,3*d),"X"); gr->Puts(mglPoint(x0,y+3*d),"'\\#x'","rL");
- gr->Mark(mglPoint(x1,2*d),"Y"); gr->Puts(mglPoint(x0,y+2*d),"'\\#*'","rL");
- gr->Mark(mglPoint(x1,d),"S"); gr->Puts(mglPoint(x0,y+d),"'\\#s'","rL");
- gr->Mark(mglPoint(x1,0),"D"); gr->Puts(mglPoint(x0,y),"'\\#d'","rL");
- gr->Mark(mglPoint(x1,-d,0),"O"); gr->Puts(mglPoint(x0,y-d),"'\\#o'","rL");
- gr->Mark(mglPoint(x1,-2*d,0),"T"); gr->Puts(mglPoint(x0,y-2*d),"'\\#\\^'","rL");
- gr->Mark(mglPoint(x1,-3*d,0),"V"); gr->Puts(mglPoint(x0,y-3*d),"'\\#v'","rL");
- gr->Mark(mglPoint(x1,-4*d,0),"L"); gr->Puts(mglPoint(x0,y-4*d),"'\\#<'","rL");
- gr->Mark(mglPoint(x1,-5*d,0),"R"); gr->Puts(mglPoint(x0,y-5*d),"'\\#>'","rL");
-}
-//-----------------------------------------------------------------------------
-void smgl_sample4(mglGraph *gr) // font features
-{
-// setlocale(LC_CTYPE, "ru_RU.cp1251");
-// gr->Putsw(mglPoint(0,1),L"Text can be in english è â ÃÃèêîäå");
- gr->Putsw(mglPoint(0,1),L"Text can be in ASCII and in Unicode");
- gr->Puts(mglPoint(0,0.6),"It can be \\wire{wire}, \\big{big} or #r{colored}");
- gr->Puts(mglPoint(0,0.2),"One can change style in string: "
- "\\b{bold}, \\i{italic, \\b{both}}");
- gr->Puts(mglPoint(0,-0.2),"Easy to \\a{overline} or "
- "\\u{underline}");
- gr->Puts(mglPoint(0,-0.6),"Easy to change indexes ^{up} _{down} @{center}");
- gr->Puts(mglPoint(0,-1),"It parse TeX: \\int \\alpha \\cdot "
- "\\sqrt3{sin(\\pi x)^2 + \\gamma_{i_k}} dx");
-}
-//-----------------------------------------------------------------------------
-void smgl_sample3(mglGraph *gr) // curvilinear coordinates
-{
- mglData x(50),y(50),z(50);
- y.Fill(0.5,0.5);
- x.Fill(-1,1); // create data arrays
-
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1));
- gr->SetOrigin(-1,1,-1); gr->SetTicks('z', 0.5); // set tick step to 0.5
-
- gr->SubPlot(2,2,0);
- gr->Rotate(60,40);
- gr->Plot(x,y,z,"r2");
- gr->Axis(); gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Cartesian");
-
- gr->SubPlot(2,2,1);
- gr->SetFunc("y*sin(pi*x)","y*cos(pi*x)",0);
- gr->Rotate(60,40);
- gr->Plot(x,y,z,"r2");
- gr->Axis(); gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Cylindrical");
-
- gr->SubPlot(2,2,2);
- gr->Rotate(60,40);
- gr->SetFunc("2*y*x","y*y - x*x",0);
- gr->Plot(x,y,z,"r2");
- gr->Axis(); gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Parabolic");
-
- gr->SubPlot(2,2,3);
- gr->Rotate(60,40);
- gr->SetFunc("y*sin(pi*x)","y*cos(pi*x)","x+z");
- gr->Plot(x,y,z,"r2");
- gr->Axis(); gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Spiral");
- gr->SetFunc(0,0,0); // set to default Cartesian
-}
-//-----------------------------------------------------------------------------
-void smgl_sample2(mglGraph *gr) // axis and grid
-{
- gr->SubPlot(2,2,0);
- gr->SetTicks('x', 0.4, 3); // sets tick step to 0.4
- gr->SetTicks('y', 0.4, 3); // and draws 3 subticks
- gr->Box(); // should be after the ticks change
- gr->Axis("xy");
- gr->Grid();
- gr->Puts(mglPoint(0,1.3,1),"Axis and grid");
-
- gr->SetTicks('x'); gr->SetTicks('y'); // restore back
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(0,0,0);
-
- gr->SubPlot(2,2,1);
- gr->Rotate(60,40);
- gr->Axis();
- gr->Label('x',"x");
- gr->Label('y',"y");
- gr->Label('z',"z");
- gr->Puts(mglPoint(0,0,1.5),"Axis and labels");
-
- gr->SubPlot(2,2,2);
- gr->Rotate(60,40);
- gr->SetTicks('x', 0.2); gr->SetTicks('y', 0.2);
- gr->SetTicks('z', 0.2); // too low step of ticks
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(-1,-1,-1);
- gr->Axis();
- gr->Grid();
- gr->Puts(mglPoint(0,0,1.5),"Shift origin and add grid");
- gr->Puts(mglPoint(0,0,1.2),"(note, too many ticks)");
-
- gr->SubPlot(2,2,3);
- gr->Rotate(60,40);
- gr->SetTicks('x', -6); // decrease the number of ticks
- gr->SetTicks('y', -6);
- gr->Axis("yz");
- gr->Label('y',"Y axis",0);
- gr->Label('z',"Z axis",0);
- gr->Puts(mglPoint(0,0,1.5),"Remove X axis, and");
- gr->Puts(mglPoint(0,0,1.2),"decrease number of ticks");
-
- gr->Rotate(0,0); // for unrotate in IDTF
-}
-//-----------------------------------------------------------------------------
-void smgl_sample1(mglGraph *gr) // transformation
-{
- gr->SubPlot(2,2,0); // just new axis without rotation and aspects
- gr->Box();
- gr->Puts(mglPoint(-1,1.1,1),"Just box","rL");
- gr->InPlot(0.2,0.5,0.7,1,false);
- gr->Box();
- gr->Puts(mglPoint(0,1.2,1),"InPlot example");
- gr->SubPlot(2,2,1); // new axis with aspect and rotation
- gr->Rotate(60,40);
- gr->Aspect(1,1,1);
- gr->Box();
- gr->Puts(mglPoint(1,1,1.5),"Rotate only","rR");
- gr->SubPlot(2,2,2); // aspect in other direction
- gr->Rotate(60,40);
- gr->Aspect(1,1,2);
- gr->Box();
- gr->Puts(mglPoint(0,0,2),"Aspect and Rotate");
- gr->SubPlot(2,2,3); // rotation before aspect. INCORRECT !!!
- gr->Rotate(60,40);
- gr->Aspect(1,2,2);
- gr->Box();
- gr->Puts(mglPoint(0,0,1.5),"Aspect in other direction");
- gr->Rotate(0,0); // for unrotate in IDTF
-}
-//-----------------------------------------------------------------------------
-void mgls_prepare1d(mglData *y, mglData *y1, mglData *y2, mglData *x1, mglData *x2)
-{
- register long i,n=50;
- if(y) y->Create(n,3);
- if(x1) x1->Create(n); if(x2) x2->Create(n);
- if(y1) y1->Create(n); if(y2) y2->Create(n);
- mreal xx;
- for(i=0;i<n;i++)
- {
- xx = i/(n-1.);
- if(y)
- {
- y->a[i] = 0.7*sin(2*M_PI*xx) + 0.5*cos(3*M_PI*xx) + 0.2*sin(M_PI*xx);
- y->a[i+n] = sin(2*M_PI*xx);
- y->a[i+2*n] = cos(2*M_PI*xx);
- }
- if(y1) y1->a[i] = 0.5+0.3*cos(2*M_PI*xx);
- if(y2) y2->a[i] = 0.3*sin(2*M_PI*xx);
- if(x1) x1->a[i] = xx*2-1;
- if(x2) x2->a[i] = 0.05+0.03*cos(2*M_PI*xx);
- }
-}
-//-----------------------------------------------------------------------------
-void smgl_plot(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- gr->Box(); gr->Plot(y);
-}
-//-----------------------------------------------------------------------------
-void smgl_area(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- gr->SetOrigin(0,0,0); gr->Box(); gr->Area(y);
-}
-//-----------------------------------------------------------------------------
-void smgl_area_2(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- gr->SetOrigin(0,0,0); gr->Box(); gr->Area(y,"cbgGyr");
-}
-//-----------------------------------------------------------------------------
-void smgl_stem(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- gr->SetOrigin(0,0,0); gr->Box(); gr->Stem(y,"o");
-}
-//-----------------------------------------------------------------------------
-void smgl_step(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- gr->Box(); gr->Step(y);
-}
-//-----------------------------------------------------------------------------
-void smgl_bars_2(mglGraph *gr)
-{
- mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Bars(ys,"cbgGyr");
-}
-//-----------------------------------------------------------------------------
-void smgl_bars_a(mglGraph *gr)
-{
- mglData ys(10,3); ys.Modify("0.3*sin(pi*(2*x+y/2))+0.1*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Bars(ys,"a");
-}
-//-----------------------------------------------------------------------------
-void smgl_bars_f(mglGraph *gr)
-{
- mglData ys(10,2); ys.Modify("0.24*sin(pi*(2*x+y/2))+0.06*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Bars(ys,"f");
-}
-//-----------------------------------------------------------------------------
-void smgl_bars(mglGraph *gr)
-{
- mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Bars(ys);
-}
-//-----------------------------------------------------------------------------
-void smgl_barh(mglGraph *gr)
-{
- mglData ys(10,3); ys.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
- gr->SetOrigin(0,0,0); gr->Box(); gr->Barh(ys);
-}
-//-----------------------------------------------------------------------------
-void smgl_tens(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- gr->Box(); gr->Tens(y.SubData(-1,0), y.SubData(-1,1));
-}
-//-----------------------------------------------------------------------------
-void smgl_text(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- gr->Box(); gr->Plot(y.SubData(-1,0));
- gr->Text(y,"This is very very long string drawn along a curve",":k");
- gr->Text(y,"Another string drawn above a curve","T:r");
-}
-//-----------------------------------------------------------------------------
-void smgl_region(mglGraph *gr)
-{
- mglData y1,y2; mgls_prepare1d(0, &y1, &y2);
- gr->Box(); gr->Region(y2,y1,"r");
- gr->Plot(y1,"k2"); gr->Plot(y2,"k2");
-}
-//-----------------------------------------------------------------------------
-void smgl_region_2(mglGraph *gr)
-{
- mglData y1,y2; mgls_prepare1d(0, &y1, &y2);
- gr->Box(); gr->Region(y2,y1,"yr");
- gr->Plot(y1,"k2"); gr->Plot(y2,"k2");
-}
-//-----------------------------------------------------------------------------
-void smgl_mark(mglGraph *gr)
-{
- mglData y,y1; mgls_prepare1d(&y,&y1);
- gr->Box(); gr->Mark(y,y1,"bs");
-}
-//-----------------------------------------------------------------------------
-void smgl_traj(mglGraph *gr)
-{
- mglData x,y,y1,y2; mgls_prepare1d(&y,&y1,&y2,&x);
- gr->Box(); gr->Plot(x,y); gr->Traj(x,y,y1,y2);
-}
-//-----------------------------------------------------------------------------
-void smgl_textmark(mglGraph *gr)
-{
- mglData y,y1; mgls_prepare1d(&y,&y1);
- gr->Box(); gr->TextMark(y,y1,"\\gamma");
-}
-//-----------------------------------------------------------------------------
-void smgl_torus(mglGraph *gr)
-{
- mglData y1,y2; mgls_prepare1d(0,&y1,&y2);
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Torus(y1,y2,"pz");
-}
-//-----------------------------------------------------------------------------
-void smgl_tube(mglGraph *gr)
-{
- mglData y,y1; mgls_prepare1d(&y,&y1);
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Tube(y,0.05);
-}
-//-----------------------------------------------------------------------------
-void smgl_tube_3d(mglGraph *gr)
-{
- mglData y,y1,y2,x1,x2; mgls_prepare1d(&y,&y1,&y2,&x1,&x2);
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Tube(y,0.05); gr->Tube(y1,x1,y2,x2);
-}
-//-----------------------------------------------------------------------------
-void smgl_radar(mglGraph *gr)
-{
- mglData yr(10,3); yr.Modify("0.4*sin(pi*(2*x+y/2))+0.1*rnd");
- gr->Box(); gr->Radar(yr,"#");
-}
-//-----------------------------------------------------------------------------
-void smgl_error(mglGraph *gr)
-{
- mglData y; mgls_prepare1d(&y);
- mglData x0(10), y0(10), ex0(10), ey0(10);
- mreal x;
- for(int i=0;i<10;i++)
- {
- x = i/9.;
- x0.a[i] = 2*x-1 + 0.1*mgl_rnd()-0.05;
- y0.a[i] = 0.7*sin(2*M_PI*x)+0.5*cos(3*M_PI*x)+0.2*sin(M_PI*x)+0.2*mgl_rnd()-0.1;
- ey0.a[i]=0.2; ex0.a[i]=0.1;
- }
- gr->Box(); gr->Plot(y.SubData(-1,0));
- gr->Error(x0,y0,ex0,ey0,"ko");
-}
-//-----------------------------------------------------------------------------
-void smgl_chart(mglGraph *gr)
-{
- mglData ch(7,2); for(int i=0;i<7*2;i++) ch.a[i]=mgl_rnd()+0.1;
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Chart(ch,"#");
-}
-//-----------------------------------------------------------------------------
-void smgl_ring_chart(mglGraph *gr)
-{
- mglData ch(7,2); for(int i=0;i<7*2;i++) ch.a[i]=mgl_rnd()+0.1;
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->SetFunc("(y+2)/3*cos(pi*x)","(y+2)/3*sin(pi*x)","");
- gr->Box(); gr->Chart(ch,"bgr cmy#");
-}
-//-----------------------------------------------------------------------------
-void smgl_pie_chart(mglGraph *gr)
-{
- mglData ch(7,2); for(int i=0;i<7*2;i++) ch.a[i]=mgl_rnd()+0.1;
- gr->Light(true); gr->Rotate(40,60); gr->VertexColor(false);
- gr->SetFunc("(y+1)/2*cos(pi*x)","(y+1)/2*sin(pi*x)","");
- gr->Box(); gr->Chart(ch,"bgr cmy#");
-}
-//-----------------------------------------------------------------------------
-void mgls_prepare2d(mglData *a, mglData *b, mglData *v)
-{
- register long i,j,n=50,m=40,i0;
- if(a) a->Create(n,m); if(b) b->Create(n,m);
- if(v) { v->Create(9); v->Fill(-1,1); }
- mreal x,y;
- for(i=0;i<n;i++) for(j=0;j<m;j++)
- {
- x = i/(n-1.); y = j/(m-1.); i0 = i+n*j;
- if(a) a->a[i0] = 0.6*sin(2*M_PI*x)*sin(3*M_PI*y)+0.4*cos(3*M_PI*x*y);
- if(b) b->a[i0] = 0.6*cos(2*M_PI*x)*cos(3*M_PI*y)+0.4*cos(3*M_PI*x*y);
- }
-}
-//-----------------------------------------------------------------------------
-void smgl_grad(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Box(); gr->Grad(a);
- gr->Alpha(true); gr->Dens(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_contt(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Box(); gr->Cont(a,"t");
-}
-//-----------------------------------------------------------------------------
-void smgl_tiles(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2d(&a,&b);
- gr->Box(); gr->TileS(a,b);
-}
-//-----------------------------------------------------------------------------
-void smgl_contd(mglGraph *gr)
-{
- mglData a,v; mgls_prepare2d(&a,0,&v);
- gr->Box(); gr->ContD(v,a); gr->Colorbar(v);
-}
-//-----------------------------------------------------------------------------
-void smgl_dens(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Box(); gr->Dens(a); gr->Colorbar();
-}
-//-----------------------------------------------------------------------------
-void smgl_surf_sl(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Surf(a,"|");
-}
-//-----------------------------------------------------------------------------
-void smgl_surf(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Surf(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_stereo(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true);
- gr->SubPlot(2,1,0); gr->Rotate(40,60+3);
- gr->Box(); gr->Surf(a);
- gr->SubPlot(2,1,1); gr->Rotate(40,60-3);
- gr->Box(); gr->Surf(a);
- gr->Rotate(0,0); // for unrotate in IDTF
-}
-//-----------------------------------------------------------------------------
-void smgl_tile(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Tile(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_belt(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Belt(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_mesh(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Mesh(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_fall(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Fall(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_contf(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->ContF(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_cont(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60);
- gr->Box(); gr->Cont(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_surfc(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2d(&a,&b);
- gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->SurfC(a,b);
-}
-//-----------------------------------------------------------------------------
-void smgl_boxs(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->SetOrigin(0,0,0); gr->Light(true); gr->Rotate(40,60);
- gr->Box(); gr->Boxs(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_surf_fog(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60); gr->Fog(1); gr->Box();
- (type==5 || type==9 || type==10)?gr->Puts(mglPoint(),"Fog not supported") : gr->Surf(a);
- gr->Fog(0);
-}
-//-----------------------------------------------------------------------------
-void smgl_surf_alpha(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60); gr->Alpha(true);
- gr->Box(); gr->Surf(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_axial(mglGraph *gr)
-{
- mglData a; mgls_prepare2d(&a);
- gr->Light(true); gr->Rotate(40,60);
- gr->Alpha(true); gr->VertexColor(false);
- gr->Box(); gr->Axial(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_surfa(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2d(&a,&b);
- gr->Light(true); gr->Rotate(40,60);
- gr->Alpha(true); gr->VertexColor(false);
- gr->Box(); gr->SurfA(a,b);
-}
-//-----------------------------------------------------------------------------
-void mgls_prepare3d(mglData *a, mglData *b)
-{
- register long i,j,k,n=60,m=50,l=40,i0;
- if(a) a->Create(n,m,l); if(b) b->Create(n,m,l);
- mreal x,y,z;
- for(i=0;i<n;i++) for(j=0;j<m;j++) for(k=0;k<l;k++)
- {
- x=2*i/(n-1.)-1; y=2*j/(m-1.)-1; z=2*k/(l-1.)-1; i0 = i+n*(j+m*k);
- if(a) a->a[i0] = -2*(x*x + y*y + z*z*z*z - z*z - 0.1);
- if(b) b->a[i0] = 1-2*tanh((x+y)*(x+y));
- }
-}
-//-----------------------------------------------------------------------------
-/*void smgl_surf3_rgbd(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->VertexColor(true);
- gr->Box(); gr->Surf3(c,"bgrd");
-}*/
-//-----------------------------------------------------------------------------
-void smgl_conta(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->Cont3(c,'x'); gr->Cont3(c,'y'); gr->Cont3(c,'z');
-}
-//-----------------------------------------------------------------------------
-void smgl_dens_xyz(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->DensX(c.Sum("x"),0,-1);
- gr->DensY(c.Sum("y"),0,1); gr->DensZ(c.Sum("z"),0,-1);
-}
-//-----------------------------------------------------------------------------
-void smgl_cont_xyz(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->VertexColor(false);
- gr->Box(); gr->ContX(c.Sum("x"),"",-1);
- gr->ContY(c.Sum("y"),"",1);
- gr->ContZ(c.Sum("z"),"",-1);
-}
-//-----------------------------------------------------------------------------
-void smgl_contfa(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Light(true); gr->VertexColor(false);
- gr->Box(); gr->ContF3(c,'x'); gr->ContF3(c,'y'); gr->ContF3(c,'z');
-}
-//-----------------------------------------------------------------------------
-void smgl_surf3(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false);
- gr->Box(); gr->Surf3(c);
-}
-//-----------------------------------------------------------------------------
-void smgl_surf3a(mglGraph *gr)
-{
- mglData c,d; mgls_prepare3d(&c,&d);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false);
- gr->Box(); gr->Surf3A(c,d);
-}
-//-----------------------------------------------------------------------------
-void smgl_surf3c(mglGraph *gr)
-{
- mglData c,d; mgls_prepare3d(&c,&d);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false);
- gr->Box(); gr->Surf3C(c,d);
-}
-//-----------------------------------------------------------------------------
-void smgl_densa(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Alpha(true); gr->VertexColor(false);
- gr->SetOrigin(0,0,0); gr->Axis();
- gr->Box(); gr->Dens3(c,'x'); gr->Dens3(c,'y'); gr->Dens3(c,'z');
-}
-//-----------------------------------------------------------------------------
-void smgl_cloud(mglGraph *gr)
-{
- mglData c; mgls_prepare3d(&c);
- gr->Rotate(40,60); gr->Alpha(true); gr->VertexColor(false);
- gr->Box(); gr->Cloud(c,"wyrRk");
-}
-//-----------------------------------------------------------------------------
-void mgls_prepare2v(mglData *a, mglData *b)
-{
- register long i,j,n=20,m=30,i0;
- if(a) a->Create(n,m); if(b) b->Create(n,m);
- mreal x,y;
- for(i=0;i<n;i++) for(j=0;j<m;j++)
- {
- x=i/(n-1.); y=j/(m-1.); i0 = i+n*j;
- if(a) a->a[i0] = 0.6*sin(2*M_PI*x)*sin(3*M_PI*y)+0.4*cos(3*M_PI*x*y);
- if(b) b->a[i0] = 0.6*cos(2*M_PI*x)*cos(3*M_PI*y)+0.4*cos(3*M_PI*x*y);
- }
-}
-//-----------------------------------------------------------------------------
-void smgl_vect(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Box(); gr->Vect(a,b);
-}
-//-----------------------------------------------------------------------------
-void smgl_vectl(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Box(); gr->Vect(a,b,"","value 49");
-}
-//-----------------------------------------------------------------------------
-void smgl_vectc(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Box(); gr->Vect(a,b,"","value 50");
-}
-//-----------------------------------------------------------------------------
-void smgl_flow(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Box(); gr->Flow(a,b);
-}
-//-----------------------------------------------------------------------------
-void smgl_pipe2(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Box(); gr->Pipe(a,b);
-}
-//-----------------------------------------------------------------------------
-void smgl_pipe(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Light(true); gr->Compression(true); // try to save space
- gr->Box(); gr->Pipe(a,b);
- gr->Compression(false); //put setting back
-}
-//-----------------------------------------------------------------------------
-void smgl_dew(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Light(true); gr->Compression(true); // try to save space
- gr->DoubleSided(false); // try to improve performance
- gr->Box(); gr->SetMeshNum(20); gr->Dew(a,b);
- gr->DoubleSided(true);
- gr->Compression(false); //put setting back
-}
-//-----------------------------------------------------------------------------
-void smgl_dew2(mglGraph *gr)
-{
- mglData a,b; mgls_prepare2v(&a,&b);
- gr->Rotate(40,60); gr->Light(true); gr->Compression(true); // try to save space
- gr->DoubleSided(false); // try to improve performance
- gr->Box(); gr->SetMeshNum(10); gr->Dew(a,b);
- gr->DoubleSided(true);
- gr->Compression(false); //put setting back
-}
-//-----------------------------------------------------------------------------
-void mgls_prepare3v(mglData *ex, mglData *ey, mglData *ez)
-{
- register long i,j,k,n=10,i0;
- if(!ex || !ey || !ez) return;
- ex->Create(n,n,n); ey->Create(n,n,n); ez->Create(n,n,n);
- mreal x,y,z, r1,r2;
- for(i=0;i<n;i++) for(j=0;j<n;j++) for(k=0;k<n;k++)
- {
- x=2*i/(n-1.)-1; y=2*j/(n-1.)-1; z=2*k/(n-1.)-1; i0 = i+n*(j+k*n);
- r1 = pow(x*x+y*y+(z-0.3)*(z-0.3),1.5);
- r2 = pow(x*x+y*y+(z+0.3)*(z+0.3),1.5);
- ex->a[i0]=0.2*x/r1 - 0.2*x/r2;
- ey->a[i0]=0.2*y/r1 - 0.2*y/r2;
- ez->a[i0]=0.2*(z-0.3)/r1 - 0.2*(z+0.3)/r2;
- }
-}
-//-----------------------------------------------------------------------------
-void smgl_flow3(mglGraph *gr)
-{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60);
- gr->Box(); gr->Box(); gr->Flow(ex,ey,ez,"bwr");
-}
-//-----------------------------------------------------------------------------
-void smgl_vect3(mglGraph *gr)
-{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60);
- gr->Box(); gr->Box(); gr->Vect(ex,ey,ez,"bwr");
-}
-//-----------------------------------------------------------------------------
-void smgl_vectl3(mglGraph *gr)
-{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60);
- gr->Box(); gr->Box(); gr->Vect(ex,ey,ez,"bwr","value 49");
-}
-//-----------------------------------------------------------------------------
-void smgl_vectc3(mglGraph *gr)
-{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60);
- gr->Box(); gr->Box(); gr->Vect(ex,ey,ez,"bwr","value 50");
-}
-//-----------------------------------------------------------------------------
-void smgl_pipe3(mglGraph *gr)
-{
- mglData ex,ey,ez; mgls_prepare3v(&ex,&ey,&ez);
- gr->Rotate(40,60); gr->Light(true);
- gr->Compression(true); // try to save space
- gr->Clf(); gr->Box(); gr->Pipe(ex,ey,ez);
- gr->Compression(false); // put setting back
-}
-//-----------------------------------------------------------------------------
-void smgl_crust(mglGraph *gr)
-{
- mglData pnts("hotdogs.pts"); pnts.Norm(-1,1,true);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->Clf(); gr->Box(); gr->Crust(pnts.SubData(0),pnts.SubData(1),pnts.SubData(2));
-}
-//-----------------------------------------------------------------------------
-void smgl_dots(mglGraph *gr)
-{
- mglData pnts("hotdogs.pts"); pnts.Norm(-1,1,true);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->Clf(); gr->Box(); gr->Dots(pnts.SubData(0),pnts.SubData(1),pnts.SubData(2));
-}
-//-----------------------------------------------------------------------------
-void smgl_legend(mglGraph *gr)
-{
- mglData f(50,3);
- mreal x;
- for(int i=0;i<50;i++)
- {
- x=i/49.;
- f.a[i]=sin(2*M_PI*x*x);
- f.a[i+50]=sin(2*M_PI*x);
- f.a[i+100]=sin(2*M_PI*sqrt(x));
- }
- gr->SetRanges(mglPoint(0), mglPoint(1));
- gr->Box(); gr->Plot(f); gr->Axis("xy");
- if(type==5 || type==9 || type==10) gr->SetLegendBox(false);
- gr->AddLegend("sin(\\pi {x^2})","b"); gr->AddLegend("sin(\\pi x)","g*");
- gr->AddLegend("sin(\\pi \\sqrt{x})","r+"); gr->Legend();
-}
-//-----------------------------------------------------------------------------
-void smgl_type0(mglGraph *gr) // TranspType = 0
-{
- if(type==5 || type==9 || type==10) return;
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a; mgls_prepare2d(&a);
- gr->SetTranspType(0); gr->Clf();
- gr->SubPlot(2,2,0); gr->Rotate(40,60); gr->Surf(a); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60); gr->Dens(a); gr->Box();
- gr->SubPlot(2,2,2); gr->Rotate(40,60); gr->Cont(a); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60); gr->Axial(a); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_type1(mglGraph *gr) // TranspType = 1
-{
- if(type==5 || type==9 || type==10) return;
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a; mgls_prepare2d(&a);
- gr->SetTranspType(1); gr->Clf();
- gr->SubPlot(2,2,0); gr->Rotate(40,60); gr->Surf(a); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60); gr->Dens(a); gr->Box();
- gr->SubPlot(2,2,2); gr->Rotate(40,60); gr->Cont(a); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60); gr->Axial(a); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_type2(mglGraph *gr) // TranspType = 2
-{
- if(type==5 || type==9 || type==10) return;
- gr->Alpha(true); gr->Light(true); gr->AddLight(0,mglPoint(0,0,1));
- mglData a; mgls_prepare2d(&a);
- gr->SetTranspType(2); gr->Clf();
- gr->SubPlot(2,2,0); gr->Rotate(40,60); gr->Surf(a); gr->Box();
- gr->SubPlot(2,2,1); gr->Rotate(40,60); gr->Dens(a); gr->Box();
- gr->SubPlot(2,2,2); gr->Rotate(40,60); gr->Cont(a); gr->Box();
- gr->SubPlot(2,2,3); gr->Rotate(40,60); gr->Axial(a); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_molecule(mglGraph *gr) // example of moleculas
-{
- gr->VertexColor(false); gr->Compression(false); // per-vertex colors and compression are detrimental to transparency
- gr->DoubleSided(false); // we do not get into atoms, while rendering internal surface has negative impact on trasparency
- gr->Alpha(true); gr->Light(true);
-
- gr->SubPlot(2,2,0);
- gr->StartGroup("Methane");
- gr->StartGroup("MetaneLabel");
- gr->Puts(mglPoint(0,1.2),"Methane, CH_4",0,-2);
- gr->EndGroup();
- gr->Rotate(60,120);
- gr->Sphere(mglPoint(0,0,0),0.25,"k");
- gr->Drop(mglPoint(0,0,0),mglPoint(0,0,1),0.35,"h",1,2);
- gr->Sphere(mglPoint(0,0,0.7),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(-0.94,0,-0.33),0.35,"h",1,2);
- gr->Sphere(mglPoint(-0.66,0,-0.23),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.47,0.82,-0.33),0.35,"h",1,2);
- gr->Sphere(mglPoint(0.33,0.57,-0.23),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.47,-0.82,-0.33),0.35,"h",1,2);
- gr->Sphere(mglPoint(0.33,-0.57,-0.23),0.25,"g");
- gr->EndGroup();
-
- gr->SubPlot(2,2,1);
- gr->StartGroup("Water");
- gr->StartGroup("WaterLabel");
- gr->Puts(mglPoint(0,1.2),"Water, H_{2}O",0,-2);
- gr->EndGroup();
- gr->Rotate(60,100);
- gr->StartGroup("Water_O");
- gr->Sphere(mglPoint(0,0,0),0.25,"r");
- gr->EndGroup();
- gr->StartGroup("Water_Bond_1");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.3,0.5,0),0.3,"m",1,2);
- gr->EndGroup();
- gr->StartGroup("Water_H_1");
- gr->Sphere(mglPoint(0.3,0.5,0),0.25,"g");
- gr->EndGroup();
- gr->StartGroup("Water_Bond_2");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.3,-0.5,0),0.3,"m",1,2);
- gr->EndGroup();
- gr->StartGroup("Water_H_2");
- gr->Sphere(mglPoint(0.3,-0.5,0),0.25,"g");
- gr->EndGroup();
- gr->EndGroup();
-
- gr->SubPlot(2,2,2);
- gr->StartGroup("Oxygen");
- gr->StartGroup("OxygenLabel");
- gr->Puts(mglPoint(0,1.2),"Oxygen, O_2",0,-2);
- gr->EndGroup();
- gr->Rotate(60,120);
- gr->Drop(mglPoint(0,0.5,0),mglPoint(0,-0.3,0),0.3,"m",1,2);
- gr->Sphere(mglPoint(0,0.5,0),0.25,"r");
- gr->Drop(mglPoint(0,-0.5,0),mglPoint(0,0.3,0),0.3,"m",1,2);
- gr->Sphere(mglPoint(0,-0.5,0),0.25,"r");
- gr->EndGroup();
-
- gr->SubPlot(2,2,3);
- gr->StartGroup("Ammonia");
- gr->StartGroup("AmmoniaLabel");
- gr->Puts(mglPoint(0,1.2),"Ammonia, NH_3",0,-2);
- gr->EndGroup();
- gr->Rotate(60,120);
- gr->Sphere(mglPoint(0,0,0),0.25,"b");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.33,0.57,0),0.32,"n",1,2);
- gr->Sphere(mglPoint(0.33,0.57,0),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(0.33,-0.57,0),0.32,"n",1,2);
- gr->Sphere(mglPoint(0.33,-0.57,0),0.25,"g");
- gr->Drop(mglPoint(0,0,0),mglPoint(-0.65,0,0),0.32,"n",1,2);
- gr->Sphere(mglPoint(-0.65,0,0),0.25,"g");
- gr->EndGroup();
- gr->DoubleSided( true ); // put back
-}
-//-----------------------------------------------------------------------------
-void smgl_ternary(mglGraph *gr) // flag #
-{
- mglData x(50),y(50),rx(10),ry(10), a(20,30);
- a.Modify("4*x*y");
- x.Modify("0.25*(1+cos(2*pi*x))");
- y.Modify("0.25*(1+sin(2*pi*x))");
- rx.Modify("rnd"); ry.Modify("(1-v)*rnd",rx);
-
- gr->Puts(mglPoint(-0.8,1.3), "Ternary plot (x+y+t=1)");
- gr->Ternary(true);
- gr->Plot(x,y,"r2");
- gr->Plot(rx,ry,"q^ ");
- gr->Cont(a,"BbcyrR");
- gr->Line(mglPoint(0.5,0), mglPoint(0,0.75), "g2");
- gr->Axis(); gr->Grid("xyz","B;");
- gr->Label('x',"x comp.");
- gr->Label('y',"y comp.");
- gr->Label('t',"t comp.");
- gr->Ternary(false);
-}
-//-----------------------------------------------------------------------------
-void smgl_drops(mglGraph *gr) // flag #
-{
- gr->VertexColor(false); // not strictly required, but looks better imho
- gr->Light(true); gr->Alpha(false);
- gr->Puts(mglPoint(-1,1.2),"sh=0");
- gr->Drop(mglPoint(-1,0),mglPoint(0,1),0.5,"r",0);
- gr->Puts(mglPoint(-0.33,1.2),"sh=0.33");
- gr->Drop(mglPoint(-0.33,0),mglPoint(0,1),0.5,"r",0.33);
- gr->Puts(mglPoint(0.33,1.2),"sh=0.67");
- gr->Drop(mglPoint(0.33,0),mglPoint(0,1),0.5,"r",0.67);
- gr->Puts(mglPoint(1,1.2),"sh=1");
- gr->Drop(mglPoint(1,0),mglPoint(0,1),0.5,"r",1);
- gr->Ball(mglPoint(-1,0,1),'k');
- gr->Ball(mglPoint(-0.33,0,1),'k');
- gr->Ball(mglPoint(0.33,0,1),'k');
- gr->Ball(mglPoint(1,0,1),'k');
- gr->Line(mglPoint(-1,0,1),mglPoint(1,0,1),"b");
-}
-//-----------------------------------------------------------------------------
-void smgl_fish(mglGraph *gr) // flag #
-{
- gr->VertexColor(false); // the model is big even without information on point colors
- gr->Compression(true); // fishes are important, not their scales
- gr->DoubleSided(false); // we do not get into drops, while rendering internal surfaces may have negative impact on performace
- gr->Light(true); gr->Alpha(false);
- mglData a(10,10), b(10,10), x(10,10), y(10,10);
- a.Modify("0.3*x+rnd"); x.Modify("x+0.1*rnd");
- b.Modify("0.3*y+rnd"); y.Modify("y+0.1*rnd");
-
- gr->Clf();
- gr->SetRanges(mglPoint(0,0),mglPoint(1.1,1.1));
- gr->Light(true);
- gr->Dew(x,y,a,b,"BbcyrR");
- gr->Compression(false); gr->DoubleSided(true);
-}
-//-----------------------------------------------------------------------------
-void smgl_mirror(mglGraph *gr) // flag #
-{
- gr->VertexColor(true); gr->TextureColor(false); // Let us use pre-lighting for this example
- mglData a(30,40),x(30),y1(40),y2(40);
- a.Modify("pi*(1-2*x)*exp(-4*y^2-4*(2*x-1)^2)");
- x.Fill(-1,1); y1.Fill(0,1); y2.Fill(0,-1);
-
- gr->Alpha(false); gr->Rotate(40,60);
- gr->Light(true); gr->Box();
- gr->Surf(x,y1,a,"r"); gr->Surf(x,y2,a,"b");
- gr->VertexColor(false); gr->TextureColor(true); // set settings back
-}
-//-----------------------------------------------------------------------------
-void smgl_semilog(mglGraph *gr) // semi-log axis
-{
- mglData x(2000), y(2000);
- x.Modify("0.01/(x+10^(-5))"); y.Modify("sin(1/v)",x);
-
- gr->SetRanges(mglPoint(0.01,-1),mglPoint(1000,1));
- gr->SetFunc("lg(x)",0,0); gr->SetTicks('x', 0); gr->Box();
- gr->Plot(x,y,"b2");
- gr->Axis(); gr->Grid("xy","g");
- gr->Label('x',"x",0); gr->Label('y', "y = sin 1/x",0);
-}
-//-----------------------------------------------------------------------------
-void smgl_loglog(mglGraph *gr) // log-log axis
-{
- mglData x(2000), y(2000);
- x.Modify("pow(10,6*x-3)"); y.Modify("sqrt(1+v^2)",x);
-
- gr->SetRanges(mglPoint(0.001,0.1),mglPoint(1000,1000));
- gr->SetFunc("lg(x)","lg(y)",0);
- gr->SetTicks('x', 0);
- gr->SetTicks('y', 0);
- gr->Box(); gr->Axis(); gr->Grid("xy","g;");
- gr->Plot(x,y,"b2");
- gr->Label('x',"x",0); gr->Label('y', "y=\\sqrt{1+x^2}",0);
-}
-//-----------------------------------------------------------------------------
-void smgl_fit(mglGraph *gr) // nonlinear fitting
-{
- mglData rnd(100), in(100), res;
- gr->Fill(rnd,"0.4*rnd+0.1+sin(2*pi*x)");
- gr->Fill(in,"0.3+sin(2*pi*x)");
-
- gr->SetRanges(mglPoint(-1,-2), mglPoint(1,2));
- gr->Plot(rnd, ". ");
- gr->Box();
-
- mreal ini[3] = {1,1,3};
- mglData Ini(3,ini);
- gr->Fit(res, rnd, "a+b*sin(c*x)", "abc", Ini);
- gr->Plot(res, "r");
- gr->Plot(in, "b");
- gr->Puts(mglPoint(-1, -1.3), "fitted:", "L:r", -1);
- gr->PutsFit(mglPoint(0, -1.8), "y = ", "C:r", -1);
- gr->Puts(mglPoint(0, 2.2), "initial: y = 0.3+sin(2\\pi x)", "C:b", -1);
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(0,0,0);
-}
-//-----------------------------------------------------------------------------
-#include "mgl/parser.h"
-void smgl_parser(mglGraph *gr) // example of MGL parsing
-{
- mreal a[100]; // let a_i = sin(4*pi*x), x=0...1
- for(int i=0;i<100;i++)a[i]=sin(4*M_PI*i/99);
- mglParse *parser = new mglParse;
- mglData &d =(parser->AddVar("dat"))->d;
- d.Set(a,100); // set data to variable
- parser->Execute(gr, "plot dat; xrange 0 1\nbox\naxis");
- // you may break script at any line do something
- // and continue after that
- parser->Execute(gr, "xlabel 'x'\nylabel 'y'\nbox");
- // also you may use cycles or conditions in script
- parser->Execute(gr, "for $0 -1 1 0.1\nline 0 0 -1 $0 'r'\nnext");
- delete parser;
-}
-//-----------------------------------------------------------------------------
-void smgl_2_axis(mglGraph *gr) // 2 axis
-{
- mglData y1,y2; mgls_prepare1d(0,&y2,&y1);
- gr->SetRanges(mglPoint(-1,-1,-1),mglPoint(1,1,1)); gr->SetOrigin(-1,-1,-1);
- gr->Axis(); gr->Label('y',"axis 1",0); gr->Plot(y1,"b");
- // set up second axis
- gr->SetRanges(mglPoint(0,0,0),mglPoint(1,1,1)); gr->SetOrigin(1,1,1);
- gr->Axis(); gr->Label('y',"axis 2",0); gr->Stem(y2,"r");
-}
-//-----------------------------------------------------------------------------
-void smgl_flow_dens(mglGraph *gr) // flow threads and density plot
-{
- mglData a,b,d; mgls_prepare2v(&a,&b); d = a;
- for(int i=0;i<a.nx*a.ny;i++) d.a[i] = hypot(a.a[i],b.a[i]);
- gr->Flow(a,b,"br"); gr->Dens(d,"BbcyrR"); gr->Box();
-}
-//-----------------------------------------------------------------------------
-void smgl_surf_cont(mglGraph *gr) // contour lines over surface
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60);
- gr->Box(); gr->Surf(a,"kw");
- gr->SetRange('c',-1,0); gr->Cont(a,"w");
- gr->SetRange('c', 0,1); gr->Cont(a,"k");
-}
-//-----------------------------------------------------------------------------
-void smgl_mesh_cont(mglGraph *gr) // contours under mesh
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60);
- gr->Box(); gr->Mesh(a); gr->Cont(a, 0, "zrange -1 -1");
-}
-//-----------------------------------------------------------------------------
-void smgl_surf_cont_y(mglGraph *gr) // contours on the surface
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true);
- gr->Box(); gr->Surf(a); gr->Cont(a,"y");
-}
-//-----------------------------------------------------------------------------
-void smgl_surf_cont_fog(mglGraph *gr) // contours on the surface in fog
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true); gr->Fog(1,0.1);
- gr->Box(); gr->Surf(a); gr->Cont(a,"y");
-}
-//-----------------------------------------------------------------------------
-void smgl_surf_caxis(mglGraph *gr) // caxis and the surface
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true);
- gr->SetRange('c',0,1); gr->Box(); gr->Surf(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_surf_cut(mglGraph *gr) // cutting
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true);
- gr->SetRanges(mglPoint(-1,-1,0),mglPoint(1,1,1)); gr->SetCut(false);
- gr->Box(); gr->Surf(a);
-}
-//-----------------------------------------------------------------------------
-void smgl_several_light(mglGraph *gr) // several light sources
-{
- mglData a; mgls_prepare2d(&a);
- gr->Rotate(40,60); gr->Light(true);
- gr->AddLight(1,mglPoint(0,1,0),'c'); gr->AddLight(2,mglPoint(1,0,0),'y');
- gr->AddLight(3,mglPoint(0,-1,0),'m');
- gr->Box(); gr->Surf(a,"h");
-// gr->Light(1,false); gr->Light(2,false); gr->Light(3,false);
-}
-//-----------------------------------------------------------------------------
-void mgls_preparecc(mglData *c)
-{
- register long i,j,k,n=61,m=51,l=40,i0;
- if(!c) return; c->Create(n,m,l);
- mreal x,y,z;
- for(i=0;i<n;i++) for(j=0;j<m;j++) for(k=0;k<l;k++)
- {
- x=2*i/(n-1.)-1; y=2*j/(m-1.)-1; z=2*k/(l-1.)-1; i0 = i+n*(j+m*k);
- c->a[i0] = -2*(x*x + y*y + z*z*z*z - z*z - 0.1);
- }
-}
-//-----------------------------------------------------------------------------
-void smgl_cutminmax2(mglGraph *gr) // CutMin CutMax example
-{
- mglData c; mgls_preparecc(&c);
- mglData v(10); v.Fill(-0.5,1);
- gr->Rotate(40,60); gr->Light(true);
- gr->VertexColor(false); gr->Compression(false);
- gr->SetCutBox(mglPoint(0,-1,-1), mglPoint(1,0,1.1));
- gr->Box(); gr->Surf3(-0.5,c);
- gr->ContF3(v,c,'x',-1); gr->ContF3(v,c,'y',-1);
- gr->ContF3(v,c,'z',0); gr->ContF3(v,c,'z',39);
-}
-//-----------------------------------------------------------------------------
-void smgl_cutminmax(mglGraph *gr) // CutMin CutMax example
-{
- mglData c; mgls_preparecc(&c);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false); gr->Compression(false);
- gr->SetCutBox(mglPoint(0,-1,-1), mglPoint(1,0,1.1));
- gr->Box(); gr->Surf3(c);
-}
-//-----------------------------------------------------------------------------
-void smgl_surf3_cutoff(mglGraph *gr) // CutMin CutMax example
-{
- mglData c; mgls_preparecc(&c);
- gr->Rotate(40,60); gr->Light(true); gr->Alpha(true);
- gr->VertexColor(false); gr->Compression(false);
- gr->CutOff("(z>(x+0.5*y-1)^2-1) & (z>(x-0.5*y-1)^2-1)");
- gr->Box(); gr->Surf3(c);
-}
-//-----------------------------------------------------------------------------
-void smgl_boxplot(mglGraph *gr) // flow threads and density plot
-{
- mglData a(10,7); a.Modify("(2*rnd-1)^3/2");
- gr->Box(); gr->BoxPlot(a); gr->Plot(a," ko");
-}
-//-----------------------------------------------------------------------------
-int main(int argc,char **argv)
-{
- const char *suf = "";
- char name[256]="";
- int ch;
-// mglGraphIDTF u3d;
- mglGraph *gr = NULL;
- mglSample *s=samp;
- while(( ch = getopt_long_only(argc, argv, "", longopts, NULL)) != -1)
- switch(ch)
- {
- case 0: break;
- case 'w': width =atoi(optarg); break;
- case 'h': height=atoi(optarg); break;
- case 'k': strcpy(name, optarg); break;
- case 't': mglNumThr=atoi(optarg); break;
- case 'l':
- while(s->name[0]) { printf("%s ",s->name); s++; }
- printf("\n"); return 0;
- case '?':
- default: usage(); return 0;
- }
-
- gr = new mglGraph;
-// if(type==5 || type==9 || type==10) { u3d.unrotate_flag = true; gr = &u3d; }
-
- if(mini) { gr->SetSize(200,133); suf = "_sm"; }
- else if(big)
- { gr->SetSize(1200,800); suf = "_lg"; }
- else gr->SetSize(width,height);
-
- if(dotest)
- {
-// gr->SetSize(600,600);
- mgl_set_test_mode(true); test(gr);
- gr->WritePNG("test.png","",false);
- gr->WriteEPS("test.eps");
- return 0;
- }
-
- if(srnd) mgl_srnd(1);
- gr->VertexColor(false); gr->TextureColor(true); gr->Compression(false);
- if(name[0]==0) while(s->name[0]) // all samples
- {
- gr->DefaultPlotParam(); gr->Clf();
- s->func(gr); save(gr, s->name, suf);
- fflush(stdout); s++;
- }
- else // manual sample
- {
- mglSample tst; tst.name=name;
- int i=0;
- for(i=0;samp[i].name[0];i++); // determine the number of samples
- s = (mglSample *) bsearch(&tst, samp, i, sizeof(mglSample), mgl_cmd_smp);
- if(s)
- {
- gr->DefaultPlotParam(); gr->Clf();
- s->func(gr); save(gr, s->name, suf);
- }
- else printf("no sample %s\n",name);
- }
- printf("\n"); return 0;
-}
-//-----------------------------------------------------------------------------
-mglSample samp[] = {
- {"2_axis", smgl_2_axis},
- {"area", smgl_area},
- {"area_2", smgl_area_2},
- {"axial", smgl_axial},
- {"barh", smgl_barh},
- {"bars", smgl_bars},
- {"bars_2", smgl_bars_2},
- {"bars_a", smgl_bars_a},
- {"bars_f", smgl_bars_f},
- {"belt", smgl_belt},
- {"boxplot", smgl_boxplot},
- {"boxs", smgl_boxs},
- {"chart", smgl_chart},
- {"cloud", smgl_cloud},
- {"color_schemes", smgl_color_schemes},
- {"colors", smgl_colors},
- {"column", smgl_column},
- {"cont", smgl_cont},
- {"cont_xyz", smgl_cont_xyz},
- {"conta", smgl_conta},
- {"contd", smgl_contd},
- {"contf", smgl_contf},
- {"contfa", smgl_contfa},
- {"contt", smgl_contt},
- {"crust", smgl_crust},
- {"cutminmax", smgl_cutminmax},
- {"cutminmax2", smgl_cutminmax2},
- {"dens", smgl_dens},
- {"dens_xyz", smgl_dens_xyz},
- {"densa", smgl_densa},
- {"dew", smgl_dew},
- {"dew2", smgl_dew2},
- {"dots", smgl_dots},
- {"drops", smgl_drops},
- {"envelop", smgl_envelop},
- {"error", smgl_error},
- {"fall", smgl_fall},
- {"fish", smgl_fish},
- {"fit", smgl_fit},
- {"flow", smgl_flow},
- {"flow3", smgl_flow3},
- {"flow_dens", smgl_flow_dens},
- {"fonts", smgl_fonts},
- {"grad", smgl_grad},
- {"legend", smgl_legend},
- {"loglog", smgl_loglog},
- {"map", smgl_map},
- {"mark", smgl_mark},
- {"mesh", smgl_mesh},
- {"mesh_cont", smgl_mesh_cont},
- {"mirror", smgl_mirror},
-// {"molecule", smgl_molecule}, // TODO: enable sample later
-// {"parser", smgl_parser}, // TODO: enable sample later
- {"pde", smgl_pde},
- {"pie_chart", smgl_pie_chart},
- {"pipe", smgl_pipe},
- {"pipe2", smgl_pipe2},
- {"pipe3", smgl_pipe3},
- {"plot", smgl_plot},
- {"qo2d", smgl_qo2d},
- {"radar", smgl_radar},
- {"region", smgl_region},
- {"region_2", smgl_region_2},
- {"ring_chart", smgl_ring_chart},
- {"sample1", smgl_sample1},
- {"sample2", smgl_sample2},
- {"sample3", smgl_sample3},
- {"sample4", smgl_sample4},
- {"sample5", smgl_sample5},
- {"sample6", smgl_sample6},
- {"sample7", smgl_sample7},
- {"sample8", smgl_sample8},
- {"sample9", smgl_sample9},
- {"samplea", smgl_samplea},
- {"sampleb", smgl_sampleb},
- {"samplec", smgl_samplec},
- {"sampled", smgl_sampled},
-// {"samplee", smgl_samplee}, // TODO: enable sample later
- {"semilog", smgl_semilog},
- {"several_light", smgl_several_light},
- {"sew", smgl_sew},
- {"stem", smgl_stem},
- {"step", smgl_step},
- {"stereo", smgl_stereo},
- {"stfa", smgl_stfa},
- {"stick", smgl_stick},
- {"surf", smgl_surf},
- {"surf3", smgl_surf3},
- {"surf3_cutoff", smgl_surf3_cutoff},
- {"surf3a", smgl_surf3a},
- {"surf3c", smgl_surf3c},
- {"surf_alpha", smgl_surf_alpha},
- {"surf_caxis", smgl_surf_caxis},
- {"surf_cont", smgl_surf_cont},
- {"surf_cont_fog", smgl_surf_cont_fog},
- {"surf_cont_y", smgl_surf_cont_y},
- {"surf_cut", smgl_surf_cut},
- {"surf_fog", smgl_surf_fog},
- {"surf_sl", smgl_surf_sl},
- {"surfa", smgl_surfa},
- {"surfc", smgl_surfc},
- {"tens", smgl_tens},
- {"ternary", smgl_ternary},
- {"text", smgl_text},
- {"textmark", smgl_textmark},
- {"tile", smgl_tile},
- {"tiles", smgl_tiles},
- {"torus", smgl_torus},
- {"traj", smgl_traj},
- {"tube", smgl_tube},
- {"tube_3d", smgl_tube_3d},
- {"tval", smgl_tval},
- {"type0", smgl_type0},
- {"type1", smgl_type1},
- {"type2", smgl_type2},
- {"vect", smgl_vect},
- {"vect3", smgl_vect3},
- {"vectc", smgl_vectc},
- {"vectc3", smgl_vectc3},
- {"vectl", smgl_vectl},
- {"vectl3", smgl_vectl3},
- {"", NULL}};
diff --git a/test.mgl b/test.mgl
new file mode 100644
index 0000000..3ecee39
--- /dev/null
+++ b/test.mgl
@@ -0,0 +1,7 @@
+rotate 50 60
+box
+fsurf 'x*y'
+fsurf 'x^2'
+fplot 't' 't' '1-t^2' 'r'
+
+
diff --git a/texinfo/CMakeLists.txt b/texinfo/CMakeLists.txt
index c96ff7c..9ee13e5 100644
--- a/texinfo/CMakeLists.txt
+++ b/texinfo/CMakeLists.txt
@@ -5,13 +5,13 @@
if(use_doc)
add_custom_command(OUTPUT ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
COMMAND LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/mgl ${CMAKE_BINARY_DIR}/examples/mgl_example
- COMMAND echo "" > ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
- MAIN_DEPENDENCY ${CMAKE_BINARY_DIR}/examples/mgl_example
+ COMMAND touch ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
+# MAIN_DEPENDENCY ${CMAKE_BINARY_DIR}/examples/mgl_example
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/texinfo/png
)
- set_source_files_properties(${CMAKE_BINARY_DIR}/examples/mgl_example PROPERTIES GENERATED 1)
- ADD_CUSTOM_TARGET(gen_all_png DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/png/all.png)
- ADD_DEPENDENCIES(gen_all_png mgl_example)
+# set_source_files_properties(${CMAKE_BINARY_DIR}/examples/mgl_example PROPERTIES GENERATED 1)
+# ADD_CUSTOM_TARGET(gen_all_png DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/png/all.png)
+# ADD_DEPENDENCIES(gen_all_png mgl_example)
set(list_texi_files_en mathgl_en.texi mgl_en.texi overview_en.texi example_en.texi ex_mgl_en.texi
core_en.texi widget_en.texi data_en.texi other_en.texi samples_en.texi appendix_en.texi fdl.texi)
set(list_texi_files_ru mathgl_ru.texi mgl_ru.texi overview_ru.texi example_ru.texi ex_mgl_ru.texi
@@ -21,7 +21,7 @@ if(use_doc)
COMMAND ${findth} --split=chapter mathgl_en.texi -o mathgl_en
COMMAND ${findth} --split=chapter mgl_en.texi -o mgl_en
COMMAND ${findmi} --no-validate mathgl_en.texi
-# DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
+ DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
DEPENDS ${list_texi_files_en}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/texinfo
)
@@ -29,7 +29,7 @@ if(use_doc)
COMMAND ${findth} --split=chapter mathgl_ru.texi -o mathgl_ru
COMMAND ${findth} --split=chapter mgl_ru.texi -o mgl_ru
COMMAND ${findmi} --no-validate mathgl_ru.texi
-# DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
+ DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
DEPENDS ${list_texi_files_ru}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/texinfo
)
@@ -37,19 +37,19 @@ if(use_doc)
COMMAND ${findtp} mathgl_en.texi
COMMAND ${findtp} mathgl_en.texi
COMMAND ${findtp} mathgl_en.texi
-# DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
+ DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/png/all.png
DEPENDS ${list_texi_files_en}
DEPENDS ${list_texi_files_ru}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/texinfo
)
add_custom_target(documentation ALL
DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/mathgl_en.info
- # DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/mathgl_en.pdf
- # DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/mathgl_ru.info
+# DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/mathgl_en.pdf
+# DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/mathgl_ru.info
# DEPENDS ${CMAKE_SOURCE_DIR}/texinfo/mathgl_ru.pdf
)
add_custom_target(clean
- COMMAND rm -f mathgl*.[hali]* mathgl*.?? mathgl_*/* *~ png/*.png
+ COMMAND rm -f mathgl*.[hali]* mathgl*.?? mathgl_*/* *~ #png/*.png
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/texinfo
)
install(DIRECTORY ./ DESTINATION ${MGL_DOC_PATH}
diff --git a/texinfo/concept_en.texi b/texinfo/concept_en.texi
index 8bd1cc4..c6e4f0d 100644
--- a/texinfo/concept_en.texi
+++ b/texinfo/concept_en.texi
@@ -199,10 +199,6 @@ Sets alpha value (transparency) of the plot. The value should be in range [0, 1]
@deffn {MGL option} ambient @code{val}
Sets brightness of ambient light for the plot. The value should be in range [0, 1]. See also @ref{ambient}.
@end deffn
- at cindex crange
- at deffn {MGL option} crange @code{val1 val2}
-Sets boundaries of color change for the plot. See also @ref{crange}.
- at end deffn
@cindex xrange
@deffn {MGL option} xrange @code{val1 val2}
Sets boundaries of x coordinate change for the plot. See also @ref{xrange}.
diff --git a/texinfo/core_en.texi b/texinfo/core_en.texi
index dbfc6e5..c9fe7ea 100644
--- a/texinfo/core_en.texi
+++ b/texinfo/core_en.texi
@@ -181,7 +181,7 @@ Sets the brightness of ambient light. The value should be in range [0,1].
@deftypefnx {Method on @code{mglGraph}} @code{void} Fog (@code{float} d, @code{float} dz=@code{0.25})
@deftypefnx {C function} @code{void} mgl_set_fog (@code{HMGL} gr, @code{float} d, @code{float} dz)
@end ifclear
-Function imitate a fog in the plot. Fog start from relative distance @var{dz} from view point and its density growths exponentially in depth. So that the fog influence is determined by law ~ 1-exp(- at emph{d*z}). Here @emph{z} is normalized to 1 depth of the plot. If value @var{d}=@code{0} then the fog is absent. @sref{Surface in fog sample}
+Function imitate a fog in the plot. Fog start from relative distance @var{dz} from view point and its density growths exponentially in depth. So that the fog influence is determined by law ~ 1-exp(- at emph{d*z}). Here @emph{z} is normalized to 1 depth of the plot. If value @var{d}=@code{0} then the fog is absent. Note, that fog was applied at stage of image creation, not at stage of drawing. @sref{Surface in fog sample}
@end deftypefn
@c ==================================================================
@@ -269,7 +269,7 @@ Flag which determines how points outside bounding box are drawn. If it is @code{
@deftypefnx {Method on @code{mglGraph}} @code{void} SetCutBox (@code{mglPoint} p1, @code{mglPoint} p1)
@deftypefnx {C function} @code{void} mgl_set_cut_box (@code{HMGL} gr, @code{float} x1, @code{float} y1, @code{float} z1, @code{float} x2, @code{float} y2, @code{float} z2)
@end ifclear
-Lower and upper edge of the box in which never points are drawn. If both edges are the same (the variables are equal) then the cutting box is empty. @sref{CutMinMax sample}
+Lower and upper edge of the box in which never points are drawn. If both edges are the same (the variables are equal) then the cutting box is empty. @sref{Cut sample}
@end deftypefn
@deftypefn {MGL command} {} cut 'cond'
@@ -277,7 +277,7 @@ Lower and upper edge of the box in which never points are drawn. If both edges a
@deftypefnx {Method on @code{mglGraph}} @code{void} CutOff (@code{const char *}cond)
@deftypefnx {C function} @code{void} mgl_set_cutoff (@code{HMGL} gr, @code{const char *}cond)
@end ifclear
-Sets the cutting off condition by formula @var{cond}. This condition determine will point be plotted or not. If value of formula is nonzero then point is omitted, otherwise it plotted. Set argument as @code{""} to disable cutting off condition. @sref{CutOff sample}
+Sets the cutting off condition by formula @var{cond}. This condition determine will point be plotted or not. If value of formula is nonzero then point is omitted, otherwise it plotted. Set argument as @code{""} to disable cutting off condition. @sref{Cut sample}
@end deftypefn
@c ==================================================================
@@ -529,16 +529,16 @@ Sets transformation formulas for curvilinear coordinate. Each string should cont
@deftypefnx {Method on @code{mglGraph}} @code{void} SetCoor (@code{int} how)
@deftypefnx {C function} @code{void} mgl_set_coor (@code{HMGL} gr, @code{int} how)
@end ifclear
-Sets one of the predefined transformation formulas for curvilinear coordinate. Paramater @var{how} define the coordinates: @code{mglCartesian=0} -- Cartesian coordinates (no transformation); @code{mglPolar=1} -- Polar coordiantes @math{x_n=x*cos(y),y_n=x*sin(y), z_n=z}; @code{mglSpherical=2} -- Sperical coordinates @math{x_n=x*sin(y)*cos(z), y_n=x*sin(y)*sin(z), z_n=x*cos(y)}; @code{mglParabolic=3} -- Parabolic coordinates @math{x_n=x*y, y_n=(x*x-y*y)/2, z_n=z}; @code{mglParaboloidal=4} -- Paraboloidal coordinates @math{x_n=(x*x-y*y)*cos(z)/2, y_n=(x*x-y*y)*sin(z)/2, z_n=x*y}; @code{mglOblate=5} -- Oblate coordinates @math{x_n=cosh(x)*cos(y)*cos(z), y_n=cosh(x)*cos(y)*sin(z), z_n=sinh(x)*sin(y)}; @code{mglProlate=6} -- Prolate coordinates @math{x_n=sinh(x)*sin(y)*cos(z), y_n=sinh(x)*sin(y)*sin(z), z_n=cosh(x)*cos(y)}; @code{mglElliptic=7} -- Elliptic coordinates @math{x_n=cosh(x)*cos(y), y_n=sinh(x)*sin(y), z_n=z}; @code{mglToroidal=8} -- Toroidal coordinates @math{x_n=sinh(x)*cos(z)/(cosh(x)-cos(y)), y_n=sinh(x)*sin(z)/(cosh(x)-cos(y)), z_n=sin(y)/(cosh(x)-cos(y))}; @code{mglBispherical=9} -- Bispherical coordinates @math{x_n=sin(y)*cos(z)/(cosh(x)-cos(y)), y_n=sin(y)*sin(z)/(cosh(x)-cos(y)), z_n=sinh(x)/(cosh(x)-cos(y))}; @code{mglBipolar=10} -- Bipolar coordinates @math{x_n=sinh(x)/(cosh(x)-cos(y)), y_n=sin(y)/(cosh(x)-cos(y)), z_n=z}.
+Sets one of the predefined transformation formulas for curvilinear coordinate. Paramater @var{how} define the coordinates: @code{mglCartesian=0} -- Cartesian coordinates (no transformation); @code{mglPolar=1} -- Polar coordiantes @math{x_n=x*cos(y),y_n=x*sin(y), z_n=z}; @code{mglSpherical=2} -- Sperical coordinates @math{x_n=x*sin(y)*cos(z), y_n=x*sin(y)*sin(z), z_n=x*cos(y)}; @code{mglParabolic=3} -- Parabolic coordinates @math{x_n=x*y, y_n=(x*x-y*y)/2, z_n=z}; @code{mglParaboloidal=4} -- Paraboloidal coordinates @math{x_n=(x*x-y*y)*cos(z)/2, y_n=(x*x-y*y)*sin(z)/2, z_n=x*y}; @code{mglOblate=5} -- Oblate coordinates @math{x_n=cosh(x)*cos(y)*cos(z), y_n=cosh(x)*cos(y)*sin(z), z_n=sinh(x)*sin(y)}; @code{mglProlate=6} -- Prolate coordinates @math{x_n=sinh(x)*sin(y)*cos(z), y_n=sinh(x)*sin(y)*sin(z), z_n=cosh(x)*cos(y)}; @code{mglElliptic=7} -- Elliptic coordinates @math{x_n=cosh(x)*cos(y), y_n=sinh(x)*sin(y), z_n=z}; @code{mglToroidal=8} -- Toroidal coordinates @math{x_n=sinh(x)*cos(z)/(cosh(x)-cos(y)), y_n=sinh(x)*sin(z)/(cosh(x)-cos(y)), z_n=sin(y)/(cosh(x)-cos(y))}; @code{mglBispherical=9} -- Bispherical coordinates @math{x_n=sin(y)*cos(z)/(cosh(x)-cos(y)), y_n=sin(y)*sin(z)/(cosh(x)-cos(y)), z_n=sinh(x)/(cosh(x)-cos(y))}; @code{mglBipolar=10} -- Bipolar coordinates @math{x_n=sinh(x)/(cosh(x)-cos(y)), y_n=sin(y)/(cosh(x)-cos(y)), z_n=z}; @code{mglLogLog=11} -- log-log coordiantes @math{x_n=lg(x), y_n=lg(y), z_n=lg(z)}; @code{mglLogX=12} -- log-x coordiantes @math{x_n=lg(x), y_n=y, z_n=z}; @code{mglLogY=13} -- log-y coordiantes @math{x_n=x, y_n=lg(y), z_n=z}.
@end deftypefn
@anchor{ternary}
@deftypefn {MGL command} {} ternary @code{val}
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Ternary (@code{bool} tern)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Ternary (@code{int} tern)
@deftypefnx {C function} @code{void} mgl_set_ternary (@code{HMGL} gr, @code{int} tern)
@end ifclear
-The function sets to draws Ternary plot. This special plot is for 3 dependent coordinates (components) @var{a}, @var{b}, @var{c} so that @var{a}+ at var{b}+ at var{c}=1. MathGL uses only 2 independent coordinates @var{a}=x and @var{b}=y since it is enough to plot everything. At this third coordinate z act as another parameter to produce contour lines, surfaces and so on. @sref{Ternary plot sample}
+The function sets to draws Ternary or Quaternary plot. Ternary plot is special plot for 3 dependent coordinates (components) @var{a}, @var{b}, @var{c} so that @var{a}+ at var{b}+ at var{c}=1. MathGL uses only 2 independent coordinates @var{a}=x and @var{b}=y since it is enough to plot everything. At this third coordinate z act as another parameter to produce contour lines, surfaces and so on. Correspondingly Quaternary plot is plot for 4 dependent coordinates @var{a}, @var{b}, @var{c} and @var{d} so that @var{a}+ at var{b}+ at var{c}+ at var{d}=1. Use @code{Ternary(0)} for returning to usual axis. @sref{Ternary plot sample}
@end deftypefn
@c ------------------------------------------------------------------
@@ -645,12 +645,13 @@ Set template @var{templ} for x-,y-,z-axis ticks or colorbar ticks. It may contai
Set time labels with step @var{val} and template @var{templ} for x-,y-,z-axis ticks or colorbar ticks. It may contain TeX symbols also.
@end deftypefn
- at ifclear UDAV
- at deftypefn {Method on @code{mglGraph}} @code{void} SetTuneTicks (@code{bool} tune, @code{float} pos=@code{1.15})
+ at deftypefn {MGL command} {} tuneticks @code{val} [@code{pos=1.15}]
+ at deftypefnx {Method on @code{mglGraph}} @code{void} SetTuneTicks (@code{bool} tune, @code{float} pos=@code{1.15})
@deftypefnx {C function} @code{void} mgl_tune_ticks (@code{HMGL} gr, @code{bool} tune, @code{float} pos)
Switch on/off ticks enhancing by factoring common multiplier (for small, like from 0.001 to 0.002, or large, like from 1000 to 2000, coordinate values) or common component (for narrow range, like from 0.999 to 1.000). Also set the position @var{pos} of common multiplier/component on the axis: =0 at minimal axis value, =1 at maximal axis value. Default value is 1.15.
@end deftypefn
+ at ifclear UDAV
@deftypefn {Method on @code{mglGraph}} @code{void} SetTickRotate (@code{bool} val)
@deftypefnx {C function} @code{void} mgl_set_tick_rotate (@code{HMGL} gr, @code{bool} val)
Enable/disable ticks rotation if there are too many ticks or ticks labels are too long.
@@ -923,11 +924,33 @@ Exports current frame to SVG (Scalable Vector Graphics) file using vector repres
Exports current frame to LaTeX (package Tikz/PGF) file using vector representation. Note, the output file may be too large for graphic of large data array (especially for surfaces). It is better to use bitmap format (for example PNG or JPEG). However, program has no internal limitations for size of output file. Parameter @var{fname} specifies the file name, @var{descr} adds description to file (default is file name).
@end deftypefn
+
@deftypefn {Method on @code{mglGraph}} @code{void} WriteOBJ (@code{const char *}fname, @code{const char *}descr=@code{""})
@deftypefnx {C function} @code{void} mgl_write_obj (@code{HMGL} gr, @code{const char *}fname, @code{const char *}descr)
-Exports current frame to OBJ/MTL file using vector representation. Note, the output file may be too large for graphic of large data array (especially for surfaces). It is better to use bitmap format (for example PNG or JPEG). However, program has no internal limitations for size of output file. Parameter @var{fname} specifies the file name, @var{descr} adds description to file (default is file name).
+Exports current frame to OBJ/MTL file using vector representation (see @url{http://en.wikipedia.org/wiki/Wavefront_.obj_file, OBJ format} for details). Note, the output file may be too large for graphic of large data array (especially for surfaces). It is better to use bitmap format (for example PNG or JPEG). However, program has no internal limitations for size of output file. Parameter @var{fname} specifies the file name, @var{descr} adds description to file (default is file name).
+ at end deftypefn
+
+ at deftypefn {Method on @code{mglGraph}} @code{void} WriteXYZ (@code{const char *}fname, @code{const char *}descr=@code{""})
+ at deftypefnx {C function} @code{void} mgl_write_xyz (@code{HMGL} gr, @code{const char *}fname, @code{const char *}descr)
+Exports current frame to XYZ/XYZL/XYZF files using vector representation (see @url{http://people.sc.fsu.edu/~jburkardt/data/xyz/xyz.html, XYZ format} for details). Note, the output file may be too large for graphic of large data array (especially for surfaces). It is better to use bitmap format (for example PNG or JPEG). However, program has no internal limitations for size of output file. Parameter @var{fname} specifies the file name, @var{descr} adds description to file (default is file name).
+ at end deftypefn
+
+ at deftypefn {Method on @code{mglGraph}} @code{void} WriteSTL (@code{const char *}fname, @code{const char *}descr=@code{""})
+ at deftypefnx {C function} @code{void} mgl_write_obj (@code{HMGL} gr, @code{const char *}fname, @code{const char *}descr)
+Exports current frame to STL file using vector representation (see @url{http://en.wikipedia.org/wiki/STL_(file_format), STL format} for details). Note, the output file may be too large for graphic of large data array (especially for surfaces). It is better to use bitmap format (for example PNG or JPEG). However, program has no internal limitations for size of output file. Parameter @var{fname} specifies the file name, @var{descr} adds description to file (default is file name).
+ at end deftypefn
+
+ at deftypefn {Method on @code{mglGraph}} @code{void} WriteOFF (@code{const char *}fname, @code{const char *}descr=@code{""})
+ at deftypefnx {C function} @code{void} mgl_write_obj (@code{HMGL} gr, @code{const char *}fname, @code{const char *}descr)
+Exports current frame to OFF file using vector representation (see @url{http://people.sc.fsu.edu/~jburkardt/data/off/off.html, OFF format} for details). Note, the output file may be too large for graphic of large data array (especially for surfaces). It is better to use bitmap format (for example PNG or JPEG). However, program has no internal limitations for size of output file. Parameter @var{fname} specifies the file name, @var{descr} adds description to file (default is file name).
+ at end deftypefn
+
+ at deftypefn {Method on @code{mglGraph}} @code{void} WriteX3D (@code{const char *}fname, @code{const char *}descr=@code{""})
+ at deftypefnx {C function} @code{void} mgl_write_obj (@code{HMGL} gr, @code{const char *}fname, @code{const char *}descr)
+Exports current frame to OBJ/MTL file using vector representation (see @url{http://en.wikipedia.org/wiki/X3d, X3D format} for details). Note, the output file may be too large for graphic of large data array (especially for surfaces). It is better to use bitmap format (for example PNG or JPEG). However, program has no internal limitations for size of output file. Parameter @var{fname} specifies the file name, @var{descr} adds description to file (default is file name).
@end deftypefn
+
@deftypefn {Method on @code{mglGraph}} @code{void} WriteIDTF (@code{const char *}fname, @code{const char *}descr=@code{""})
@deftypefnx {C function} @code{void} mgl_write_idtf (@code{HMGL} gr, @code{const char *}fname, @code{const char *}descr)
Exports current frame to IDTF file. Later this file can be converted to U3D format. The vector representation is used. So, the output file may be too large for graphic of large data array (especially for surfaces). However, program has no internal limitations for size of output file. Parameter @var{fname} specifies the file name, @var{descr} adds description to file (default is file name).
@@ -1235,7 +1258,7 @@ Draw the circle with radius @var{r} and center at point @var{p}=@{@var{x0}, @var
@deftypefnx {Method on @code{mglGraph}} @code{void} Ellipse (@code{mglPoint} p1, @code{mglPoint} p2, @code{float} r, @code{const char *}col=@code{"r"})
@deftypefnx {C function} @code{void} mgl_ellipse (@code{HMGL} gr, @code{float} x1, @code{float} y1, @code{float} z1, @code{float} x2, @code{float} y2, @code{float} z2, @code{float} r, @code{const char *}col)
@end ifclear
-Draw the ellipse with radius @var{r} and focal points @var{p1}, @var{p2} by color @var{col}. If @var{col} contain: @samp{#} then wire figure is drawn, @samp{@@} then boundary is drawn (by second color of @var{col} or by black).
+Draw the ellipse with radius @var{r} and focal points @var{p1}, @var{p2} by color @var{col}. If @var{col} contain: @samp{#} then wire figure is drawn, @samp{@@} then boundary is drawn (by second color of @var{col} or by black).
@end deftypefn
@anchor{rhomb}
@@ -1299,8 +1322,8 @@ Draws unrotated @var{n}-th line of file @var{fname} at position @{@var{x}, at var{y
@ifclear UDAV
@deftypefnx {Method on @code{mglGraph}} @code{void} Label (@code{float} x, @code{float} y, @code{const char *}text, @code{const char *}fnt=@code{""})
@deftypefnx {Method on @code{mglGraph}} @code{void} Labelw (@code{float} x, @code{float} y, @code{const wchar_t *}text, @code{const char *}fnt=@code{""})
- at deftypefnx {C function} @code{void} mgl_label_xy (@code{HMGL} gr, @code{float} x, @code{float} y, @code{const char *}text, @code{const char *}fnt)
- at deftypefnx {C function} @code{void} mgl_labelw_xy (@code{HMGL} gr, @code{float} x, @code{float} y, @code{const wchar_t *}text, @code{const char *}fnt)
+ at deftypefnx {C function} @code{void} mgl_label_pos (@code{HMGL} gr, @code{float} x, @code{float} y, @code{const char *}text, @code{const char *}fnt)
+ at deftypefnx {C function} @code{void} mgl_labelw_pos (@code{HMGL} gr, @code{float} x, @code{float} y, @code{const wchar_t *}text, @code{const char *}fnt)
@end ifclear
The function draws the string @var{text} at position @{@var{x}, @var{y}@} with fonts specifying by @var{fnt}. Coordinates @code{x, y} are supposed to be in range [0,1].
@end deftypefn
@@ -1338,43 +1361,42 @@ The function draws @var{text} along the curve between points @{@var{x}[i], @var{
These functions draw the ``things for measuring'', like axis with ticks, colorbar with ticks, grid along axis, bounding box and labels for axis. For more information @pxref{Axis settings}.
@anchor{axis}
- at deftypefn {MGL command} {} axis ['dir'='xyz' @code{adjust=off}]
+ at deftypefn {MGL command} {} axis ['dir'='xyz' 'stl'='']
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Axis (@code{const char *}dir=@code{"xyz"}, @code{bool} adjust=@code{false})
- at deftypefnx {C function} @code{void} mgl_axis (@code{HMGL} gr, @code{const char *}dir, @code{int} adjust)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Axis (@code{const char *}dir=@code{"xyz"}, @code{const char *}stl=@code{""})
+ at deftypefnx {C function} @code{void} mgl_axis (@code{HMGL} gr, @code{const char *}dir, @code{const char *}stl)
@end ifclear
-Draws axes with ticks (@pxref{Axis settings}) in directions determined by string parameter @var{dir}.If string contain the symbol @samp{_} then tick labels are not printed. Font for ticks labels is determined by @var{FontDef} (@pxref{Font settings}). Ticks will be adjusted if @var{adjust}=@code{true} (by call of @code{AdjustTicks()}). You can specified an arrow at the end of axis (see @pxref{Line styles})
+Draws axes with ticks (@pxref{Axis settings}) in directions determined by string parameter @var{dir}.If string contain the symbol @samp{_} then tick labels are not printed. Font for ticks labels is determined by @var{FontDef} (@pxref{Font settings}). Ticks will be adjusted if @var{stl} contain @samp{a} (by call of @code{AdjustTicks()}). You can specified an arrow at the end of axis (see @pxref{Line styles}). Styles of ticks and axis can be overrided by using @var{stl} string.
@end deftypefn
@anchor{colorbar}
- at deftypefn {MGL command} {} colorbar ['sch'='' @code{pos=0}]
+ at deftypefn {MGL command} {} colorbar ['sch'='']
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Colorbar (@code{const char *}sch=@code{""}, @code{int} pos=@code{0})
- at deftypefnx {C function} @code{void} mgl_colorbar (@code{HMGL} gr, @code{const char *}sch, @code{int} pos)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Colorbar (@code{const char *}sch=@code{""})
+ at deftypefnx {C function} @code{void} mgl_colorbar (@code{HMGL} gr, @code{const char *}sch)
@end ifclear
-Draws colorbar with color scheme @var{sch} (current scheme if @code{sch=""}) at edge of plot. Parameter @var{pos} specifies the position of the colorbar: @samp{0} - at right (default), @samp{1} - at left, @samp{2} - at top, @samp{3} - at bottom. If string @var{sch} contains @samp{<>^_} then the parameter @var{pos} is defined as: @code{pos=0} for @samp{>} (right), @code{pos=1} for @samp{<} (left), @code{pos=2} for @samp{^} (top), @code{pos=3} for @samp{_} (bottom). If string have @samp{A} then absolute (relative to picture) coordinates is used. @sref{Dens sample}
+Draws colorbar with color scheme @var{sch} (current scheme if @code{sch=""}) at edge of plot. If string @var{sch} contains @samp{<>^_} then the parameter @var{pos} is defined as: @code{pos=0} for @samp{>} (right), @code{pos=1} for @samp{<} (left), @code{pos=2} for @samp{^} (top), @code{pos=3} for @samp{_} (bottom). If string have @samp{A} then absolute (relative to picture) coordinates is used. @sref{Dens sample}
@end deftypefn
- at deftypefn {MGL command} {} colorbar vdat ['sch'='' @code{pos=0}]
+ at deftypefn {MGL command} {} colorbar vdat ['sch'='']
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Colorbar (@code{const mglData &}v, @code{const char *}sch=@code{""}, @code{int} pos=@code{0})
- at deftypefnx {C function} @code{void} mgl_colorbar_val (@code{HMGL} gr, @code{HCDT} v, @code{const char *}sch, @code{int} pos)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Colorbar (@code{const mglData &}v, @code{const char *}sch=@code{""})
+ at deftypefnx {C function} @code{void} mgl_colorbar_val (@code{HMGL} gr, @code{HCDT} v, @code{const char *}sch)
@end ifclear
The same as previous but with sharp colors @var{sch} (current palette if @code{sch=""}) for values @var{v}. @sref{ContD sample}
@end deftypefn
@deftypefn {MGL command} {} colorbar 'sch' @code{pos x y w h}
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Colorbar (@code{const char *}sch, @code{int} pos, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
- at deftypefnx {Method on @code{mglGraph}} @code{void} Colorbar (@code{int} pos, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
- at deftypefnx {C function} @code{void} mgl_colorbar_ext (@code{HMGL} gr, @code{const char *}sch, @code{int} pos, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Colorbar (@code{const char *}sch, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
+ at deftypefnx {C function} @code{void} mgl_colorbar_ext (@code{HMGL} gr, @code{const char *}sch, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
@end ifclear
The same as first one but at arbitrary position of subplot @{@var{x}, @var{y}@} (supposed to be in range [0,1]). Parameters @var{w}, @var{h} set the relative width and height of the colorbar.
@end deftypefn
@ifclear UDAV
- at deftypefn {Method on @code{mglGraph}} @code{void} Colorbar (@code{const mglData &}v, @code{const char *}sch, @code{int} pos, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
- at deftypefnx {C function} @code{void} mgl_colorbar_val_ext (@code{HMGL} gr, @code{HCDT} v, @code{const char *}sch, @code{int} pos, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
+ at deftypefn {Method on @code{mglGraph}} @code{void} Colorbar (@code{const mglData &}v, @code{const char *}sch, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
+ at deftypefnx {C function} @code{void} mgl_colorbar_val_ext (@code{HMGL} gr, @code{HCDT} v, @code{const char *}sch, @code{float} x, @code{float} y, @code{float} w, @code{float} h)
The same as previous but with sharp colors @var{sch} (current palette if @code{sch=""}) for values @var{v}. @sref{ContD sample}
@end deftypefn
@end ifclear
@@ -1433,13 +1455,13 @@ These functions draw legend to the graph (useful for @ref{1D plotting}). Legend
@deftypefnx {Method on @code{mglGraph}} @code{void} Legend (@code{int} pos=@code{0x3}, @code{const char *}fnt=@code{"#"}, @code{float} size=@code{-0.8}, @code{float} llen=@code{0.1})
@deftypefnx {C function} @code{void} mgl_legend (@code{HMGL} gr, @code{int} pos, @code{const char *}fnt, @code{float} size, @code{float} llen)
@end ifclear
-Draws legend of accumulated legend entries by font @var{fnt} with @var{size}. Parameter @var{pos} sets the position of the legend: @samp{0} is bottom left corner, @samp{1} is bottom right corner, @samp{2} is top left corner, @samp{3} is top right corner (is default).
+Draws legend of accumulated legend entries by font @var{fnt} with @var{size}. Parameter @var{pos} sets the position of the legend: @samp{0} is bottom left corner, @samp{1} is bottom right corner, @samp{2} is top left corner, @samp{3} is top right corner (is default). Paramater font can contain colors for face (1st one), for border (2nd one) and for text (last one). If less than 3 colors are specified then the color for border is black (for 2 and less colors), and the color for face is white (for 1 or none colors). If string @var{fnt} contain @samp{#} then border around the legend is drawn.
@end deftypefn
@deftypefn {MGL command} {} legend @code{x y} ['fnt'='#' @code{size=-1 llen=0.1}]
@ifclear UDAV
@deftypefnx {Method on @code{mglGraph}} @code{void} Legend (@code{float} x, @code{float} y, @code{const char *}fnt=@code{"#"}, @code{float} size=@code{-0.8}, @code{float} llen=@code{0.1})
- at deftypefnx {C function} @code{void} mgl_legend_xy (@code{HMGL} gr, @code{float} x, @code{float} y, @code{const char *}fnt, @code{float} size, @code{float} llen)
+ at deftypefnx {C function} @code{void} mgl_legend_pos (@code{HMGL} gr, @code{float} x, @code{float} y, @code{const char *}fnt, @code{float} size, @code{float} llen)
@end ifclear
Draws legend of accumulated legend entries by font @var{fnt} with @var{size}. Position of legend is determined by parameter @var{x}, @var{y} which supposed to be normalized to interval [0,1].
@end deftypefn
@@ -1564,7 +1586,7 @@ These functions draw continuous lines between points @{@var{x}[i], @var{y}[i], @
@deftypefnx {C function} @code{void} mgl_area_xy (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{const char *}pen, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_area_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{const char *}pen, @code{const char *}opt)
@end ifclear
-These functions draw continuous lines between points and fills it to axis plane. Also you can use gradient filling if number of specified colors is equal to 2*number of curves. If string contain symbol @samp{a} then lines are drawn one above another (like summation) -- you can reach the same effect if call @code{y.CumSum("y");} before plot. See also @ref{plot}, @ref{bars}, @ref{stem}, @ref{region}. @sref{Area sample}
+These functions draw continuous lines between points and fills it to axis plane. Also you can use gradient filling if number of specified colors is equal to 2*number of curves. See also @ref{plot}, @ref{bars}, @ref{stem}, @ref{region}. @sref{Area sample}
@end deftypefn
@anchor{region}
@@ -1658,7 +1680,7 @@ These functions draw boxplot (also known as a box-and-whisker diagram) at points
@deftypefnx {C function} @code{void} mgl_candle_yv (@code{HMGL} gr, @code{HCDT} v1, @code{HCDT} v2, @code{HCDT} y1, @code{HCDT} y2, @code{const char *}pen, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_candle_xyv (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} v1, @code{HCDT} v2, @code{HCDT} y1, @code{HCDT} y2, @code{const char *}pen, @code{const char *}opt)
@end ifclear
-These functions draw candlestick chart at points @var{x}[i]. This is a combination of a line-chart and a bar-chart, in that each bar represents the range of price movement over a given time interval. Wire (or white) candle correspond to price growth @var{v1}[i]<@var{v2}[i], opposite case -- solid (or dark) candle. "Shadows" show the minimal @var{y1} and maximal @var{y2} prices. If @var{v2} is absent then it is determined as @var{v2}[i]=@var{v1}[i+1]. See also @ref{plot}, @ref{bars}, @ref{barwidth}.
+These functions draw candlestick chart at points @var{x}[i]. This is a combination of a line-chart and a bar-chart, in that each bar represents the range of price movement over a given time interval. Wire (or white) candle correspond to price growth @var{v1}[i]<@var{v2}[i], opposite case -- solid (or dark) candle. "Shadows" show the minimal @var{y1} and maximal @var{y2} prices. If @var{v2} is absent then it is determined as @var{v2}[i]=@var{v1}[i+1]. See also @ref{plot}, @ref{bars}, @ref{barwidth}.
@c TODO @sref{Candle sample}
@end deftypefn
@@ -1925,6 +1947,29 @@ The function draws solid (or filled) contour lines for surface specified paramet
The same as previous with vector @var{v} of @var{num}-th elements equidistantly distributed in color range. Here @var{num} is equal to parameter @var{value} in options @var{opt} (default is 7).
@end deftypefn
+ at anchor{contv}
+ at deftypefn {MGL command} {} contv vdat zdat ['sch'='']
+ at deftypefnx {MGL command} {} contv vdat xdat ydat zdat ['sch'='']
+ at ifclear UDAV
+ at deftypefnx {Method on @code{mglGraph}} @code{void} ContV (@code{const mglData &}v, @code{const mglData &}z, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
+ at deftypefnx {Method on @code{mglGraph}} @code{void} ContV (@code{const mglData &}v, @code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
+ at deftypefnx {C function} @code{void} mgl_contv_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} z, @code{const char *}sch, @code{const char *}opt)
+ at deftypefnx {C function} @code{void} mgl_contv_xy_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{const char *}sch, @code{const char *}opt)
+ at end ifclear
+The function draws vertical cylinder at contour lines for surface specified parametrically @{@var{x}[i,j], @var{y}[i,j], @var{z}[i,j]@} at @var{z}=@var{v}[k] or at @var{z} = @var{Min}.z if @var{sch} contain symbol @samp{_}. Contours are plotted for @var{z}[i,j]=@var{v}[k] where @var{v}[k] are values of data array @var{v}. If string @var{sch} have symbol @samp{#} then grid lines are drawn. If string @var{sch} have symbol @samp{t} or @samp{T} then contour labels @var{v}[k] will be drawn below (or above) the contours. See also @ref{cont}, @ref{contf}. @sref{ContV sample}
+ at end deftypefn
+
+ at deftypefn {MGL command} {} contv zdat ['sch'='']
+ at deftypefnx {MGL command} {} contv xdat ydat zdat ['sch'='']
+ at ifclear UDAV
+ at deftypefnx {Method on @code{mglGraph}} @code{void} ContV (@code{const mglData &}z, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
+ at deftypefnx {Method on @code{mglGraph}} @code{void} ContV (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
+ at deftypefnx {C function} @code{void} mgl_contv (@code{HMGL} gr, @code{HCDT} z, @code{const char *}sch, @code{const char *}opt)
+ at deftypefnx {C function} @code{void} mgl_contv_xy (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{const char *}sch, @code{const char *}opt)
+ at end ifclear
+The same as previous with vector @var{v} of @var{num}-th elements equidistantly distributed in color range. Here @var{num} is equal to parameter @var{value} in options @var{opt} (default is 7).
+ at end deftypefn
+
@anchor{axial}
@deftypefn {MGL command} {} axial vdat zdat ['sch'='']
@deftypefnx {MGL command} {} axial vdat xdat ydat zdat ['sch'='']
@@ -2006,77 +2051,77 @@ Draws @var{num}-th uniformly distributed in color range isosurfaces for 3d data.
@deftypefnx {C function} @code{void} mgl_cloud (@code{HMGL} gr, @code{HCDT} a, @code{const char *}sch, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_cloud_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{const char *}sch, @code{const char *}opt)
@end ifclear
-The function draws cloud plot for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). This plot is a set of cubes with color and transparency proportional to value of @var{a}. The resulting plot is like cloud -- low value is transparent but higher ones are not. The number of plotting cells depend on @ref{MeshNum}. If string @var{sch} contain symbol @samp{.} then lower quality plot will produced with much low memory usage. If string @var{sch} contain symbol @samp{-} then transparency will be inversed, i.e. higher become transparent and lower become not transparent. See also @ref{surf3}. @sref{Cloud sample}
+The function draws cloud plot for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). This plot is a set of cubes with color and transparency proportional to value of @var{a}. The resulting plot is like cloud -- low value is transparent but higher ones are not. The number of plotting cells depend on @ref{MeshNum}. If string @var{sch} contain symbol @samp{.} then lower quality plot will produced with much low memory usage. If string @var{sch} contain symbol @samp{!} then transparency will be inversed, i.e. higher become transparent and lower become not transparent. See also @ref{surf3}. @sref{Cloud sample}
@end deftypefn
@anchor{dens3}
- at deftypefn {MGL command} {} dens3 adat 'dir' [@code{sval=-1} 'sch'='']
- at deftypefnx {MGL command} {} dens3 xdat ydat zdat adat 'dir' [@code{sval=-1} 'sch'='']
+ at deftypefn {MGL command} {} dens3 adat ['sch'='' @code{sval=-1}]
+ at deftypefnx {MGL command} {} dens3 xdat ydat zdat adat ['sch'='' @code{sval=-1}]
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Dens3 (@code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {Method on @code{mglGraph}} @code{void} Dens3 (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {C function} @code{void} mgl_dens3 (@code{HMGL} gr, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
- at deftypefnx {C function} @code{void} mgl_dens3_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Dens3 (@code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Dens3 (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {C function} @code{void} mgl_dens3 (@code{HMGL} gr, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
+ at deftypefnx {C function} @code{void} mgl_dens3_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
@end ifclear
-The function draws density plot for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). Density is plotted at slice @var{sVal} in @var{dir}=@{@samp{x}, @samp{y}, @samp{z}@} direction. If string @var{stl} have symbol @samp{#} then grid lines are drawn. See also @ref{cont3}, @ref{contf3}, @ref{dens}, @ref{grid3}. @sref{Dens3 sample}
+The function draws density plot for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). Density is plotted at slice @var{sVal} in direction @{@samp{x}, @samp{y}, @samp{z}@} if @var{sch} contain corresponding symbol (by default, @samp{y} direction is used). If string @var{stl} have symbol @samp{#} then grid lines are drawn. See also @ref{cont3}, @ref{contf3}, @ref{dens}, @ref{grid3}. @sref{Dens3 sample}
@end deftypefn
@anchor{cont3}
- at deftypefn {MGL command} {} cont3 vdat adat 'dir' [@code{sval=-1} 'sch'='']
- at deftypefnx {MGL command} {} cont3 vdat xdat ydat zdat adat 'dir' [@code{sval=-1} 'sch'='']
+ at deftypefn {MGL command} {} cont3 vdat adat ['sch'='' @code{sval=-1}]
+ at deftypefnx {MGL command} {} cont3 vdat xdat ydat zdat adat ['sch'='' @code{sval=-1}]
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Cont3 (@code{const mglData &}v, @code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {Method on @code{mglGraph}} @code{void} Cont3 (@code{const mglData &}v, @code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {C function} @code{void} mgl_cont3_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
- at deftypefnx {C function} @code{void} mgl_cont3_xyz_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Cont3 (@code{const mglData &}v, @code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Cont3 (@code{const mglData &}v, @code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {C function} @code{void} mgl_cont3_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
+ at deftypefnx {C function} @code{void} mgl_cont3_xyz_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
@end ifclear
-The function draws contour plot for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). Contours are plotted for values specified in array @var{v} at slice @var{sVal} in @var{dir}=@{@samp{x}, @samp{y}, @samp{z}@} direction. If string @var{stl} have symbol @samp{#} then grid lines are drawn. If string @var{stl} have symbol @samp{t} or @samp{T} then contour labels will be drawn below (or above) the contours. See also @ref{dens3}, @ref{contf3}, @ref{cont}, @ref{grid3}. @sref{Cont3 sample}
+The function draws contour plot for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). Contours are plotted for values specified in array @var{v} at slice @var{sVal} in direction @{@samp{x}, @samp{y}, @samp{z}@} if @var{sch} contain corresponding symbol (by default, @samp{y} direction is used). If string @var{stl} have symbol @samp{#} then grid lines are drawn. If string @var{stl} have symbol @samp{t} or @samp{T} then contour labels will be drawn below (or above) the contours. See also @ref{dens3}, @ref{contf3}, @ref{cont}, @ref{grid3}. @sref{Cont3 sample}
@end deftypefn
- at deftypefn {MGL command} {} cont3 adat 'dir' [@code{sval=-1} 'sch'='']
- at deftypefnx {MGL command} {} cont3 xdat ydat zdat adat 'dir' [@code{sval=-1} 'sch'='']
+ at deftypefn {MGL command} {} cont3 adat ['sch'='' @code{sval=-1}]
+ at deftypefnx {MGL command} {} cont3 xdat ydat zdat adat ['sch'='' @code{sval=-1}]
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Cont3 (@code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {Method on @code{mglGraph}} @code{void} Cont3 (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {C function} @code{void} mgl_cont3 (@code{HMGL} gr, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
- at deftypefnx {C function} @code{void} mgl_cont3_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Cont3 (@code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""}, @code{const char *}opt=@code{""})
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Cont3 (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {C function} @code{void} mgl_cont3 (@code{HMGL} gr, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
+ at deftypefnx {C function} @code{void} mgl_cont3_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
@end ifclear
The same as previous with vector @var{v} of @var{num}-th elements equidistantly distributed in color range. Here @var{num} is equal to parameter @var{value} in options @var{opt} (default is 7).
@end deftypefn
@anchor{contf3}
- at deftypefn {MGL command} {} contf3 vdat adat 'dir' [@code{sval=-1} 'sch'='']
- at deftypefnx {MGL command} {} contf3 vdat xdat ydat zdat adat 'dir' [@code{sval=-1} 'sch'='']
+ at deftypefn {MGL command} {} contf3 vdat adat ['sch'='' @code{sval=-1}]
+ at deftypefnx {MGL command} {} contf3 vdat xdat ydat zdat adat ['sch'='' @code{sval=-1}]
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Contf3 (@code{const mglData &}v, @code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {Method on @code{mglGraph}} @code{void} Contf3 (@code{const mglData &}v, @code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {C function} @code{void} mgl_contf3_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
- at deftypefnx {C function} @code{void} mgl_contf3_xyz_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Contf3 (@code{const mglData &}v, @code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Contf3 (@code{const mglData &}v, @code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {C function} @code{void} mgl_contf3_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
+ at deftypefnx {C function} @code{void} mgl_contf3_xyz_val (@code{HMGL} gr, @code{HCDT} v, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
@end ifclear
-The function draws solid (or filled) contour plot for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). Contours are plotted for values specified in array @var{v} at slice @var{sVal} in @var{dir}=@{@samp{x}, @samp{y}, @samp{z}@} direction. If string @var{stl} have symbol @samp{#} then grid lines are drawn. If string @var{stl} have symbol @samp{t} or @samp{T} then contour labels will be drawn below (or above) the contours. See also @ref{dens3}, @ref{cont3}, @ref{contf}, @ref{grid3}. @sref{Cont3 sample}
+The function draws solid (or filled) contour plot for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). Contours are plotted for values specified in array @var{v} at slice @var{sVal} in direction @{@samp{x}, @samp{y}, @samp{z}@} if @var{sch} contain corresponding symbol (by default, @samp{y} direction is used). If string @var{stl} have symbol @samp{#} then grid lines are drawn. If string @var{stl} have symbol @samp{t} or @samp{T} then contour labels will be drawn below (or above) the contours. See also @ref{dens3}, @ref{cont3}, @ref{contf}, @ref{grid3}. @sref{Cont3 sample}
@end deftypefn
- at deftypefn {MGL command} {} contf3 adat 'dir' [@code{sval=-1} 'sch'='']
- at deftypefnx {MGL command} {} contf3 xdat ydat zdat adat 'dir' [@code{sval=-1} 'sch'='']
+ at deftypefn {MGL command} {} contf3 adat ['sch'='' @code{sval=-1}]
+ at deftypefnx {MGL command} {} contf3 xdat ydat zdat adat ['sch'='' @code{sval=-1}]
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Contf3 (@code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {Method on @code{mglGraph}} @code{void} Contf3 (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {C function} @code{void} mgl_contf3 (@code{HMGL} gr, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
- at deftypefnx {C function} @code{void} mgl_contf3_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Contf3 (@code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""}, @code{const char *}opt=@code{""})
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Contf3 (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {C function} @code{void} mgl_contf3 (@code{HMGL} gr, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
+ at deftypefnx {C function} @code{void} mgl_contf3_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
@end ifclear
The same as previous with vector @var{v} of @var{num}-th elements equidistantly distributed in color range. Here @var{num} is equal to parameter @var{value} in options @var{opt} (default is 7).
@end deftypefn
@anchor{grid3}
- at deftypefn {MGL command} {} grid3 adat 'dir' [@code{sval=-1} 'sch'='']
- at deftypefnx {MGL command} {} grid3 xdat ydat zdat adat 'dir' [@code{sval=-1} 'sch'='']
+ at deftypefn {MGL command} {} grid3 adat ['sch'='' @code{sval=-1}]
+ at deftypefnx {MGL command} {} grid3 xdat ydat zdat adat ['sch'='' @code{sval=-1}]
@ifclear UDAV
- at deftypefnx {Method on @code{mglGraph}} @code{void} Grid3 (@code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {Method on @code{mglGraph}} @code{void} Grid3 (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{char} dir, @code{float} sVal=@code{-1}, @code{const char *}sch=@code{""}, @code{const char *}opt=@code{""})
- at deftypefnx {C function} @code{void} mgl_grid3 (@code{HMGL} gr, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
- at deftypefnx {C function} @code{void} mgl_grid3_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{char} dir, @code{float} sVal, @code{const char *}sch, @code{const char *}opt)
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Grid3 (@code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {Method on @code{mglGraph}} @code{void} Grid3 (@code{const mglData &}x, @code{const mglData &}y, @code{const mglData &}z, @code{const mglData &}a, @code{const char *}sch=@code{""}, @code{float} sVal=@code{-1}, @code{const char *}opt=@code{""})
+ at deftypefnx {C function} @code{void} mgl_grid3 (@code{HMGL} gr, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
+ at deftypefnx {C function} @code{void} mgl_grid3_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} a, @code{const char *}sch, @code{float} sVal, @code{const char *}opt)
@end ifclear
-The function draws grid for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). Grid is plotted at slice @var{sVal} in @var{dir}=@{@samp{x}, @samp{y}, @samp{z}@} direction. See also @ref{cont3}, @ref{contf3}, @ref{dens3}, @ref{grid2}, @ref{meshnum}.
+The function draws grid for 3d data specified parametrically @var{a}[i,j,k](@var{x}[i,j,k], @var{y}[i,j,k], @var{z}[i,j,k]). Grid is plotted at slice @var{sVal} in direction @{@samp{x}, @samp{y}, @samp{z}@} if @var{sch} contain corresponding symbol (by default, @samp{y} direction is used). See also @ref{cont3}, @ref{contf3}, @ref{dens3}, @ref{grid2}, @ref{meshnum}.
@end deftypefn
@anchor{beam}
@@ -2248,7 +2293,7 @@ The function draws vectors @{@var{ax}, @var{ay}, @var{az}@} along a curve @{@var
@deftypefnx {C function} @code{void} mgl_vect_2d (@code{HMGL} gr, @code{HCDT} ax, @code{HCDT} ay, @code{const char *}sch, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_vect_xy (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} ax, @code{HCDT} ay, @code{const char *}sch, @code{const char *}opt)
@end ifclear
-The function draws plane vector field plot for the field @{@var{ax}, @var{ay}@} depending parametrically on coordinates @var{x}, @var{y} at level @var{z}=@var{Min}.z. The length and color of arrows are proportional to @math{\sqrt@{ax^2+ay^2@}}. The number of arrows depend on @ref{meshnum}. Parameter @var{value} in options is bitwise flag for setup the hachures (arrows): @code{MGL_VEC_COL=1} for drawing bi-color arrow, @code{MGL_VEC_LEN=2} for drawing fixed length arrows, @code{MGL_VEC_END=4} for drawing arrows to the cell point, @code{MGL_VEC_MID=8} for drawing arrows with center at cell point, @code{MGL_VEC_DOT=16} for drawing hachures with dots instead of arrows, @code{MGL_VEC_GRD=32} for enabling color gradient along arrows. See also @ref{flow}, @ref{dew}. @sref{Vect sample}
+The function draws plane vector field plot for the field @{@var{ax}, @var{ay}@} depending parametrically on coordinates @var{x}, @var{y} at level @var{z}=@var{Min}.z. The length and color of arrows are proportional to @math{\sqrt@{ax^2+ay^2@}}. The number of arrows depend on @ref{meshnum}. The apperance of the hachures (arrows) can be changed by symbols: @samp{f} for drawing fixed length arrows, @samp{>}, @samp{<} for drawing arrows to or from the cell point (default is centering), @samp{.} for drawing hachures with dots instead of arrows, @samp{=} for enabling color gradient along arrows. See also @ref{flow}, @ref{dew}. @sref{Vect sample}
@end deftypefn
@deftypefn {MGL command} {} vect udat vdat wdat ['sch'='']
@@ -2259,7 +2304,7 @@ The function draws plane vector field plot for the field @{@var{ax}, @var{ay}@}
@deftypefnx {C function} @code{void} mgl_vect_3d (@code{HMGL} gr, @code{HCDT} ax, @code{HCDT} ay, @code{HCDT} az, @code{const char *}sch, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_vect_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} ax, @code{HCDT} ay, @code{HCDT} az, @code{const char *}sch, @code{const char *}opt)
@end ifclear
-This is 3D version of the first functions. Here arrays @var{ax}, @var{ay}, @var{az} must be 3-ranged tensors with equal sizes and the length and color of arrows is proportional to @math{\sqrt@{ax^2+ay^2+az^2@}}. @sref{Vect 3D sample}
+This is 3D version of the first functions. Here arrays @var{ax}, @var{ay}, @var{az} must be 3-ranged tensors with equal sizes and the length and color of arrows is proportional to @math{\sqrt@{ax^2+ay^2+az^2@}}.
@end deftypefn
@anchor{dew}
@@ -2283,7 +2328,7 @@ The function draws dew-drops for plane vector field @{@var{ax}, @var{ay}@} depen
@deftypefnx {C function} @code{void} mgl_flow_2d (@code{HMGL} gr, @code{HCDT} ax, @code{HCDT} ay, @code{const char *}sch, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_flow_xy (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} ax, @code{HCDT} ay, @code{const char *}sch, @code{const char *}opt)
@end ifclear
-The function draws flow threads for the plane vector field @{@var{ax}, @var{ay}@} parametrically depending on coordinates @var{x}, @var{y} at level @var{z} = @var{Min}.z. Number of threads is proportional to @var{value} option (default is 5). If @var{value}<0 then threads start only from edges of axis range. Warm color corresponds to normal flow (like attractor). Cold one corresponds to inverse flow (like source). If string @var{sch} contain symbol @samp{v} then arrows are drawn on flow threads. See also @ref{pipe}, @ref{vect}. @sref{Flow sample}
+The function draws flow threads for the plane vector field @{@var{ax}, @var{ay}@} parametrically depending on coordinates @var{x}, @var{y} at level @var{z} = @var{Min}.z. Number of threads is proportional to @var{value} option (default is 5). If @samp{#} symbol is specified then threads start only from edges of axis range. Warm color corresponds to normal flow (like attractor). Cold one corresponds to inverse flow (like source). If string @var{sch} contain symbol @samp{v} then arrows are drawn on flow threads. See also @ref{pipe}, @ref{vect}. @sref{Flow sample}
@end deftypefn
@deftypefn {MGL command} {} flow udat vdat wdat ['sch'='']
@@ -2294,7 +2339,7 @@ The function draws flow threads for the plane vector field @{@var{ax}, @var{ay}@
@deftypefnx {C function} @code{void} mgl_flow_3d (@code{HMGL} gr, @code{HCDT} ax, @code{HCDT} ay, @code{HCDT} az, @code{const char *}sch, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_flow_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} ax, @code{HCDT} ay, @code{HCDT} az, @code{const char *}sch, @code{const char *}opt)
@end ifclear
-This is 3D version of the first functions. Here arrays @var{ax}, @var{ay}, @var{az} must be 3-ranged tensors with equal sizes and the color of line is proportional to @math{\sqrt@{ax^2+ay^2+az^2@}}. @sref{Flow 3D sample}
+This is 3D version of the first functions. Here arrays @var{ax}, @var{ay}, @var{az} must be 3-ranged tensors with equal sizes and the color of line is proportional to @math{\sqrt@{ax^2+ay^2+az^2@}}.
@end deftypefn
@deftypefn {MGL command} {} flow @code{x0 y0} udat vdat ['sch'='']
@@ -2343,7 +2388,7 @@ The function draws gradient lines for scalar field @var{phi}[i,j,k] specified pa
@deftypefnx {C function} @code{void} mgl_pipe_2d (@code{HMGL} gr, @code{HCDT} ax, @code{HCDT} ay, @code{const char *}sch, @code{float} r0, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_pipe_xy (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} ax, @code{HCDT} ay, @code{const char *}sch, @code{float} r0, @code{const char *}opt)
@end ifclear
-The function draws flow pipes for the plane vector field @{@var{ax}, @var{ay}@} parametrically depending on coordinates @var{x}, @var{y} at level @var{z} = @var{Min}.z. Number of pipes is proportional to @var{value} option (default is 5). If @var{value}<0 then pipes start only from edges of axis range. The color of lines is proportional to @math{\sqrt@{ax^2+ay^2@}}. Warm color corresponds to normal flow (like attractor). Cold one corresponds to inverse flow (like source). Parameter @var{r0} set the base pipe radius. If @var{r0}<0 then pipe radius is inverse proportional to amplitude. The size of @var{ax} and @var{ay} must be equal. The minor dimensions of arrays @var{x}, @var{y} and @var{ax} must be equal too. Arrays @var{x} and @var{y} can be vectors (not matrices as @var{ax}). The vector field is plotted for each z slice of @var{ax}, @var{ay}. See also @ref{flow}, @ref{vect}. @sref{Pipe sample}
+The function draws flow pipes for the plane vector field @{@var{ax}, @var{ay}@} parametrically depending on coordinates @var{x}, @var{y} at level @var{z} = @var{Min}.z. Number of pipes is proportional to @var{value} option (default is 5). If @samp{#} symbol is specified then pipes start only from edges of axis range. The color of lines is proportional to @math{\sqrt@{ax^2+ay^2@}}. Warm color corresponds to normal flow (like attractor). Cold one corresponds to inverse flow (like source). Parameter @var{r0} set the base pipe radius. If @var{r0}<0 or symbol @samp{i} is specified then pipe radius is inverse proportional to amplitude. The size of @var{ax} and @var{ay} must be equal. The minor dimensions of arrays @var{x}, @var{y} and @var{ax} must be equal too. Arrays @var{x} and @var{y} can be vectors (not matrices as @var{ax}). The vector field is plotted for each z slice of @var{ax}, @var{ay}. See also @ref{flow}, @ref{vect}. @sref{Pipe sample}
@end deftypefn
@deftypefn {MGL command} {} pipe udat vdat wdat ['sch'='' @code{r0=0.05}]
@@ -2354,7 +2399,7 @@ The function draws flow pipes for the plane vector field @{@var{ax}, @var{ay}@}
@deftypefnx {C function} @code{void} mgl_pipe_3d (@code{HMGL} gr, @code{HCDT} ax, @code{HCDT} ay, @code{HCDT} az, @code{const char *}sch, @code{float} r0, @code{const char *}opt)
@deftypefnx {C function} @code{void} mgl_pipe_xyz (@code{HMGL} gr, @code{HCDT} x, @code{HCDT} y, @code{HCDT} z, @code{HCDT} ax, @code{HCDT} ay, @code{HCDT} az, @code{const char *}sch, @code{float} r0, @code{const char *}opt)
@end ifclear
-This is 3D version of the first functions. Here arrays @var{ax}, @var{ay}, @var{az} must be 3-ranged tensors with equal sizes and the color of line is proportional to @math{\sqrt@{ax^2+ay^2+az^2@}}. @sref{Pipe 3D sample}
+This is 3D version of the first functions. Here arrays @var{ax}, @var{ay}, @var{az} must be 3-ranged tensors with equal sizes and the color of line is proportional to @math{\sqrt@{ax^2+ay^2+az^2@}}.
@end deftypefn
diff --git a/texinfo/data_en.texi b/texinfo/data_en.texi
index 08d902d..da53c54 100644
--- a/texinfo/data_en.texi
+++ b/texinfo/data_en.texi
@@ -87,13 +87,15 @@ There are many functions, which can create data for output (see @ref{Data fillin
@end ifset
@anchor{new}
- at deftypefn {MGL command} {} new @sc{dat} [@code{nx=1 ny=1 nz=1}]
+ at deftypefn {MGL command} {} new @sc{dat} [@code{nx=1} 'eq']
+ at deftypefnx {MGL command} {} new @sc{dat} @code{nx ny} ['eq']
+ at deftypefnx {MGL command} {} new @sc{dat} @code{nx ny nz} ['eq']
@ifclear UDAV
@deftypefnx {Constructor on @code{mglData}} {} mglData (@code{int} mx=@code{1}, @code{int} my=@code{1}, @code{int} mz=@code{1})
@deftypefnx {C function} @code{HMDT} mgl_create_data ()
@deftypefnx {C function} @code{HMDT} mgl_create_data_size (@code{int} mx, @code{int} my, @code{int} mz)
@end ifclear
-Default constructor. Allocates the memory for data array and initializes it by zero.
+Default constructor. Allocates the memory for data array and initializes it by zero. If string @var{eq} is specified then data will be filled by corresponding formula as in @code{Fill()} function.
@end deftypefn
@anchor{copy}
diff --git a/texinfo/other_ru.texi b/texinfo/other_ru.texi
index 83f546b..ddef55e 100644
--- a/texinfo/other_ru.texi
+++ b/texinfo/other_ru.texi
@@ -3,14 +3,14 @@
@chapter Other classes
@menu
-* mglParse class::
-* mglFormula class::
-* mglFont class::
-* mglColor class::
-* mglPoint class::
-* mglVar class::
-* mglCommand class::
-* mglArg class::
+* mglParse class::
+* mglFormula class::
+* mglFont class::
+* mglColor class::
+* mglPoint class::
+* mglVar class::
+* mglCommand class::
+* mglArg class::
@end menu
@c ------------------------------------------------------------------
@@ -18,9 +18,9 @@
@section mglParse class
@cindex mglParse
-Class for parsing and executing MGL script. This class is defined in @code{#include <mgl/mgl_parse.h>}.
+Class for parsing and executing MGL script. This class is defined in @code{#include <mgl/parse.h>}.
-Class mglParse is the interpreter for MGL scripts (@pxref{MGL interface}). The main function of mglParse class is @code{Parse()}. Exactly this function parses and executes the script string-by-string. Also there are two subservient functions for the finding and creation of a variable. These functions can be useful for displaying values of variables (arrays) in some external program (in window, for example). The variable @var{DataList} contains full list of variables in script. Flag @var{AllowSetSize} allows one to prevent changing the size of the picture inside the script (forbids the MGL command @code{setsize}).
+Class mglParse is the interpreter for MGL scripts (@pxref{MGL interface}). The main function of mglParse class is @code{Parse()}. Exactly this function parses and executes the script string-by-string. Also there are two subservient functions for the finding and creation of a variable. These functions can be useful for displaying values of variables (arrays) in some external program (in window, for example). The variable @var{DataList} contains full list of variables in script. Flag @var{AllowSetSize} allows one to prevent changing the size of the picture inside the script (forbids the MGL command @code{setsize}).
Note an important feature -- if user defines function @var{func} in variable then it will be called before the destroying of this variable (@pxref{mglVar class}).
@@ -159,7 +159,7 @@ The over way of font and alignment setting is the using of the integer constant.
@menu
-* Format of font files::
+* Format of font files::
@end menu
@@ -364,7 +364,7 @@ Return true if points are different.
@section mglVar class
@cindex mglVar
-Structure describes variable of type @code{mglData} and its name in MGL script. This structure is used by @code{mglParse} and is defined in @code{#include <mgl/mgl_parse.h>}.
+Structure describes variable of type @code{mglData} and its name in MGL script. This structure is used by @code{mglParse} and is defined in @code{#include <mgl/parse.h>}.
@deftypecv {Parameter} mglVar @code{mglData} d
Data itself
@@ -398,7 +398,7 @@ Move variable after @var{var} and copy @code{func} from @code{var} (if @code{fun
@section mglCommand class
@cindex mglCommand
-Structure describes MGL command, its name, short description, executable and export functions. The structure is used by @code{mglParse} and is defined in @code{#include <mgl/mgl_parse.h>}.
+Structure describes MGL command, its name, short description, executable and export functions. The structure is used by @code{mglParse} and is defined in @code{#include <mgl/parse.h>}.
@deftypecv {Parameter} mglCommand @code{const wchar_t *} name
Name of command.
@@ -422,7 +422,7 @@ Function for exporting in C++ (can be NULL).
@section mglArg class
@cindex mglArg
-Structure describes arguments of functions in the stucture @code{mglCommand}. It is defined in @code{#include <mgl/mgl_parse.h>}.
+Structure describes arguments of functions in the stucture @code{mglCommand}. It is defined in @code{#include <mgl/parse.h>}.
@deftypecv {Parameter} mglArg @code{int} type
Type of argument: 0-data, 1-string, 2-number.
diff --git a/texinfo/samples_en.texi b/texinfo/samples_en.texi
index 45fd791..460e82f 100644
--- a/texinfo/samples_en.texi
+++ b/texinfo/samples_en.texi
@@ -80,16 +80,11 @@ gr.ShowImage();
* Radar sample::
* Tens sample::
* Area sample::
-* Area gradient sample::
* Bars sample::
-* Bars 2 colors sample::
-* Bars above sample::
-* Bars fall sample::
* Barh sample::
* Step sample::
* Stem sample::
* Region sample::
-* Region gradient sample::
* Error sample::
* BoxPlot sample::
* Mark sample::
@@ -98,8 +93,6 @@ gr.ShowImage();
* Text sample::
* Torus sample::
* Chart sample::
-* Pie chart sample::
-* Ring chart sample::
@end menu
@c ------------------------------------------------------------------
@node Plot sample, Radar sample, , 1D plotting samples
@@ -178,47 +171,7 @@ mgl_delete_data(y);
@cindex Tens
@float
@image{../png/tens, 7cm}
- at c @caption{Example of Tens. @tdref{tens}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData y(50), c(50);
-y.Modify("0.7*sin(2*pi*x) + 0.5*cos(3*pi*x) + 0.2*sin(pi*x)");
-c.Modify("sin(2*pi*x)");
-gr.Box();
-gr.Tens(y,c);
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new y 50
-new c 50
-modify y '0.7*sin(2*pi*x) + 0.5*cos(3*pi*x) + 0.2*sin(pi*x)'
-modify c 'sin(2*pi*x)'
-box
-tens y c
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT y = mgl_create_data_size(50,1,1);
-HMDT c = mgl_create_data_size(50,1,1);
-mgl_data_modify(y,"0.7*sin(2*pi*x) + 0.5*cos(3*pi*x) + 0.2*sin(pi*x)",0);
-mgl_data_modify(c,"sin(2*pi*x)",0);
-mgl_box(gr,1);
-mgl_tens(gr,y,c,"");
-mgl_delete_data(y);
-mgl_delete_data(c);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Area sample, Area gradient sample, Tens sample, 1D plotting samples
- at subsection Area sample
- at cindex Area
- at float
- at image{../png/area, 7cm}
- at c @caption{Example of Area. @tdref{area}}
+ at c @caption{Example of Plot. @tdref{plot}}
@end float
@ifclear UDAV
@strong{C++/Python code}
@@ -227,9 +180,8 @@ mglData y(50,3);
y.Modify("0.7*sin(2*pi*x) + 0.5*cos(3*pi*x) + 0.2*sin(pi*x)",0);
y.Modify("sin(2*pi*x)",1);
y.Modify("cos(2*pi*x)",2);
-gr.Org=mglPoint(0,0);
gr.Box();
-gr.Area(y);
+gr.Tens(y.SubData(-1,0), y.SubData(-1,1));
@end verbatim
@strong{MGL code}
@end ifclear
@@ -238,9 +190,8 @@ new y 50 3
modify y '0.7*sin(2*pi*x) + 0.5*cos(3*pi*x) + 0.2*sin(pi*x)'
modify y 'sin(2*pi*x)' 1
modify y 'cos(2*pi*x)' 2
-origin 0 0
box
-area y
+tens y(:.0) y(:,1)
@end verbatim
@ifclear UDAV
@strong{C/Fortran code}
@@ -249,18 +200,17 @@ HMDT y = mgl_create_data_size(50,3,1);
mgl_data_modify(y,"0.7*sin(2*pi*x) + 0.5*cos(3*pi*x) + 0.2*sin(pi*x)",0);
mgl_data_modify(y,"sin(2*pi*x)",1);
mgl_data_modify(y,"cos(2*pi*x)",2);
-mgl_set_origin(gr,0.,0.,0.);
mgl_box(gr,1);
-mgl_area(gr,y,"");
+mgl_plot(gr,y,"");
mgl_delete_data(y);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Area gradient sample, Bars sample, Area sample, 1D plotting samples
- at subsection Area with gradient filling sample
+ at node Area sample, Bars sample, Tens sample, 1D plotting samples
+ at subsection Area sample
@cindex Area
@float
- at image{../png/area_2, 7cm}
+ at image{../png/area, 7cm}
@c @caption{Example of Area. @tdref{area}}
@end float
@ifclear UDAV
@@ -272,7 +222,7 @@ y.Modify("sin(2*pi*x)",1);
y.Modify("cos(2*pi*x)",2);
gr.Org=mglPoint(0,0);
gr.Box();
-gr.Area(y,"cbgGyr");
+gr.Area(y);
@end verbatim
@strong{MGL code}
@end ifclear
@@ -283,7 +233,7 @@ modify y 'sin(2*pi*x)' 1
modify y 'cos(2*pi*x)' 2
origin 0 0
box
-area y 'cbgGyr'
+area y
@end verbatim
@ifclear UDAV
@strong{C/Fortran code}
@@ -294,12 +244,12 @@ mgl_data_modify(y,"sin(2*pi*x)",1);
mgl_data_modify(y,"cos(2*pi*x)",2);
mgl_set_origin(gr,0.,0.,0.);
mgl_box(gr,1);
-mgl_area(gr,y,"cbgGyr");
+mgl_area(gr,y,"");
mgl_delete_data(y);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Bars sample, Bars 2 colors sample, Area gradient sample, 1D plotting samples
+ at node Bars sample, Barh sample, Area sample, 1D plotting samples
@subsection Bars sample
@cindex Bars
@float
@@ -335,119 +285,9 @@ mgl_bars(gr,y,"");
mgl_delete_data(y);
@end verbatim
@end ifclear
+
@c ------------------------------------------------------------------
- at node Bars 2 colors sample, Bars above sample, Bars sample, 1D plotting samples
- at subsection Bars 2 colors sample
- at cindex Bars
- at float
- at image{../png/bars_2, 7cm}
- at c @caption{Example of Bars. @tdref{bars}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData y(10,3);
-y.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
-gr.Org=mglPoint(0,0);
-gr.Box();
-gr.Bars(y,"cbgGyr");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new y 10 3
-modify y '0.8*sin(pi*(2*x+y/2))+0.2*rnd'
-origin 0 0
-box
-bars y 'cbgGyr'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT y = mgl_create_data_size(10,3,1);
-mgl_data_modify(y,"0.8*sin(pi*(2*x+y/2))+0.2*rnd");
-mgl_set_origin(gr,0.,0.,0.);
-mgl_box(gr,1);
-mgl_bars(gr,y,"cbgGyr");
-mgl_delete_data(y);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Bars above sample, Bars fall sample, Bars 2 colors sample, 1D plotting samples
- at subsection Bars above sample
- at cindex Bars
- at float
- at image{../png/bars_a, 7cm}
- at c @caption{Example of Bars. @tdref{bars}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData y(10,3);
-y.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
-gr.Org=mglPoint(0,0);
-gr.Box();
-gr.Bars(y,"a");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new y 10 3
-modify y '0.8*sin(pi*(2*x+y/2))+0.2*rnd'
-origin 0 0
-box
-bars y 'a'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT y = mgl_create_data_size(10,3,1);
-mgl_data_modify(y,"0.8*sin(pi*(2*x+y/2))+0.2*rnd");
-mgl_set_origin(gr,0.,0.,0.);
-mgl_box(gr,1);
-mgl_bars(gr,y,"a");
-mgl_delete_data(y);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Bars fall sample, Barh sample, Bars above sample, 1D plotting samples
- at subsection Bars fall sample
- at cindex Bars
- at float
- at image{../png/bars_f, 7cm}
- at c @caption{Example of Bars. @tdref{bars}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData y(10,3);
-y.Modify("0.8*sin(pi*(2*x+y/2))+0.2*rnd");
-gr.Org=mglPoint(0,0);
-gr.Box();
-gr.Bars(y,"f");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new y 10 3
-modify y '0.8*sin(pi*(2*x+y/2))+0.2*rnd'
-origin 0 0
-box
-bars y 'f'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT y = mgl_create_data_size(10,3,1);
-mgl_data_modify(y,"0.8*sin(pi*(2*x+y/2))+0.2*rnd");
-mgl_set_origin(gr,0.,0.,0.);
-mgl_box(gr,1);
-mgl_bars(gr,y,"f");
-mgl_delete_data(y);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Barh sample, Step sample, Bars fall sample, 1D plotting samples
+ at node Barh sample, Step sample, Bars sample, 1D plotting samples
@subsection Barh sample
@cindex Barh
@float
@@ -567,7 +407,7 @@ mgl_delete_data(y);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Region sample, Region gradient sample, Stem sample, 1D plotting samples
+ at node Region sample, Error sample, Stem sample, 1D plotting samples
@subsection Region sample
@cindex Region
@float
@@ -613,53 +453,7 @@ mgl_delete_data(y2);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Region gradient sample, Error sample, Region sample, 1D plotting samples
- at subsection Region gradient sample
- at cindex Region
- at float
- at image{../png/region_2, 7cm}
- at c @caption{Example of Region. @tdref{region}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData y1(50), y2(50);
-y1.Modify("0.3*sin(2*pi*x)");
-y2.Modify("0.5+0.3*cos(2*pi*x)");
-gr.Box();
-gr.Region(y1,y2,"yr");
-gr.Plot(y1,"k2");
-gr.Plot(y2,"k2");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new y1 50
-new y2 50
-modify y1 '0.3*sin(2*pi*x)'
-modify y2 '0.5+0.3*cos(2*pi*x)'
-box
-region y1 y2 'yr'
-plot y1 'k2'
-plot y2 'k2'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT y1 = mgl_create_data_size(50,1,1);
-HMDT y2 = mgl_create_data_size(50,1,1);
-mgl_data_modify(y1,"0.3*sin(2*pi*x)",0);
-mgl_data_modify(y2,"0.5+0.3*cos(2*pi*x)",0);
-mgl_box(gr,1);
-mgl_region(gr,y1,y2,"yr",1);
-mgl_plot(gr,y1,"k2");
-mgl_plot(gr,y2,"k2");
-mgl_delete_data(y1);
-mgl_delete_data(y2);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Error sample, BoxPlot sample, Region gradient sample, 1D plotting samples
+ at node Error sample, BoxPlot sample, Region sample, 1D plotting samples
@subsection Error sample
@cindex Error
@float
@@ -981,7 +775,7 @@ mgl_delete_data(y2);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Chart sample, Pie chart sample, Torus sample, 1D plotting samples
+ at node Chart sample, , Torus sample, 1D plotting samples
@subsection Chart sample
@cindex Chart
@float
@@ -1020,102 +814,12 @@ mgl_chart(gr,ch,"#");
mgl_delete_data(ch);
@end verbatim
@end ifclear
- at c ------------------------------------------------------------------
- at node Pie chart sample, Ring chart sample, Chart sample, 1D plotting samples
- at subsection Pie chart sample
- at cindex Chart
- at cindex Axis
- at float
- at image{../png/pie_chart, 7cm}
- at c @caption{Example of Chart in cylindrical coordinates. @tdref{pie_chart}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData ch(7,2);
-ch.Modify("rnd+0.1");
-gr.Rotate(40,60);
-gr.Light(true);
-gr.SetFunc("(y+1)/2*cos(pi*x)","(y+1)/2*sin(pi*x)");
-gr.Box();
-gr.Chart(ch,"bgr cmy#");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new ch 7 2
-modify ch 'rnd+0.1'
-rotate 40 60
-light on
-axis '(y+1)/2*cos(pi*x)' '(y+1)/2*sin(pi*x)' ''
-box
-chart ch 'bgr cmy#'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT ch = mgl_create_data_size(7,2,1);
-mgl_data_modify(ch,"rnd+0.1",0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_set_func(gr,"(y+1)/2*cos(pi*x)","(y+1)/2*sin(pi*x)",0);
-mgl_box(gr,1);
-mgl_chart(gr,ch,"bgr cmy#");
-mgl_delete_data(ch);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Ring chart sample, , Pie chart sample, 1D plotting samples
- at subsection Ring chart sample
- at cindex Chart
- at cindex Axis
- at float
- at image{../png/ring_chart, 7cm}
- at c @caption{Example of Chart in cylindrical coordinates. @tdref{pie_chart}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData ch(7,2);
-ch.Modify("rnd+0.1");
-gr.Rotate(40,60);
-gr.Light(true);
-gr.SetFunc("(y+2)/3*cos(pi*x)","(y+2)/3*sin(pi*x)");
-gr.Box();
-gr.Chart(ch,"bgr cmy#");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new ch 7 2
-modify ch 'rnd+0.1'
-rotate 40 60
-light on
-axis '(y+2)/3*cos(pi*x)' '(y+2)/3*sin(pi*x)' ''
-box
-chart ch 'bgr cmy#'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT ch = mgl_create_data_size(7,2,1);
-mgl_data_modify(ch,"rnd+0.1",0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_set_func(gr,"(y+2)/3*cos(pi*x)","(y+2)/3*sin(pi*x)",0);
-mgl_box(gr,1);
-mgl_chart(gr,ch,"bgr cmy#");
-mgl_delete_data(ch);
- at end verbatim
- at end ifclear
+
@c ------------------------------------------------------------------
@node 2D plotting samples, 3D plotting samples, 1D plotting samples, Samples
@section 2D plotting samples
@menu
* Surf sample::
-* Transparent surface sample::
-* Surface in fog sample::
-* Sharp colors sample::
* Mesh sample::
* Fall sample::
* Belt sample::
@@ -1125,11 +829,12 @@ mgl_delete_data(ch);
* Cont sample::
* ContF sample::
* ContD sample::
+* ContV sample::
* Axial sample::
* Grad sample::
@end menu
@c ------------------------------------------------------------------
- at node Surf sample, Transparent surface sample, , 2D plotting samples
+ at node Surf sample, Mesh sample, , 2D plotting samples
@subsection Surf sample
@cindex Surf
@float
@@ -1169,13 +874,12 @@ mgl_delete_data(a);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Transparent surface sample, Surface in fog sample, Surf sample, 2D plotting samples
- at subsection Transparent surface sample
- at cindex Surf
- at cindex Alpha
+ at node Mesh sample, Fall sample, Surf sample, 2D plotting samples
+ at subsection Mesh sample
+ at cindex Mesh
@float
- at image{../png/surf_alpha, 7cm}
- at c @caption{Example of Surf & Alpha. @tdref{surf_alpha}}
+ at image{../png/mesh, 7cm}
+ at c @caption{Example of Mesh. @tdref{mesh}}
@end float
@ifclear UDAV
@strong{C++/Python code}
@@ -1183,135 +887,8 @@ mgl_delete_data(a);
mglData a(50,40);
a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
gr.Rotate(40,60);
-gr.Light(true);
-gr.Alpha(true);
gr.Box();
-gr.Surf(a);
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new a 50 40
-modify a '0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))'
-rotate 40 60
-light on
-alpha on
-box
-surf a
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a = mgl_create_data_size(50,40,1);
-mgl_data_modify(a,"0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))",0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_set_alpha(gr,1);
-mgl_box(gr,1);
-mgl_surf(gr,a,0);
-mgl_delete_data(a);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Surface in fog sample, Sharp colors sample, Transparent surface sample, 2D plotting samples
- at subsection Surface in fog sample
- at cindex Surf
- at cindex Fog
- at float
- at image{../png/surf_fog, 7cm}
- at c @caption{Example of Surf & Fog. @tdref{surf_fog}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a(50,40);
-a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-gr.Rotate(40,60);
-gr.Light(true);
-gr.Fog(1);
-gr.Box();
-gr.Surf(a);
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new a 50 40
-modify a '0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))'
-rotate 40 60
-light on
-fog 1
-box
-surf a
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a = mgl_create_data_size(50,40,1);
-mgl_data_modify(a,"0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))",0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_set_fog(gr,1.,0.25);
-mgl_box(gr,1);
-mgl_surf(gr,a,0);
-mgl_delete_data(a);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Sharp colors sample, Mesh sample, Surface in fog sample, 2D plotting samples
- at subsection Sharp colors sample
- at cindex Surf
- at float
- at image{../png/surf_sl, 7cm}
- at c @caption{Example of sharp color scheme. @tdref{surf_sl}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a(50,40);
-a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-gr.Rotate(40,60);
-gr.Light(true);
-gr.Box();
-gr.Surf(a,"BbcyrR|");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new a 50 40
-modify a '0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))'
-rotate 40 60
-light on
-box
-surf a 'BbcyrR|'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a = mgl_create_data_size(50,40,1);
-mgl_data_modify(a,"0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))",0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_box(gr,1);
-mgl_surf(gr,a,"BbcyrR|");
-mgl_delete_data(a);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Mesh sample, Fall sample, Sharp colors sample, 2D plotting samples
- at subsection Mesh sample
- at cindex Mesh
- at float
- at image{../png/mesh, 7cm}
- at c @caption{Example of Mesh. @tdref{mesh}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a(50,40);
-a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-gr.Rotate(40,60);
-gr.Box();
-gr.Mesh(a);
+gr.Mesh(a);
@end verbatim
@strong{MGL code}
@end ifclear
@@ -1607,7 +1184,7 @@ mgl_delete_data(a);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node ContD sample, Axial sample, ContF sample, 2D plotting samples
+ at node ContD sample, ContV sample, ContF sample, 2D plotting samples
@subsection ContD sample
@cindex ContD
@float
@@ -1649,6 +1226,43 @@ mgl_delete_data(v);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
+ at node ContV sample, Axial sample, ContD sample, 2D plotting samples
+ at subsection ContV sample
+ at cindex Cont
+ at float
+ at image{../png/contv, 7cm}
+ at c @caption{Example of Cont. @tdref{cont}}
+ at end float
+ at ifclear UDAV
+ at strong{C++/Python code}
+ at verbatim
+mglData a(50,40);
+a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
+gr.Rotate(40,60);
+gr.Box();
+gr.ContV(a);
+ at end verbatim
+ at strong{MGL code}
+ at end ifclear
+ at verbatim
+new a 50 40
+modify a '0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))'
+rotate 40 60
+box
+contv a
+ at end verbatim
+ at ifclear UDAV
+ at strong{C/Fortran code}
+ at verbatim
+HMDT a = mgl_create_data_size(50,40,1);
+mgl_data_modify(a,"0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))",0);
+mgl_rotate(gr,40.,60.,0.);
+mgl_box(gr,1);
+mgl_contv(gr,a,0,7,NAN);
+mgl_delete_data(a);
+ at end verbatim
+ at end ifclear
+ at c ------------------------------------------------------------------
@node Axial sample, Grad sample, ContD sample, 2D plotting samples
@subsection Axial sample
@cindex Axial
@@ -1738,9 +1352,6 @@ mgl_delete_data(a);
* ContF3 sample::
* Cont projection sample::
* Dens projection sample::
-* CutMinMax sample::
-* Isocaps sample::
-* CutOff sample::
@end menu
@c ------------------------------------------------------------------
@node Surf3 sample, Cloud sample, , 3D plotting samples
@@ -1995,7 +1606,7 @@ mgl_delete_data(a);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Dens projection sample, CutMinMax sample, Cont projection sample, 3D plotting samples
+ at node Dens projection sample, , Cont projection sample, 3D plotting samples
@subsection Dens projection sample
@cindex DensX
@cindex DensY
@@ -2042,157 +1653,8 @@ s=mgl_data_sum(a,"z"); mgl_dens_z(gr,s,0,-1.); mgl_delete_data(s);
mgl_delete_data(a);
@end verbatim
@end ifclear
- at c ------------------------------------------------------------------
- at node CutMinMax sample, Isocaps sample, Dens projection sample, 3D plotting samples
- at subsection CutMinMax sample
- at cindex Surf3
- at cindex CutMin
- at cindex CutMax
- at float
- at image{../png/cutminmax, 7cm}
- at c @caption{Example of Surf3 & CutMin, CutMax. @tdref{cutminmax}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a(60,50,40);
-a.Modify("-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)");
-gr.Rotate(40,60);
-gr.Light(true);
-gr.Alpha(true);
-gr.CutMin = mglPoint(0,-1,-1); gr.CutMax = mglPoint(1,0,1);
-gr.Box();
-gr.Surf3(a);
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new a 60 50 40
-modify a '-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)'
-rotate 40 60
-light on
-alpha on
-cut 0 -1 -1 1 0 1
-box
-surf3 a
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a = mgl_create_data_size(60,50,40);
-mgl_data_modify(a,"-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)",0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_set_alpha(gr,1);
-mgl_set_cut_box(gr,0.,-1.,-1.,1.,0.,1.);
-mgl_box(gr,1);
-mgl_surf3(gr,a,0,3);
-mgl_delete_data(a);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Isocaps sample, CutOff sample, CutMinMax sample, 3D plotting samples
- at subsection ``Isocaps'' sample
- at cindex Surf3
- at cindex ContF3
- at cindex CutMin
- at cindex CutMax
- at float
- at image{../png/cutminmax2, 7cm}
- at c @caption{Example of ``Isocaps''. @tdref{cutminmax2}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a(61,51,40);
-a.Modify("-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)");
-gr.Rotate(40,60);
-gr.Light(true);
-gr.CutMin = mglPoint(0,-1,-1); gr.CutMax = mglPoint(1,0,1.1);
-gr.Box();
-gr.Surf3(-1,a);
-gr.ContF3(a,'x',-1); gr.ContF3(a,'y',-1);
-gr.ContF3(a,'z', 0); gr.ContF3(a,'z',39);
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new a 61 51 40
-modify a '-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)'
-rotate 40 60
-light on
-cut 0 -1 -1 1 0 1.1
-box
-surf3 a -1
-contf3 a 'x' -1
-contf3 a 'y' -1
-contf3 a 'z' 0
-contf3 a 'z' 39
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a = mgl_create_data_size(61,51,40);
-mgl_data_modify(a,"-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)",0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_set_cut_box(gr,0.,-1.,-1.,1.,0.,1.1);
-mgl_box(gr,1);
-mgl_surf3_val(gr,-1.,a,0);
-mgl_contf3(gr,a,'x',-1, "", 7);
-mgl_contf3(gr,a,'y',-1, "", 7);
-mgl_contf3(gr,a,'z', 0, "", 7);
-mgl_contf3(gr,a,'z',39, "", 7);
-mgl_delete_data(a);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node CutOff sample, , Isocaps sample, 3D plotting samples
- at subsection CutOff sample
- at cindex Surf3
- at cindex CutOff
- at float
- at image{../png/surf3_cutoff, 7cm}
- at c @caption{Example of Surf3 & CutOff. @tdref{surf3_cutoff}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a(60,50,40);
-a.Modify("-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)");
-gr.Rotate(40,60);
-gr.Light(true);
-gr.Alpha(true);
-gr.CutOff("(z>(x+0.5*y-1)^2-1) & (z>(x-0.5*y-1)^2-1)");
-gr.Box();
-gr.Surf3(a);
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new a 60 50 40
-modify a '-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)'
-rotate 40 60
-light on
-alpha on
-cut '(z>(x+0.5*y-1)^2-1) & (z>(x-0.5*y-1)^2-1)'
-box
-surf3 a
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a = mgl_create_data_size(60,50,40);
-mgl_data_modify(a,"-2*((2*x-1)^2 + (2*y-1)^2 + (2*z-1)^4 - (2*z-1)^2 - 0.1)",0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_set_alpha(gr,1);
-mgl_set_cutoff(gr,"(z>(x+0.5*y-1)^2-1) & (z>(x-0.5*y-1)^2-1)");
-mgl_box(gr,1);
-mgl_surf3(gr,a,0,3);
-mgl_delete_data(a);
- at end verbatim
- at end ifclear
+
+
@c ------------------------------------------------------------------
@node Dual plotting samples, Basic features, 3D plotting samples, Samples
@section Dual plotting samples
@@ -2203,20 +1665,11 @@ mgl_delete_data(a);
* Map sample::
* Traj sample::
* Vect sample::
-* VectL sample::
-* VectC sample::
* Flow sample::
* Pipe sample::
* Dew sample::
* Surf3C sample::
* Surf3A sample::
-* Vect 3D sample::
-* VectL 3D sample::
-* VectC 3D sample::
-* Flow 3D sample::
-* Pipe 3D sample::
-* Crust sample::
-* Dots sample::
@end menu
@c ------------------------------------------------------------------
@node SurfC sample, SurfA sample, , Dual plotting samples
@@ -2481,7 +1934,7 @@ mgl_delete_data(x); mgl_delete_data(y2);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Vect sample, VectL sample, Traj sample, Dual plotting samples
+ at node Vect sample, Flow sample, Traj sample, Dual plotting samples
@subsection Vect sample
@cindex Vect
@float
@@ -2520,87 +1973,7 @@ mgl_delete_data(a); mgl_delete_data(b);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node VectL sample, VectC sample, Vect sample, Dual plotting samples
- at subsection VectL sample
- at cindex VectL
- at float
- at image{../png/vectl, 7cm}
- at c @caption{Example of VectL. @tdref{vectl}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a(20,30), b(20,30);
-a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-b.Modify("0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-gr.Box();
-gr.VectL(a,b);
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new a 20 30
-new b 20 30
-modify a '0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))'
-modify b '0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*cos(3*pi*(x*y))'
-box
-vectl a b
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a, b;
-a = mgl_create_data_size(20,30,1);
-b = mgl_create_data_size(20,30,1);
-mgl_data_modify(a,"0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))",0);
-mgl_data_modify(b,"0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*cos(3*pi*(x*y))",0);
-mgl_box(gr,1);
-mgl_vectl_2d(gr,a,b,0,0.);
-mgl_delete_data(a); mgl_delete_data(b);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node VectC sample, Flow sample, VectL sample, Dual plotting samples
- at subsection VectC sample
- at cindex VectC
- at float
- at image{../png/vectc, 7cm}
- at c @caption{Example of VectC. @tdref{vectc}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a(20,30), b(20,30);
-a.Modify("0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-b.Modify("0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*cos(3*pi*(x*y))");
-gr.Box();
-gr.VectC(a,b);
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new a 20 30
-new b 20 30
-modify a '0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))'
-modify b '0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*cos(3*pi*(x*y))'
-box
-vectc a b
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a, b;
-a = mgl_create_data_size(20,30,1);
-b = mgl_create_data_size(20,30,1);
-mgl_data_modify(a,"0.6*sin(2*pi*x)*sin(3*pi*y) + 0.4*cos(3*pi*(x*y))",0);
-mgl_data_modify(b,"0.6*cos(2*pi*x)*cos(3*pi*y) + 0.4*cos(3*pi*(x*y))",0);
-mgl_box(gr,1);
-mgl_vectc_2d(gr,a,b,0,0.);
-mgl_delete_data(a); mgl_delete_data(b);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Flow sample, Pipe sample, VectC sample, Dual plotting samples
+ at node Flow sample, Pipe sample, Vect sample, Dual plotting samples
@subsection Flow sample
@cindex Flow
@float
@@ -2771,7 +2144,7 @@ mgl_delete_data(a); mgl_delete_data(b);
@end verbatim
@end ifclear
@c ------------------------------------------------------------------
- at node Surf3A sample, Vect 3D sample, Surf3C sample, Dual plotting samples
+ at node Surf3A sample, , Surf3C sample, Dual plotting samples
@subsection Surf3A sample
@cindex Surf3A
@float
@@ -2818,357 +2191,6 @@ mgl_surf3a(gr,a,b,0,3);
mgl_delete_data(a); mgl_delete_data(b);
@end verbatim
@end ifclear
- at c ------------------------------------------------------------------
- at node Vect 3D sample, VectL 3D sample, Surf3A sample, Dual plotting samples
- at subsection Vect 3D sample
- at cindex Vect
- at float
- at image{../png/vect3, 7cm}
- at c @caption{Example of Vect in 3D. @tdref{vect3}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData ex(10,10,10), ey(10,10,10), ez(10,10,10);
-ex.Fill("0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ey.Fill("0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ez.Fill("0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-gr.Rotate(40,60);
-gr.Box();
-gr.Vect(ex, ey, ez, "bwr");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new ex 10 10 10
-new ey 10 10 10
-new ez 10 10 10
-fill ex '0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ey '0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ez '0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)'
-rotate 40 60
-box
-vect ex ey ez 'bwr'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT ex, ey, ez;
-ex = mgl_create_data_size(10,10,10);
-ey = mgl_create_data_size(10,10,10);
-ez = mgl_create_data_size(10,10,10);
-mgl_data_fill_eq(gr, ex, "0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ey, "0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ez, "0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_box(gr,1);
-mgl_vect_3d(gr,ex,ey,ez,"bwr");
-mgl_delete_data(ex); mgl_delete_data(ey); mgl_delete_data(ez);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node VectL 3D sample, VectC 3D sample, Vect 3D sample, Dual plotting samples
- at subsection VectL 3D sample
- at cindex VectL
- at float
- at image{../png/vectl3, 7cm}
- at c @caption{Example of VectL in 3D. @tdref{vectl3}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData ex(10,10,10), ey(10,10,10), ez(10,10,10);
-ex.Fill("0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ey.Fill("0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ez.Fill("0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-gr.Rotate(40,60);
-gr.Box();
-gr.VectL(ex, ey, ez, "bwr");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new ex 10 10 10
-new ey 10 10 10
-new ez 10 10 10
-fill ex '0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ey '0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ez '0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)'
-rotate 40 60
-box
-vectl ex ey ez 'bwr'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT ex, ey, ez;
-ex = mgl_create_data_size(10,10,10);
-ey = mgl_create_data_size(10,10,10);
-ez = mgl_create_data_size(10,10,10);
-mgl_data_fill_eq(gr, ex, "0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ey, "0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ez, "0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_box(gr,1);
-mgl_vectl_3d(gr,ex,ey,ez,"bwr");
-mgl_delete_data(ex); mgl_delete_data(ey); mgl_delete_data(ez);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node VectC 3D sample, Flow 3D sample, VectL 3D sample, Dual plotting samples
- at subsection VectC 3D sample
- at cindex VectC
- at float
- at image{../png/vectc3, 7cm}
- at c @caption{Example of VectC in 3D. @tdref{vectc3}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData ex(10,10,10), ey(10,10,10), ez(10,10,10);
-ex.Fill("0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ey.Fill("0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ez.Fill("0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-gr.Rotate(40,60);
-gr.Box();
-gr.VectC(ex, ey, ez, "bwr");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new ex 10 10 10
-new ey 10 10 10
-new ez 10 10 10
-fill ex '0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ey '0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ez '0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)'
-rotate 40 60
-box
-vectc ex ey ez 'bwr'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT ex, ey, ez;
-ex = mgl_create_data_size(10,10,10);
-ey = mgl_create_data_size(10,10,10);
-ez = mgl_create_data_size(10,10,10);
-mgl_data_fill_eq(gr, ex, "0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ey, "0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ez, "0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_box(gr,1);
-mgl_vectc_3d(gr,ex,ey,ez,"bwr");
-mgl_delete_data(ex); mgl_delete_data(ey); mgl_delete_data(ez);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Flow 3D sample, Pipe 3D sample, VectC 3D sample, Dual plotting samples
- at subsection Flow 3D sample
- at cindex Flow
- at float
- at image{../png/flow3, 7cm}
- at c @caption{Example of Flow in 3D. @tdref{flow3}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData ex(30,30,30), ey(30,30,30), ez(30,30,30);
-ex.Fill("0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ey.Fill("0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ez.Fill("0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-gr.Rotate(40,60);
-gr.Box();
-gr.Flow(ex, ey, ez, "bwr");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new ex 30 30 30
-new ey 30 30 30
-new ez 30 30 30
-fill ex '0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ey '0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ez '0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)'
-rotate 40 60
-box
-flow ex ey ez 'bwr'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT ex, ey, ez;
-ex = mgl_create_data_size(30,30,30);
-ey = mgl_create_data_size(30,30,30);
-ez = mgl_create_data_size(30,30,30);
-mgl_data_fill_eq(gr, ex, "0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ey, "0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ez, "0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_box(gr,1);
-mgl_flow_3d(gr,ex,ey,ez,"bwr",3,1);
-mgl_delete_data(ex); mgl_delete_data(ey); mgl_delete_data(ez);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Pipe 3D sample, Crust sample, Flow 3D sample, Dual plotting samples
- at subsection Pipe 3D sample
- at cindex Pipe
- at float
- at image{../png/pipe3, 7cm}
- at c @caption{Example of Pipe in 3D. @tdref{pipe3}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData ex(10,10,10), ey(10,10,10), ez(10,10,10);
-ex.Fill("0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ey.Fill("0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-ez.Fill("0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)", gr.Min, gr.Max);
-gr.Rotate(40,60);
-gr.Light(true);
-gr.Box();
-gr.Pipe(ex, ey, ez, "bwr");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-new ex 10 10 10
-new ey 10 10 10
-new ez 10 10 10
-fill ex '0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ey '0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)'
-fill ez '0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)'
-rotate 40 60
-light on
-box
-pipe ex ey ez 'bwr'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT ex, ey, ez;
-ex = mgl_create_data_size(10,10,10);
-ey = mgl_create_data_size(10,10,10);
-ez = mgl_create_data_size(10,10,10);
-mgl_data_fill_eq(gr, ex, "0.2*x/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*x/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ey, "0.2*y/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*y/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_data_fill_eq(gr, ez, "0.2*(z-0.3)/pow(x^2+y^2+(z-0.3)^2,1.5) - \
- 0.2*(z+0.3)/pow(x^2+y^2+(z+0.3)^2,1.5)",0,0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_box(gr,1);
-mgl_pipe_3d(gr,ex,ey,ez,"bwr",0.05,3,1);
-mgl_delete_data(ex); mgl_delete_data(ey); mgl_delete_data(ez);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Crust sample, Dots sample, Pipe 3D sample, Dual plotting samples
- at subsection Crust sample
- at cindex Crust
- at float
- at image{../png/crust, 7cm}
- at c @caption{Example of Crust. @tdref{crust}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a("hotdogs.pts");
-a.Norm(-1,1,true);
-gr.Rotate(40,60);
-gr.Light(true);
-gr.Box();
-gr.Crust(a,"p");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-read a 'hotdogs.pts'
-norm a -1 1 on
-rotate 40 60
-light on
-box
-crust a 'p'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a = mgl_create_data_file("hotdogs.pts");
-mgl_data_norm(a,-1.,1.,1,0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_set_light(gr,1);
-mgl_box(gr,1);
-mgl_crust_tr(gr,a,"p",0.);
-mgl_delete_data(a);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
- at node Dots sample, , Crust sample, Dual plotting samples
- at subsection Dots sample
- at cindex Dots
- at float
- at image{../png/dots, 7cm}
- at c @caption{Example of Dots. @tdref{dots}}
- at end float
- at ifclear UDAV
- at strong{C++/Python code}
- at verbatim
-mglData a("hotdogs.pts");
-a.Norm(-1,1,true);
-gr.Rotate(40,60);
-gr.Box();
-gr.Dots(a,"p");
- at end verbatim
- at strong{MGL code}
- at end ifclear
- at verbatim
-read a 'hotdogs.pts'
-norm a -1 1 on
-rotate 40 60
-box
-dots a 'p'
- at end verbatim
- at ifclear UDAV
- at strong{C/Fortran code}
- at verbatim
-HMDT a = mgl_create_data_file("hotdogs.pts");
-mgl_data_norm(a,-1.,1.,1,0);
-mgl_rotate(gr,40.,60.,0.);
-mgl_box(gr,1);
-mgl_dots_tr(gr,a,"p");
-mgl_delete_data(a);
- at end verbatim
- at end ifclear
- at c ------------------------------------------------------------------
@c ------------------------------------------------------------------
@node Basic features, Additional features, Dual plotting samples, Samples
diff --git a/todo.txt b/todo.txt
index d44d679..22e0c1a 100644
--- a/todo.txt
+++ b/todo.txt
@@ -1,25 +1,78 @@
============= TEST =============
-1. Triangulation
-2. Axis -- projection (ternary + quaternary)
+1. MGL testing system
+2. test pthread for windows
+3. Check highlight -- UDAV: set proper pos, correct dbl-click, dbl-click on messages
+4. Check export to MGLD/TeX/OBJ/XGL/X3D/STL.
+5. check 'rotatetext off', 'fgets'
+6. font loading in udav
+7. add XInitThreads() from #include <X11/Xlib.h> into all GUI
+8, Fl::awake() for Update()?!? + similar for Qt
+
+6. Check fontsize maximum ?!?
+7. curved text (in new sample) look not so good
+8. emulate fog in EPS/SVG
+9. line segment losses in EPS ???
============= NEW =============
-01. BeltP() -- analogue of FlowP() but by belt -- fixed and variable width of belt. Color depend on vector field.
-02. Box() + edges + half-transparent
-03. Parallelization of drawing (MathGL level)
-04. Export to LaTeX formats - (pgf/tikz -- vector + bitmap).
-05. Export to CALLADA
-06. Export to X3D
-07. Export to JavaScript (WebGL)
-08. GTK and WX window/widgets
-09. Import/Export via GIF (as 3d data) ???
-10. Read DICOM files.
-11. Labels at TriCont()
-12. Cones() -- like Bars() but by Cone()
-13. MPI_Send(), MPI_Recv()
-14. Add diffusive light (no dependence of normals but have direction)
-15. Use Hershey as built-in font ???
-16. Add MGL command "ask $N 'question'" -- like interactive "define"
+1. ReadHDF5 -- add string argument for handling lowest dimension (like complex numbers): "sum" - sum, "arg" - arg, "0...9" read slice 0...9, "abs" - sqrt(sum []^2)
+2. Export to X3D and VRML
+3. Sample for TriPlot (piramid) and QuadPlot (cube)
+
+============= FOR V.2.1 ========
+
+1. MPI_Send(), MPI_Recv()
+2. Use Hershey as built-in font ???
+3. Import/Export via GIF (as 3d data) ???
+4. Read DICOM files.
+5. Export to JavaScript (WebGL)
+6. GTK and WX window/widgets
+7. Labels at TriCont()
+
+8. Option 'absolute' for coordinates in absolute range (i.e. [0,1]) ???
+9. Save primitives for frames (not bitmap) ??? -- see MGL_USEDRWDAT
+10. Enable several fonts at the same picture
+11. Table(float x, float y, HCDT dat, char *xlabels, char *ylabels, char *stl) -- draw table with values (+ auto reduce font size?)
+12. Parallelization of drawing (MathGL level) -- bug with primitives drawing --> pixel.cpp
+13. Triangulation + GridData (for interpolation to regular grid)
+14. Axis -- projection (ternary + quaternary)
+15. Examples of animation, u3d, x3d, js and so on
+
+============= UDAV =============
+
+01. Dialog for data input
+-----------------------------------------------
+| [Data name |V|] |
+| [x1] [x2] [func] {ADD} |
+| [y1] [y2] [suf|V] {ADD} |
+| [z1] [z2] [oper|V] [dir] {ADD} |
+| Reuslt [ ] |
+| {Cancel} {OK} |
+-----------------------------------------------
+Ranges can be inverted.
+Remove other setting if data name is changed.
+
+02. Double click -> jump to string + setup dialog (optionally)
+03. Dialog for InPlot(s):
+{SubPlot,MultiPlot} -- enable rotate,aspect,title
+{ColumnPlot} -- enable rotate,several
+{StickPlot} -- enable several
+{InPlot} -- enable rotate,aspect,title
+
+04. Group/ungroup if command in single line, separated by ':'
+05. Hide plot/group by putting "#h " at beginning of line
+06. Annotation of plot/group -- comment before it
+09. Data change via menu/toolbar -- save to internal script => enable undo + save initial array(?)
+10. Add primitives by mouse at beginning of script + change its size/position by mouse + "attraction" points
+11. Drag&drop plot/group between inplots
+12. Create default plot dependently of selected row/column/range in data table
+13. Show plot at creation stage (if option is enabled -- can be long process!!!)
+14. Rotate/perspective/lighting/... of primitive list (without script re-execution)
+
+15. QTreeWidgetItem -- ICON (if,for,once,subplot,...); Cmd text; LINE - POS in group/line. After editing/changing --> put text to editor.
+
+17. Setupable hot-keys ?!?
+18. Insert just filename (without path) by demand
============= UNSURE ===========
@@ -28,9 +81,9 @@
3. \dfrac for normal size and centering (sample \big\big{\frac{1}{2}}) ???
4. "Cut off" curves if text is printed inside it (for contour labels) ?!?
5. String variables in MGL + readstr command.
-8. Pool of threads for speeding up ???
-9. Drops as mglPrim -- not accurate but smaller memory and faster
-10. Text aspect ratio in OpenGL mode
+6. Pool of threads for speeding up ???
+7. Drops as mglPrim -- not accurate but smaller memory and faster
+8. Text aspect ratio in OpenGL mode
============= DOCS =============
@@ -38,29 +91,41 @@
2. FAQ about sizes of plot (parametrical+inverted, or Min*Max)
3. FAQ about MinGW -- http://www.mingw.org/wiki/FAQ
4. MGL docs -- text what formulas are applicable for scalars too.
-5.Sample about pthread using.
6. Add help about cmake and GIF/JPEG to the "Installation and using"
-7. Regroup pictures in WWW by big classes + combo plots
-8. On which things the subplot influence
-9. About unrotated text
-10. Add "Howto" section in web site.
-11. "Data plotting", "Data plot", "Scientific visualtization", "Surface", "Cloud","Plot", "statistical graphics" to website
-12. Examples of animation, u3d, x3d, js and so on
-13. Example of inverted axis, minus-log axis
-14. Venn() diagram sample
-15. Primitives sample
-16. Candle() sample
-17. Parallelization:
+7. On which things the subplot influence
+8. About unrotated text
+9. Add "Howto" section
+10. New samples + update old ones
+11. Parallelization:
* user level -- SetDrawReg(), PutDrawReg() -- remove!?!
* MPI level -- Combine()
* MathGL level -- pthread in mglData, ???
-18. SetCoor() -- add log-log, log-x, log-y predefined coordinates
-19. Boxs() styles: '#' for wire, '@' for full box. NOTE: use Boxs(a,"@"); for testing speed
-20. TernAxis=0 -- usual, =1 -- ternary, =2 -- quaternary, &4 -- projections
+12. Boxs() styles: '#' for wire, '@' for full box.
+13. mglData::SetVal(), GetVal()
+14. Highlight(), changes in Execute() -- highlighting
+15. Add mgl_label_xyz(), mgl_label_xy(), mgl_label_y(). Possible numbers are: "%x" for x-coor, "%y" for y-coor, "%z" for z-coor.
+16. Check mglData::Insert(): now copy values from original array (x[i] -> x[2*i], x[2*i+1], ...)
+17. Symbol '!' denote sharp colors even in 1d plots (like different colors for points)
+18. Check Zoom() + in widgets (ToggleZoom(),...)
+19. ExportMGLD(), ImportMGLD() points+primitives to *.mgld file.
+20. Box() draw faces if '@' is specified
+21. Check export to LaTeX.
+22. Add DifLight() for diffusive light (for local sources only) + option "diffuse on|off" + local version of Light()/'light'. Default is diffuse light for local sources
+23. mglview can preview MGLD files too -- check it
+24. Handle mglBase::Stop everywhere
+25. Number of frames can be changed at reload + manual call of draw_func if number of frames is 0.
+26. Symbol '\' at the end continue string in MGL script
+27. Add mgl_data_sort(HMDT dat, long idx); -- sort rows of x-y table (or slices of 3D data) by value of idx-column (and idy-row for nz>1). Not thread safe!!!
+28. Add mgl_tape_*(), Tape() -- draw tapes which rotate as (bi)normale of curve. Width by value or depend on BarWidth
+29. Flow() and FlowP() draw tape of (bi)normales if character 'x' and/or 'z' is specified.
+30. Add MGL command "ask $N 'question'" -- like interactive "define". User (UDAV) must set mgl_ask_func to some non-zero value
+31. Cones() -- like Bars() but by Cone(). Support 'a' for above.
+32. Add Class diagram for MathGL core
+33. Add GridPlot -- Like ColumnPlot but grid
+34. Copy text about formats of SetTickTime from "man localtime" + comment about default values. Allow d=0 -- automatic step selection.
+35. Add mglBase, mglCanvas in other_en.texi + small comments about developing new plots.
============= BUGS =============
1. ÑÑилиÑÑ (mgl2png и пÑ.) вÑлеÑаÑÑ, еÑли в коменÑаÑиÑÑ
ÑÑÑÑкие бÑквÑ
-2. Last ' isn't send as call argument!!!
-3. "Chaos" in area.png (near axis) ???
diff --git a/udav/CMakeLists.txt b/udav/CMakeLists.txt
index 71b5969..6114126 100644
--- a/udav/CMakeLists.txt
+++ b/udav/CMakeLists.txt
@@ -1,7 +1,15 @@
+if(use_qt)
+
+
#set(mgl_wnd_src window.cpp)
-set(udav_src anim_dlg.cpp find_dlg.cpp mem_pnl.cpp prop_dlg.cpp textedit.cpp args_dlg.cpp help_pnl.cpp newcmd_dlg.cpp qmglcanvas.cpp text_pnl.cpp calc_dlg.cpp hint_dlg.cpp open_dlg.cpp qmglsyntax.cpp udav_wnd.cpp dat_pnl.cpp info_dlg.cpp opt_dlg.cpp setup_dlg.cpp files_dlg.cpp main.cpp plot_pnl.cpp style_dlg.cpp)
+set(udav_src anim_dlg.cpp find_dlg.cpp mem_pnl.cpp prop_dlg.cpp textedit.cpp args_dlg.cpp
+ help_pnl.cpp newcmd_dlg.cpp qmglcanvas.cpp text_pnl.cpp calc_dlg.cpp hint_dlg.cpp
+ open_dlg.cpp qmglsyntax.cpp udav_wnd.cpp dat_pnl.cpp info_dlg.cpp opt_dlg.cpp setup_dlg.cpp
+ files_dlg.cpp plot_pnl.cpp style_dlg.cpp)
-set(udav_moc_hdr anim_dlg.h files_dlg.h info_dlg.h opt_dlg.h qmglsyntax.h text_pnl.h args_dlg.h find_dlg.h mem_pnl.h plot_pnl.h setup_dlg.h udav_wnd.h calc_dlg.h help_pnl.h newcmd_dlg.h prop_dlg.h style_dlg.h dat_pnl.h hint_dlg.h open_dlg.h qmglcanvas.h textedit.h)
+set(udav_moc_hdr anim_dlg.h files_dlg.h info_dlg.h opt_dlg.h qmglsyntax.h text_pnl.h args_dlg.h
+ find_dlg.h mem_pnl.h plot_pnl.h setup_dlg.h udav_wnd.h calc_dlg.h help_pnl.h newcmd_dlg.h
+ prop_dlg.h style_dlg.h dat_pnl.h open_dlg.h qmglcanvas.h textedit.h hint_dlg.h)
set(udav_rc udav.qrc)
@@ -20,8 +28,7 @@ qt4_add_resources(udav_rc_src ${udav_rc} )
#qt_wrap_cpp(udav udav_moc_src ${udav_moc_hdr} )
qt4_wrap_cpp(udav_moc_src ${udav_moc_hdr} )
add_executable(udav ${udav_src} ${udav_moc_src} ${udav_rc_src})
-target_link_libraries(udav mgl)
-target_link_libraries(udav ${QT_LIBRARIES})
+target_link_libraries(udav mgl-wnd ${QT_LIBRARIES})
if(use_pthread)
target_link_libraries(udav ${CMAKE_THREAD_LIBS_INIT})
@@ -31,6 +38,6 @@ endif(use_pthread)
install(
TARGETS udav
RUNTIME DESTINATION bin
- ARCHIVE DESTINATION lib
- LIBRARY DESTINATION lib
)
+
+endif(use_qt)
diff --git a/udav/args_dlg.cpp b/udav/args_dlg.cpp
index 287f7f1..0745599 100644
--- a/udav/args_dlg.cpp
+++ b/udav/args_dlg.cpp
@@ -25,6 +25,8 @@
#include "args_dlg.h"
extern mglParser parser;
//-----------------------------------------------------------------------------
+QDialog *createArgsDlg(QWidget *p) { return new ArgsDialog(p); }
+//-----------------------------------------------------------------------------
ArgsDialog::ArgsDialog(QWidget *parent) : QDialog(parent)
{
setWindowTitle(tr("UDAV - Set script arguments"));
diff --git a/udav/calc_dlg.cpp b/udav/calc_dlg.cpp
index e4ce301..ae75d96 100644
--- a/udav/calc_dlg.cpp
+++ b/udav/calc_dlg.cpp
@@ -23,6 +23,7 @@
#include <QPushButton>
#include <QListView>
#include <QComboBox>
+#include <QTextEdit>
#include <mgl/parser.h>
#include "calc_dlg.h"
extern mglParser parser;
@@ -32,6 +33,13 @@ mglData mglFormulaCalc(const wchar_t *string, mglParser *arg);
// Calc dialog
//
//-----------------------------------------------------------------------------
+QWidget *createCalcDlg(QWidget *p, QTextEdit *e)
+{
+ CalcDialog *c = new CalcDialog(p);
+ QObject::connect(c, SIGNAL(putNumber(QString)),e,SLOT(insertPlainText(QString)));
+ return c;
+}
+//-----------------------------------------------------------------------------
CalcDialog::CalcDialog(QWidget *parent) : QWidget(parent)
{
QPushButton *b;
@@ -177,7 +185,7 @@ void CalcDialog::evaluate()
setlocale(LC_ALL, "");
// result->setText(QString::fromWCharArray(txt));
delete []txt;
- result->setText(QString::number(res.a[0]));
+ result->setText(QString::number(res.GetVal(0)));
}
//-----------------------------------------------------------------------------
void CalcDialog::fillFuncName()
diff --git a/udav/dat_pnl.cpp b/udav/dat_pnl.cpp
index b0d8eff..cbc5229 100644
--- a/udav/dat_pnl.cpp
+++ b/udav/dat_pnl.cpp
@@ -39,8 +39,19 @@
#include "xpm/table.xpm"
//-----------------------------------------------------------------------------
extern mglParser parser;
+class MainWindow;
void updateDataItems();
-void deleteDat(void *o) { if(o) delete ((DatPanel *)o); }
+void addDataPanel(MainWindow *wnd, QWidget *w, QString name);
+void deleteDat(void *o) { if(o) delete ((DatPanel *)o); }
+void refreshData(QWidget *w) { ((DatPanel *)w)->refresh(); }
+//-----------------------------------------------------------------------------
+QWidget *newDataWnd(InfoDialog *inf, MainWindow *wnd, mglVar *v)
+{
+ DatPanel *t = new DatPanel(inf);
+ if(v) t->setVar(v);
+ addDataPanel(wnd,t,t->dataName());
+ return t;
+}
//-----------------------------------------------------------------------------
DatPanel::DatPanel(InfoDialog *inf, QWidget *parent) : QWidget(parent)
{
@@ -99,7 +110,7 @@ void DatPanel::refresh()
}
for(i=0;i<nx;i++) for(j=0;j<ny;j++)
{
- f = var->d.a[i+nx*(j+ny*kz)];
+ f = var->d.GetVal(i,j,kz);
if(isnan(f)) s = "nan";
else s.sprintf("%g",f);
tab->item(j,i)->setText(s);
@@ -148,12 +159,12 @@ void DatPanel::putValue(int r, int c)
QString s = tab->item(r,c)->text().toLower();
float f;
f = s=="nan" ? NAN : s.toDouble();
- if(f!=var->d.a[c+nx*(r+ny*kz)])
+ if(f!=var->d.GetVal(c,r,kz))
{
if(isnan(f)) s="nan"; else s.sprintf("%g", f);
tab->item(r,c)->setText(s);
}
- var->d.a[c+nx*(r+ny*kz)] = f;
+ var->d.SetVal(f,c,r,kz);
infoDlg->refresh();
}
//-----------------------------------------------------------------------------
@@ -222,7 +233,7 @@ void DatPanel::paste()
{
t = s.section('\t',j,j,QString::SectionSkipEmpty);
if(t.isEmpty()) { j=nx; continue; }
- var->d.a[j+c+nx*(i+r+ny*kz)] = t.toDouble();
+ var->d.SetVal(t.toDouble(),j+c,i+r,kz);
}
}
refresh();
@@ -627,50 +638,50 @@ void DatPanel::toolTop(QBoxLayout *l)
// file menu
o = menu->addMenu(tr("&File"));
a = new QAction(QPixmap(":/xpm/document-open.png"), tr("&Load data"), this);
- connect(a, SIGNAL(activated()), this, SLOT(load()));
+ connect(a, SIGNAL(triggered()), this, SLOT(load()));
a->setToolTip(tr("Load data from file. Data will be deleted only\nat exit but UDAV will not ask to save it."));
a->setShortcut(Qt::CTRL+Qt::SHIFT+Qt::Key_O); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/document-import.png"), tr("&Import PNG"), this);
- connect(a, SIGNAL(activated()), this, SLOT(imprt()));
+ connect(a, SIGNAL(triggered()), this, SLOT(imprt()));
a->setToolTip(tr("Import data from PNG picture with specified color scheme.\nData will be deleted only at exit but UDAV will not ask it saving."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/document-save.png"), tr("&Save data"), this);
- connect(a, SIGNAL(activated()), this, SLOT(save()));
+ connect(a, SIGNAL(triggered()), this, SLOT(save()));
a->setToolTip(tr("Save data to tab-separeted file."));
a->setShortcut(Qt::CTRL+Qt::SHIFT+Qt::Key_S); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/document-export.png"), tr("&Export PNG"), this);
- connect(a, SIGNAL(activated()), this, SLOT(exprt()));
+ connect(a, SIGNAL(triggered()), this, SLOT(exprt()));
a->setToolTip(tr("Export data to PNG picture. The colors defined by \nspecified color scheme. The same as in 'dens' command."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
// o->addSeparator(); bb->addSeparator();
// a = new QAction(QPixmap(insert_xpm), tr("Insert as &list"), this);
-// connect(a, SIGNAL(activated()), this, SLOT(list()));
+// connect(a, SIGNAL(triggered()), this, SLOT(list()));
// o->addAction(a);
// bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(plot_xpm), tr("Plot &data"), this);
- connect(a, SIGNAL(activated()), this, SLOT(plot()));
+ connect(a, SIGNAL(triggered()), this, SLOT(plot()));
a->setToolTip(tr("Plot data in new script window. You may select the kind\nof plot, its style and so on."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/edit-copy.png"), tr("Copy &data"), this);
- connect(a, SIGNAL(activated()), this, SLOT(copy()));
+ connect(a, SIGNAL(triggered()), this, SLOT(copy()));
a->setToolTip(tr("Copy range of numbers to clipboard."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/edit-paste.png"), tr("Paste &data"), this);
- connect(a, SIGNAL(activated()), this, SLOT(copy()));
+ connect(a, SIGNAL(triggered()), this, SLOT(copy()));
a->setToolTip(tr("Paste range of numbers from clipboard."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
@@ -678,13 +689,13 @@ void DatPanel::toolTop(QBoxLayout *l)
// navigation menu
o = menu->addMenu(tr("&Navigate"));
a = new QAction(QPixmap(":/xpm/go-first.png"), tr("&First slice"), this);
- connect(a, SIGNAL(activated()), this, SLOT(first()));
+ connect(a, SIGNAL(triggered()), this, SLOT(first()));
a->setToolTip(tr("Go to the first data slice for 3D data."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/go-previous.png"), tr("&Prev. slice"), this);
- connect(a, SIGNAL(activated()), this, SLOT(prev()));
+ connect(a, SIGNAL(triggered()), this, SLOT(prev()));
a->setToolTip(tr("Go to the previous data slice for 3D data."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
@@ -697,18 +708,18 @@ void DatPanel::toolTop(QBoxLayout *l)
connect(this, SIGNAL(nzChanged(int)), this, SLOT(setNz(int)));
a = new QAction(tr("Go to slice"), this);
- connect(a, SIGNAL(activated()), this, SLOT(gosl()));
+ connect(a, SIGNAL(triggered()), this, SLOT(gosl()));
a->setToolTip(tr("Go to the specified data slice for 3D data."));
o->addAction(a);
a = new QAction(QPixmap(":/xpm/go-next.png"), tr("Next slice"), this);
- connect(a, SIGNAL(activated()), this, SLOT(next()));
+ connect(a, SIGNAL(triggered()), this, SLOT(next()));
a->setToolTip(tr("Go to the next data slice for 3D data."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/go-last.png"), tr("Last slice"), this);
- connect(a, SIGNAL(activated()), this, SLOT(last()));
+ connect(a, SIGNAL(triggered()), this, SLOT(last()));
a->setToolTip(tr("Go to the last data slice for 3D data."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
@@ -723,135 +734,135 @@ void DatPanel::toolLeft(QBoxLayout *l)
// size menu
o = menu->addMenu(tr("&Sizes"));
a = new QAction(QPixmap(":/xpm/document-new.png"), tr("&Create new"), this);
- connect(a, SIGNAL(activated()), this, SLOT(create()));
+ connect(a, SIGNAL(triggered()), this, SLOT(create()));
a->setToolTip(tr("Recreate the data with new sizes and fill it by zeros (Ctrl+N)."));
a->setShortcut(Qt::CTRL+Qt::Key_N); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(size_xpm), tr("&Resize"), this);
- connect(a, SIGNAL(activated()), this, SLOT(reSize()));
+ connect(a, SIGNAL(triggered()), this, SLOT(reSize()));
a->setToolTip(tr("Resize (interpolate) the data to specified sizes (Ctrl+R)."));
a->setShortcut(Qt::CTRL+Qt::Key_R); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(squize_xpm), tr("&Squeeze"), this);
- connect(a, SIGNAL(activated()), this, SLOT(squize()));
+ connect(a, SIGNAL(triggered()), this, SLOT(squize()));
a->setToolTip(tr("Keep only each n-th element of the data array."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(crop_xpm), tr("Cro&p"), this);
- connect(a, SIGNAL(activated()), this, SLOT(crop()));
+ connect(a, SIGNAL(triggered()), this, SLOT(crop()));
a->setToolTip(tr("Crop the data edges. Useful to cut off the zero-filled area."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(tran_xpm), tr("&Transpose"), this);
- connect(a, SIGNAL(activated()), this, SLOT(transp()));
+ connect(a, SIGNAL(triggered()), this, SLOT(transp()));
a->setToolTip(tr("Transpose data dimensions, like x<->y or x<->z and so on."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(tr("Re&arrange"), this);
- connect(a, SIGNAL(activated()), this, SLOT(rearrange()));
+ connect(a, SIGNAL(triggered()), this, SLOT(rearrange()));
a->setToolTip(tr("Rearrange data sizes without changing data values."));
o->addAction(a);
// modify menu
o = menu->addMenu(tr("&Modify"));
a = new QAction(QPixmap(func_xpm), tr("By &formula"), this);
- connect(a, SIGNAL(activated()), this, SLOT(byformula()));
+ connect(a, SIGNAL(triggered()), this, SLOT(byformula()));
a->setToolTip(tr("Change data values according to formula depended on 'x', 'y' and 'z'\nvariables. A set of special function is availible also."));
a->setShortcut(Qt::CTRL+Qt::Key_M); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(tr("Fill in &range"), this);
- connect(a, SIGNAL(activated()), this, SLOT(inrange()));
+ connect(a, SIGNAL(triggered()), this, SLOT(inrange()));
a->setToolTip(tr("Fill data equidistantly from one value to another."));
o->addAction(a);
a = new QAction(tr("&Normalize"), this);
- connect(a, SIGNAL(activated()), this, SLOT(norm()));
+ connect(a, SIGNAL(triggered()), this, SLOT(norm()));
a->setToolTip(tr("Normalize data so that its minimal\nand maximal values be in specified range."));
o->addAction(a);
a = new QAction(tr("Norm. s&lices"), this);
- connect(a, SIGNAL(activated()), this, SLOT(normsl()));
+ connect(a, SIGNAL(triggered()), this, SLOT(normsl()));
a->setToolTip(tr("Normalize each data slice perpendicular to some direction\nso that its minimal and maximal values be in specified range."));
o->addAction(a);
a = new QAction(QPixmap(smth_xpm), tr("&Smooth data"), this);
- connect(a, SIGNAL(activated()), this, SLOT(smooth()));
+ connect(a, SIGNAL(triggered()), this, SLOT(smooth()));
a->setToolTip(tr("Smooth data by one of 4 methods along specified direction(s)."));
o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
oo = menu->addMenu(tr("&Operators"));
a = new QAction(QPixmap(sum_xpm), tr("&Cum. sum"), this);
- connect(a, SIGNAL(activated()), this, SLOT(cumsum()));
+ connect(a, SIGNAL(triggered()), this, SLOT(cumsum()));
a->setToolTip(tr("Summate data values along specified direction(s)."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(integr_xpm), tr("&Integrate"), this);
- connect(a, SIGNAL(activated()), this, SLOT(integr()));
+ connect(a, SIGNAL(triggered()), this, SLOT(integr()));
a->setToolTip(tr("Integrate data values along specified direction(s)."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(diff_xpm), tr("&Differentiate"), this);
- connect(a, SIGNAL(activated()), this, SLOT(diff()));
+ connect(a, SIGNAL(triggered()), this, SLOT(diff()));
a->setToolTip(tr("Differentiate data values along specified direction(s)."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(diff2_xpm), tr("&Laplace"), this);
- connect(a, SIGNAL(activated()), this, SLOT(diff2()));
+ connect(a, SIGNAL(triggered()), this, SLOT(diff2()));
a->setToolTip(tr("Double differentiate data values along specified direction(s)."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(swap_xpm), tr("&Swap"), this);
- connect(a, SIGNAL(activated()), this, SLOT(swap()));
+ connect(a, SIGNAL(triggered()), this, SLOT(swap()));
a->setToolTip(tr("Swap left and right data part along specified direction(s).\nThis operation is useful for data after Fourier transform."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(tr("&Mirror"), this);
- connect(a, SIGNAL(activated()), this, SLOT(mirror()));
+ connect(a, SIGNAL(triggered()), this, SLOT(mirror()));
a->setToolTip(tr("Mirror left and right data part along specified direction(s).\nThis operation do like index change from 'i' to 'n-i'."));
oo->addAction(a);
oo = menu->addMenu(tr("&Algebraic"));
a = new QAction(QPixmap(oper_a_xpm), tr("&Add"), this);
- connect(a, SIGNAL(activated()), this, SLOT(addto()));
+ connect(a, SIGNAL(triggered()), this, SLOT(addto()));
a->setToolTip(tr("Add a number to all data values."));
oo->addAction(a);
a = new QAction(QPixmap(oper_s_xpm), tr("&Subtract"), this);
- connect(a, SIGNAL(activated()), this, SLOT(subto()));
+ connect(a, SIGNAL(triggered()), this, SLOT(subto()));
a->setToolTip(tr("Subtract a number to all data values."));
oo->addAction(a);
a = new QAction(QPixmap(oper_m_xpm), tr("&Multiply"), this);
- connect(a, SIGNAL(activated()), this, SLOT(multo()));
+ connect(a, SIGNAL(triggered()), this, SLOT(multo()));
a->setToolTip(tr("Multiply all data values by a number."));
oo->addAction(a);
a = new QAction(QPixmap(oper_d_xpm), tr("&Divide"), this);
- connect(a, SIGNAL(activated()), this, SLOT(divto()));
+ connect(a, SIGNAL(triggered()), this, SLOT(divto()));
a->setToolTip(tr("Divide all data values by a number."));
oo->addAction(a);
oo = menu->addMenu(tr("A¬her data"));
a = new QAction(tr("&Sum of"), this); oo->addAction(a);
- connect(a, SIGNAL(activated()), this, SLOT(sumof()));
+ connect(a, SIGNAL(triggered()), this, SLOT(sumof()));
a = new QAction(tr("M&in of"), this); oo->addAction(a);
- connect(a, SIGNAL(activated()), this, SLOT(minof()));
+ connect(a, SIGNAL(triggered()), this, SLOT(minof()));
a = new QAction(tr("M&ax of"), this); oo->addAction(a);
- connect(a, SIGNAL(activated()), this, SLOT(maxof()));
+ connect(a, SIGNAL(triggered()), this, SLOT(maxof()));
a = new QAction(tr("Momentum along &x"), this); oo->addAction(a);
- connect(a, SIGNAL(activated()), this, SLOT(momentx()));
+ connect(a, SIGNAL(triggered()), this, SLOT(momentx()));
a = new QAction(tr("Momentum along &y"), this); oo->addAction(a);
- connect(a, SIGNAL(activated()), this, SLOT(momenty()));
+ connect(a, SIGNAL(triggered()), this, SLOT(momenty()));
a = new QAction(tr("Momentum along &z"), this); oo->addAction(a);
- connect(a, SIGNAL(activated()), this, SLOT(momentz()));
+ connect(a, SIGNAL(triggered()), this, SLOT(momentz()));
a = new QAction(tr("&Histogram"), this); oo->addAction(a);
- connect(a, SIGNAL(activated()), this, SLOT(hist()));
+ connect(a, SIGNAL(triggered()), this, SLOT(hist()));
l->addStretch(1);
}
diff --git a/udav/dat_pnl.h b/udav/dat_pnl.h
index 39a8b7e..b9be24b 100644
--- a/udav/dat_pnl.h
+++ b/udav/dat_pnl.h
@@ -35,7 +35,7 @@ class DatPanel : public QWidget
Q_OBJECT
public:
QMenu *menu;
- InfoDialog *infoDlg; ///< NOTE: Reference to dialog !!!
+ InfoDialog *infoDlg; ///< Reference to dialog !!!
DatPanel(InfoDialog *inf, QWidget *parent = 0);
~DatPanel();
diff --git a/udav/help_pnl.cpp b/udav/help_pnl.cpp
index dfac7b8..1589242 100644
--- a/udav/help_pnl.cpp
+++ b/udav/help_pnl.cpp
@@ -28,6 +28,10 @@
extern QString pathHelp;
void raisePanel(QWidget *w);
//-----------------------------------------------------------------------------
+QWidget *createHlpPanel(QWidget *p) { return new HelpPanel(p); }
+void showHelpMGL(QWidget *hlp,QString s){ ((HelpPanel *)hlp)->showHelp(s); }
+void showExMGL(QWidget *hlp) { ((HelpPanel *)hlp)->showExamples(); }
+//-----------------------------------------------------------------------------
HelpPanel::HelpPanel(QWidget *parent) : QWidget(parent)
{
QPushButton *b;
@@ -35,7 +39,7 @@ HelpPanel::HelpPanel(QWidget *parent) : QWidget(parent)
QVBoxLayout *o = new QVBoxLayout(this);
QHBoxLayout *a = new QHBoxLayout(); o->addLayout(a);
help = new QTextBrowser(this); o->addWidget(help);
- help->setOpenExternalLinks(false); setPath(pathHelp);
+ help->setOpenExternalLinks(false);
b = new QPushButton(QPixmap(":/xpm/go-previous.png"), tr("Backward"));
connect(b, SIGNAL(clicked()), help, SLOT(backward())); a->addWidget(b);
@@ -53,17 +57,10 @@ HelpPanel::HelpPanel(QWidget *parent) : QWidget(parent)
setWindowTitle(tr("Help"));
}
//-----------------------------------------------------------------------------
-void HelpPanel::setPath(const QString &path)
-{
- QStringList s; s<<(path+"/"+tr("mgl_en")+".html/");
- help->setSearchPaths(s);
- help->setSource(tr("mgl_en")+"_1.html");
-//QString pp=path+"/"+tr("mgl_en")+".html/"+tr("mgl_en")+"_1.html";
-//printf("%s\n",pp.toAscii().constData());
-}
-//-----------------------------------------------------------------------------
void HelpPanel::showExamples()
{
+ QStringList s; s<<(pathHelp+"/"+tr("mgl_en")+".html/");
+ help->setSearchPaths(s);
setWindowTitle("Examples"); raisePanel(this);
help->setSource(tr("mgl_en")+"_2.html");
}
@@ -72,6 +69,8 @@ void HelpPanel::showHelp(const QString &txt)
{
QString cmd=txt;
raisePanel(this);
+ QStringList s; s<<(pathHelp+"/"+tr("mgl_en")+".html/");
+ help->setSearchPaths(s);
if(cmd.isEmpty()) cmd = entry->text().trimmed();
if(cmd.isEmpty()) help->setSource(tr("mgl_en")+"_1.html");
else help->setSource(tr("mgl_en")+"_1.html#"+cmd);
@@ -79,12 +78,8 @@ void HelpPanel::showHelp(const QString &txt)
}
//-----------------------------------------------------------------------------
void HelpPanel::zoomIn()
-{
- QFont f(help->font()); f.setPointSize(f.pointSize()+1); help->setFont(f);
-}
+{ QFont f(help->font()); f.setPointSize(f.pointSize()+1); help->setFont(f); }
//-----------------------------------------------------------------------------
void HelpPanel::zoomOut()
-{
- QFont f(help->font()); f.setPointSize(f.pointSize()-1); help->setFont(f);
-}
+{ QFont f(help->font()); f.setPointSize(f.pointSize()-1); help->setFont(f); }
//-----------------------------------------------------------------------------
diff --git a/udav/help_pnl.h b/udav/help_pnl.h
index c3e70c8..40cb8fa 100644
--- a/udav/help_pnl.h
+++ b/udav/help_pnl.h
@@ -32,7 +32,6 @@ public:
public slots:
void showExamples();
void showHelp(const QString &cmd=QString::null);
- void setPath(const QString &path);
void zoomIn();
void zoomOut();
private:
diff --git a/udav/hint_dlg.cpp b/udav/hint_dlg.cpp
index ae7e8bd..3973e09 100644
--- a/udav/hint_dlg.cpp
+++ b/udav/hint_dlg.cpp
@@ -21,15 +21,9 @@
#include <QCheckBox>
#include <QLayout>
#include <QPushButton>
-#include <QTextEdit>
#include "hint_dlg.h"
//-----------------------------------------------------------------------------
-//
-// Hint dialog
-//
-//-----------------------------------------------------------------------------
-#define qtr HintDialog::tr
-int numHints=-1;
+#define qtr HintDialog::tr
QString hints[] = {
qtr("You can rotate plot by mouse. Just press 'Rotate' toolbutton, click image and hold a mouse button: left button for rotation, right button for zooming/perspective, middle button for shifting."),
qtr("You may quickly draw the data from file. Just use: udav 'filename.dat' in command line."),
@@ -48,14 +42,17 @@ QString hints[] = {
qtr("The calculator can help you to put complex expression in the script. Just type the expression (which may depend on coordinates x,y,z and so on) and put it into the script."),
qtr("You can easely insert file or folder names, last fitted formula or numerical value of selection by using menu Edit|Insert."),
qtr("The special dialog (Edit|Insert|New Command) help you select the command, fill its arguments and put it into the script."),
- qtr("")};
-
+ qtr("")
+};
+//-----------------------------------------------------------------------------
+//
+// Hint dialog
+//
//-----------------------------------------------------------------------------
extern "C"{double mgl_rnd();}
HintDialog::HintDialog(QWidget *parent) : QDialog(parent)
{
- if(numHints<0)
- for(numHints=0;!hints[numHints].isEmpty();numHints++){};
+ for(numHints=0;!hints[numHints].isEmpty();numHints++){};
cur = int(mgl_rnd()*numHints);
setWindowTitle(tr("UDAV - Hint"));
QHBoxLayout *a;
@@ -76,14 +73,6 @@ HintDialog::HintDialog(QWidget *parent) : QDialog(parent)
connect(b, SIGNAL(clicked()),this, SLOT(close()));
}
//-----------------------------------------------------------------------------
-HintDialog::~HintDialog() {}
-//-----------------------------------------------------------------------------
-void HintDialog::nextClicked()
-{ cur = (cur+1)%numHints; text->setText(hints[cur]); }
-//-----------------------------------------------------------------------------
-void HintDialog::prevClicked()
-{ cur--; if(cur<0) cur=numHints-1; text->setText(hints[cur]); }
-//-----------------------------------------------------------------------------
void HintDialog::closeEvent(QCloseEvent *)
{
QSettings settings("udav","UDAV");
@@ -93,3 +82,9 @@ void HintDialog::closeEvent(QCloseEvent *)
settings.endGroup();
}
//-----------------------------------------------------------------------------
+void udavShowHint(QWidget *p)
+{
+ HintDialog *hd = new HintDialog(p);
+ hd->exec();
+}
+//-----------------------------------------------------------------------------
diff --git a/udav/hint_dlg.h b/udav/hint_dlg.h
index d99ae39..6b3e709 100644
--- a/udav/hint_dlg.h
+++ b/udav/hint_dlg.h
@@ -20,24 +20,28 @@
#ifndef HINT_DLG_H
#define HINT_DLG_H
//-----------------------------------------------------------------------------
+#include <QTextEdit>
#include <QDialog>
class QCheckBox;
-class QTextEdit;
+extern QString hints[];
//-----------------------------------------------------------------------------
-/// Dialog for finding something in text
+/// Dialog for showing hints
class HintDialog : public QDialog
{
Q_OBJECT
public:
HintDialog(QWidget *parent = 0);
- ~HintDialog();
+ ~HintDialog() {};
protected:
void closeEvent(QCloseEvent *event);
private slots:
- void nextClicked();
- void prevClicked();
+ void nextClicked()
+ { cur = (cur+1)%numHints; text->setText(hints[cur]); }
+ void prevClicked()
+ { cur = (cur+numHints-1)%numHints; text->setText(hints[cur]); }
private:
int cur;
+ int numHints;
QTextEdit *text;
QCheckBox *start;
};
diff --git a/udav/info_dlg.cpp b/udav/info_dlg.cpp
index a0a6619..3a59066 100644
--- a/udav/info_dlg.cpp
+++ b/udav/info_dlg.cpp
@@ -22,9 +22,10 @@
#include <QComboBox>
#include <QTextEdit>
#include <QTabWidget>
-#include <mgl/parser.h>
-#include "qmglcanvas.h"
+#include "mgl/parser.h"
+#include "mgl/qt.h"
#include "info_dlg.h"
+extern mglParser parser;
//-----------------------------------------------------------------------------
InfoDialog::InfoDialog(QWidget *parent) : QDialog(parent)
{
@@ -38,9 +39,12 @@ InfoDialog::InfoDialog(QWidget *parent) : QDialog(parent)
p = new QWidget(this); v = new QVBoxLayout(p);
l = new QLabel(tr("Select kind of plot"),this); v->addWidget(l);
kind = new QComboBox(this); v->addWidget(kind);
- mgl = new QMGLCanvas(this); v->addWidget(mgl,1);
- mgl->autoResize = true;
+ mgl = new QMathGL(this); v->addWidget(mgl,1);
+ mgl->autoResize = true; mgl->appName = tr("Data preview");
mgl->setToolTip(tr("Data preview for current slice."));
+
+ draw = new mglDrawScript(&parser); mgl->setDraw(draw);
+
kind->addItem(tr("1D plot")); kind->addItem(tr("2D plot"));
kind->setCurrentIndex(0); // kind->addItem(tr("3D plot"));
connect(kind, SIGNAL(currentIndexChanged(int)), this, SLOT(refresh()));
@@ -50,9 +54,10 @@ InfoDialog::InfoDialog(QWidget *parent) : QDialog(parent)
info = new QTextEdit(this);
info->setToolTip(tr("Short information about the data."));
tab->addTab(info, tr("Information"));
+ connect(mgl,SIGNAL(showWarn(QString)),info,SLOT(setText(QString)));
}
//-----------------------------------------------------------------------------
-InfoDialog::~InfoDialog() {}
+InfoDialog::~InfoDialog() { delete draw; }
//-----------------------------------------------------------------------------
#include <QMessageBox>
void InfoDialog::refresh(bool force)
@@ -65,7 +70,7 @@ void InfoDialog::refresh(bool force)
if(i<1) text = "yrange "+name+"\nplot "+name + sub;
else text = "crange "+name+"\ndens "+name + sub;
text = "zoom 0.15 0.15 0.85 0.85\nbox\n" + text + "\ninfo "+name;
- info->setText(mgl->run(text, false));
+ draw->text = text; mgl->update();
}
//-----------------------------------------------------------------------------
void InfoDialog::setVar(mglVar *v)
diff --git a/udav/info_dlg.h b/udav/info_dlg.h
index 0f0b8ef..715c7d3 100644
--- a/udav/info_dlg.h
+++ b/udav/info_dlg.h
@@ -23,7 +23,8 @@
#include <QDialog>
#include <QMainWindow>
//-----------------------------------------------------------------------------
-class QMGLCanvas;
+class QMathGL;
+class mglDrawScript;
class mglVar;
class QComboBox;
class QTextEdit;
@@ -47,9 +48,10 @@ public slots:
private:
int kz;
mglVar *var;
- QMGLCanvas *mgl;
+ QMathGL *mgl;
QTextEdit *info;
QComboBox *kind;
+ mglDrawScript *draw;
};
//-----------------------------------------------------------------------------
#endif
diff --git a/udav/main.cpp b/udav/main.cpp
deleted file mode 100644
index 13b4845..0000000
--- a/udav/main.cpp
+++ /dev/null
@@ -1,135 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2008 by Alexey Balakin *
- * mathgl.abalakin at gmail.com *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
- ***************************************************************************/
-#include <QApplication>
-#include <QTranslator>
-#include <QSettings>
-#include <QTextCodec>
-#include <QTextCodec>
-#include "udav_wnd.h"
-#include "hint_dlg.h"
-#include <mgl/parser.h>
-#include <mgl/eval.h>
-//-----------------------------------------------------------------------------
-#ifndef UDAV_DIR
-#ifdef WIN32
-#define UDAV_DIR ""
-#else
-#define UDAV_DIR "/usr/local/share/udav/"
-#endif
-#endif
-//-----------------------------------------------------------------------------
-extern mglParser parser;
-extern QString pathFont;
-int mgl_cmd_cmp(const void *a, const void *b);
-HintDialog *hintDialog=NULL;
-QString pathHelp=MGL_DOC_DIR;
-extern bool showHint;
-//-----------------------------------------------------------------------------
-void udavLoadDefCommands();
-//-----------------------------------------------------------------------------
-int main(int argc, char **argv)
-{
- QApplication a(argc, argv);
- QTranslator translator;
-//QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
-
- QString lang="";
- QSettings settings("udav","UDAV");
- settings.setPath(QSettings::IniFormat, QSettings::UserScope, "UDAV");
- settings.beginGroup("/UDAV");
- pathHelp = settings.value("/helpPath", MGL_DOC_DIR).toString();
- pathFont = settings.value("/userFont", "").toString();
- lang = settings.value("/udavLang", "").toString();
- settings.endGroup();
- if(pathHelp.isEmpty()) pathHelp=MGL_DOC_DIR;
-
- if(!lang.isEmpty())
- {
- if(!translator.load("udav_"+lang, UDAV_DIR))
- translator.load("udav_"+lang, pathHelp);
- a.installTranslator(&translator);
- }
-
- udavLoadDefCommands();
- hintDialog = new HintDialog();
- MainWindow *mw = new MainWindow();
- if(argc>1)
- {
- QTextCodec *codec = QTextCodec::codecForLocale();
- mw->load(codec->toUnicode(argv[1]), true);
- }
- mw->show();// mw->edit->setCursorPosition(0);
- a.connect(&a, SIGNAL(lastWindowClosed()), &a, SLOT(quit()));
- if(showHint) hintDialog->exec();
- return a.exec();
-}
-//-----------------------------------------------------------------------------
-//
-// mgl addon
-//
-//-----------------------------------------------------------------------------
-/*mglCommand udav_base_cmd[] = {
- {L"fplot",L"Plot curve by formula",L"fplot 'func' ['stl'='' num=100]", mgls_fplot, mglc_fplot},
- {L"fsurf",L"Plot surface by formula",L"fsurf 'func' ['stl'='' numx=100 numy=100]", mgls_fsurf, mglc_fsurf},
- {L"fgets",L"Print string from file",L"fgets x y {z} 'fname' [pos=0 'stl'='' size=-1.4]", mgls_fgets, mglc_fgets},
-{L"",0,0,0,0}};*/
-//-----------------------------------------------------------------------------
-void udavAddCommands(const mglCommand *cmd)
-{
- int i, mp, mc;
- // determine the number of symbols
- for(i=0;parser.Cmd[i].name[0];i++){}; mp = i;
- for(i=0;cmd[i].name[0];i++){}; mc = i;
- mglCommand *buf = new mglCommand[mp+mc+1];
- memcpy(buf, parser.Cmd, mp*sizeof(mglCommand));
- memcpy(buf+mp, cmd, (mc+1)*sizeof(mglCommand));
- qsort(buf, mp+mc, sizeof(mglCommand), mgl_cmd_cmp);
- if(parser.Cmd!=mgls_base_cmd) delete []parser.Cmd;
- parser.Cmd = buf;
-}
-//-----------------------------------------------------------------------------
-void udavLoadDefCommands()
-{
-// udavAddCommands(udav_base_cmd);
-}
-//-----------------------------------------------------------------------------
-#ifdef WIN32
-void udavLoadCommands(const char *, const char *) {}
-#else
-void udavLoadCommands(const char *, const char *) {}
-/*#include <ltdl.h>
-typedef const mglCommadns *(*udav_cmd) ();
-void udavLoadCommands(const char *lib, const char *func)
-{
- void *jmodule=0;
- udav_cmd ff;
- if(lt_dlinit()) return;
- errors=lt_dlsetsearchpath(MOD_LIB_DIR);
- jmodule=lt_dlopenext(lib);
- if(jmodule)
- {
- ff = (udav_cmd) lt_dlsym((lt_dlhandle) jmodule, func);
- udavAddCommands(ff());
- lt_dlclose((lt_dlhandle) jmodule);
- }
- lt_dlexit();
-}*/
-#endif
-//-----------------------------------------------------------------------------
diff --git a/udav/mem_pnl.cpp b/udav/mem_pnl.cpp
index 112999d..381831f 100644
--- a/udav/mem_pnl.cpp
+++ b/udav/mem_pnl.cpp
@@ -26,13 +26,26 @@
//-----------------------------------------------------------------------------
#include "mem_pnl.h"
#include "info_dlg.h"
-#include "dat_pnl.h"
//-----------------------------------------------------------------------------
#include "xpm/table.xpm"
#include "xpm/preview.xpm"
//-----------------------------------------------------------------------------
extern bool mglAutoSave;
extern mglParser parser;
+QWidget *newDataWnd(InfoDialog *inf, MainWindow *wnd, mglVar *v);
+void refreshData(QWidget *w);
+//-----------------------------------------------------------------------------
+QWidget *createMemPanel(QWidget *p) // NOTE: parent should be MainWindow
+{
+ MemPanel *m = new MemPanel(p);
+ m->wnd = (MainWindow *)p;
+}
+//-----------------------------------------------------------------------------
+void refreshMemPanel(QWidget *p)
+{
+ MemPanel *m = dynamic_cast<MemPanel *>(p);
+ if(m) m->refresh();
+}
//-----------------------------------------------------------------------------
MemPanel::MemPanel(QWidget *parent) : QWidget(parent)
{
@@ -79,14 +92,6 @@ void MemPanel::tableClicked(int, int col)
//-----------------------------------------------------------------------------
void MemPanel::tableDClicked(int row, int) { editData(row); }
//-----------------------------------------------------------------------------
-DatPanel *MemPanel::newWindow(mglVar *v)
-{
- DatPanel *t = new DatPanel(infoDlg);
- if(v) t->setVar(v);
- addPanel(t);
- return t;
-}
-//-----------------------------------------------------------------------------
void MemPanel::newTable()
{
bool ok;
@@ -94,9 +99,9 @@ void MemPanel::newTable()
tr("Enter name for new variable"), QLineEdit::Normal, "", &ok);
if(!ok || name.isEmpty()) return;
mglVar *v = parser.AddVar(name.toAscii());
- DatPanel *t;
- if(v->o) t = (DatPanel *)v->o;
- else t = newWindow(v);
+ QWidget *t;
+ if(v->o) t = (QWidget *)v->o;
+ else t = newDataWnd(infoDlg,wnd,v);
t->showMaximized(); t->activateWindow();
refresh();
}
@@ -108,9 +113,9 @@ void MemPanel::editData(int n)
if(n<0) n = 0;
mglVar *v = parser.FindVar(tab->item(n,0)->text().toAscii());
if(!v) return;
- DatPanel *t;
- if(v->o) t = (DatPanel *)v->o;
- else t = newWindow(v);
+ QWidget *t;
+ if(v->o) t = (QWidget *)v->o;
+ else t = newDataWnd(infoDlg,wnd,v);
t->showMaximized(); t->activateWindow();
}
//-----------------------------------------------------------------------------
@@ -121,7 +126,7 @@ void MemPanel::delData()
if(n<0) n = 0;
mglVar *v = parser.FindVar(tab->item(n,0)->text().toAscii());
if(!v) return;
- if(v->o) ((DatPanel *)v->o)->close();
+ if(v->o) ((QWidget *)v->o)->close();
parser.DeleteVar(v);
refresh();
}
@@ -172,10 +177,9 @@ void MemPanel::refresh()
it = new QTableWidgetItem(s);
tab->setItem(n,2,it); it->setFlags(flags);
it->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter);
- if(v->o) ((DatPanel *)v->o)->refresh();
+ if(v->o) refreshData((QWidget *)v->o);
v = v->next; n++;
}
tab->sortItems(colSort);
- emit refreshData();
}
//-----------------------------------------------------------------------------
diff --git a/udav/mem_pnl.h b/udav/mem_pnl.h
index c60b62e..12a8617 100644
--- a/udav/mem_pnl.h
+++ b/udav/mem_pnl.h
@@ -22,20 +22,17 @@
#include <QWidget>
class mglVar;
class InfoDialog;
-class DatPanel;
class QTableWidget;
+class MainWindow;
//-----------------------------------------------------------------------------
class MemPanel : public QWidget
{
Q_OBJECT
public:
+ MainWindow *wnd;
MemPanel(QWidget *parent = 0);
- DatPanel *newWindow(mglVar *v=0);
public slots:
void refresh(); ///< refresh list of variables
-signals:
- void addPanel(QWidget *);
- void refreshData();
private slots:
void newTable();
void editData(int n=-1);
diff --git a/udav/newcmd_dlg.cpp b/udav/newcmd_dlg.cpp
index 759da0a..2ce448a 100644
--- a/udav/newcmd_dlg.cpp
+++ b/udav/newcmd_dlg.cpp
@@ -82,8 +82,7 @@ NewCmdDialog::NewCmdDialog(QWidget *p) : QDialog(p,Qt::WindowStaysOnTopHint)
o = new QVBoxLayout; m->addLayout(o,1);
a = new QHBoxLayout; o->addLayout(a);
- help = new QTextBrowser(this);
- help->setMinimumWidth(500); setPath(pathHelp);
+ help = new QTextBrowser(this); help->setMinimumWidth(500);
help->setOpenExternalLinks(false); o->addWidget(help);
t = new QToolButton(p); t->setIcon(QPixmap(":/xpm/go-previous.png"));
connect(t, SIGNAL(clicked()), help, SLOT(backward())); a->addWidget(t);
@@ -224,31 +223,25 @@ mglCommand *getCmd(const QString &cmd)
wchar_t *c = new wchar_t[cmd.length()+1];
cmd.toWCharArray(c); c[cmd.length()]=0;
mglCommand *rts = parser.FindCommand(c);
- if(!rts) rts = parser.FindCommand(c,true);
delete []c; return rts;
}
//-----------------------------------------------------------------------------
-void NewCmdDialog::setPath(const QString &path)
-{
- QStringList s; s<<(path+"/"+tr("mgl_en")+".html");
- help->setSearchPaths(s);
- help->setSource(tr("mgl_en")+"_1.html");
-}
-//-----------------------------------------------------------------------------
void NewCmdDialog::nameChanged(int s)
{
QString n=name->itemText(s), par, a;
int k;
if(n.isEmpty()) return;
+ QStringList ss; ss<<(pathHelp+"/"+tr("mgl_en")+".html/");
+ help->setSearchPaths(ss);
help->setSource(tr("mgl_en")+"_1.html#"+n);
// clear old
kind->clear(); kinds.clear(); for(k=0;k<NUM_CH;k++) argn[k].clear();
// try to find the keyword
mglCommand *rts=getCmd(n);
if(!rts) return;
- info->setText(QString::fromWCharArray(rts->desc));
+ info->setText(QString::fromAscii(rts->desc));
- par = QString::fromWCharArray(rts->form);
+ par = QString::fromAscii(rts->form);
int i0 = par.indexOf(' '); // first space if present
if(i0<0) { kind->addItem(par); return; } // no arguments
// parse kind of arguments
diff --git a/udav/newcmd_dlg.h b/udav/newcmd_dlg.h
index 74526b9..d960883 100644
--- a/udav/newcmd_dlg.h
+++ b/udav/newcmd_dlg.h
@@ -50,7 +50,6 @@ private slots:
void zoomOut();
public slots:
- void setPath(const QString &path);
void parseCmd(const QString &txt);
signals:
diff --git a/udav/open_dlg.cpp b/udav/open_dlg.cpp
index e478e5e..6b87302 100644
--- a/udav/open_dlg.cpp
+++ b/udav/open_dlg.cpp
@@ -32,6 +32,18 @@ int numDataOpened=0;
extern mglParser parser;
QStringList dataScr;
//-----------------------------------------------------------------------------
+QWidget *createDataOpenDlg(QWidget *p) { return new DataOpenDialog(p); }
+QString getOpenDataFile(QWidget *w, QString filename)
+{
+ DataOpenDialog *d = dynamic_cast<DataOpenDialog *>(w);
+ if(d)
+ {
+ d->setFile(filename);
+ if(d->exec()) return d->getCode();
+ }
+ return QString();
+}
+//-----------------------------------------------------------------------------
DataOpenDialog::DataOpenDialog(QWidget *parent) : QDialog(parent)
{
setWindowTitle(tr("UDAV - Open data file"));
diff --git a/udav/plot_pnl.cpp b/udav/plot_pnl.cpp
index 88314e8..cea2d00 100644
--- a/udav/plot_pnl.cpp
+++ b/udav/plot_pnl.cpp
@@ -29,10 +29,12 @@
#include <QSpinBox>
#include <QBoxLayout>
#include <QMenuBar>
+#include <QMessageBox>
+#include <QTextEdit>
#include <QMdiArea>
#include <mgl/parser.h>
-#include "qmglcanvas.h"
+#include "mgl/qt.h"
#include "plot_pnl.h"
#include "anim_dlg.h"
extern bool mglAutoSave;
@@ -51,7 +53,9 @@ PlotPanel::PlotPanel(QWidget *parent) : QWidget(parent)
menu = new QMenu(tr("&Graphics"),this);
popup = new QMenu(this);
- mgl = new QMGLCanvas(this);
+ mgl = new QMathGL(this);
+ draw = new mglDrawScript(&parser);
+ mgl->setDraw(draw);
QBoxLayout *v,*h,*m;
v = new QVBoxLayout(this);
@@ -68,33 +72,17 @@ PlotPanel::~PlotPanel() { delete printer; }
//-----------------------------------------------------------------------------
void PlotPanel::animText(const QString &txt) { animPutText(txt); }
//-----------------------------------------------------------------------------
-void PlotPanel::printPlot()
-{
- printer->setOrientation(mgl->getRatio()>1 ? QPrinter::Landscape : QPrinter::Portrait);
- QPrintDialog printDlg(printer, this);
- if (printDlg.exec() == QDialog::Accepted)
- {
- setStatus(tr("Printing..."));
- QRectF r = printer->pageRect(QPrinter::Inch);
- int d1 = int(mgl->width()/r.width()), d2 = int(mgl->height()/r.height()), dpi = printer->resolution();
- if(dpi<d1) dpi=d1; if(dpi<d2) dpi=d2; printer->setResolution(dpi);
- QPainter p;
- if(!p.begin(printer)) return; // paint on printer
- p.drawPixmap(0,0,mgl->getPic());
- setStatus(tr("Printing completed"));
- }
- else setStatus(tr("Printing aborted"));
- emit giveFocus();
-}
+void PlotPanel::setCurPos(int pos) { curPos = pos; execute(); }
//-----------------------------------------------------------------------------
-void PlotPanel::setCurPos(int pos) { curPos = pos; pressF5(); }
+void PlotPanel::stop() { parser.Stop = true; mgl->stop(); }
//-----------------------------------------------------------------------------
-void PlotPanel::pressF5()
+void PlotPanel::execute()
{
if(mglAutoSave) save();
raisePanel(this);
QTime t; t.start();
- mgl->execute(0,curPos);
+ draw->text=textMGL->toPlainText();
+ draw->line=curPos; mgl->update();
setStatus(QString(tr("Drawing time %1 ms")).arg(t.elapsed()*1e-3));
emit giveFocus();
}
@@ -111,14 +99,17 @@ void PlotPanel::pressF9()
delete []str;
QTime t; t.start();
- mgl->reload();
+ parser.RestoreOnce();
+ draw->text=textMGL->toPlainText();
+ draw->line=curPos; mgl->update();
setStatus(QString(tr("Drawing time %1 ms")).arg(t.elapsed()*1e-3));
emit giveFocus();
}
//-----------------------------------------------------------------------------
void PlotPanel::animStart(bool st)
{
- if(!st) { timer->stop(); if(gifOn) mgl->closeGIF(); return; }
+ if(!st)
+ { timer->stop(); if(gifOn) mgl_close_gif(mgl->getGraph()); return; }
if(animParam.isEmpty())
{
if(animDialog->exec())
@@ -130,7 +121,12 @@ void PlotPanel::animStart(bool st)
else return;
}
timer->start(animDelay);
- if(gifOn) mgl->startGIF(animDelay);
+ if(gifOn)
+ {
+ mglGraph gr(mgl->getGraph());
+ gr.StartGIF("", animDelay);
+ gr.ResetFrames();
+ }
raisePanel(this);
}
//-----------------------------------------------------------------------------
@@ -161,15 +157,13 @@ void PlotPanel::next()
str[i] = 0;
parser.AddParam(0,str);
delete []str;
- if(mgl->graph->GetNumFrame() >= n)
- mgl->execute(0, curPos);
+ mglGraph gr(mgl->getGraph());
+ if(gr.GetNumFrame() >= n) execute();
else
{
- mgl->graph->NewFrame();
- mgl->execute(0, curPos);
- mgl->graph->EndFrame();
- if(jpgOn) mgl->graph->WriteFrame();
- QString s; s.sprintf("%d - %d of %d",mgl->graph->GetNumFrame(),animPos,n);
+ gr.NewFrame(); execute(); gr.EndFrame();
+ if(jpgOn) gr.WriteFrame();
+ QString s; s.sprintf("%d - %d of %d",gr.GetNumFrame(),animPos,n);
setStatus(QString(tr("Frame %1 of %2")).arg(animPos).arg(n));
}
}
@@ -195,7 +189,7 @@ void PlotPanel::prevSlide()
str[i] = 0;
parser.AddParam(0,str);
delete []str;
- mgl->execute(0, curPos);
+ execute();
emit giveFocus();
}
//-----------------------------------------------------------------------------
@@ -297,44 +291,44 @@ void PlotPanel::toolTop(QBoxLayout *l)
o->addSeparator();
a = new QAction(QPixmap(":/xpm/zoom-original.png"), tr("Res&tore"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(restore()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(restore()));
a->setToolTip(tr("Restore default graphics rotation, zoom and perspective (Ctrl+Space)."));
a->setShortcut(Qt::CTRL+Qt::Key_Space);
o->addAction(a); popup->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/view-refresh.png"), tr("Re&draw"), this);
- connect(a, SIGNAL(activated()), this, SLOT(pressF5()));
+ connect(a, SIGNAL(triggered()), this, SLOT(execute()));
a->setToolTip(tr("Execute script and redraw graphics (F5)."));
a->setShortcut(Qt::Key_F5);
o->addAction(a); popup->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(tr("&Adjust size"), this);
- connect(a, SIGNAL(activated()), this, SLOT(adjust()));
+ connect(a, SIGNAL(triggered()), this, SLOT(adjust()));
a->setToolTip(tr("Change canvas size to fill whole region (F6)."));
a->setShortcut(Qt::Key_F6); o->addAction(a);
a = new QAction(tr("Re&load"), this);
- connect(a, SIGNAL(activated()), this, SLOT(pressF9()));
+ connect(a, SIGNAL(triggered()), this, SLOT(pressF9()));
a->setToolTip(tr("Restore status for 'once' command and reload data (F9)."));
a->setShortcut(Qt::Key_F9); o->addAction(a); popup->addAction(a);
a = new QAction(QPixmap(":/xpm/process-stop.png"), tr("&Stop"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(stop()));
+ connect(a, SIGNAL(triggered()), this, SLOT(stop()));
a->setToolTip(tr("Stop script execution (F7)."));
a->setShortcut(Qt::Key_F7); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/edit-copy.png"), tr("&Copy plot"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(copy()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(copy()));
a->setToolTip(tr("Copy graphics to clipboard (Ctrl+Shift+C)."));
a->setShortcut(Qt::CTRL+Qt::SHIFT+Qt::Key_C);
o->addAction(a); popup->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/edit-copy.png"), tr("&Copy click coor."), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(copyClickCoor()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(copyClickCoor()));
a->setToolTip(tr("Copy coordinates of last mouse click to clipboard."));
o->addAction(a); popup->addAction(a);
@@ -346,9 +340,9 @@ void PlotPanel::toolTop(QBoxLayout *l)
connect(mgl, SIGNAL(tetChanged(int)), tet, SLOT(setValue(int)));
tet->setToolTip(tr("Set value of \\theta angle.\nYou can use keys (Shift+Meta+Up or Shift+Meta+Down)."));
a = new QAction(this); a->setShortcut(Qt::SHIFT+Qt::META+Qt::Key_Up);
- connect(a, SIGNAL(activated()), tet, SLOT(stepUp()));
+ connect(a, SIGNAL(triggered()), tet, SLOT(stepUp()));
a = new QAction(this); a->setShortcut(Qt::SHIFT+Qt::META+Qt::Key_Down);
- connect(a, SIGNAL(activated()), tet, SLOT(stepDown()));
+ connect(a, SIGNAL(triggered()), tet, SLOT(stepDown()));
phi = new QSpinBox(this); phi->setWrapping(true);
l->addWidget(phi); phi->setRange(-180, 180); phi->setSingleStep(10);
@@ -356,9 +350,9 @@ void PlotPanel::toolTop(QBoxLayout *l)
connect(mgl, SIGNAL(phiChanged(int)), phi, SLOT(setValue(int)));
phi->setToolTip(tr("Set value of \\phi angle.\nYou can use keys (Shift+Meta+Left or Shift+Meta+Right)."));
a = new QAction(this); a->setShortcut(Qt::SHIFT+Qt::META+Qt::Key_Right);
- connect(a, SIGNAL(activated()), phi, SLOT(stepUp()));
+ connect(a, SIGNAL(triggered()), phi, SLOT(stepUp()));
a = new QAction(this); a->setShortcut(Qt::SHIFT+Qt::META+Qt::Key_Left);
- connect(a, SIGNAL(activated()), phi, SLOT(stepDown()));
+ connect(a, SIGNAL(triggered()), phi, SLOT(stepDown()));
oo = new QMenu(tr("&Export as ..."),this);
oo->addAction(tr("PNG"), mgl, SLOT(exportPNG()),Qt::META+Qt::Key_P);
@@ -368,7 +362,7 @@ void PlotPanel::toolTop(QBoxLayout *l)
oo->addAction(tr("bitmap EPS"), mgl, SLOT(exportBPS()));
oo->addAction(tr("vector EPS"), mgl, SLOT(exportEPS()),Qt::META+Qt::Key_E);
oo->addAction(tr("SVG"), mgl, SLOT(exportSVG()),Qt::META+Qt::Key_S);
- oo->addAction(tr("C++"), mgl, SLOT(exportCPP()));
+// oo->addAction(tr("C++"), mgl, SLOT(exportCPP())); // TODO: Add later
oo->addAction(tr("IDTF"), mgl, SLOT(exportIDTF()));
o->addMenu(oo);
popup->addMenu(oo);
@@ -383,42 +377,42 @@ void PlotPanel::toolLeft(QBoxLayout *l)
// zooming menu
/* oo = o->addMenu(tr("Zoom/move"));
a = new QAction(QPixmap(":/xpm/go-previous.png"), tr("Move &left"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(shiftLeft()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(shiftLeft()));
a->setShortcut(Qt::CTRL+Qt::META+Qt::Key_Left);
a->setToolTip(tr("Move graphics left by 1/3 of its width."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/go-up.png"), tr("Move &up"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(shiftUp()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(shiftUp()));
a->setShortcut(Qt::CTRL+Qt::META+Qt::Key_Up);
a->setToolTip(tr("Move graphics up by 1/3 of its height."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/zoom-in.png"), tr("Zoom &in"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(zoomIn()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(zoomIn()));
a->setShortcut(Qt::CTRL+Qt::META+Qt::Key_Equal);
a->setToolTip(tr("Zoom in graphics."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/zoom-out.png"), tr("Zoom &out"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(zoomOut()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(zoomOut()));
a->setShortcut(Qt::CTRL+Qt::META+Qt::Key_Minus);
a->setToolTip(tr("Zoom out graphics."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/go-down.png"), tr("Move &down"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(shiftDown()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(shiftDown()));
a->setShortcut(Qt::CTRL+Qt::META+Qt::Key_Down);
a->setToolTip(tr("Move graphics up down 1/3 of its height."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/go-next.png"), tr("Move &right"), this);
- connect(a, SIGNAL(activated()), mgl, SLOT(shiftRight()));
+ connect(a, SIGNAL(triggered()), mgl, SLOT(shiftRight()));
a->setShortcut(Qt::CTRL+Qt::META+Qt::Key_Right);
a->setToolTip(tr("Move graphics right by 1/3 of its width."));
oo->addAction(a);
@@ -427,28 +421,28 @@ void PlotPanel::toolLeft(QBoxLayout *l)
// rotate menu
oo = o->addMenu(tr("Rotate"));
a = new QAction(tr("Rotate up"), this); a->setShortcut(Qt::SHIFT+Qt::META+Qt::Key_Up);
- connect(a, SIGNAL(activated()), tet, SLOT(stepUp())); oo->addAction(a);
+ connect(a, SIGNAL(triggered()), tet, SLOT(stepUp())); oo->addAction(a);
a->setToolTip(tr("Increase \\theta angle by 10 degrees."));
a = new QAction(tr("Rotate down"), this); a->setShortcut(Qt::SHIFT+Qt::META+Qt::Key_Down);
- connect(a, SIGNAL(activated()), tet, SLOT(stepDown())); oo->addAction(a);
+ connect(a, SIGNAL(triggered()), tet, SLOT(stepDown())); oo->addAction(a);
a->setToolTip(tr("Decrease \\theta angle by 10 degrees."));
a = new QAction(tr("Rotate left"), this); a->setShortcut(Qt::SHIFT+Qt::META+Qt::Key_Right);
- connect(a, SIGNAL(activated()), phi, SLOT(stepUp())); oo->addAction(a);
+ connect(a, SIGNAL(triggered()), phi, SLOT(stepUp())); oo->addAction(a);
a->setToolTip(tr("Increase \\phi angle by 10 degrees."));
a = new QAction(tr("Rotate right"), this); a->setShortcut(Qt::SHIFT+Qt::META+Qt::Key_Left);
- connect(a, SIGNAL(activated()), phi, SLOT(stepDown())); oo->addAction(a);
+ connect(a, SIGNAL(triggered()), phi, SLOT(stepDown())); oo->addAction(a);
a->setToolTip(tr("Decrease \\phi angle by 10 degrees."));
// animation menu
oo = o->addMenu(tr("&Animation"));
a = new QAction(QPixmap(":/xpm/media-seek-forward.png"), tr("&Next slide"), this);
- connect(a, SIGNAL(activated()), this, SLOT(nextSlide()));
+ connect(a, SIGNAL(triggered()), this, SLOT(nextSlide()));
a->setToolTip(tr("Show next slide (Meta+Right)."));
a->setShortcut(Qt::META+Qt::Key_Right); oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/media-seek-backward.png"), tr("&Prev slide"), this);
- connect(a, SIGNAL(activated()), this, SLOT(prevSlide()));
+ connect(a, SIGNAL(triggered()), this, SLOT(prevSlide()));
a->setToolTip(tr("Show previous slide (Meta+Left)."));
a->setShortcut(Qt::META+Qt::Key_Left); oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
@@ -465,7 +459,5 @@ void PlotPanel::toolLeft(QBoxLayout *l)
l->addStretch(1);
}
//-----------------------------------------------------------------------------
-void PlotPanel::execute() { mgl->execute(); }
-//-----------------------------------------------------------------------------
-QString PlotPanel::getFit() { return QString(mgl->graph->GetFit()); }
+QString PlotPanel::getFit() { return QString(mgl_get_fit(mgl->getGraph())); }
//-----------------------------------------------------------------------------
diff --git a/udav/plot_pnl.h b/udav/plot_pnl.h
index 8f4ed5b..a5d022c 100644
--- a/udav/plot_pnl.h
+++ b/udav/plot_pnl.h
@@ -28,7 +28,9 @@ class QSpinBox;
class QPopupMenu;
class QScrollArea;
class QBoxLayout;
-class QMGLCanvas;
+class QTextEdit;
+class QMathGL;
+class mglDrawScript;
class InfoDialog;
class AnimParam;
class DatPanel;
@@ -39,7 +41,9 @@ class PlotPanel : public QWidget
Q_OBJECT
public:
QMenu *menu;
- QMGLCanvas *mgl;
+ QMathGL *mgl;
+ mglDrawScript *draw; ///< Class for drawing MGL script
+ const QTextEdit *textMGL; ///< Editor with MGL script body
PlotPanel(QWidget *wp=0);
~PlotPanel();
void setMGLFont(const QString &path);
@@ -59,15 +63,14 @@ signals:
private slots:
void animText(const QString &);
- void printPlot();
void next();
void nextSlide();
void prevSlide();
void animStart(bool st);
void animSetup();
void adjust();
- void pressF5();
void pressF9();
+ void stop();
private:
bool gifOn, jpgOn;
diff --git a/udav/prop_dlg.cpp b/udav/prop_dlg.cpp
index 77d6dfc..37e1921 100644
--- a/udav/prop_dlg.cpp
+++ b/udav/prop_dlg.cpp
@@ -34,10 +34,8 @@
//-----------------------------------------------------------------------------
#include "prop_dlg.h"
#include "udav_wnd.h"
-#include "help_pnl.h"
#include "plot_pnl.h"
#include "text_pnl.h"
-#include "newcmd_dlg.h"
//-----------------------------------------------------------------------------
extern QColor mglColorScheme[9];
extern QString defFontFamily;
@@ -174,24 +172,6 @@ PropDialog::PropDialog(QWidget *parent) : QDialog(parent)
//-----------------------------------------------------------------------------
PropDialog::~PropDialog() {}
//-----------------------------------------------------------------------------
-void PropDialog::setC0() { setC(0); }
-//-----------------------------------------------------------------------------
-void PropDialog::setC1() { setC(1); }
-//-----------------------------------------------------------------------------
-void PropDialog::setC2() { setC(2); }
-//-----------------------------------------------------------------------------
-void PropDialog::setC3() { setC(3); }
-//-----------------------------------------------------------------------------
-void PropDialog::setC4() { setC(4); }
-//-----------------------------------------------------------------------------
-void PropDialog::setC5() { setC(5); }
-//-----------------------------------------------------------------------------
-void PropDialog::setC6() { setC(6); }
-//-----------------------------------------------------------------------------
-void PropDialog::setC7() { setC(7); }
-//-----------------------------------------------------------------------------
-void PropDialog::setC8() { setC(8); }
-//-----------------------------------------------------------------------------
void PropDialog::getPathH()
{
QString str = QFileDialog::getExistingDirectory(this,
@@ -254,8 +234,7 @@ void PropDialog::applyChanges()
MainWindow *s = (MainWindow *)w;
if(ok) { s->writeSettings(); ok = false; }
s->edit->setEditorFont();
- s->hlp->setPath(pathHelp); s->edit->newCmdDlg->setPath(pathHelp);
- if(s->hlp->isActiveWindow()) s->hlp->showHelp();
+// if(s->hlp->isActiveWindow()) s->hlp->showHelp(); // TODO: may be should enabled later
s->graph->setMGLFont(pathFont);
s->setEditPos(editPosBottom);
s->edit->setCompleter(mglCompleter);
diff --git a/udav/prop_dlg.h b/udav/prop_dlg.h
index b6f7222..7274325 100644
--- a/udav/prop_dlg.h
+++ b/udav/prop_dlg.h
@@ -38,15 +38,15 @@ signals:
void sizeChanged(int w, int h);
private slots:
void applyChanges();
- void setC0();
- void setC1();
- void setC2();
- void setC3();
- void setC4();
- void setC5();
- void setC6();
- void setC7();
- void setC8();
+ void setC0() { setC(0); }
+ void setC1() { setC(1); }
+ void setC2() { setC(2); }
+ void setC3() { setC(3); }
+ void setC4() { setC(4); }
+ void setC5() { setC(5); }
+ void setC6() { setC(6); }
+ void setC7() { setC(7); }
+ void setC8() { setC(8); }
void setF();
void getPathH();
void getPathF();
diff --git a/udav/qmglcanvas.cpp b/udav/qmglcanvas.cpp
index 64868d8..9958469 100644
--- a/udav/qmglcanvas.cpp
+++ b/udav/qmglcanvas.cpp
@@ -159,65 +159,19 @@ QString QMGLCanvas::run(const QString &text, bool showm, mglGraph *gr, int line)
if(!isHidden()) QApplication::restoreOverrideCursor();
if(gr==graph)
{ convertFromGraph(pic, graph, &grBuf); repaint(); }
- return thr->mes;
+ return QString(gr->Message());
}
//-----------------------------------------------------------------------------
void MGLThread::run()
{
- int i,r,n=text.count('\n')+1;
- char *buf=new char[2048];
- gr->Message(buf); warn = "";
+ gr->DefaultPlotParam();
wchar_t *str = new wchar_t[text.length()+2];
- QString cur;
- bool high;
- // Start parsing the text (just slightly modified copy from mgl_parse.cpp)
- parser.ScanFunc(0); for(i=0;i<n;i++)
- {
- cur = text.section('\n',i,i); high = false;
- r = cur.toWCharArray(str); str[r] = 0;
- parser.ScanFunc(str);
- }
- for(i=0;i<n && !parser.Stop;i++)
- {
- cur = text.section('\n',i,i); high = false;
-
- if(i==line)
- {
- wchar_t *s = new wchar_t[cur.length()+1];
- register int j;
- for(j=0;j<cur.length() && !cur[j].isSpace() && cur[j]!=':';j++)
- s[j] = text[j].toLatin1();
- s[j]=0;
- mglCommand *rts = parser.FindCommand(s);
- if(rts && (rts->type==0 || rts->type==1)) high = true;
- delete []s;
- }
-
- r = cur.toWCharArray(str); str[r] = 0;
- buf[0] = 0; gr->SetObjId(i+1);
- setlocale(LC_ALL, "C");
- r = parser.Parse(gr,str,i+1);
- setlocale(LC_ALL, "");
- if(r<0) { i = -r-2; continue; }
- if(r>0)
- {
- mes = tr("In line ")+QString::number(i);
- if(r==1) mes += tr(" -- wrong argument(s):\t");
- if(r==2) mes += tr(" -- wrong command:\t");
- if(r==3) mes += tr(" -- string too long:\t");
- if(r==4) mes += tr(" -- unbalanced ' :\t");
- mes += cur;
- warn += mes + "\n";
- }
- if(buf && *buf)
- {
- mes = tr("In line ")+QString::number(i)+" :\t";
- mes = mes + cur + "\n" + QString(buf) + "\n";
- warn += mes + "\n";
- }
- }
- mes = QString(buf);
- gr->Message(0); delete []buf; delete []str;
+ text.toWCharArray(str);
+ setlocale(LC_ALL, "C");
+ parser.Execute(gr,str,NULL,line);
+ setlocale(LC_ALL, "");
+ const char *mess=gr->Message();
+ warn = mess?mess:""; delete []str;
}
//-----------------------------------------------------------------------------
void QMGLCanvas::mouseDoubleClickEvent(QMouseEvent *ev)
diff --git a/udav/qmglcanvas.h b/udav/qmglcanvas.h
index f95e18c..b6c7597 100644
--- a/udav/qmglcanvas.h
+++ b/udav/qmglcanvas.h
@@ -34,11 +34,11 @@ friend class QMGLCanvas;
Q_OBJECT
protected:
QMGLCanvas *cnv;
- mglGraph *gr;
- QString mes; ///< gr->Message after execution
+ mglGraph *gr;
+ QString warn; ///< gr->Message after execution
QString text; ///< text for parsing
int line; ///< line to highlite
- QString warn;
+// QString mes;
void run();
};
//-----------------------------------------------------------------------------
@@ -53,7 +53,7 @@ public:
QTextEdit *textMGL; ///< Editor with MGL script body
QTextEdit *warnMGL; ///< Buffer for messages and warnings
QString scriptName; ///< Default script name which used for exporting
- mglGraph *graph; ///< Built-in mglGraph-er instance (used by default)
+ mglGraph *graph; ///< Built-in mglGraph-er instance (used by default)
QMGLCanvas(QWidget *parent = 0, Qt::WindowFlags f = 0);
~QMGLCanvas();
@@ -61,7 +61,7 @@ public:
void setPopup(QMenu *p) { popup = p; };
void setSize(int w, int h);
/// Execute script from string
- QString run(const QString &text, bool showm=true, mglGraph *gr=0, int line=-1);
+ QString run(const QString &text, bool showm=true, mglGraph *gr=0, int line=-1);
const QPixmap &getPic() { return pic; }; ///< Pixmap for drawing
signals:
void refreshData();
diff --git a/udav/qmglsyntax.cpp b/udav/qmglsyntax.cpp
index be24340..f22329e 100644
--- a/udav/qmglsyntax.cpp
+++ b/udav/qmglsyntax.cpp
@@ -54,8 +54,7 @@ void QMGLSyntax::highlightBlock(const QString &text)
s[j-i] = text[j].toLatin1();
s[j-i]=0;
mglCommand *rts = parser.FindCommand(s);
- if(rts) setFormat(i,j-i+1,rts->create ? mglColorScheme[6]:mglColorScheme[2]);
- if(parser.FindCommand(s,true)) setFormat(i,j-i+1,mglColorScheme[7]);
+ if(rts) setFormat(i,j-i+1,rts->type!=6 ? (rts->type==4 ? mglColorScheme[6] : mglColorScheme[2]) : mglColorScheme[7]);
delete []s;
}
else if(text[i]==';') { arg = true; nl = false; continue; }
@@ -64,27 +63,27 @@ void QMGLSyntax::highlightBlock(const QString &text)
{
const char *o[]={"xrange","yrange","zrange","crange","alpha",
"cut","ambient","meshnum","fontsize","alphadef",
- "marksize","legend"};
- int l[12] = {6, 6, 6, 6, 5, 3, 7, 7, 8, 8, 8, 6};
- for(j=0;j<12;j++)
- if(text.indexOf(o[j],i)==i && (text[i+l[j]].isSpace() || i+l[j]==text.length()))
+ "marksize","legend","light"};
+ int l[] = {6, 6, 6, 6, 5, 3, 7, 7, 8, 8, 8, 6, 5};
+ for(j=0;j<13;j++)
+ if(text.indexOf(o[j],i)==i && (i+l[j]==text.length() || text[i+l[j]].isSpace()))
setFormat(i,l[j],mglColorScheme[3]);
}
- else if(text[i]=='.' && text[i+1].isLetter()) // suffix
+ else if(text[i]=='.' && i+1<text.length() && text[i+1].isLetter()) // suffix
{
for(j=i;j<text.length() && !text[j].isSpace();j++){};
setFormat(i,j-i+1,mglColorScheme[4]);
}
else if(num.contains(text[i])) // number
setFormat(i,1,mglColorScheme[5]);
- else if((text[i]=='e' || text[i]=='E') && num.contains(text[i-1]) && num.contains(text[i+1]))
+ else if((text[i]=='e' || text[i]=='E') && i+1<text.length() && num.contains(text[i-1]) && num.contains(text[i+1]) )
setFormat(i,1,mglColorScheme[5]);
- else // number as its symbolic id
+ else // number as its symbolic id
{
const char *o[]={"nan","pi","on","off"};
int l[4] = {3, 2, 2, 3};
for(j=0;j<4;j++)
- if(text.indexOf(o[j],i)==i && (text[i+l[j]].isSpace() || i+l[j]==text.length()))
+ if(text.indexOf(o[j],i)==i && (i+l[j]==text.length() || text[i+l[j]].isSpace()))
setFormat(i,l[j],mglColorScheme[5]);
}
arg = nl = false;
diff --git a/udav/text_pnl.cpp b/udav/text_pnl.cpp
index 0dd2dd3..776635b 100644
--- a/udav/text_pnl.cpp
+++ b/udav/text_pnl.cpp
@@ -36,7 +36,6 @@
#include "files_dlg.h"
#include "newcmd_dlg.h"
#include "setup_dlg.h"
-#include "open_dlg.h"
#include "text_pnl.h"
#include "plot_pnl.h"
//-----------------------------------------------------------------------------
@@ -46,6 +45,8 @@ int defFontSize;
bool mglAutoExecute = true;
extern mglParser parser;
extern bool mglCompleter;
+QWidget *createDataOpenDlg(QWidget *p);
+QString getOpenDataFile(QWidget *w, QString filename);
//-----------------------------------------------------------------------------
TextPanel::TextPanel(QWidget *parent) : QWidget(parent)
{
@@ -55,9 +56,15 @@ TextPanel::TextPanel(QWidget *parent) : QWidget(parent)
stlDialog = new StyleDialog(this);
newCmdDlg = new NewCmdDialog(this);
setupDlg = new SetupDialog(this);
- dataOpenDlg = new DataOpenDialog(this);
+ dataOpenDlg = createDataOpenDlg(this);
if(!files_dlg) files_dlg= new FilesDialog;
+ register int i;
+ for(i=0;mgls_base_cmd[i].name[0];i++)
+ words<<QString::fromAscii(mgls_base_cmd[i].name);
+ completer = new QCompleter(words, this);
+ completer->setCaseSensitivity(Qt::CaseInsensitive);
+
connect(setupDlg, SIGNAL(putText(const QString &)), this, SLOT(animPutText(const QString &)));
connect(newCmdDlg, SIGNAL(result(const QString&)), this, SLOT(putLine(const QString&)));
connect(findDialog, SIGNAL(findText(const QString &, bool, bool)), this, SLOT(findText(const QString &, bool, bool)));
@@ -67,12 +74,6 @@ TextPanel::TextPanel(QWidget *parent) : QWidget(parent)
new QMGLSyntax(edit);
defFontFamily = edit->fontFamily();
defFontSize = int(edit->fontPointSize());
-
- register int i;
- for(i=0;mgls_base_cmd[i].name[0];i++)
- words<<QString::fromWCharArray(mgls_base_cmd[i].name);
- completer = new QCompleter(words, this);
- completer->setCaseSensitivity(Qt::CaseInsensitive);
// completer->setCompletionMode(QCompleter::PopupCompletion);
// edit->setCompleter(completer);
edit->setLineWrapMode(QTextEdit::NoWrap);
@@ -102,7 +103,7 @@ void TextPanel::insNVal()
sel.toWCharArray(txt); txt[sel.length()]=0;
mglData res=mglFormulaCalc(txt, &parser);
delete []txt;
- edit->textCursor().insertText(QString::number(res.a[0]));
+ edit->textCursor().insertText(QString::number(res.GetVal(0)));
}
//-----------------------------------------------------------------------------
void TextPanel::insFitF()
@@ -135,7 +136,8 @@ void TextPanel::refreshData()
if(v->s.length()>2) vars<<QString::fromStdWString(v->s);
v = v->next;
}
- delete completer; completer = new QCompleter(vars, this);
+ if(completer) delete completer;
+ completer = new QCompleter(vars, this);
completer->setCaseSensitivity(Qt::CaseInsensitive);
completer->setCompletionMode(QCompleter::PopupCompletion);
edit->setCompleter(completer);
@@ -198,8 +200,7 @@ void TextPanel::addOptions()
void TextPanel::animPutText(const QString &s)
{ edit->moveCursor(QTextCursor::Start); edit->insertPlainText(s); }
//-----------------------------------------------------------------------------
-void TextPanel::putText(const QString &txt)
-{ edit->insertPlainText(txt); }
+//void TextPanel::putText(const QString &txt) { edit->insertPlainText(txt); }
//-----------------------------------------------------------------------------
void TextPanel::putLine(const QString &txt)
{ edit->moveCursor(QTextCursor::StartOfLine);
@@ -243,7 +244,7 @@ void TextPanel::newCmd()
newCmdDlg->show();
}
//-----------------------------------------------------------------------------
-#ifndef USE_HDF5
+#ifndef HAVE_HDF5
void TextPanel::saveHDF5(const QString &fileName){}
void TextPanel::loadHDF5(const QString &fileName){}
//-----------------------------------------------------------------------------
@@ -359,11 +360,11 @@ void TextPanel::load(const QString &fileName)
{
if(fileName.right(4).toLower()==".dat")
{
- dataOpenDlg->setFile(fileName);
- if(dataOpenDlg->exec())
+ QString code = getOpenDataFile(dataOpenDlg, fileName);
+ if(!code.isEmpty())
{
setCurrentFile(fileName.left(fileName.length()-3)+"mgl");
- edit->setText(dataOpenDlg->getCode());
+ edit->setText(code);
}
}
else if(fileName.right(4).toLower()==".hdf" || fileName.right(3).toLower()==".h5")
@@ -448,13 +449,13 @@ void TextPanel::toolTop(QBoxLayout *l)
}
// edit menu
a = new QAction(QPixmap(":/xpm/edit-undo.png"), tr("&Undo"), this);
- connect(a, SIGNAL(activated()), edit, SLOT(undo()));
+ connect(a, SIGNAL(triggered()), edit, SLOT(undo()));
a->setToolTip(tr("Undo editor change (Ctrl+Z)."));
a->setShortcut(Qt::CTRL+Qt::Key_Z); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/edit-redo.png"), tr("&Redo"), this);
- connect(a, SIGNAL(activated()), edit, SLOT(redo()));
+ connect(a, SIGNAL(triggered()), edit, SLOT(redo()));
a->setToolTip(tr("Redo editor change (Ctrl+Shift+Z)."));
a->setShortcut(Qt::CTRL+Qt::SHIFT+Qt::Key_Z); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
@@ -462,19 +463,19 @@ void TextPanel::toolTop(QBoxLayout *l)
o->addSeparator();
o->addAction(tr("Clear all"), edit, SLOT(clear()));
a = new QAction(QPixmap(":/xpm/edit-cut.png"), tr("Cu&t text"), this);
- connect(a, SIGNAL(activated()), edit, SLOT(cut()));
+ connect(a, SIGNAL(triggered()), edit, SLOT(cut()));
a->setToolTip(tr("Cut selected text to clipboard (Ctrl+X)."));
a->setShortcut(Qt::CTRL+Qt::Key_X); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/edit-copy.png"), tr("&Copy text"), this);
- connect(a, SIGNAL(activated()), edit, SLOT(copy()));
+ connect(a, SIGNAL(triggered()), edit, SLOT(copy()));
a->setToolTip(tr("Copy selected text or data to clipboard (Ctrl+C)."));
a->setShortcut(Qt::CTRL+Qt::Key_C); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(QPixmap(":/xpm/edit-paste.png"), tr("&Paste text"), this);
- connect(a, SIGNAL(activated()), edit, SLOT(paste()));
+ connect(a, SIGNAL(triggered()), edit, SLOT(paste()));
a->setToolTip(tr("Paste text or data from clipboard (Ctrl+V)."));
a->setShortcut(Qt::CTRL+Qt::Key_V); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
@@ -483,51 +484,51 @@ void TextPanel::toolTop(QBoxLayout *l)
o->addSeparator();
a = new QAction(QPixmap(":/xpm/edit-find.png"), tr("&Find/Replace"), this);
- connect(a, SIGNAL(activated()), this, SLOT(find()));
+ connect(a, SIGNAL(triggered()), this, SLOT(find()));
a->setToolTip(tr("Show dialog for text finding (Ctrl+F)."));
a->setShortcut(Qt::CTRL+Qt::Key_F); o->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(tr("Find next"), this);
- connect(a, SIGNAL(activated()), this, SLOT(findText()));
+ connect(a, SIGNAL(triggered()), this, SLOT(findText()));
a->setShortcut(Qt::Key_F3); o->addAction(a);
o->addSeparator();
// insert menu
oo = o->addMenu(tr("Insert"));
a = new QAction(QPixmap(":/xpm/format-indent-more.png"), tr("New command"), this);
- a->setShortcut(Qt::META+Qt::Key_C); connect(a, SIGNAL(activated()), this, SLOT(newCmd()));
+ a->setShortcut(Qt::META+Qt::Key_C); connect(a, SIGNAL(triggered()), this, SLOT(newCmd()));
a->setToolTip(tr("Show dialog for new command and put it into the script."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
a = new QAction(tr("Fitted formula"), this); a->setShortcut(Qt::META+Qt::Key_N);
- connect(a, SIGNAL(activated()), this, SLOT(insFitF()));
+ connect(a, SIGNAL(triggered()), this, SLOT(insFitF()));
a->setToolTip(tr("Insert last fitted formula with found coefficients."));
oo->addAction(a);
a = new QAction(QPixmap(style_xpm), tr("Plot style"), this);
- connect(a, SIGNAL(activated()), this, SLOT(addStyle()));
+ connect(a, SIGNAL(triggered()), this, SLOT(addStyle()));
a->setToolTip(tr("Show dialog for styles and put it into the script.\nStyles define the plot view (color scheme, marks, dashing and so on)."));
oo->addAction(a);
a = new QAction(QPixmap(option_xpm), tr("Command options"), this);
- connect(a, SIGNAL(activated()), this, SLOT(addOptions()));
+ connect(a, SIGNAL(triggered()), this, SLOT(addOptions()));
a->setToolTip(tr("Show dialog for options and put it into the script.\nOptions are used for additional setup the plot."));
oo->addAction(a);
a = new QAction(tr("Numeric value"), this);
- connect(a, SIGNAL(activated()), this, SLOT(insNVal()));
+ connect(a, SIGNAL(triggered()), this, SLOT(insNVal()));
a->setToolTip(tr("Replace expression by its numerical value."));
oo->addAction(a);
a = new QAction(QPixmap(":/xpm/x-office-spreadsheet.png"), tr("File name"), this);
- a->setShortcut(Qt::META+Qt::Key_P); connect(a, SIGNAL(activated()), this, SLOT(insFile()));
+ a->setShortcut(Qt::META+Qt::Key_P); connect(a, SIGNAL(triggered()), this, SLOT(insFile()));
a->setToolTip(tr("Select and insert file name."));
oo->addAction(a);
a = new QAction(QPixmap(":/xpm/folder.png"), tr("Folder path"), this);
- connect(a, SIGNAL(activated()), this, SLOT(insPath()));
+ connect(a, SIGNAL(triggered()), this, SLOT(insPath()));
a->setToolTip(tr("Select and insert folder name."));
oo->addAction(a);
a = new QAction(QPixmap(":/xpm/document-properties.png"), tr("Graphics setup"), this);
- connect(a, SIGNAL(activated()), this, SLOT(addSetup()));
+ connect(a, SIGNAL(triggered()), this, SLOT(addSetup()));
a->setToolTip(tr("Show dialog for plot setup and put code into the script.\nThis dialog setup axis, labels, lighting and other general things."));
oo->addAction(a);
bb = new QToolButton(this); l->addWidget(bb); bb->setDefaultAction(a);
diff --git a/udav/text_pnl.h b/udav/text_pnl.h
index 4a653ec..9fe85da 100644
--- a/udav/text_pnl.h
+++ b/udav/text_pnl.h
@@ -33,19 +33,14 @@ class OptionDialog;
class StyleDialog;
class SetupDialog;
class NewCmdDialog;
-class DataOpenDialog;
class PlotPanel;
//-----------------------------------------------------------------------------
-#ifndef WIN32
-#define USE_HDF5 // Enable HDF "projects"
-#endif
-//-----------------------------------------------------------------------------
class TextPanel : public QWidget
{
Q_OBJECT
public:
QMenu *menu;
- TextEdit *edit; ///< script itself
+ TextEdit *edit; ///< script itself
PlotPanel *graph; ///< NOTE: have to be filled!!!
NewCmdDialog *newCmdDlg;
@@ -68,7 +63,7 @@ public slots:
void setEditorFont(QFont *f=0);
// void setEditPos(bool bottom);
void animPutText(const QString &);
- void putText(const QString &txt);
+// void putText(const QString &txt);
void putLine(const QString &txt);
void setCursorPosition(int);
@@ -96,7 +91,7 @@ private:
FindDialog *findDialog;
OptionDialog *optDialog;
StyleDialog *stlDialog;
- DataOpenDialog *dataOpenDlg;
+ QWidget *dataOpenDlg;
SetupDialog *setupDlg;
void toolTop(QBoxLayout *l);
diff --git a/udav/textedit.cpp b/udav/textedit.cpp
index 323b4e0..bae6fdd 100644
--- a/udav/textedit.cpp
+++ b/udav/textedit.cpp
@@ -47,30 +47,19 @@
#include <QModelIndex>
#include <QAbstractItemModel>
#include <QScrollBar>
-
-TextEdit::TextEdit(QWidget *parent) : QTextEdit(parent), c(0)
-{
-/* setPlainText(tr("This TextEdit provides autocompletions for words that have more than"
- " 3 characters. You can trigger autocompletion using ") +
- QKeySequence("Ctrl+E").toString(QKeySequence::NativeText));*/
-}
-
-TextEdit::~TextEdit() {}
-
+//-----------------------------------------------------------------------------
+TextEdit::TextEdit(QWidget *parent) : QTextEdit(parent), c(0) {}
+//-----------------------------------------------------------------------------
void TextEdit::setCompleter(QCompleter *completer)
{
- if (c) QObject::disconnect(c, 0, this, 0);
- c = completer;
- if (!c) return;
+ if(c) QObject::disconnect(c, 0, this, 0);
+ c = completer; if(!c) return;
c->setWidget(this);
c->setCompletionMode(QCompleter::PopupCompletion);
c->setCaseSensitivity(Qt::CaseInsensitive);
QObject::connect(c, SIGNAL(activated(QString)), this, SLOT(insertCompletion(QString)));
}
-
-QCompleter *TextEdit::completer() const
-{ return c; }
-
+//-----------------------------------------------------------------------------
void TextEdit::insertCompletion(const QString& completion)
{
if (c->widget() != this) return;
@@ -81,20 +70,17 @@ void TextEdit::insertCompletion(const QString& completion)
tc.insertText(completion.right(extra));
setTextCursor(tc);
}
-
+//-----------------------------------------------------------------------------
QString TextEdit::textUnderCursor() const
{
QTextCursor tc = textCursor();
tc.select(QTextCursor::WordUnderCursor);
return tc.selectedText();
}
-
+//-----------------------------------------------------------------------------
void TextEdit::focusInEvent(QFocusEvent *e)
-{
- if (c) c->setWidget(this);
- QTextEdit::focusInEvent(e);
-}
-
+{ if (c) c->setWidget(this); QTextEdit::focusInEvent(e); }
+//-----------------------------------------------------------------------------
void TextEdit::keyPressEvent(QKeyEvent *e)
{
if (c && c->popup()->isVisible())
@@ -107,8 +93,7 @@ void TextEdit::keyPressEvent(QKeyEvent *e)
case Qt::Key_Escape:
case Qt::Key_Tab:
case Qt::Key_Backtab:
- e->ignore();
- return; // let the completer do default behavior
+ e->ignore(); return; // let the completer do default behavior
default:
break;
}
@@ -127,17 +112,16 @@ void TextEdit::keyPressEvent(QKeyEvent *e)
QString completionPrefix = textUnderCursor();
if (!isShortcut && (hasModifier || e->text().isEmpty()|| completionPrefix.length() < 3
- || eow.contains(e->text().right(1)))) {
- c->popup()->hide();
- return;
- }
+ || eow.contains(e->text().right(1))))
+ { c->popup()->hide(); return; }
- if (completionPrefix != c->completionPrefix()) {
+ if (completionPrefix != c->completionPrefix())
+ {
c->setCompletionPrefix(completionPrefix);
c->popup()->setCurrentIndex(c->completionModel()->index(0, 0));
}
QRect cr = cursorRect();
- cr.setWidth(c->popup()->sizeHintForColumn(0)
- + c->popup()->verticalScrollBar()->sizeHint().width());
+ cr.setWidth(c->popup()->sizeHintForColumn(0) + c->popup()->verticalScrollBar()->sizeHint().width());
c->complete(cr); // popup it up!
}
+//-----------------------------------------------------------------------------
diff --git a/udav/textedit.h b/udav/textedit.h
index 04cfc30..21199d5 100644
--- a/udav/textedit.h
+++ b/udav/textedit.h
@@ -46,15 +46,11 @@
class QCompleter;
class TextEdit : public QTextEdit
-{
- Q_OBJECT
-
+{ Q_OBJECT
public:
TextEdit(QWidget *parent = 0);
- ~TextEdit();
-
void setCompleter(QCompleter *c);
- QCompleter *completer() const;
+ QCompleter *completer() const { return c; }
protected:
void keyPressEvent(QKeyEvent *e);
diff --git a/udav/udav_wnd.cpp b/udav/udav_wnd.cpp
index 405d1f6..e12c8bd 100644
--- a/udav/udav_wnd.cpp
+++ b/udav/udav_wnd.cpp
@@ -31,25 +31,17 @@
#include <QDockWidget>
#include <QCloseEvent>
#include <QTextCodec>
-#include <mgl/parser.h>
+#include <QTranslator>
//-----------------------------------------------------------------------------
+#include "mgl/parser.h"
+#include "mgl/qt.h"
#include "udav_wnd.h"
#include "text_pnl.h"
-#include "textedit.h"
-#include "args_dlg.h"
#include "plot_pnl.h"
-#include "mem_pnl.h"
-#include "dat_pnl.h"
-#include "help_pnl.h"
#include "prop_dlg.h"
#include "qmglsyntax.h"
-#include "qmglcanvas.h"
-#include "calc_dlg.h"
-#include "hint_dlg.h"
//-----------------------------------------------------------------------------
-extern HintDialog *hintDialog;
extern bool mglAutoExecute;
-ArgsDialog *args_dlg=0;
PropDialog *propDlg=0;
int MainWindow::num_wnd=0;
QStringList recentFiles;
@@ -58,22 +50,113 @@ bool editPosBottom = false;
bool mglAutoSave = false;
bool mglAutoPure = true;
bool mglCompleter = true;
-bool showHint=true;
bool loadInNewWnd = false;
+QString pathHelp;
extern mglParser parser;
extern QColor mglColorScheme[9];
extern QString defFontFamily;
extern int defFontSize;
-extern QString pathHelp;
extern QString pathFont;
extern int defWidth, defHeight;
//-----------------------------------------------------------------------------
+QWidget *createCalcDlg(QWidget *p, QTextEdit *e);
+QDialog *createArgsDlg(QWidget *p);
+QWidget *createMemPanel(QWidget *p);
+QWidget *createHlpPanel(QWidget *p);
+void showHelpMGL(QWidget *hlp, QString s);
+void addDataPanel(MainWindow *wnd, QWidget *w, QString name) { wnd->addPanel(w, name); }
+//-----------------------------------------------------------------------------
+#ifndef UDAV_DIR
+#ifdef WIN32
+#define UDAV_DIR ""
+#else
+#define UDAV_DIR "/usr/local/share/udav/"
+#endif
+#endif
+//-----------------------------------------------------------------------------
+int mgl_cmd_cmp(const void *a, const void *b);
+void udavLoadDefCommands();
+void udavShowHint(QWidget *);
+void mgl_ask_qt(const wchar_t *quest, wchar_t *res);
+//-----------------------------------------------------------------------------
+int main(int argc, char **argv)
+{
+ mgl_ask_func = mgl_ask_qt;
+ QApplication a(argc, argv);
+ QTranslator translator;
+//QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
+ QString lang="";
+ QSettings settings("udav","UDAV");
+ settings.setPath(QSettings::IniFormat, QSettings::UserScope, "UDAV");
+ settings.beginGroup("/UDAV");
+ pathHelp = settings.value("/helpPath", MGL_DOC_DIR).toString();
+ pathFont = settings.value("/userFont", "").toString();
+ lang = settings.value("/udavLang", "").toString();
+ bool showHint = settings.value("/showHint", true).toBool();
+ settings.endGroup();
+ if(pathHelp.isEmpty()) pathHelp=MGL_DOC_DIR;
+
+ if(!lang.isEmpty())
+ {
+ if(!translator.load("udav_"+lang, UDAV_DIR))
+ translator.load("udav_"+lang, pathHelp);
+ a.installTranslator(&translator);
+ }
+
+ udavLoadDefCommands();
+ MainWindow *mw = new MainWindow();
+ if(argc>1)
+ {
+ QTextCodec *codec = QTextCodec::codecForLocale();
+ mw->load(codec->toUnicode(argv[1]), true);
+ }
+ mw->show(); parser.AllowSetSize = true;
+ a.connect(&a, SIGNAL(lastWindowClosed()), &a, SLOT(quit()));
+ if(showHint) udavShowHint(mw);
+ return a.exec();
+}
+//-----------------------------------------------------------------------------
+//
+// mgl addon
+//
+//-----------------------------------------------------------------------------
+/*mglCommand udav_base_cmd[] = {
+ {L"fplot",L"Plot curve by formula",L"fplot 'func' ['stl'='' num=100]", mgls_fplot, mglc_fplot},
+ {L"fsurf",L"Plot surface by formula",L"fsurf 'func' ['stl'='' numx=100 numy=100]", mgls_fsurf, mglc_fsurf},
+ {L"fgets",L"Print string from file",L"fgets x y {z} 'fname' [pos=0 'stl'='' size=-1.4]", mgls_fgets, mglc_fgets},
+{L"",0,0,0,0}};*/
+//-----------------------------------------------------------------------------
+void udavAddCommands(const mglCommand *cmd)
+{
+ int i, mp, mc;
+ // determine the number of symbols
+ for(i=0;parser.Cmd[i].name[0];i++){}; mp = i;
+ for(i=0;cmd[i].name[0];i++){}; mc = i;
+ mglCommand *buf = new mglCommand[mp+mc+1];
+ memcpy(buf, parser.Cmd, mp*sizeof(mglCommand));
+ memcpy(buf+mp, cmd, (mc+1)*sizeof(mglCommand));
+ qsort(buf, mp+mc, sizeof(mglCommand), mgl_cmd_cmp);
+ if(parser.Cmd!=mgls_base_cmd) delete []parser.Cmd;
+ parser.Cmd = buf;
+}
+//-----------------------------------------------------------------------------
+void udavLoadDefCommands() {} //{ udavAddCommands(udav_base_cmd); }
+//-----------------------------------------------------------------------------
+//
+// Class MainWindow
+//
+//-----------------------------------------------------------------------------
MainWindow::MainWindow(QWidget *wp) : QMainWindow(wp)
{
+ QAction *a;
setWindowTitle(tr("untitled - UDAV"));
setAttribute(Qt::WA_DeleteOnClose);
- if(!args_dlg) args_dlg = new ArgsDialog;
+ split = new QSplitter(this);
+ ltab = new QTabWidget(split);
+ ltab->setMovable(true); ltab->setTabPosition(QTabWidget::South);
+ rtab = new QTabWidget(split);
+ rtab->setMovable(true); rtab->setTabPosition(QTabWidget::South);
messWnd = new QDockWidget(tr("Messages and warnings"),this);
mess = new TextEdit(this); messWnd->setWidget(mess);
@@ -83,19 +166,14 @@ MainWindow::MainWindow(QWidget *wp) : QMainWindow(wp)
connect(mess,SIGNAL(cursorPositionChanged()),this,SLOT(messClicked()));
calcWnd = new QDockWidget(tr("Calculator"),this);
- calc = new CalcDialog(); calcWnd->setWidget(calc);
- calcWnd->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
- addDockWidget(Qt::BottomDockWidgetArea, calcWnd);
- calcWnd->resize(size().width(), 200);
- QAction *a;
aload = a = new QAction(QPixmap(":/xpm/document-open.png"), tr("&Open file"), this);
- connect(a, SIGNAL(activated()), this, SLOT(choose()));
+ connect(a, SIGNAL(triggered()), this, SLOT(choose()));
a->setToolTip(tr("Open and execute/show script or data from file (Ctrl+O).\nYou may switch off automatic exection in UDAV properties."));
a->setShortcut(Qt::CTRL+Qt::Key_O);
asave = a = new QAction(QPixmap(":/xpm/document-save.png"), tr("&Save script"), this);
- connect(a, SIGNAL(activated()), this, SLOT(save()));
+ connect(a, SIGNAL(triggered()), this, SLOT(save()));
a->setToolTip(tr("Save script to a file (Ctrl+S)"));
a->setShortcut(Qt::CTRL+Qt::Key_S);
@@ -112,25 +190,23 @@ MainWindow::MainWindow(QWidget *wp) : QMainWindow(wp)
connect(messWnd, SIGNAL(visibilityChanged(bool)), a, SLOT(setChecked(bool)));
a->setChecked(false); messWnd->setVisible(false);
-
- split = new QSplitter(this);
- ltab = new QTabWidget(split);
- ltab->setMovable(true); ltab->setTabPosition(QTabWidget::South);
- rtab = new QTabWidget(split);
- rtab->setMovable(true); rtab->setTabPosition(QTabWidget::South);
-
graph = new PlotPanel(this);
rtab->addTab(graph,QPixmap(":/xpm/x-office-presentation.png"),tr("Canvas"));
- info = new MemPanel(this);
- connect(info,SIGNAL(addPanel(QWidget*)),this,SLOT(addPanel(QWidget*)));
+ // connect(info,SIGNAL(addPanel(QWidget*)),this,SLOT(addPanel(QWidget*)));
+ info = createMemPanel(this);
rtab->addTab(info,QPixmap(":/xpm/system-file-manager.png"),tr("Info"));
- hlp = new HelpPanel(this);
+ hlp = createHlpPanel(this);
rtab->addTab(hlp,QPixmap(":/xpm/help-contents.png"),tr("Help"));
edit = new TextPanel(this); edit->graph = graph;
- graph->mgl->textMGL = edit->edit;
- graph->mgl->warnMGL = mess;
+ graph->textMGL = edit->edit;
+ connect(graph->mgl,SIGNAL(showWarn(QString)),mess,SLOT(setText(QString)));
ltab->addTab(edit,QPixmap(":/xpm/text-x-generic.png"),tr("Script"));
+ calcWnd->setWidget(createCalcDlg(this, edit->edit));
+ calcWnd->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
+ addDockWidget(Qt::BottomDockWidgetArea, calcWnd);
+ calcWnd->resize(size().width(), 200);
+
makeMenu();
setCentralWidget(split);
setWindowIcon(QIcon(":/udav.png"));
@@ -143,11 +219,10 @@ MainWindow::MainWindow(QWidget *wp) : QMainWindow(wp)
connect(graph,SIGNAL(giveFocus()),edit->edit,SLOT(setFocus()));
connect(graph->mgl, SIGNAL(objChanged(int)), edit, SLOT(setCursorPosition(int)));
connect(graph->mgl, SIGNAL(posChanged(QString)), statusBar(), SLOT(showMessage(QString)));
- connect(graph->mgl, SIGNAL(refreshData()), info, SLOT(refresh()));
- connect(info, SIGNAL(refreshData()), this, SLOT(refreshData()));
+ connect(graph->mgl, SIGNAL(refreshData()), this, SLOT(refresh()));
+ connect(graph->mgl, SIGNAL(refreshData()), edit, SLOT(refreshData()));
connect(mess, SIGNAL(textChanged()), this, SLOT(warnChanged()));
- connect(calc, SIGNAL(putNumber(QString)),edit,SLOT(putText(QString)));
// connect(mdi, SIGNAL(subWindowActivated(QMdiSubWindow *)), this, SLOT(subActivated(QMdiSubWindow *)));
connect(propDlg, SIGNAL(sizeChanged(int,int)), graph->mgl, SLOT(imgSize(int,int)));
connect(edit->edit,SIGNAL(textChanged()), this, SLOT(setAsterix()));
@@ -170,7 +245,7 @@ void MainWindow::makeMenu()
{
o = menuBar()->addMenu(tr("&File"));
a = new QAction(QPixmap(":/xpm/document-new.png"), tr("&New script"), this);
- connect(a, SIGNAL(activated()), this, SLOT(newDoc()));
+ connect(a, SIGNAL(triggered()), this, SLOT(newDoc()));
a->setToolTip(tr("Create new empty script window (Ctrl+N)."));
a->setShortcut(Qt::CTRL+Qt::Key_N); o->addAction(a);
@@ -178,13 +253,13 @@ void MainWindow::makeMenu()
o->addAction(asave);
a = new QAction(tr("Save &As ..."), this);
- connect(a, SIGNAL(activated()), this, SLOT(saveAs()));
+ connect(a, SIGNAL(triggered()), this, SLOT(saveAs()));
o->addAction(a);
o->addSeparator();
o->addAction(tr("&Print script"), edit, SLOT(printText()));
a = new QAction(QPixmap(":/xpm/document-print.png"), tr("Print &graphics"), this);
- connect(a, SIGNAL(activated()), graph, SLOT(printPlot()));
+ connect(a, SIGNAL(triggered()), graph->mgl, SLOT(print()));
a->setToolTip(tr("Open printer dialog and print graphics\t(Ctrl+P)"));
a->setShortcut(Qt::CTRL+Qt::Key_P); o->addAction(a);
o->addSeparator();
@@ -200,9 +275,9 @@ void MainWindow::makeMenu()
{
o = menuBar()->addMenu(tr("&Settings"));
a = new QAction(QPixmap(":/xpm/preferences-system.png"), tr("Properties"), this);
- connect(a, SIGNAL(activated()), this, SLOT(properties()));
+ connect(a, SIGNAL(triggered()), this, SLOT(properties()));
a->setToolTip(tr("Show dialog for UDAV properties.")); o->addAction(a);
- o->addAction(tr("Set ar&guments"), args_dlg, SLOT(exec()));
+ o->addAction(tr("Set ar&guments"), createArgsDlg(this), SLOT(exec()));
o->addAction(acalc);
o->addAction(ainfo);
@@ -211,30 +286,20 @@ void MainWindow::makeMenu()
menuBar()->addSeparator();
o = menuBar()->addMenu(tr("&Help"));
a = new QAction(QPixmap(":/xpm/help-contents.png"), tr("MGL &help"), this);
- connect(a, SIGNAL(activated()), this, SLOT(showHelp()));
+ connect(a, SIGNAL(triggered()), this, SLOT(showHelp()));
a->setToolTip(tr("Show help on MGL commands (F1)."));
a->setShortcut(Qt::Key_F1); o->addAction(a);
a = new QAction(QPixmap(":/xpm/help-faq.png"), tr("&Examples"), this);
- connect(a, SIGNAL(activated()), hlp, SLOT(showExamples()));
+ connect(a, SIGNAL(triggered()), this, SLOT(showExamples()));
a->setToolTip(tr("Show examples of MGL usage (Shift+F1)."));
a->setShortcut(Qt::SHIFT+Qt::Key_F1); o->addAction(a);
a = new QAction(QPixmap(":/xpm/help-faq.png"), tr("H&ints"), this);
- connect(a, SIGNAL(activated()), hintDialog, SLOT(exec()));
+ connect(a, SIGNAL(triggered()), this, SLOT(showHint()));
a->setToolTip(tr("Show hints of MGL usage.")); o->addAction(a);
o->addAction(tr("&About"), this, SLOT(about()));
o->addAction(tr("About &Qt"), this, SLOT(aboutQt()));
}
//-----------------------------------------------------------------------------
-void MainWindow::refreshData()
-{
- for(int i=0; i<ltab->count(); i++)
- {
- DatPanel *w = dynamic_cast<DatPanel*>(ltab->widget(i));
- if(w) w->refresh();
- }
- edit->refreshData();
-}
-//-----------------------------------------------------------------------------
void MainWindow::closeEvent(QCloseEvent* ce)
{
bool ok=true;
@@ -327,7 +392,7 @@ void MainWindow::showHelp()
for(i=0;i<n;i++) if(dlm.contains(s[i])) break;
s.truncate(i);
// s = s.section(' ',0);
- hlp->showHelp(s);
+ showHelpMGL(hlp,s);
}
//-----------------------------------------------------------------------------
int mgl_cmd_cmp(const void *a, const void *b);
@@ -340,13 +405,10 @@ void MainWindow::editPosChanged()
text.truncate(i); m = text.length();
for(n=0;parser.Cmd[n].name[0];n++){}; // determine the number of symbols in parser
- mglCommand tst, *rts;
- wchar_t *s = new wchar_t[m+1];
- text.toWCharArray(s); s[m]=0; tst.name = s;
+ mglCommand tst, *rts; tst.name = text.toAscii().data();
rts = (mglCommand *)bsearch(&tst, parser.Cmd, n, sizeof(mglCommand), mgl_cmd_cmp);
- if(rts) setStatus(QString::fromWCharArray(rts->desc)+": "+QString::fromWCharArray(rts->form));
+ if(rts) setStatus(QString::fromAscii(rts->desc)+": "+QString::fromAscii(rts->form));
else setStatus(tr("Not recognized"));
- delete []s;
}
//-----------------------------------------------------------------------------
void MainWindow::setEditPos(bool bottom)
@@ -449,7 +511,6 @@ void MainWindow::readSettings()
mglColorScheme[6] = QColor(settings.value("/colACKeyword","#7F007F").toString());
mglColorScheme[7] = QColor(settings.value("/colFCKeyword","#007F7F").toString());
mglColorScheme[8] = QColor(settings.value("/colReserved", "#0000FF").toString());
- showHint = settings.value("/showHint", true).toBool();
mglAutoSave = settings.value("/autoSave", false).toBool();
mglAutoPure = settings.value("/autoPure", true).toBool();
mglAutoExecute = settings.value("/autoExec", true).toBool();
@@ -463,7 +524,7 @@ void MainWindow::readSettings()
defWidth = settings.value("/defWidth", 640).toInt();
defHeight = settings.value("/defHeight", 480).toInt();
- graph->mgl->imgSize(defWidth, defHeight);
+ graph->mgl->setSize(defWidth, defHeight);
recentFiles = settings.value("/recentFiles").toStringList();
settings.endGroup();
@@ -476,7 +537,7 @@ void MainWindow::setStatus(const QString &txt)
void MainWindow::setCurrentFile(const QString &fileName)
{
filename = fileName;
- graph->mgl->scriptName = filename;
+ graph->mgl->getGraph()->PlotId = (const char *)fileName.toAscii();
edit->setModified(false);
if(filename.isEmpty())
setWindowTitle(tr("untitled - UDAV"));
@@ -621,20 +682,13 @@ void MainWindow::setAsterix()
void updateDataItems()
{
foreach (QWidget *w, QApplication::topLevelWidgets())
- {
- if(w->inherits("MainWindow"))
- ((MainWindow *)w)->info->refresh();
- }
+ if(w->inherits("MainWindow")) ((MainWindow *)w)->refresh();
}
//-----------------------------------------------------------------------------
-void MainWindow::addPanel(QWidget *w)
+void MainWindow::addPanel(QWidget *w, QString name)
{
- DatPanel *d = dynamic_cast<DatPanel*>(w);
- if(d)
- {
- ltab->addTab(d,QPixmap(":/xpm/x-office-spreadsheet.png"),d->dataName());
- ltab->setCurrentWidget(d);
- }
+ ltab->addTab(w,QPixmap(":/xpm/x-office-spreadsheet.png"),name);
+ ltab->setCurrentWidget(w);
}
//-----------------------------------------------------------------------------
MainWindow *findMain(QWidget *wnd)
diff --git a/udav/udav_wnd.h b/udav/udav_wnd.h
index 05515b2..cd260a5 100644
--- a/udav/udav_wnd.h
+++ b/udav/udav_wnd.h
@@ -37,21 +37,16 @@
class QSplitter;
class QTabWidget;
class QMenu;
-class SetupDialog;
-class InfoDialog;
-class HintDialog;
-class PlotPanel;
-class MemPanel;
-class HelpPanel;
-class DatPanel;
class QDockWidget;
-class CalcDialog;
-class DataOpenDialog;
class QTextEdit;
class TextPanel;
+class PlotPanel;
//-----------------------------------------------------------------------------
extern int MaxRecentFiles;
extern int animDelay;
+void udavShowHint(QWidget *);
+void refreshMemPanel(QWidget *p);
+void showExMGL(QWidget *hlp);
//-----------------------------------------------------------------------------
class MainWindow : public QMainWindow
{
@@ -61,8 +56,8 @@ public:
QAction *ainfo, *acalc, *asave, *aload;
TextPanel *edit;
PlotPanel *graph;
- MemPanel *info;
- HelpPanel *hlp;
+ QWidget *info;
+ QWidget *hlp;
MainWindow(QWidget *wp=0);
void load(const QString &fileName, bool noNewWnd=false);
void writeSettings();
@@ -70,6 +65,8 @@ public:
public slots:
void setEditPos(bool bottom);
void editPosChanged();
+ void refresh() { refreshMemPanel(info); }
+ void addPanel(QWidget *w, QString name);
signals:
void gotoLine(int n,int i);
@@ -84,19 +81,18 @@ private slots:
void choose();
void save();
void saveAs();
- void addPanel(QWidget *);
void about();
void aboutQt();
void openRecentFile();
void showHelp();
- void refreshData(); ///< refresh data in variables
void messClicked();
void properties();
void setAsterix();
void warnChanged();
-
+ void showHint() { udavShowHint(this); }
+ void showExamples() { showExMGL(hlp); }
void setCurrentFile(const QString &);
void setStatus(const QString &txt);
@@ -110,7 +106,6 @@ private:
QString filename;
QMenu *fileMenu;
QDockWidget *messWnd, *calcWnd;
- CalcDialog *calc; ///< Calculator dock window
void makeMenu();
void makeDataMenu();
diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt
index bb4464c..0267d60 100644
--- a/utils/CMakeLists.txt
+++ b/utils/CMakeLists.txt
@@ -34,7 +34,7 @@ install(
if(use_fltk OR use_qt)
add_executable(mglview mglview.cpp)
-target_link_libraries(mglview mgl-wnd mgl)
+target_link_libraries(mglview mgl-wnd)
install(
TARGETS mglview
RUNTIME DESTINATION bin
diff --git a/utils/Makefile.in b/utils/Makefile.in
deleted file mode 100644
index 05fff21..0000000
--- a/utils/Makefile.in
+++ /dev/null
@@ -1,594 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-bin_PROGRAMS = mglconv$(EXEEXT) $(am__EXEEXT_1)
- at USE_FLTK_TRUE@am__append_1 = mglview
-subdir = utils
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/config/autotroll.m4 \
- $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/mgl/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
- at USE_FLTK_TRUE@am__EXEEXT_1 = mglview$(EXEEXT)
-am__installdirs = "$(DESTDIR)$(bindir)"
-PROGRAMS = $(bin_PROGRAMS)
-am_mglconv_OBJECTS = mglconv.$(OBJEXT)
-mglconv_OBJECTS = $(am_mglconv_OBJECTS)
-mglconv_DEPENDENCIES = $(top_builddir)/src/libmgl.la
-am__mglview_SOURCES_DIST = mglview.cpp
- at USE_FLTK_TRUE@am_mglview_OBJECTS = mglview-mglview.$(OBJEXT)
-mglview_OBJECTS = $(am_mglview_OBJECTS)
- at USE_FLTK_TRUE@mglview_DEPENDENCIES = \
- at USE_FLTK_TRUE@ $(top_builddir)/widgets/libmgl-wnd.la \
- at USE_FLTK_TRUE@ $(top_builddir)/src/libmgl.la
-mglview_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CXXLD) $(mglview_CXXFLAGS) $(CXXFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)/include/mgl
-depcomp = $(SHELL) $(top_srcdir)/config/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-CXXLD = $(CXX)
-CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-SOURCES = $(mglconv_SOURCES) $(mglview_SOURCES)
-DIST_SOURCES = $(mglconv_SOURCES) $(am__mglview_SOURCES_DIST)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_CXXFLAGS = @AM_CXXFLAGS@ -I$(top_srcdir)/include \
- -I$(top_builddir)/include
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FLTK_FLAGS = @FLTK_FLAGS@
-FLTK_LIBS = @FLTK_LIBS@
-GL_LIBS = @GL_LIBS@
-GREP = @GREP@
-GSL_FLAGS = @GSL_FLAGS@
-GSL_LIBS = @GSL_LIBS@
-HAVE_SWIG = @HAVE_SWIG@
-HDF4_FLAGS = @HDF4_FLAGS@
-HDF4_LIBS = @HDF4_LIBS@
-HDF5_FLAGS = @HDF5_FLAGS@
-HDF5_LIBS = @HDF5_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-JPEG_FLAGS = @JPEG_FLAGS@
-JPEG_LIBS = @JPEG_LIBS@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
-MGL_AGE = @MGL_AGE@
-MGL_CURRENT = @MGL_CURRENT@
-MGL_RELEASE = @MGL_RELEASE@
-MGL_REVISION = @MGL_REVISION@
-MKDIR_P = @MKDIR_P@
-MOC = @MOC@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OCTAVE = @OCTAVE@
-OCTAVE_ARCH = @OCTAVE_ARCH@
-OCTAVE_INCFLAGS = @OCTAVE_INCFLAGS@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PNG_LIBS = @PNG_LIBS@
-PTHREAD_FLAGS = @PTHREAD_FLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-PYTHON = @PYTHON@
-PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
-PYTHON_HEADERS = @PYTHON_HEADERS@
-PYTHON_PLATFORM = @PYTHON_PLATFORM@
-PYTHON_PREFIX = @PYTHON_PREFIX@
-PYTHON_VERSION = @PYTHON_VERSION@
-QMAKE = @QMAKE@
-QT_CFLAGS = @QT_CFLAGS@
-QT_CPPFLAGS = @QT_CPPFLAGS@
-QT_CXXFLAGS = @QT_CXXFLAGS@
-QT_DEFINES = @QT_DEFINES@
-QT_INCPATH = @QT_INCPATH@
-QT_LDFLAGS = @QT_LDFLAGS@
-QT_LFLAGS = @QT_LFLAGS@
-QT_LIBS = @QT_LIBS@
-QT_PATH = @QT_PATH@
-QT_VERSION = @QT_VERSION@
-QT_VERSION_MAJOR = @QT_VERSION_MAJOR@
-RANLIB = @RANLIB@
-RCC = @RCC@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-TMPDIR = @TMPDIR@
-U3D_LIBS = @U3D_LIBS@
-UIC = @UIC@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-lt_ECHO = @lt_ECHO@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-pkgpyexecdir = @pkgpyexecdir@
-pkgpythondir = @pkgpythondir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-pyexecdir = @pyexecdir@
-pythondir = @pythondir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-mglconv_SOURCES = mglconv.cpp
-mglconv_LDADD = $(top_builddir)/src/libmgl.la
- at USE_FLTK_TRUE@mglview_SOURCES = mglview.cpp
- at USE_FLTK_TRUE@mglview_LDADD = $(top_builddir)/widgets/libmgl-wnd.la $(top_builddir)/src/libmgl.la
- at USE_FLTK_TRUE@mglview_CXXFLAGS = $(FLTK_FLAGS) $(AM_CXXFLAGS)
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .cpp .lo .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu utils/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu utils/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-binPROGRAMS: $(bin_PROGRAMS)
- @$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- for p in $$list; do echo "$$p $$p"; done | \
- sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
- done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
- -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
- sed 'N;N;N;s,\n, ,g' | \
- $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
- { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
- if ($$2 == $$4) files[d] = files[d] " " $$1; \
- else { print "f", $$3 "/" $$4, $$1; } } \
- END { for (d in files) print "f", d, files[d] }' | \
- while read type dir files; do \
- if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
- test -z "$$files" || { \
- echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
- $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
- } \
- ; done
-
-uninstall-binPROGRAMS:
- @$(NORMAL_UNINSTALL)
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- files=`for p in $$list; do echo "$$p"; done | \
- sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
- test -n "$$list" || exit 0; \
- echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(bindir)" && rm -f $$files
-
-clean-binPROGRAMS:
- @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
- echo " rm -f" $$list; \
- rm -f $$list || exit $$?; \
- test -n "$(EXEEXT)" || exit 0; \
- list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
- echo " rm -f" $$list; \
- rm -f $$list
-mglconv$(EXEEXT): $(mglconv_OBJECTS) $(mglconv_DEPENDENCIES)
- @rm -f mglconv$(EXEEXT)
- $(CXXLINK) $(mglconv_OBJECTS) $(mglconv_LDADD) $(LIBS)
-mglview$(EXEEXT): $(mglview_OBJECTS) $(mglview_DEPENDENCIES)
- @rm -f mglview$(EXEEXT)
- $(mglview_LINK) $(mglview_OBJECTS) $(mglview_LDADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mglconv.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mglview-mglview.Po at am__quote@
-
-.cpp.o:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
-
-.cpp.obj:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
-.cpp.lo:
- at am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
-
-mglview-mglview.o: mglview.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mglview_CXXFLAGS) $(CXXFLAGS) -MT mglview-mglview.o -MD -MP -MF $(DEPDIR)/mglview-mglview.Tpo -c -o mglview-mglview.o `test -f 'mglview.cpp' || echo '$(srcdir)/'`mglview.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mglview-mglview.Tpo $(DEPDIR)/mglview-mglview.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mglview.cpp' object='mglview-mglview.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mglview_CXXFLAGS) $(CXXFLAGS) -c -o mglview-mglview.o `test -f 'mglview.cpp' || echo '$(srcdir)/'`mglview.cpp
-
-mglview-mglview.obj: mglview.cpp
- at am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mglview_CXXFLAGS) $(CXXFLAGS) -MT mglview-mglview.obj -MD -MP -MF $(DEPDIR)/mglview-mglview.Tpo -c -o mglview-mglview.obj `if test -f 'mglview.cpp'; then $(CYGPATH_W) 'mglview.cpp'; else $(CYGPATH_W) '$(srcdir)/mglview.cpp'; fi`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mglview-mglview.Tpo $(DEPDIR)/mglview-mglview.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mglview.cpp' object='mglview-mglview.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(mglview_CXXFLAGS) $(CXXFLAGS) -c -o mglview-mglview.obj `if test -f 'mglview.cpp'; then $(CYGPATH_W) 'mglview.cpp'; else $(CYGPATH_W) '$(srcdir)/mglview.cpp'; fi`
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(PROGRAMS)
-installdirs:
- for dir in "$(DESTDIR)$(bindir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am: install-binPROGRAMS
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-binPROGRAMS
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic clean-libtool ctags distclean distclean-compile \
- distclean-generic distclean-libtool distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-binPROGRAMS install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-am \
- uninstall-binPROGRAMS
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/utils/mglconv.cpp b/utils/mglconv.cpp
index f717365..69b990f 100644
--- a/utils/mglconv.cpp
+++ b/utils/mglconv.cpp
@@ -21,7 +21,8 @@
#include <string.h>
#include <locale.h>
#include "mgl/mgl.h"
-void mgl_error_print(int line, int r, char *Message);
+void mgl_error_print(const char *Message, void *par);
+void mgl_ask_gets(const wchar_t *quest, wchar_t *res);
//-----------------------------------------------------------------------------
int main(int narg, char **arg)
{
@@ -38,9 +39,9 @@ int main(int narg, char **arg)
setlocale(LC_CTYPE, arg[i]+2);
if(arg[i][0]=='-' && (arg[i][1]=='h' || (arg[i][1]=='-' && arg[i][2]=='h')))
{
- printf("mgl2png convert mgl script to bitmap png file.\n");
+ printf("mglconv convert mgl script to bitmap png file.\n");
printf("Current version is 2.%g\n",MGL_VER2);
- printf("Usage:\tmgl2png scriptfile [outputfile parameter(s)]\n");
+ printf("Usage:\tmglconv scriptfile [outputfile parameter(s)]\n");
printf("\tParameters have format \"-Nval\".\n");
printf("\tHere N=0,1...9 is parameter ID and val is its value.\n");
printf("\tOption -Lval set locale to val.\n");
@@ -48,6 +49,7 @@ int main(int narg, char **arg)
if(arg[i][0]!='-' && j<0) j=i;
if(arg[i][0]!='-' && j>0) k=i;
}
+ mgl_ask_func = mgl_ask_gets;
// prepare for animation
std::wstring str;
FILE *fp = j>0?fopen(arg[j],"r"):stdin;
@@ -67,7 +69,7 @@ int main(int narg, char **arg)
wscanf(str.c_str()+n+4,L"%g%g%g",&v1,&v2,&dv);
wchar_t ss[64];
for(v=v1;v<=v2;v+=dv)
- { swprintf(ss,64,L"%g",v); var.push_back(ss); }
+ { mglprintf(ss,64,L"%g",v); var.push_back(ss); }
}
char buf[2048],fname[256];
if(k>0) strcpy(fname,arg[k]);
@@ -81,7 +83,6 @@ int main(int narg, char **arg)
{
gr.NewFrame();
p.AddParam(0,var[i].c_str());
- gr.Message(buf); *buf=0;
p.Execute(&gr,str.c_str(),mgl_error_print);
gr.EndFrame();
sprintf(buf,"%s-%ld",fname,i);
@@ -91,7 +92,6 @@ int main(int narg, char **arg)
}
else
{
- gr.Message(buf); *buf=0;
p.Execute(&gr,str.c_str(),mgl_error_print);
gr.WriteFrame(fname);
}
diff --git a/utils/mglview.cpp b/utils/mglview.cpp
index fdee550..b2a37a0 100644
--- a/utils/mglview.cpp
+++ b/utils/mglview.cpp
@@ -25,7 +25,9 @@
//-----------------------------------------------------------------------------
std::wstring str;
mglParse p(true);
-void mgl_error_print(int line, int r, char *Message);
+void mgl_error_print(const char *Message, void *par);
+void mgl_ask_fltk(const wchar_t *quest, wchar_t *res);
+void mgl_ask_qt(const wchar_t *quest, wchar_t *res);
//-----------------------------------------------------------------------------
int show(mglGraph *gr)
{
@@ -44,7 +46,7 @@ int main(int narg, char **arg)
setlocale(LC_CTYPE, arg[i]+2);
if(arg[i][0]=='-' && (arg[i][1]=='h' || (arg[i][1]=='-' && arg[i][2]=='h')))
{
- printf("mglview show MGL script in FLTK window.\n");
+ printf("mglview show MGL script and MGLD files in a window.\n");
printf("Current version is 2.%g\n",MGL_VER2);
printf("Usage:\tmgl2png scriptfile [outputfile parameter(s)]\n");
printf("\tParameters have format \"-Nval\".\n");
@@ -53,16 +55,23 @@ int main(int narg, char **arg)
}
if(arg[i][0]!='-' && j<0) j=i;
}
- FILE *fp = j>0?fopen(arg[j],"r"):stdin;
- while(!feof(fp)) str.push_back(fgetwc(fp));
- if(j>0) fclose(fp);
-#if defined(HAVE_FLTK)
- int kind=0;
-#elif defined(HAVE_QT)
- int kind=1;
+ mgl_ask_func = mgl_ask_gets;
+#if defined(HAVE_QT)
+ int kind=1; mgl_ask_func = mgl_ask_qt;
+#elif defined(HAVE_FLTK)
+ int kind=0; mgl_ask_func = mgl_ask_fltk;
#endif
+ bool mgld=(j>0 && arg[j][strlen(arg[j])]=='d');
+ if(!mgld)
+ {
+ FILE *fp = j>0?fopen(arg[j],"r"):stdin;
+ while(!feof(fp)) str.push_back(fgetwc(fp));
+ if(j>0) fclose(fp);
+ }
#if defined(HAVE_FLTK) || defined(HAVE_QT)
- mglWindow gr(kind,show,j>0?arg[j]:"mglview");
+ mglWindow gr(kind, mgld?NULL:show ,j>0?arg[j]:"mglview");
+ if(mgld)
+ { gr.ImportMGLD(arg[j]); gr.Update(); }
gr.Run();
#endif
return 0;
diff --git a/widgets/CMakeLists.txt b/widgets/CMakeLists.txt
index a595f05..58d814c 100644
--- a/widgets/CMakeLists.txt
+++ b/widgets/CMakeLists.txt
@@ -1,3 +1,4 @@
+set(mgl_wnd_hdr ../include/mgl/window.h)
set(mgl_wnd_src window.cpp)
#set(mgl_wnd_src )
@@ -13,15 +14,17 @@ if(use_fltk)
add_definitions(-DHAVE_FLTK)
include_directories(${FLTK_INCLUDE_DIR})
set(mgl_wnd_src ${mgl_wnd_src} fltk.cpp)
+ set(mgl_wnd_hdr ${mgl_wnd_hdr} ../include/mgl/fltk.h)
endif(use_fltk)
if(use_glut)
add_definitions(-DHAVE_GLUT)
include_directories(${GLUT_INCLUDE_DIR})
set(mgl_glut_src glut.cpp)
+ set(mgl_glut_hdr ../include/mgl/glut.h)
- add_library(mgl-glut SHARED ${mgl_glut_src})
- add_library(mgl-glut-static STATIC ${mgl_glut_src})
+ add_library(mgl-glut SHARED ${mgl_glut_src} ${mgl_glut_hdr})
+ add_library(mgl-glut-static STATIC ${mgl_glut_src} ${mgl_glut_hdr})
set_target_properties(mgl-glut-static PROPERTIES OUTPUT_NAME "mgl-glut")
set_target_properties(mgl-glut PROPERTIES CLEAN_DIRECT_OUTPUT 1)
set_target_properties(mgl-glut-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
@@ -46,6 +49,7 @@ if(use_wx)
include(${wxWidgets_USE_FILE})
add_definitions(-DHAVE_WX)
set(mgl_wnd_src ${mgl_wnd_src} wx.cpp)
+ set(mgl_wnd_hdr ${mgl_wnd_hdr} ../include/mgl/fltk.h)
endif(use_wx)
if(use_qt)
@@ -54,10 +58,11 @@ if(use_qt)
# qt_wrap_cpp(mgl-wnd MGL_MOC_FILES ../include/mgl/qt.h)
qt4_wrap_cpp(MGL_MOC_FILES ../include/mgl/qt.h)
set(mgl_wnd_src ${mgl_wnd_src} qt.cpp ${MGL_MOC_FILES})
+ set(mgl_wnd_hdr ${mgl_wnd_hdr} ../include/mgl/qt.h)
endif(use_qt)
-add_library(mgl-wnd SHARED ${mgl_wnd_src})
-add_library(mgl-wnd-static STATIC ${mgl_wnd_src})
+add_library(mgl-wnd SHARED ${mgl_wnd_src} ${mgl_wnd_hdr})
+add_library(mgl-wnd-static STATIC ${mgl_wnd_src} ${mgl_wnd_hdr})
set_target_properties(mgl-wnd-static PROPERTIES OUTPUT_NAME "mgl-wnd")
set_target_properties(mgl-wnd PROPERTIES CLEAN_DIRECT_OUTPUT 1)
set_target_properties(mgl-wnd-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
diff --git a/widgets/Makefile.in b/widgets/Makefile.in
deleted file mode 100644
index 1ce13df..0000000
--- a/widgets/Makefile.in
+++ /dev/null
@@ -1,733 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-# Makerules.
-# This file is part of AutoTroll.
-# Copyright (C) 2006 Benoit Sigoure.
-#
-# AutoTroll is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
-# USA.
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
- at USE_QT_TRUE@am__append_1 = -DHAVE_QT
- at USE_FLTK_TRUE@am__append_2 = -DHAVE_FLTK
-#libmgl_wnd_la_SOURCES =
- at USE_FLTK_TRUE@am__append_3 = $(FLTK_LIBS)
- at USE_FLTK_TRUE@am__append_4 = $(FLTK_FLAGS)
- at USE_FLTK_TRUE@am__append_5 = fltk.cpp
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(top_srcdir)/config/autotroll.mk
- at USE_QT_TRUE@am__append_6 = $(QT_LDFLAGS)
- at USE_QT_TRUE@am__append_7 = $(QT_LIBS)
- at USE_QT_TRUE@am__append_8 = $(QT_CPPFLAGS)
- at USE_QT_TRUE@am__append_9 = $(QT_CXXFLAGS)
- at USE_QT_TRUE@am__append_10 = $(top_builddir)/include/mgl/qt.moc.cpp qt.cpp $(top_srcdir)/include/mgl/qt.h
-subdir = widgets
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/config/autotroll.m4 \
- $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/include/mgl/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
- $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
- *) f=$$p;; \
- esac;
-am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
-am__install_max = 40
-am__nobase_strip_setup = \
- srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
-am__nobase_strip = \
- for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
-am__nobase_list = $(am__nobase_strip_setup); \
- for p in $$list; do echo "$$p $$p"; done | \
- sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
- $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
- if (++n[$$2] == $(am__install_max)) \
- { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
- END { for (dir in files) print dir, files[dir] }'
-am__base_list = \
- sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
- sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
-am__installdirs = "$(DESTDIR)$(libdir)"
-LTLIBRARIES = $(lib_LTLIBRARIES)
-am__DEPENDENCIES_1 =
- at USE_FLTK_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1)
- at USE_QT_TRUE@am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1)
-libmgl_wnd_la_DEPENDENCIES = $(top_builddir)/src/libmgl.la \
- $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3)
-am__libmgl_wnd_la_SOURCES_DIST = window.cpp fltk.cpp \
- $(top_builddir)/include/mgl/qt.moc.cpp qt.cpp \
- $(top_srcdir)/include/mgl/qt.h
- at USE_FLTK_TRUE@am__objects_1 = libmgl_wnd_la-fltk.lo
- at USE_QT_TRUE@am__objects_2 = libmgl_wnd_la-qt.moc.lo \
- at USE_QT_TRUE@ libmgl_wnd_la-qt.lo
-am_libmgl_wnd_la_OBJECTS = libmgl_wnd_la-window.lo $(am__objects_1) \
- $(am__objects_2)
-libmgl_wnd_la_OBJECTS = $(am_libmgl_wnd_la_OBJECTS)
-libmgl_wnd_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(libmgl_wnd_la_CXXFLAGS) \
- $(CXXFLAGS) $(libmgl_wnd_la_LDFLAGS) $(LDFLAGS) -o $@
-DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)/include/mgl
-depcomp = $(SHELL) $(top_srcdir)/config/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-CXXLD = $(CXX)
-CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-SOURCES = $(libmgl_wnd_la_SOURCES)
-DIST_SOURCES = $(am__libmgl_wnd_la_SOURCES_DIST)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_CXXFLAGS = @AM_CXXFLAGS@ -I$(top_srcdir)/include \
- -I$(top_builddir)/include
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FLTK_FLAGS = @FLTK_FLAGS@
-FLTK_LIBS = @FLTK_LIBS@
-GL_LIBS = @GL_LIBS@
-GREP = @GREP@
-GSL_FLAGS = @GSL_FLAGS@
-GSL_LIBS = @GSL_LIBS@
-HAVE_SWIG = @HAVE_SWIG@
-HDF4_FLAGS = @HDF4_FLAGS@
-HDF4_LIBS = @HDF4_LIBS@
-HDF5_FLAGS = @HDF5_FLAGS@
-HDF5_LIBS = @HDF5_LIBS@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-JPEG_FLAGS = @JPEG_FLAGS@
-JPEG_LIBS = @JPEG_LIBS@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
-MGL_AGE = @MGL_AGE@
-MGL_CURRENT = @MGL_CURRENT@
-MGL_RELEASE = @MGL_RELEASE@
-MGL_REVISION = @MGL_REVISION@
-MKDIR_P = @MKDIR_P@
-MOC = @MOC@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OCTAVE = @OCTAVE@
-OCTAVE_ARCH = @OCTAVE_ARCH@
-OCTAVE_INCFLAGS = @OCTAVE_INCFLAGS@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PNG_LIBS = @PNG_LIBS@
-PTHREAD_FLAGS = @PTHREAD_FLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-PYTHON = @PYTHON@
-PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
-PYTHON_HEADERS = @PYTHON_HEADERS@
-PYTHON_PLATFORM = @PYTHON_PLATFORM@
-PYTHON_PREFIX = @PYTHON_PREFIX@
-PYTHON_VERSION = @PYTHON_VERSION@
-QMAKE = @QMAKE@
-QT_CFLAGS = @QT_CFLAGS@
-QT_CPPFLAGS = @QT_CPPFLAGS@
-QT_CXXFLAGS = @QT_CXXFLAGS@
-QT_DEFINES = @QT_DEFINES@
-QT_INCPATH = @QT_INCPATH@
-QT_LDFLAGS = @QT_LDFLAGS@
-QT_LFLAGS = @QT_LFLAGS@
-QT_LIBS = @QT_LIBS@
-QT_PATH = @QT_PATH@
-QT_VERSION = @QT_VERSION@
-QT_VERSION_MAJOR = @QT_VERSION_MAJOR@
-RANLIB = @RANLIB@
-RCC = @RCC@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-TMPDIR = @TMPDIR@
-U3D_LIBS = @U3D_LIBS@
-UIC = @UIC@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-lt_ECHO = @lt_ECHO@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-pkgpyexecdir = @pkgpyexecdir@
-pkgpythondir = @pkgpythondir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-pyexecdir = @pyexecdir@
-pythondir = @pythondir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-WIDGETS = $(am__append_1) $(am__append_2)
-lib_LTLIBRARIES = libmgl-wnd.la
-libmgl_wnd_la_LDFLAGS = $(LDFLAGS) -no-undefined -version-info \
- $(MGL_CURRENT):$(MGL_REVISION):$(MGL_AGE) $(am__append_6)
-libmgl_wnd_la_LIBADD = $(top_builddir)/src/libmgl.la $(am__append_3) \
- $(am__append_7)
-libmgl_wnd_la_CPPFLAGS = $(AM_CXXFLAGS) $(WIDGETS) $(am__append_8)
-libmgl_wnd_la_CXXFLAGS = $(AM_CXXFLAGS) $(WIDGETS) $(am__append_4) \
- $(am__append_9)
-libmgl_wnd_la_SOURCES = window.cpp $(am__append_5) $(am__append_10)
-
-# See autotroll.m4 :)
- at USE_QT_TRUE@SUFFIXES = .moc.cpp .moc.cc .moc.cxx .moc.C .h .hh \
- at USE_QT_TRUE@ .ui .ui.h .ui.hh \
- at USE_QT_TRUE@ .qrc .qrc.cpp .qrc.cc .qrc.cxx .qrc.C
-
- at USE_QT_TRUE@DISTCLEANFILES = $(BUILT_SOURCES)
- at USE_QT_TRUE@ACLOCAL_AMFLAGS = -I $(top_srcdir)/config/
- at USE_QT_TRUE@BUILT_SOURCES = $(top_builddir)/include/mgl/qt.moc.cpp
- at USE_QT_TRUE@CLEANFILES = $(BUILT_SOURCES)
-all: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) all-am
-
-.SUFFIXES:
-.SUFFIXES: .moc.cpp .moc.cc .moc.cxx .moc.C .h .hh .ui .ui.h .ui.hh .qrc .qrc.cpp .qrc.cc .qrc.cxx .qrc.C .cpp .lo .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/config/autotroll.mk $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu widgets/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu widgets/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-libLTLIBRARIES: $(lib_LTLIBRARIES)
- @$(NORMAL_INSTALL)
- test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
- @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
- list2=; for p in $$list; do \
- if test -f $$p; then \
- list2="$$list2 $$p"; \
- else :; fi; \
- done; \
- test -z "$$list2" || { \
- echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
- $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
- }
-
-uninstall-libLTLIBRARIES:
- @$(NORMAL_UNINSTALL)
- @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
- for p in $$list; do \
- $(am__strip_dir) \
- echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
- $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
- done
-
-clean-libLTLIBRARIES:
- -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
- @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
- dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
- test "$$dir" != "$$p" || dir=.; \
- echo "rm -f \"$${dir}/so_locations\""; \
- rm -f "$${dir}/so_locations"; \
- done
-libmgl-wnd.la: $(libmgl_wnd_la_OBJECTS) $(libmgl_wnd_la_DEPENDENCIES)
- $(libmgl_wnd_la_LINK) -rpath $(libdir) $(libmgl_wnd_la_OBJECTS) $(libmgl_wnd_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_wnd_la-fltk.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_wnd_la-qt.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_wnd_la-qt.moc.Plo at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libmgl_wnd_la-window.Plo at am__quote@
-
-.cpp.o:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
-
-.cpp.obj:
- at am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
-.cpp.lo:
- at am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
-
-libmgl_wnd_la-window.lo: window.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmgl_wnd_la_CPPFLAGS) $(CPPFLAGS) $(libmgl_wnd_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_wnd_la-window.lo -MD -MP -MF $(DEPDIR)/libmgl_wnd_la-window.Tpo -c -o libmgl_wnd_la-window.lo `test -f 'window.cpp' || echo '$(srcdir)/'`window.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_wnd_la-window.Tpo $(DEPDIR)/libmgl_wnd_la-window.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='window.cpp' object='libmgl_wnd_la-window.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmgl_wnd_la_CPPFLAGS) $(CPPFLAGS) $(libmgl_wnd_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_wnd_la-window.lo `test -f 'window.cpp' || echo '$(srcdir)/'`window.cpp
-
-libmgl_wnd_la-fltk.lo: fltk.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmgl_wnd_la_CPPFLAGS) $(CPPFLAGS) $(libmgl_wnd_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_wnd_la-fltk.lo -MD -MP -MF $(DEPDIR)/libmgl_wnd_la-fltk.Tpo -c -o libmgl_wnd_la-fltk.lo `test -f 'fltk.cpp' || echo '$(srcdir)/'`fltk.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_wnd_la-fltk.Tpo $(DEPDIR)/libmgl_wnd_la-fltk.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fltk.cpp' object='libmgl_wnd_la-fltk.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmgl_wnd_la_CPPFLAGS) $(CPPFLAGS) $(libmgl_wnd_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_wnd_la-fltk.lo `test -f 'fltk.cpp' || echo '$(srcdir)/'`fltk.cpp
-
-libmgl_wnd_la-qt.moc.lo: $(top_builddir)/include/mgl/qt.moc.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmgl_wnd_la_CPPFLAGS) $(CPPFLAGS) $(libmgl_wnd_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_wnd_la-qt.moc.lo -MD -MP -MF $(DEPDIR)/libmgl_wnd_la-qt.moc.Tpo -c -o libmgl_wnd_la-qt.moc.lo `test -f '$(top_builddir)/include/mgl/qt.moc.cpp' || echo '$(srcdir)/'`$(top_builddir)/include/mgl/qt.moc.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_wnd_la-qt.moc.Tpo $(DEPDIR)/libmgl_wnd_la-qt.moc.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(top_builddir)/include/mgl/qt.moc.cpp' object='libmgl_wnd_la-qt.moc.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmgl_wnd_la_CPPFLAGS) $(CPPFLAGS) $(libmgl_wnd_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_wnd_la-qt.moc.lo `test -f '$(top_builddir)/include/mgl/qt.moc.cpp' || echo '$(srcdir)/'`$(top_builddir)/include/mgl/qt.moc.cpp
-
-libmgl_wnd_la-qt.lo: qt.cpp
- at am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmgl_wnd_la_CPPFLAGS) $(CPPFLAGS) $(libmgl_wnd_la_CXXFLAGS) $(CXXFLAGS) -MT libmgl_wnd_la-qt.lo -MD -MP -MF $(DEPDIR)/libmgl_wnd_la-qt.Tpo -c -o libmgl_wnd_la-qt.lo `test -f 'qt.cpp' || echo '$(srcdir)/'`qt.cpp
- at am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/libmgl_wnd_la-qt.Tpo $(DEPDIR)/libmgl_wnd_la-qt.Plo
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='qt.cpp' object='libmgl_wnd_la-qt.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmgl_wnd_la_CPPFLAGS) $(CPPFLAGS) $(libmgl_wnd_la_CXXFLAGS) $(CXXFLAGS) -c -o libmgl_wnd_la-qt.lo `test -f 'qt.cpp' || echo '$(srcdir)/'`qt.cpp
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(LTLIBRARIES)
-installdirs:
- for dir in "$(DESTDIR)$(libdir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
- -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
-clean: clean-am
-
-clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
- mostlyclean-am
-
-distclean: distclean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am: install-libLTLIBRARIES
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-libLTLIBRARIES
-
-.MAKE: all check install install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libLTLIBRARIES clean-libtool ctags distclean \
- distclean-compile distclean-generic distclean-libtool \
- distclean-tags distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am \
- install-libLTLIBRARIES install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-libLTLIBRARIES
-
-
- at USE_QT_TRUE@ # ------------- #
- at USE_QT_TRUE@ # DOCUMENTATION #
- at USE_QT_TRUE@ # ------------- #
-
-# --- #
-# MOC #
-# --- #
-
- at USE_QT_TRUE@.hh.moc.cpp:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
- at USE_QT_TRUE@.h.moc.cpp:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
-
- at USE_QT_TRUE@.hh.moc.cc:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
- at USE_QT_TRUE@.h.moc.cc:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
-
- at USE_QT_TRUE@.hh.moc.cxx:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
- at USE_QT_TRUE@.h.moc.cxx:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
-
- at USE_QT_TRUE@.hh.moc.C:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
- at USE_QT_TRUE@.h.moc.C:
- at USE_QT_TRUE@ $(MOC) $(QT_CPPFLAGS) $< -o $@
-
-# --- #
-# UIC #
-# --- #
-
- at USE_QT_TRUE@.ui.ui.hh:
- at USE_QT_TRUE@ $(UIC) $< -o $@
-
- at USE_QT_TRUE@.ui.ui.h:
- at USE_QT_TRUE@ $(UIC) $< -o $@
-
-# --- #
-# RCC #
-# --- #
-
- at USE_QT_TRUE@.qrc.qrc.cpp:
- at USE_QT_TRUE@ $(RCC) -name `echo "$<" | sed 's/\.qrc$$//'` $< -o $@
-
- at USE_QT_TRUE@.qrc.qrc.cc:
- at USE_QT_TRUE@ $(RCC) -name `echo "$<" | sed 's/\.qrc$$//'` $< -o $@
-
- at USE_QT_TRUE@.qrc.qrc.cxx:
- at USE_QT_TRUE@ $(RCC) -name `echo "$<" | sed 's/\.qrc$$//'` $< -o $@
-
- at USE_QT_TRUE@.qrc.qrc.C:
- at USE_QT_TRUE@ $(RCC) -name `echo "$<" | sed 's/\.qrc$$//'` $< -o $@
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/widgets/fltk.cpp b/widgets/fltk.cpp
index 4eb5b0a..c26499b 100644
--- a/widgets/fltk.cpp
+++ b/widgets/fltk.cpp
@@ -23,54 +23,63 @@
#include <FL/fl_draw.H>
#include <FL/Fl_File_Chooser.H>
#include <unistd.h>
-
-#include "mgl/fltk.h"
-
+#include <wchar.h>
+//-----------------------------------------------------------------------------
#ifdef USE_GETTEXT
- #include <libintl.h>
+#include <libintl.h>
#else
// Workaround for gcc 4.2
- #ifndef _LIBINTL_H
- #define gettext(x) (x)
- #endif
+#ifndef _LIBINTL_H
+#define gettext(x) (x)
+#endif
#endif
-
+//-----------------------------------------------------------------------------
+#include "mgl/fltk.h"
//-----------------------------------------------------------------------------
#include "xpm/alpha_on.xpm"
#include "xpm/light_on.xpm"
-//#include "xpm/zoom_on.xpm"
+#include "xpm/zoom_on.xpm"
#include "xpm/show_on.xpm"
#include "xpm/rotate_on.xpm"
#include "xpm/show_sl.xpm"
#include "xpm/next_sl.xpm"
#include "xpm/prev_sl.xpm"
-//#include "xpm/left_1.xpm"
-//#include "xpm/right_1.xpm"
-//#include "xpm/down_1.xpm"
-//#include "xpm/norm_1.xpm"
-//#include "xpm/zoom_1.xpm"
-//#include "xpm/up_1.xpm"
+#include "xpm/left_1.xpm"
+#include "xpm/right_1.xpm"
+#include "xpm/down_1.xpm"
+#include "xpm/norm_1.xpm"
+#include "xpm/zoom_1.xpm"
+#include "xpm/up_1.xpm"
#include "xpm/alpha.xpm"
#include "xpm/light.xpm"
-//#include "xpm/zoom_in.xpm"
+#include "xpm/zoom_in.xpm"
#include "xpm/zoom_out.xpm"
#include "xpm/rotate.xpm"
#include "xpm/ok.xpm"
//-----------------------------------------------------------------------------
Fl_Pixmap xpm_a1(alpha_xpm), xpm_a2(alpha_on_xpm);
Fl_Pixmap xpm_l1(light_on_xpm), xpm_l2(light_xpm);
-//Fl_Pixmap xpm_z1(zoom_in_xpm), xpm_z2(zoom_on_xpm);
+Fl_Pixmap xpm_z1(zoom_in_xpm), xpm_z2(zoom_on_xpm);
Fl_Pixmap xpm_s1(show_sl_xpm), xpm_s2(show_on_xpm);
Fl_Pixmap xpm_r1(rotate_xpm), xpm_r2(rotate_on_xpm);
//-----------------------------------------------------------------------------
+void mgl_ask_fltk(const wchar_t *quest, wchar_t *res)
+{
+ static char buf[1024];
+ fl_utf8fromwc(buf, 1024, quest, wcslen(quest)+1);
+ const char *str = fl_input(buf,"");
+ fl_utf8towc(str, strlen(str)+1, res, 1024);
+}
+//-----------------------------------------------------------------------------
//
// class Fl_MathGL
//
//-----------------------------------------------------------------------------
Fl_MathGL::Fl_MathGL(int xx, int yy, int ww, int hh, char *lbl) : Fl_Widget(xx,yy,ww,hh,lbl)
{
- graph = new mglCanvas;
- rotate = false; tet=phi=0;
+ gr = new mglCanvas;
+ tet=phi=x1=y1=0; x2=y2=1;
+ zoom = rotate = false;
flag=x0=y0=xe=ye=0;
tet_val = phi_val = 0;
draw_par = 0; draw_func = 0;
@@ -78,37 +87,48 @@ Fl_MathGL::Fl_MathGL(int xx, int yy, int ww, int hh, char *lbl) : Fl_Widget(xx,y
//-----------------------------------------------------------------------------
Fl_MathGL::~Fl_MathGL() {}
//-----------------------------------------------------------------------------
-void Fl_MathGL::set_graph(mglCanvas *gr)
+void Fl_MathGL::set_graph(mglCanvas *GR)
{
- if(!gr) return;
- delete graph; graph=gr;
+ if(!GR) return;
+ delete gr; gr=GR;
}
//-----------------------------------------------------------------------------
void Fl_MathGL::draw()
{
- const unsigned char *g = graph ? graph->GetBits() : 0;
- if(g) fl_draw_image(g, x(), y(), graph->GetWidth(), graph->GetHeight(), 3);
+ const unsigned char *g = gr ? gr->GetBits() : 0;
+ int i, h=gr->GetHeight(), w=gr->GetWidth();
+ if(g) fl_draw_image(g, x(), y(), w, h, 3);
+ if(flag&4)
+ {
+ char str[5]="0.0";
+ fl_color(192,192,192);
+ for(i=1;i<10;i++)
+ {
+ str[2] = '0'+10-i; fl_draw(str,30,30+i*h/10);
+ fl_line(30,30+i*h/10,30+w,30+i*h/10);
+ str[2] = '0'+i; fl_draw(str,30+i*w/10,30+h);
+ fl_line(30+i*w/10,30,30+i*w/10,30+h);
+ }
+// if(*MouseBuf) fl_draw(MouseBuf,30,50);
+ }
}
//-----------------------------------------------------------------------------
-void Fl_MathGL::update(mglCanvas *gr)
+void Fl_MathGL::update()
{
- if(gr==0) gr=graph;
- if(gr==0) return;
if(draw_func)
{
- if(gr!=graph || graph->get(MGL_CLF_ON_UPD)) gr->DefaultPlotParam();
+ if(gr->get(MGL_CLF_ON_UPD)) gr->DefaultPlotParam();
gr->ResetFrames();
- char *buf = new char[2048]; *buf = 0;
- gr->Message = buf;
gr->Alpha(flag&1); gr->Light(flag&2);
- gr->View(tet,phi); gr->Clf();
-// gr->DrawFace = !rotate; // TODO: switch to fast drawing here
- draw_func(gr, draw_par);
+ if(tet_val) tet = tet_val->value();
+ if(phi_val) phi = phi_val->value();
+ gr->View(tet,phi); gr->Zoom(x1,y1,x2,y2); gr->Clf();
+ draw_func(gr, draw_par); // drawing itself
+ const char *buf = gr->Mess.c_str();
if(*buf) fl_message("%s",buf);
- gr->Message = 0; delete []buf;
}
- if(gr==graph && (graph->GetWidth()!=w() || graph->GetHeight()!=h()))
- size(graph->GetWidth(), graph->GetHeight());
+ if(gr->GetWidth()!=w() || gr->GetHeight()!=h())
+ size(gr->GetWidth(), gr->GetHeight());
redraw(); Fl::flush();
}
//-----------------------------------------------------------------------------
@@ -122,22 +142,21 @@ int Fl_MathGL::handle(int code)
const Fl_Menu_Item *m = popup->popup(Fl::event_x(), Fl::event_y(), 0, 0, 0);
if(m) m->do_callback(wpar, vpar);
}
- if(graph->get(MGL_SHOW_POS) && !rotate && code==FL_PUSH && Fl::event_button()==FL_LEFT_MOUSE)
+ if(gr->get(MGL_SHOW_POS) && !zoom && !rotate && code==FL_PUSH && Fl::event_button()==FL_LEFT_MOUSE)
{
- mglPoint p = graph->CalcXYZ(Fl::event_x()-x(), Fl::event_y()-y());
+ mglPoint p = gr->CalcXYZ(Fl::event_x()-x(), Fl::event_y()-y());
char s[128];
sprintf(s,"x=%g, y=%g, z=%g",p.x,p.y,p.z);
draw(); fl_color(FL_BLACK); fl_draw(s,40,70);
}
- if(!rotate || Fl::event_button()!=FL_LEFT_MOUSE)
+ if((!rotate && !zoom) || Fl::event_button()!=FL_LEFT_MOUSE)
{
if(code==FL_FOCUS || code==FL_UNFOCUS) return 1;
if(code==FL_KEYUP)
{
int key=Fl::event_key();
if(!strchr(" .,wasdrfx",key)) return 0;
- if(key==' ')
- { update(); return 1; }
+ if(key==' ') { update(); return 1; }
if(key=='w')
{
tet += 10;
@@ -164,41 +183,34 @@ int Fl_MathGL::handle(int code)
}
if(key=='x')
{
- mglCanvasFL *g=dynamic_cast<mglCanvasFL *>(graph);
- if(g && g->FMGL==this)
+ mglCanvasFL *g=dynamic_cast<mglCanvasFL *>(gr);
+ if(g && g->mgl->FMGL==this)
{ g->Wnd->hide(); return 1; }
else return 0;
// exit(0);
}
if(key==',')
{
- mglCanvasFL *g=dynamic_cast<mglCanvasFL *>(graph);
- if(g && g->FMGL==this)
+ mglCanvasFL *g=dynamic_cast<mglCanvasFL *>(gr);
+ if(g && g->mgl->FMGL==this)
{ g->PrevFrame(); return 1; }
else return 0;
}
if(key=='.')
{
- mglCanvasFL *g=dynamic_cast<mglCanvasFL *>(graph);
- if(g && g->FMGL==this)
+ mglCanvasFL *g=dynamic_cast<mglCanvasFL *>(gr);
+ if(g && g->mgl->FMGL==this)
{ g->NextFrame(); return 1; }
else return 0;
}
if(key=='r')
- {
- flag = (flag&2) + ((~(flag&1))&1);
- update(); return 1;
- }
+ { flag = (flag&2) + ((~(flag&1))&1); update(); return 1; }
if(key=='f')
- {
- flag = (flag&1) + ((~(flag&2))&2);
- update(); return 1;
- }
+ { flag = (flag&1) + ((~(flag&2))&2); update(); return 1; }
}
return 0;
}
- if(code==FL_PUSH)
- { xe=x0=Fl::event_x(); ye=y0=Fl::event_y(); }
+ if(code==FL_PUSH) { xe=x0=Fl::event_x(); ye=y0=Fl::event_y(); }
if(code==FL_DRAG)
{
xe=Fl::event_x(); ye=Fl::event_y();
@@ -216,271 +228,356 @@ int Fl_MathGL::handle(int code)
}
if(code==FL_RELEASE)
{
- if(tet_val) tet_val->value(tet);
- if(phi_val) phi_val->value(phi);
+ if(zoom)
+ {
+ int w1=w(),h1=h();
+ mreal _x1,_x2,_y1,_y2;
+ _x1 = x1+(x2-x1)*(x0-x())/mreal(w1);
+ _y1 = y2-(y2-y1)*(ye-y())/mreal(h1);
+ _x2 = x1+(x2-x1)*(xe-x())/mreal(w1);
+ _y2 = y2-(y2-y1)*(y0-y())/mreal(h1);
+ x1=_x1; x2=_x2; y1=_y1; y2=_y2;
+ if(x1>x2) { _x1=x1; x1=x2; x2=_x1; }
+ if(y1>y2) { _x1=y1; y1=y2; y2=_x1; }
+ update();
+ }
+ else
+ {
+ if(tet_val) tet_val->value(tet);
+ if(phi_val) phi_val->value(phi);
+ }
redraw();
}
return 1;
}
//-----------------------------------------------------------------------------
//
-// class mglCanvasFL
+// class Fl_MGLView
//
//-----------------------------------------------------------------------------
-mglCanvasFL::mglCanvasFL() : mglCanvasW()
-{ Wnd = 0; alpha = light = sshow = 0; }
-mglCanvasFL::~mglCanvasFL() { if(Wnd) delete Wnd; }
-//-----------------------------------------------------------------------------
-void mglCanvasFL::NextFrame()
+void Fl_MGLView::toggle(int &val, Fl_Button *b, const char *txt)
{
- if(GetNumFig()>0)
- { SetCurFig(GetCurFig()>GetNumFig()-1 ? 0 : GetCurFig()+1); FMGL->redraw(); }
+ val = 1-val; b->value(val);
+ // TODO: add pixmap (Fl_Pixmap *pix) change?!
+ // if(pix) {b->image(*pix); b->redraw();}
+ if(menu && txt && *txt)
+ {
+ Fl_Menu_Item *m = (Fl_Menu_Item *)menu->find_item(gettext(txt));
+ if(m && val) m->set();
+ if(m && !val) m->clear();
+ }
+ update();
}
//-----------------------------------------------------------------------------
-void mglCanvasFL::PrevFrame()
+void Fl_MGLView::setoff(int &val, Fl_Button *b, const char *txt)
{
- if(GetNumFig()>0)
- { SetCurFig(GetCurFig()<0 ? GetNumFig()-1 : GetCurFig()-1); FMGL->redraw(); }
+ val = 0; b->value(val);
+ // TODO: add pixmap (Fl_Pixmap *pix) change?!
+ // if(pix) {b->image(*pix); b->redraw();}
+ if(menu && txt && *txt)
+ {
+ Fl_Menu_Item *m = (Fl_Menu_Item *)menu->find_item(gettext(txt));
+ if(m && val) m->set();
+ if(m && !val) m->clear();
+ }
+ //update();
}
//-----------------------------------------------------------------------------
-void mglCanvasFL::ToggleAlpha()
-{
- alpha = 1-alpha;
- alpha_bt->value(alpha);
- alpha_bt->image(alpha?xpm_a2:xpm_a1); alpha_bt->redraw();
- Fl_Menu_Item *m = (Fl_Menu_Item *)menu->find_item(gettext("Graphics/Alpha"));
- if(m && alpha) m->set();
- if(m && !alpha) m->clear();
- Update();
-}
-void alpha_cb(Fl_Widget*, void* v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->ToggleAlpha(); }
+void mgl_wire_cb(Fl_Widget*, void* v)
+{ if(v) ((Fl_MGLView*)v)->toggle_wire(); }
+//-------------------------------------------------------------------------
+void mgl_alpha_cb(Fl_Widget*, void* v) // alpha?xpm_a2:xpm_a1
+{ if(v) ((Fl_MGLView*)v)->toggle_alpha(); }
+void mglCanvasFL::ToggleAlpha() { mgl->toggle_alpha(); }
+//-----------------------------------------------------------------------------
+void mgl_light_cb(Fl_Widget*, void* v) // light?xpm_l2:xpm_l1
+{ if(v) ((Fl_MGLView*)v)->toggle_light(); }
+void mglCanvasFL::ToggleLight() { mgl->toggle_light(); }
//-----------------------------------------------------------------------------
-void mglCanvasFL::ToggleLight()
+void mgl_norm_cb(Fl_Widget*, void* v)
{
- light = 1-light;
- light_bt->value(light);
- light_bt->image(light?xpm_l2:xpm_l1); light_bt->redraw();
- Fl_Menu_Item *m = (Fl_Menu_Item *)menu->find_item(gettext("Graphics/Light"));
- if(m && light) m->set();
- if(m && !light) m->clear();
- Update();
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ e->setoff_rotate(); e->setoff_zoom();
+ e->FMGL->tet_val->value(0); e->FMGL->phi_val->value(0);
+ e->update();
}
-void light_cb(Fl_Widget*, void* v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->ToggleLight(); }
-//-----------------------------------------------------------------------------
-void draw_cb(Fl_Widget*, void* v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->Update(); }
+void mglCanvasFL::ToggleNo() { mgl_norm_cb(0,mgl); }
//-----------------------------------------------------------------------------
-void mglCanvasFL::ToggleNo()
+void mgl_zoom_cb(Fl_Widget*, void* v)
{
- rotate_bt->value(0); rotate_bt->image(xpm_r1); rotate_bt->redraw();
- tet->value(0); phi->value(0);
- rotate = false; Update();
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ e->setoff_rotate(); e->toggle_zoom();
}
-void norm_cb(Fl_Widget*, void* v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->ToggleNo(); }
+void mglCanvasFL::ToggleZoom() { mgl_zoom_cb(0,mgl); }
//-----------------------------------------------------------------------------
-void mglCanvasFL::ToggleRotate()
+void mgl_rotate_cb(Fl_Widget*, void* v)
{
- FMGL->set_state(rotate_bt->value()!=0);
- rotate_bt->image(rotate_bt->value()?xpm_r2:xpm_r1);
- rotate_bt->redraw();
- if(!rotate_bt->value()) Update();
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ e->setoff_zoom(); e->toggle_rotate();
}
-void rotate_cb(Fl_Widget*, void* v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->ToggleRotate(); }
+void mglCanvasFL::ToggleRotate() { mgl_rotate_cb(0,mgl); }
//-----------------------------------------------------------------------------
-void mglCanvasFL::Update()
+void Fl_MGLView::update()
{
- FMGL->set_state(rotate_bt->value());
- FMGL->set_flag(alpha + 2*light);
- FMGL->set_angle(tet->value(), phi->value());
- SetCurFig(0);
+ FMGL->set_state(zoom_bt->value(), rotate_bt->value());
+ FMGL->set_flag(alpha + 2*light + 4*wire);
FMGL->update();
}
+void mgl_draw_cb(Fl_Widget*, void* v)
+{ if(v) ((Fl_MGLView*)v)->update(); }
+void mglCanvasFL::Update() { mgl->update(); }
//-----------------------------------------------------------------------------
-void export_png_cb(Fl_Widget*, void* v)
+void mgl_export_png_cb(Fl_Widget*, void* v)
{
char *fname = fl_file_chooser(gettext("Save File As?"), "*.png", 0);
if(!fname || !fname[0]) return;
- ((mglCanvas*)v)->WritePNG(fname);
+ mgl_write_png(((Fl_MGLView*)v)->FMGL->get_graph(),fname,0);
}
//-----------------------------------------------------------------------------
-void export_bps_cb(Fl_Widget*, void* v)
+void mgl_export_bps_cb(Fl_Widget*, void* v)
{
char *fname = fl_file_chooser(gettext("Save File As?"), "*.eps", 0);
if(!fname || !fname[0]) return;
- ((mglCanvas*)v)->WriteEPS(fname);
+ mgl_write_bps(((Fl_MGLView*)v)->FMGL->get_graph(),fname,0);
}
//-----------------------------------------------------------------------------
-void export_pngn_cb(Fl_Widget*, void* v)
+void mgl_export_pngn_cb(Fl_Widget*, void* v)
{
char *fname = fl_file_chooser(gettext("Save File As?"), "*.png", 0);
if(!fname || !fname[0]) return;
- ((mglCanvas*)v)->WritePNGs(fname,0);
+ mgl_write_png_solid(((Fl_MGLView*)v)->FMGL->get_graph(),fname,0);
}
//-----------------------------------------------------------------------------
-void export_jpeg_cb(Fl_Widget*, void* v)
+void mgl_export_jpeg_cb(Fl_Widget*, void* v)
{
char *fname = fl_file_chooser(gettext("Save File As?"), "*.jpg", 0);
if(!fname || !fname[0]) return;
- ((mglCanvas*)v)->WriteJPEG(fname);
+ mgl_write_jpg(((Fl_MGLView*)v)->FMGL->get_graph(),fname,0);
}
//-----------------------------------------------------------------------------
-void export_svg_cb(Fl_Widget*, void* v)
+void mgl_export_svg_cb(Fl_Widget*, void* v)
{
char *fname = fl_file_chooser(gettext("Save File As?"), "*.svg", 0);
if(!fname || !fname[0]) return;
- ((mglCanvas*)v)->WriteSVG(fname);
+ mgl_write_svg(((Fl_MGLView*)v)->FMGL->get_graph(),fname,0);
}
//-----------------------------------------------------------------------------
-void export_eps_cb(Fl_Widget*, void* v)
+void mgl_export_eps_cb(Fl_Widget*, void* v)
{
char *fname = fl_file_chooser(gettext("Save File As?"), "*.eps", 0);
if(!fname || !fname[0]) return;
- ((mglCanvas*)v)->WriteEPS(fname);
+ mgl_write_eps(((Fl_MGLView*)v)->FMGL->get_graph(),fname,0);
+}
+//-----------------------------------------------------------------------------
+void mgl_su_cb(Fl_Widget*, void* v)
+{
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ mreal x1,x2,y1,y2,d;
+ e->FMGL->get_zoom(&x1,&y1,&x2,&y2);
+ d = (y2-y1)/3; y1 += d; y2 += d;
+ e->FMGL->set_zoom(x1,y1,x2,y2);
+}
+//-----------------------------------------------------------------------------
+void mgl_sd_cb(Fl_Widget*, void* v)
+{
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ mreal x1,x2,y1,y2,d;
+ e->FMGL->get_zoom(&x1,&y1,&x2,&y2);
+ d = (y2-y1)/3; y1 -= d; y2 -= d;
+ e->FMGL->set_zoom(x1,y1,x2,y2);
+}
+//-----------------------------------------------------------------------------
+void mgl_sr_cb(Fl_Widget*, void* v)
+{
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ mreal x1,x2,y1,y2,d;
+ e->FMGL->get_zoom(&x1,&y1,&x2,&y2);
+ d = (x2-x1)/3; x1 += d; x2 += d;
+ e->FMGL->set_zoom(x1,y1,x2,y2);
}
//-----------------------------------------------------------------------------
-void oncemore_cb(Fl_Widget*, void*v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->ReLoad(); }
+void mgl_sl_cb(Fl_Widget*, void* v)
+{
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ mreal x1,x2,y1,y2,d;
+ e->FMGL->get_zoom(&x1,&y1,&x2,&y2);
+ d = (x2-x1)/3; x1 -= d; x2 -= d;
+ e->FMGL->set_zoom(x1,y1,x2,y2);
+}
//-----------------------------------------------------------------------------
-void mglCanvasFL::Adjust()
+void mgl_sz_cb(Fl_Widget*, void* v)
{
- SetSize(scroll->w(), scroll->h());
- FMGL->size(scroll->w(), scroll->h());
- Update();
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ mreal x1,x2,y1,y2,d;
+ e->FMGL->get_zoom(&x1,&y1,&x2,&y2);
+ d = (y2-y1)/4; y1 += d; y2 -= d;
+ d = (x2-x1)/4; x1 += d; x2 -= d;
+ e->FMGL->set_zoom(x1,y1,x2,y2);
}
-void adjust_cb(Fl_Widget*, void*v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->Adjust(); }
//-----------------------------------------------------------------------------
-void quit_cb(Fl_Widget*, void*v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->Wnd->hide(); }
+void mgl_so_cb(Fl_Widget*, void* v)
+{
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ mreal x1,x2,y1,y2,d;
+ e->FMGL->get_zoom(&x1,&y1,&x2,&y2);
+ d = (y2-y1)/2; y1 -= d; y2 += d;
+ d = (x2-x1)/2; x1 -= d; x2 += d;
+ e->FMGL->set_zoom(x1,y1,x2,y2);
+}
//-----------------------------------------------------------------------------
-void snext_cb(Fl_Widget*, void* v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->NextFrame(); }
+void mgl_adjust_cb(Fl_Widget*, void*v)
+{
+ Fl_MGLView *e = (Fl_MGLView*)v; if(!e) return;
+ mgl_set_size(e->FMGL->get_graph(), e->scroll->w(), e->scroll->h());
+ e->FMGL->size(e->scroll->w(), e->scroll->h()); e->update();
+}
+void mglCanvasFL::Adjust() { mgl_adjust_cb(0,mgl); }
+//-----------------------------------------------------------------------------
+void mgl_oncemore_cb(Fl_Widget*, void*v)
+{ Fl_MGLView *e = (Fl_MGLView*)v; if(e && e->reload) e->reload(e->par); }
+//-----------------------------------------------------------------------------
+void mgl_quit_cb(Fl_Widget*, void*) { Fl::first_window()->hide(); }
//-----------------------------------------------------------------------------
-void sprev_cb(Fl_Widget*, void* v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->PrevFrame(); }
+void mgl_snext_cb(Fl_Widget*, void* v)
+{ Fl_MGLView *e = (Fl_MGLView*)v; if(e && e->next) e->next(e->par); }
//-----------------------------------------------------------------------------
-void time_cb(void *v)
+void mgl_sprev_cb(Fl_Widget*, void* v)
+{ Fl_MGLView *e = (Fl_MGLView*)v; if(e && e->prev) e->prev(e->par); }
+//-----------------------------------------------------------------------------
+void mgl_time_cb(void *v)
{
- mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v);
- if(!g || !g->sshow) return;
- g->NextFrame();
- Fl::repeat_timeout(g->GetDelay(), time_cb, v);
+ Fl_MGLView *e = (Fl_MGLView*)v;
+ if(!e || !e->is_sshow() || !e->next || !e->delay) return;
+ e->next(e->par);
+ Fl::repeat_timeout(e->delay(e->par), mgl_time_cb, v);
}
//-----------------------------------------------------------------------------
-void mglCanvasFL::Animation()
+void mgl_sshow_cb(Fl_Widget *, void *v)
{
- sshow = GetNumFig()<2 ? 0 : 1-sshow;
- anim_bt->value(sshow);
- anim_bt->image(sshow?xpm_s2:xpm_s1); anim_bt->redraw();
- Fl_Menu_Item *m = (Fl_Menu_Item *)menu->find_item(gettext("Animate/Slideshow"));
- if(m && sshow) m->set();
- if(m && !sshow) m->clear();
- if(sshow) Fl::add_timeout(GetDelay(), time_cb, this);
+ Fl_MGLView *e = (Fl_MGLView*)v;
+ if(!e || !e->delay || !e->next) return;
+ e->toggle_sshow();
+ if(e->is_sshow()) Fl::add_timeout(e->delay(e->par), mgl_time_cb, v);
}
-void sshow_cb(Fl_Widget *, void *v)
-{ mglCanvasFL *g=dynamic_cast<mglCanvasFL*>((mglCanvas*)v); if(g) g->Animation(); }
-void no_cb(Fl_Widget *, void *) {}
+void mglCanvasFL::Animation() { mgl_sshow_cb(0,mgl); }
+void mgl_no_cb(Fl_Widget *, void *) {}
//-----------------------------------------------------------------------------
Fl_Menu_Item pop_graph[15] = {
- { gettext("Export"), 0, no_cb, 0, FL_SUBMENU,0,0,0,0},
- { gettext("... as PNG"), 0, export_png_cb,0,0,0,0,0,0 },
- { gettext("... as PNG (solid)"), 0, export_pngn_cb,0,0,0,0,0,0 },
- { gettext("... as JPEG"), 0, export_jpeg_cb,0,0,0,0,0,0 },
- { gettext("... as SVG"), 0, export_svg_cb,0,0,0,0,0,0 },
- { gettext("... as vector EPS"), 0, export_eps_cb,0,0,0,0,0,0 },
- { gettext("... as bitmap EPS"), 0, export_bps_cb, 0, FL_MENU_DIVIDER,0,0,0,0 },
+ { gettext("Export"), 0, mgl_no_cb, 0, FL_SUBMENU,0,0,0,0},
+ { gettext("... as PNG"), 0, mgl_export_png_cb,0,0,0,0,0,0 },
+ { gettext("... as PNG (solid)"), 0, mgl_export_pngn_cb,0,0,0,0,0,0 },
+ { gettext("... as JPEG"), 0, mgl_export_jpeg_cb,0,0,0,0,0,0 },
+ { gettext("... as SVG"), 0, mgl_export_svg_cb,0,0,0,0,0,0 },
+ { gettext("... as vector EPS"), 0, mgl_export_eps_cb,0,0,0,0,0,0 },
+ { gettext("... as bitmap EPS"), 0, mgl_export_bps_cb, 0, FL_MENU_DIVIDER,0,0,0,0 },
{ 0,0,0,0,0,0,0,0,0 },
{ gettext("Copy graphics"), 0, 0, 0, FL_MENU_INACTIVE|FL_MENU_DIVIDER,0,0,0,0},
- { gettext("Normal view"), 0, norm_cb,0,0,0,0,0,0 },
- { gettext("Redraw plot"), 0, draw_cb,0,0,0,0,0,0 },
- { gettext("Adjust size"), 0, adjust_cb,0,0,0,0,0,0 },
- { gettext("Reload data"), 0, oncemore_cb,0,0,0,0,0,0 },
+ { gettext("Normal view"), 0, mgl_norm_cb,0,0,0,0,0,0 },
+ { gettext("Redraw plot"), 0, mgl_draw_cb,0,0,0,0,0,0 },
+ { gettext("Adjust size"), 0, mgl_adjust_cb,0,0,0,0,0,0 },
+ { gettext("Reload data"), 0, mgl_oncemore_cb,0,0,0,0,0,0 },
{ 0,0,0,0,0,0,0,0,0 }
};
//-----------------------------------------------------------------------------
-Fl_Menu_Item menuitems[] = {
+Fl_Menu_Item mgl_menuitems[] = {
{ gettext("Export"), 0, 0, 0, FL_SUBMENU,0,0,0,0 },
- { gettext(".. as PNG"), FL_ALT + 'p', export_png_cb,0,0,0,0,0,0 },
- { gettext(".. as PNG (solid)"), FL_ALT + 'f', export_pngn_cb,0,0,0,0,0,0 },
- { gettext(".. as JPEG"), FL_ALT + 'j', export_jpeg_cb,0,0,0,0,0,0 },
- { gettext(".. as SVG"), FL_ALT + 's', export_svg_cb,0,0,0,0,0,0 },
- { gettext(".. as vector EPS"), FL_ALT + 'e', export_eps_cb,0,0,0,0,0,0 },
- { gettext(".. as bitmap EPS"), 0, export_bps_cb, 0, FL_MENU_DIVIDER,0,0,0,0 },
- { gettext("Exit"), FL_ALT + 'x', quit_cb,0,0,0,0,0,0 },
- { 0,0,0,0,0,0,0,0,0 },
- { gettext("Animate"), 0, 0, 0, FL_SUBMENU,0,0,0,0 },
- { gettext("Slideshow"), FL_CTRL + FL_F + 5, sshow_cb, 0, FL_MENU_TOGGLE,0,0,0,0 },
- { gettext("Next frame"),0, snext_cb,0,0,0,0,0,0 },
- { gettext("Prev frame"),0, sprev_cb,0,0,0,0,0,0 },
+ { gettext(".. as PNG"), FL_ALT + 'p', mgl_export_png_cb,0,0,0,0,0,0 },
+ { gettext(".. as PNG (solid)"), FL_ALT + 'f', mgl_export_pngn_cb,0,0,0,0,0,0 },
+ { gettext(".. as JPEG"), FL_ALT + 'j', mgl_export_jpeg_cb,0,0,0,0,0,0 },
+ { gettext(".. as SVG"), FL_ALT + 's', mgl_export_svg_cb,0,0,0,0,0,0 },
+ { gettext(".. as vector EPS"), FL_ALT + 'e', mgl_export_eps_cb,0,0,0,0,0,0 },
+ { gettext(".. as bitmap EPS"), 0, mgl_export_bps_cb, 0, FL_MENU_DIVIDER,0,0,0,0 },
+// { gettext("Exit"), FL_ALT + 'x', quit_cb,0,0,0,0,0,0 },
{ 0,0,0,0,0,0,0,0,0 },
{ gettext("Graphics"), 0, 0, 0, FL_SUBMENU,0,0,0,0 },
- { gettext("Alpha"), FL_ALT + 'a', alpha_cb, 0, FL_MENU_TOGGLE,0,0,0,0 },
- { gettext("Light"), FL_ALT + 'l', light_cb, 0, FL_MENU_TOGGLE,0,0,0,0 },
+ { gettext("Alpha"), FL_ALT + 'a', mgl_alpha_cb, 0, FL_MENU_TOGGLE,0,0,0,0 },
+ { gettext("Light"), FL_ALT + 'l', mgl_light_cb, 0, FL_MENU_TOGGLE,0,0,0,0 },
{ gettext("Copy graphics"), 0, 0, 0, FL_MENU_INACTIVE|FL_MENU_DIVIDER,0,0,0,0},
- { gettext("Normal view"), FL_ALT + ' ', norm_cb,0,0,0,0,0,0 },
- { gettext("Redraw plot"),FL_F + 5, draw_cb,0,0,0,0,0,0 },
- { gettext("Adjust size"), FL_F + 6, adjust_cb,0,0,0,0,0,0 },
- { gettext("Reload data"), 0, oncemore_cb,0,0,0,0,0,0 },
+ { gettext("Normal view"), FL_ALT + ' ', mgl_norm_cb,0,0,0,0,0,0 },
+ { gettext("Redraw plot"),FL_F + 5, mgl_draw_cb,0,0,0,0,0,0 },
+ { gettext("Adjust size"), FL_F + 6, mgl_adjust_cb,0,0,0,0,0,0 },
+ { gettext("Reload data"), 0, mgl_oncemore_cb,0,0,0,0,0,0 },
+ { 0,0,0,0,0,0,0,0,0 },
+ { gettext("Animate"), 0, 0, 0, FL_SUBMENU,0,0,0,0 },
+ { gettext("Slideshow"), FL_CTRL + FL_F + 5, mgl_sshow_cb, 0, FL_MENU_TOGGLE,0,0,0,0 },
+ { gettext("Next frame"),0, mgl_snext_cb,0,0,0,0,0,0 },
+ { gettext("Prev frame"),0, mgl_sprev_cb,0,0,0,0,0,0 },
{ 0,0,0,0,0,0,0,0,0 },
{ 0,0,0,0,0,0,0,0,0 }
};
//-----------------------------------------------------------------------------
-void mglCanvasFL::Window(int argc, char **argv, int (*draw)(mglBase *gr, void *p), const char *title, void *par, void (*reload)(void *p), bool maximize)
+Fl_MGLView::Fl_MGLView(int x, int y, int w, int h, char *label) : Fl_Window(x,y,w,h,label)
{
- SetDrawFunc(draw, par, reload);
- if(Wnd) { Wnd->label(title); Wnd->show(); return; }
-
- Fl_Window *w1=new Fl_Double_Window(0,0,830,660,title);
- menu = new Fl_Menu_Bar(0, 0, 830, 30);
- menu->copy(menuitems, this);
+ alpha = light = sshow = 0; menu = 0;
+ next = prev = reload = NULL; delay = NULL;
Fl_Group *g = new Fl_Group(0,30,410,30);
Fl_Button *o;
- alpha_bt = new Fl_Button(0, 31, 25, 25); alpha_bt->type(FL_TOGGLE_BUTTON);
- alpha_bt->image(xpm_a1); alpha_bt->callback(alpha_cb,this);
+ alpha_bt = new Fl_Button(0, 31, 25, 25); alpha_bt->type(FL_TOGGLE_BUTTON);
+ alpha_bt->image(xpm_a1); alpha_bt->callback(mgl_alpha_cb,this);
alpha_bt->tooltip(gettext("Switch on/off transparency in the picture"));
alpha_bt->box(FL_PLASTIC_UP_BOX); alpha_bt->down_box(FL_PLASTIC_DOWN_BOX);
- light_bt = new Fl_Button(25, 31, 25, 25); light_bt->type(FL_TOGGLE_BUTTON);
- light_bt->image(xpm_l1); light_bt->callback(light_cb,this);
+ light_bt = new Fl_Button(25, 31, 25, 25); light_bt->type(FL_TOGGLE_BUTTON);
+ light_bt->image(xpm_l1); light_bt->callback(mgl_light_cb,this);
light_bt->tooltip(gettext("Switch on/off lightning in the picture"));
light_bt->box(FL_PLASTIC_UP_BOX); light_bt->down_box(FL_PLASTIC_DOWN_BOX);
rotate_bt = new Fl_Button(55, 31, 25, 25); rotate_bt->type(FL_TOGGLE_BUTTON);
- rotate_bt->image(xpm_r1); rotate_bt->callback(rotate_cb,this);
+ rotate_bt->image(xpm_r1); rotate_bt->callback(mgl_rotate_cb,this);
rotate_bt->tooltip(gettext("Rotate picture by holding left mouse button"));
rotate_bt->box(FL_PLASTIC_UP_BOX); rotate_bt->down_box(FL_PLASTIC_DOWN_BOX);
- o = new Fl_Button(105, 31, 25, 25); o->tooltip(gettext("Return picture to normal zoom"));
- o->image(new Fl_Pixmap(zoom_out_xpm)); o->callback(norm_cb,this);
+ zoom_bt = new Fl_Button(80, 31, 25, 25); zoom_bt->type(FL_TOGGLE_BUTTON);
+ zoom_bt->image(xpm_z1); zoom_bt->callback(mgl_zoom_cb,this);
+ zoom_bt->tooltip(gettext("Zoom in selected region of the picture"));
+ zoom_bt->box(FL_PLASTIC_UP_BOX); zoom_bt->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(105, 31, 25, 25); o->tooltip(gettext("Return picture to normal zoom"));
+ o->image(new Fl_Pixmap(zoom_out_xpm)); o->callback(mgl_norm_cb,this);
o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
o = new Fl_Button(135, 31, 25, 25); o->tooltip(gettext("Refresh the picture"));
- o->image(new Fl_Pixmap(ok_xpm)); o->callback(draw_cb,this);
+ o->image(new Fl_Pixmap(ok_xpm)); o->callback(mgl_draw_cb,this);
o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
- tet = new Fl_Counter(170, 31, 90, 25, 0); tet->callback(draw_cb,this);
- phi = new Fl_Counter(265, 31, 90, 25, 0); phi->callback(draw_cb,this);
+ Fl_Counter *tet, *phi;
+ tet = new Fl_Counter(170, 31, 90, 25, 0); tet->callback(mgl_draw_cb,this);
+ phi = new Fl_Counter(265, 31, 90, 25, 0); phi->callback(mgl_draw_cb,this);
tet->lstep(10); tet->step(1); tet->range(-180,180);
tet->tooltip(gettext("Theta angle (tilt z-axis)"));
phi->lstep(10); phi->step(1); phi->range(-180,180);
phi->tooltip(gettext("Phi angle (rotate in x*y plane)"));
- tet->box(FL_PLASTIC_UP_BOX); phi->box(FL_PLASTIC_UP_BOX);
+ tet->box(FL_PLASTIC_UP_BOX); phi->box(FL_PLASTIC_UP_BOX);
g->end(); g->resizable(0);
g = new Fl_Group(0,60,30,260);
- o = new Fl_Button(1, 60, 25, 25); o->tooltip(gettext("Show previous frame in slideshow"));
- o->image(new Fl_Pixmap(prev_sl_xpm)); o->callback(sprev_cb,this);
+ o = new Fl_Button(1, 60, 25, 25); o->tooltip(gettext("Shift the picture up"));
+ o->image(new Fl_Pixmap(up_1_xpm)); o->callback(mgl_su_cb,this);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(1, 85, 25, 25); o->tooltip(gettext("Shift the picture left"));
+ o->image(new Fl_Pixmap(left_1_xpm)); o->callback(mgl_sl_cb,this);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(1, 110, 25, 25); o->tooltip(gettext("Zoom in the picture"));
+ o->image(new Fl_Pixmap(zoom_1_xpm)); o->callback(mgl_sz_cb,this);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(1, 135, 25, 25); o->tooltip(gettext("Zoom out the picture"));
+ o->image(new Fl_Pixmap(norm_1_xpm)); o->callback(mgl_so_cb,this);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ o = new Fl_Button(1, 160, 25, 25); o->tooltip(gettext("Shift the picture right"));
+ o->image(new Fl_Pixmap(right_1_xpm)); o->callback(mgl_sr_cb,this);
o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
- anim_bt = new Fl_Button(1, 85, 25, 25); anim_bt->type(FL_TOGGLE_BUTTON);
- anim_bt->image(xpm_s1); anim_bt->callback(sshow_cb,this);
+ o = new Fl_Button(1, 185, 25, 25); o->tooltip(gettext("Shift the picture down"));
+ o->image(new Fl_Pixmap(down_1_xpm)); o->callback(mgl_sd_cb,this);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+
+ o = new Fl_Button(1, 215, 25, 25); o->tooltip(gettext("Show previous frame in slideshow"));
+ o->image(new Fl_Pixmap(prev_sl_xpm)); o->callback(mgl_sprev_cb,this);
+ o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
+ anim_bt = new Fl_Button(1, 240, 25, 25); anim_bt->type(FL_TOGGLE_BUTTON);
+ anim_bt->image(xpm_s1); anim_bt->callback(mgl_sshow_cb,this);
anim_bt->tooltip(gettext("Run/Stop slideshow (graphics animation)"));
anim_bt->box(FL_PLASTIC_UP_BOX); anim_bt->down_box(FL_PLASTIC_DOWN_BOX);
- o = new Fl_Button(1, 110, 25, 25); o->tooltip(gettext("Show next frame in slideshow"));
- o->image(new Fl_Pixmap(next_sl_xpm)); o->callback(snext_cb,this);
+ o = new Fl_Button(1, 265, 25, 25); o->tooltip(gettext("Show next frame in slideshow"));
+ o->image(new Fl_Pixmap(next_sl_xpm)); o->callback(mgl_snext_cb,this);
o->box(FL_PLASTIC_UP_BOX); o->down_box(FL_PLASTIC_DOWN_BOX);
g->end(); g->resizable(0);
@@ -490,25 +587,61 @@ void mglCanvasFL::Window(int argc, char **argv, int (*draw)(mglBase *gr, void *p
FMGL = new Fl_MathGL(30, 60, 800, 600);
FMGL->tet_val = tet;
FMGL->phi_val = phi;
- FMGL->set_popup(pop_graph,w1,this);
- FMGL->set_graph(this);
- FMGL->set_draw(draw, par);
+ FMGL->set_popup(pop_graph,FMGL,this);
scroll->end();
+ resizable(scroll); end();
+}
+Fl_MGLView::~Fl_MGLView() {}
+//-----------------------------------------------------------------------------
+//
+// class mglCanvasFL
+//
+//-----------------------------------------------------------------------------
+mglCanvasFL::mglCanvasFL() : mglCanvasW() { Wnd=0; }
+mglCanvasFL::~mglCanvasFL() { if(Wnd) delete Wnd; }
+//-----------------------------------------------------------------------------
+void mglCanvasFL::GotoFrame(int d)
+{
+ int f = GetCurFig()+d;
+ if(f>=GetNumFig()) f = 0;
+ if(f<0) f = GetNumFig()-1;
+ if(GetNumFig()>0 && d) { SetCurFig(f); mgl->FMGL->redraw(); }
+}
+//-----------------------------------------------------------------------------
+void mgl_fl_next(void *v) { ((mglCanvasW*)v)->NextFrame(); } ///< Callback function for next frame
+void mgl_fl_prev(void *v) { ((mglCanvasW*)v)->PrevFrame(); } ///< Callback function for prev frame
+void mgl_fl_reload(void *v) { ((mglCanvasW*)v)->ReLoad(); } ///< Callback function for reloading
+float mgl_fl_delay(void *v) { return ((mglCanvasW*)v)->GetDelay(); } ///< Callback function for delay
+//-----------------------------------------------------------------------------
+void mglCanvasFL::Window(int argc, char **argv, int (*draw)(mglBase *gr, void *p), const char *title, void *par, void (*reload)(void *p), bool maximize)
+{
+ SetDrawFunc(draw, par, reload);
+ if(Wnd) { Wnd->label(title); Wnd->show(); return; }
+
+ Wnd = new Fl_Double_Window(0,0,830,660,title);
+
+ mgl = new Fl_MGLView(0,0,830,660); mgl->par = this;
- w1->end();
- Wnd = w1;
- w1->resizable(scroll); //w->graph);
+ mgl->menu = new Fl_Menu_Bar(0, 0, 830, 30);
+ mgl->menu->copy(mgl_menuitems, this);
+ mgl->next = mgl_fl_next; mgl->reload = mgl_fl_reload;
+ mgl->prev = mgl_fl_prev; mgl->delay= mgl_fl_delay;
+ mgl->FMGL->set_graph(this);
+ mgl->FMGL->set_draw(draw, par);
+
+ Wnd->end();
+ Wnd->resizable(mgl); //w->graph);
if(maximize)
{
int x,y,w,h;
Fl::screen_xywh(x,y,w,h);
- w1->resize(x,y,w,h);
+ Wnd->resize(x,y,w,h);
Adjust();
}
char *tmp[1]; tmp[0]=new char[1]; tmp[0][0]=0;
- w1->show(argv ? argc:0, argv ? argv:tmp);
+ Wnd->show(argv ? argc:0, argv ? argv:tmp);
delete []tmp[0];
}
//-----------------------------------------------------------------------------
@@ -530,9 +663,9 @@ void mgl_fltk_run_() { mgl_fltk_run(); }
//-----------------------------------------------------------------------------
void *mgl_fl_tmp(void *) { Fl::run(); return 0; }
/*void mgl_fltk_thread()
-{
- static pthread_t tmp;
- pthread_create(&tmp, 0, mgl_fl_tmp, 0);
- pthread_detach(tmp);
-}*/
+ * {
+ * static pthread_t tmp;
+ * pthread_create(&tmp, 0, mgl_fl_tmp, 0);
+ * pthread_detach(tmp);
+ * }*/
//-----------------------------------------------------------------------------
diff --git a/widgets/glut.cpp b/widgets/glut.cpp
index 41a4d69..5d72434 100644
--- a/widgets/glut.cpp
+++ b/widgets/glut.cpp
@@ -110,19 +110,19 @@ void _mgl_key_up(unsigned char ch,int ,int )
{
char str[128];
sprintf(str,"%s_%d.png",_mgl_glwnd->PlotId.c_str(),_mgl_glwnd->curr_fig);
- _mgl_glwnd->WritePNG(str, "Math GL");
+ mgl_write_png(_mgl_glwnd, str, "Math GL");
}
if(ch=='J')
{
char str[128];
sprintf(str,"%s_%d.jpg",_mgl_glwnd->PlotId.c_str(),_mgl_glwnd->curr_fig);
- _mgl_glwnd->WriteJPEG(str, "Math GL");
+ mgl_write_jpg(_mgl_glwnd, str, "Math GL");
}
if(ch=='E')
{
char str[128];
sprintf(str,"%s_%d.eps",_mgl_glwnd->PlotId.c_str(),_mgl_glwnd->curr_fig);
- _mgl_glwnd->WriteEPS(str, "Math GL");
+ mgl_write_eps(_mgl_glwnd, str, "Math GL");
}
if(ch==' ') _mgl_glwnd->Clf();
if(ch=='m') _mgl_glwnd->tt = 1-_mgl_glwnd->tt;
@@ -144,7 +144,7 @@ void _mgl_display()
// glEnable(GL_LINE_SMOOTH);
_mgl_glwnd->CurFrameId = 1;
if(_mgl_glwnd->AutoClf) _mgl_glwnd->Clf();
- _mgl_glwnd->SubPlot(1,1,0);
+ _mgl_glwnd->InPlot(0,1,0,1,false);
if(_mgl_glwnd->NumFig>0) glCallList(_mgl_glwnd->curr_fig);
else
{
diff --git a/widgets/qt.cpp b/widgets/qt.cpp
index 1425f56..0626521 100644
--- a/widgets/qt.cpp
+++ b/widgets/qt.cpp
@@ -35,6 +35,7 @@
#include <QPrinter>
#include <QPrintDialog>
#include <QFileDialog>
+#include <QInputDialog>
#include <stdio.h>
#include "mgl/qt.h"
//-----------------------------------------------------------------------------
@@ -56,7 +57,9 @@
#include "xpm/next_sl.xpm"
#include "xpm/prev_sl.xpm"
//-----------------------------------------------------------------------------
-const QString scriptName("default");
+void mgl_ask_qt(const wchar_t *quest, wchar_t *res)
+{ QInputDialog::getText(QApplication::activeWindow(), "MathGL",
+ QString::fromWCharArray(quest)).toWCharArray(res); }
//-----------------------------------------------------------------------------
//
// class QMathGL
@@ -65,24 +68,19 @@ const QString scriptName("default");
QMathGL::QMathGL(QWidget *parent, Qt::WindowFlags f) : QWidget(parent, f)
{
autoResize = false; draw_par = 0; draw_func = 0;
- graph = new mglCanvas;
+ gr = new mglCanvas; appName = "MathGL";
popup = 0; grBuf = 0;
phi = tet = per = 0;
x1 = y1 = 0; x2 = y2 = 1;
- alpha = light = zoom = rotate = false;
- resize(600, 400);
+ alpha = light = zoom = rotate = grid = false;
+ resize(600, 400); gr->set(MGL_CLF_ON_UPD);
+ timer = new QTimer(this);
// resize(graph->GetWidth(), graph->GetHeight());
-// convertFromGraph(pic, graph, &grBuf);
+// mglConvertFromGraph(pic, graph, &grBuf);
connect(timer, SIGNAL(timeout()), this, SLOT(nextSlide()));
}
//-----------------------------------------------------------------------------
-QMathGL::~QMathGL() { delete graph; if(grBuf) delete []grBuf; }
-//-----------------------------------------------------------------------------
-void QMathGL::setGraph(mglCanvas *gr)
-{
- if(!gr) return;
- delete graph; graph=gr;
-}
+QMathGL::~QMathGL() { delete gr; if(grBuf) delete []grBuf; }
//-----------------------------------------------------------------------------
void QMathGL::paintEvent(QPaintEvent *)
{
@@ -90,29 +88,41 @@ void QMathGL::paintEvent(QPaintEvent *)
paint.begin(this);
paint.drawPixmap(0,0,pic);
if(zoom) paint.drawRect(x0,y0,xe-x0,ye-y0);
- if(graph->get(MGL_SHOW_POS) && !mousePos.isEmpty())
+ if(gr->get(MGL_SHOW_POS) && !mousePos.isEmpty())
paint.drawText(0,12,mousePos);
+ if(grid)
+ {
+ int i, h=pic.height(), w=pic.width();
+ paint.setPen(QColor(192,192,192));
+ for(i=1;i<10;i++)
+ {
+ paint.drawText(0,i*h/10,QString::number(1-i*0.1));
+ paint.drawLine(0,i*h/10,w,i*h/10);
+ paint.drawText(i*w/10,h,QString::number(i*0.1));
+ paint.drawLine(i*w/10,0,i*w/10,h);
+ }
+ }
paint.end();
}
//-----------------------------------------------------------------------------
void QMathGL::resizeEvent(QResizeEvent *ev)
{
if(autoResize && ev->size().width()>0 && ev->size().height()>0)
- { graph->SetSize(ev->size().width(), ev->size().height()); update(); }
- else resize(graph->GetWidth(), graph->GetHeight());
+ { gr->SetSize(ev->size().width(), ev->size().height()); update(); }
+// else resize(graph->GetWidth(), graph->GetHeight());
}
//-----------------------------------------------------------------------------
void QMathGL::setPer(int p)
{
if(per!=p && p>=0 && p<100)
- { per = 100*p; emit perChanged(p); update(); }
+ { per = 100*p; emit perChanged(p); refresh(); }
}
//-----------------------------------------------------------------------------
void QMathGL::setPhi(int p)
-{ if(phi!=p) { phi = p; emit phiChanged(p); update(); } }
+{ if(phi!=p) { phi = p; emit phiChanged(p); refresh(); } }
//-----------------------------------------------------------------------------
void QMathGL::setTet(int t)
-{ if(tet!=t) { tet = t; emit tetChanged(t); update(); } }
+{ if(tet!=t) { tet = t; emit tetChanged(t); refresh(); } }
//-----------------------------------------------------------------------------
void QMathGL::setAlpha(bool a)
{ if(alpha!=a) { alpha = a; emit alphaChanged(a); update(); } }
@@ -120,37 +130,40 @@ void QMathGL::setAlpha(bool a)
void QMathGL::setLight(bool l)
{ if(light!=l) { light = l; emit lightChanged(l); update(); } }
//-----------------------------------------------------------------------------
+void QMathGL::setGrid(bool g)
+{ if(grid!=g) { grid = g; emit gridChanged(g); refresh(); } }
+//-----------------------------------------------------------------------------
void QMathGL::setRotate(bool r)
{
if(rotate!=r)
- { zoom=false; rotate=r; update(); emit rotateChanged(r); }
+ { zoom=false; rotate=r; refresh(); emit rotateChanged(r); }
}
//-----------------------------------------------------------------------------
-/*void QMathGL::setZoom(bool z)
+void QMathGL::setZoom(bool z)
{
if(zoom!=z)
- { zoom=z; rotate=false; update();
+ { zoom=z; rotate=false; refresh();
emit zoomChanged(z); emit rotateChanged(false); }
}
//-----------------------------------------------------------------------------
void QMathGL::shiftDown()
-{ mreal d=(y2-y1)/3; y1+=d; y2+=d; update(); }
+{ mreal d=(y2-y1)/3; y1+=d; y2+=d; refresh(); }
//-----------------------------------------------------------------------------
void QMathGL::shiftUp()
-{ mreal d=(y2-y1)/3; y1-=d; y2-=d; update(); }
+{ mreal d=(y2-y1)/3; y1-=d; y2-=d; refresh(); }
//-----------------------------------------------------------------------------
void QMathGL::shiftRight()
-{ mreal d=(x2-x1)/3; x1-=d; x2-=d; update(); }
+{ mreal d=(x2-x1)/3; x1-=d; x2-=d; refresh(); }
//-----------------------------------------------------------------------------
void QMathGL::shiftLeft()
-{ mreal d=(x2-x1)/3; x1+=d; x2+=d; update(); }
+{ mreal d=(x2-x1)/3; x1+=d; x2+=d; refresh(); }
//-----------------------------------------------------------------------------
void QMathGL::zoomIn()
{
mreal d;
d = (y2-y1)/4; y1 += d; y2 -= d;
d = (x2-x1)/4; x1 += d; x2 -= d;
- update();
+ refresh();
}
//-----------------------------------------------------------------------------
void QMathGL::zoomOut()
@@ -158,37 +171,55 @@ void QMathGL::zoomOut()
mreal d;
d = (y2-y1)/2; y1 -= d; y2 += d;
d = (x2-x1)/2; x1 -= d; x2 += d;
- update();
-}*/
+ refresh();
+}
//-----------------------------------------------------------------------------
void QMathGL::restore()
{
setPhi(0); setTet(0); setPer(0);
x1=y1=0; x2=y2=1; zoom=rotate=false;
- emit rotateChanged(false);
- update();
+ emit zoomChanged(false); emit rotateChanged(false);
+ refresh();
}
//-----------------------------------------------------------------------------
-void QMathGL::update(mglCanvas *gr)
+void QMathGL::stop() { gr->Stop=true; } //{ thr->terminate(); }
+void QMathGL::update()
{
- if(gr==0) gr = graph;
- if(gr==0) return;
- if(draw_func==0) { refresh(); return; }
- if(gr!=graph || graph->get(MGL_CLF_ON_UPD)) gr->DefaultPlotParam();
- char *buf=new char[2048]; buf[0]=0; gr->Message = buf;
+/* if(!thr->isRunning())
+ {
+ thr->gr = gr; thr->text = text;
+ thr->line = line; thr->start();
+ }
+ if(rotate) thr->wait();
+ else while(thr->isRunning()) qApp->processEvents();
+ if(warnMGL) warnMGL->setText(thr->warn);*/
- gr->Alpha(alpha); gr->Light(light);
- gr->View(tet,phi); gr->Perspective(per);
- draw_func(gr, draw_par);
+ if(draw_func)
+ {
+ if(gr->get(MGL_CLF_ON_UPD)) gr->DefaultPlotParam();
+ gr->Alpha(alpha); gr->Light(light);
+ if(!isHidden()) QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
+ setlocale(LC_ALL, "C"); // NOTE: I'm not sure what I should selocale manually???
+ draw_func(gr, draw_par);
+ setlocale(LC_ALL, "");
+ if(!isHidden()) QApplication::restoreOverrideCursor();
+ emit refreshData();
- if(buf[0] != 0) QMessageBox::warning(this, appName, buf);
- gr->Message = 0; delete []buf; mousePos="";
- if(gr==graph) refresh();
+ QString buf = gr->Mess.c_str();
+ if(!buf.isEmpty())
+ {
+ emit showWarn(buf);
+// QMessageBox::warning(this, appName, buf);
+ }
+ mousePos="";
+ }
+ refresh();
}
//-----------------------------------------------------------------------------
void QMathGL::refresh()
{
- convertFromGraph(pic, graph, &grBuf);
+ gr->Zoom(x1,y1,x2,y2); gr->View(phi,tet); gr->Perspective(per);
+ mglConvertFromGraph(pic, gr, &grBuf);
if(pic.size()!=size()) setSize(pic.width(), pic.height());
repaint();
}
@@ -197,10 +228,12 @@ void QMathGL::mousePressEvent(QMouseEvent *ev)
{
if(!zoom && !rotate && ev->button()&Qt::LeftButton)
{
- mglPoint p = graph->CalcXYZ(ev->x(), ev->y());
+ mglPoint p = gr->CalcXYZ(ev->x(), ev->y());
mousePos.sprintf("x=%g, y=%g, z=%g",p.x,p.y,p.z);
repaint();
emit mouseClick(p.x,p.y,p.z);
+ emit posChanged(mousePos);
+ emit objChanged(gr->GetObjId(ev->x(),ev->y())-1);
}
xe=x0=ev->x(); ye=y0=ev->y(); ev->accept();
}
@@ -219,7 +252,7 @@ void QMathGL::mouseReleaseEvent(QMouseEvent *ev)
if(x1>x2) { _x1=x1; x1=x2; x2=_x1; }
if(y1>y2) { _x1=y1; y1=y2; y2=_x1; }
x0 = xe; y0 = ye;
- update();
+ refresh();
}
}
if(ev->button()&Qt::RightButton && popup && !rotate) // popup menu
@@ -236,11 +269,11 @@ void QMathGL::mouseMoveEvent(QMouseEvent *ev)
{
mreal ff = 240/sqrt(mreal(width()*height()));
phi += int((x0-xe)*ff);
- tet += int((y0-ye)*ff);
+ tet -= int((y0-ye)*ff);
if(phi>180) phi-=360; if(phi<-180) phi+=360;
if(tet>180) tet-=360; if(tet<-180) tet+=360;
emit tetChanged(int(tet)); emit phiChanged(int(phi));
- update();
+ refresh();
}
if(ev->buttons()&Qt::RightButton) // zoom and perspective
{
@@ -251,21 +284,24 @@ void QMathGL::mouseMoveEvent(QMouseEvent *ev)
per = per + gg;
if(per<0) per = 0; if(per>=1) per = 0.9999;
if(gg) emit perChanged(int(per));
- update();
+ refresh();
}
if(ev->buttons()&Qt::MidButton) // shift
{
mreal ff = 1./sqrt(mreal(width()*height()));
mreal dx = (x0-xe)*ff*(x2-x1), dy = (y0-ye)*ff*(y2-y1);
- x1 += dx; x2 += dx; y1 -= dy; y2 -= dy;
+ x1 -= dx; x2 -= dx; y1 += dy; y2 += dy;
}
x0 = xe; y0 = ye;
- update();
+ refresh();
}
- if(zoom) update();
+ if(zoom) refresh();
ev->accept();
}
//-----------------------------------------------------------------------------
+void QMathGL::imgSize(int w, int h)
+{ if(w>0 && h>0) { gr->SetSize(w,h); update(); } }
+//-----------------------------------------------------------------------------
QString setExtension(QString &fname, const char *ext)
{
QString oname;
@@ -273,80 +309,179 @@ QString setExtension(QString &fname, const char *ext)
return oname;
}
//-----------------------------------------------------------------------------
+void QMathGL::exportGIF(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else mgl_write_gif(gr,setExtension(fname,"png").toAscii(), appName.toAscii());
+}
+//-----------------------------------------------------------------------------
void QMathGL::exportPNG(QString fname)
{
- if(fname.isEmpty()) fname = scriptName;
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
- else graph->WritePNG(setExtension(fname,"png").toAscii(), appName.toAscii());
+ else mgl_write_png(gr,setExtension(fname,"png").toAscii(), appName.toAscii());
}
//-----------------------------------------------------------------------------
void QMathGL::exportPNGs(QString fname)
{
- if(fname.isEmpty()) fname = scriptName;
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
- else graph->WritePNGs(setExtension(fname,"png").toAscii(), appName.toAscii());
+ else mgl_write_png_solid(gr,setExtension(fname,"png").toAscii(), appName.toAscii());
}
//-----------------------------------------------------------------------------
void QMathGL::exportJPG(QString fname)
{
- if(fname.isEmpty()) fname = scriptName;
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
- else graph->WriteJPEG(setExtension(fname,"jpg").toAscii(), appName.toAscii());
+ else mgl_write_jpg(gr,setExtension(fname,"jpg").toAscii(), appName.toAscii());
}
//-----------------------------------------------------------------------------
void QMathGL::exportBPS(QString fname)
{
- if(fname.isEmpty()) fname = scriptName;
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
else
{
setlocale(LC_ALL, "C");
- graph->WriteEPS(setExtension(fname,"eps").toAscii(), appName.toAscii());
+ mgl_write_bps(gr,setExtension(fname,"eps").toAscii(), appName.toAscii());
setlocale(LC_ALL, "");
}
}
//-----------------------------------------------------------------------------
void QMathGL::exportEPS(QString fname)
{
- if(fname.isEmpty()) fname = scriptName;
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
else
{
setlocale(LC_ALL, "C");
- graph->WriteEPS(setExtension(fname,"eps").toAscii(), appName.toAscii());
+ mgl_write_eps(gr,setExtension(fname,"eps").toAscii(), appName.toAscii());
setlocale(LC_ALL, "");
}
}
//-----------------------------------------------------------------------------
void QMathGL::exportSVG(QString fname)
{
- if(fname.isEmpty()) fname = scriptName;
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else
+ {
+ setlocale(LC_ALL, "C");
+ mgl_write_svg(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
+ setlocale(LC_ALL, "");
+ }
+}
+//-----------------------------------------------------------------------------
+void QMathGL::exportXYZ(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else
+ {
+ setlocale(LC_ALL, "C");
+ mgl_write_xyz(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
+ setlocale(LC_ALL, "");
+ }
+}
+//-----------------------------------------------------------------------------
+void QMathGL::exportTEX(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else
+ {
+ setlocale(LC_ALL, "C");
+ mgl_write_tex(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
+ setlocale(LC_ALL, "");
+ }
+}
+//-----------------------------------------------------------------------------
+void QMathGL::exportOFF(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else
+ {
+ setlocale(LC_ALL, "C");
+ mgl_write_off(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
+ setlocale(LC_ALL, "");
+ }
+}
+//-----------------------------------------------------------------------------
+void QMathGL::exportOBJ(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
else
{
setlocale(LC_ALL, "C");
- graph->WriteSVG(setExtension(fname,"svg").toAscii(), appName.toAscii());
+ mgl_write_obj(gr,setExtension(fname,"svg").toAscii(), appName.toAscii(),0);
+ setlocale(LC_ALL, "");
+ }
+}
+//-----------------------------------------------------------------------------
+void QMathGL::exportSTL(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else
+ {
+ setlocale(LC_ALL, "C");
+ mgl_write_stl(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
+ setlocale(LC_ALL, "");
+ }
+}
+//-----------------------------------------------------------------------------
+void QMathGL::exportWRL(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else
+ {
+ setlocale(LC_ALL, "C");
+ mgl_write_wrl(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
+ setlocale(LC_ALL, "");
+ }
+}
+//-----------------------------------------------------------------------------
+void QMathGL::exportX3D(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else
+ {
+ setlocale(LC_ALL, "C");
+ mgl_write_x3d(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
+ setlocale(LC_ALL, "");
+ }
+}
+//-----------------------------------------------------------------------------
+void QMathGL::exportTGA(QString fname)
+{
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
+ if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
+ else
+ {
+ setlocale(LC_ALL, "C");
+ mgl_write_tga(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
setlocale(LC_ALL, "");
}
}
//-----------------------------------------------------------------------------
void QMathGL::exportIDTF(QString fname)
{
- if(fname.isEmpty()) fname = scriptName;
+ if(fname.isEmpty()) fname = gr->PlotId.c_str();
if(fname.isEmpty()) QMessageBox::critical(this, appName, tr("No filename."),QMessageBox::Ok,0,0);
else
- { // TODO: Add IDTF/U3D export
-/* mglGraphIDTF *ps = new mglGraphIDTF;
- ps->SetFont(graph->GetFont());
- update(ps);
+ {
setlocale(LC_ALL, "C");
- ps->WriteIDTF(setExtension(fname,"idtf").toAscii(), appName.toAscii());
+ mgl_write_idtf(gr,setExtension(fname,"svg").toAscii(), appName.toAscii());
setlocale(LC_ALL, "");
- delete ps;*/
}
}
//-----------------------------------------------------------------------------
-void convertFromGraph(QPixmap &pic, mglCanvas *gr, uchar **buf)
+void mglConvertFromGraph(QPixmap &pic, mglCanvas *gr, uchar **buf)
{
const uchar *bb = gr->GetBits();
register long i,w=gr->GetWidth(), h=gr->GetHeight();
@@ -364,19 +499,21 @@ void convertFromGraph(QPixmap &pic, mglCanvas *gr, uchar **buf)
}
//-----------------------------------------------------------------------------
void QMathGL::copy()
-{
- QClipboard *cb = QApplication::clipboard();
- cb->setPixmap(pic, QClipboard::Clipboard);
-}
+{ QClipboard *cb = QApplication::clipboard();
+ cb->setPixmap(pic, QClipboard::Clipboard); }
+//-----------------------------------------------------------------------------
+void QMathGL::copyClickCoor()
+{ QApplication::clipboard()->setText(mousePos); }
//-----------------------------------------------------------------------------
void QMathGL::setMGLFont(QString path)
-{
- if(path.isEmpty()) graph->GetFont()->Restore();
- else graph->GetFont()->Load(path.toAscii());
-}
+{ if(path.isEmpty()) gr->GetFont()->Restore();
+ else gr->GetFont()->Load(path.toAscii()); }
//-----------------------------------------------------------------------------
void QMathGL::setSize(int w, int h)
-{ graph->SetSize(w,h); resize(w, h); update(); };
+{
+ resize(w, h);
+ if(w!=pic.width() || h!=pic.height()) { gr->SetSize(w,h); update(); } // update only when image size is changed
+}
//-----------------------------------------------------------------------------
void QMathGL::about()
{
@@ -406,52 +543,62 @@ void QMathGL::print()
delete printer;
}
//-----------------------------------------------------------------------------
-//
-// class mglCanvasQT
-//
-//-----------------------------------------------------------------------------
-mglCanvasQT::mglCanvasQT() : mglCanvasW()
-{ Wnd = 0; anim=0; }
+void QMathGL::nextSlide()
+{
+ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr);
+ if(g && g->GetNumFig()>1) g->NextFrame();
+ emit frameChanged(+1);
+}
+void QMathGL::prevSlide()
+{
+ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr);
+ if(g && g->GetNumFig()>1) g->PrevFrame();
+ emit frameChanged(-1);
+}
//-----------------------------------------------------------------------------
-void mglCanvasQT::NextFrame()
+void QMathGL::animation(bool st)
{
- if(GetNumFig()>0)
- { SetCurFig(GetCurFig()>GetNumFig()-1 ? 0 : GetCurFig()+1); QMGL->refresh(); }
+ if(st) timer->stop();
+ else timer->start(int(gr->GetDelay()*1000));
}
//-----------------------------------------------------------------------------
-void mglCanvasQT::PrevFrame()
+void QMathGL::adjust()
{
- if(GetNumFig()>0)
- { SetCurFig(GetCurFig()<0 ? GetNumFig()-1 : GetCurFig()-1); QMGL->refresh(); }
+ gr->SetSize(parentWidget()->width()-3, parentWidget()->height()-3);
+ setSize(parentWidget()->width()-3, parentWidget()->height()-3);
+ update();
}
//-----------------------------------------------------------------------------
-void mglCanvasQT::Animation()
+//
+// class mglCanvasQT
+//
+//-----------------------------------------------------------------------------
+mglCanvasQT::mglCanvasQT() : mglCanvasW()
+{ Wnd = 0; }
+//-----------------------------------------------------------------------------
+void mglCanvasQT::GotoFrame(int d)
{
- if(anim)
- {
- bool s = anim->isChecked();
- anim->setChecked(!s);
- if(s) timer->stop();
- else timer->start(int(GetDelay()*1000));
- }
+ int f = GetCurFig()+d;
+ if(f>=GetNumFig()) f = 0;
+ if(f<0) f = GetNumFig()-1;
+ if(GetNumFig()>0 && d) { SetCurFig(f); QMGL->refresh(); }
}
//-----------------------------------------------------------------------------
+void mglCanvasQT::Animation() { QMGL->animation(true); } // TODO: Add toggle ???
+//-----------------------------------------------------------------------------
void mglCanvasQT::ToggleAlpha() { QMGL->setAlpha(!QMGL->getAlpha()); }
//-----------------------------------------------------------------------------
void mglCanvasQT::ToggleLight() { QMGL->setLight(!QMGL->getLight()); }
//-----------------------------------------------------------------------------
void mglCanvasQT::ToggleNo() { QMGL->restore(); }
//-----------------------------------------------------------------------------
+void mglCanvasQT::ToggleZoom() { QMGL->setZoom(!QMGL->getZoom()); }
+//-----------------------------------------------------------------------------
void mglCanvasQT::ToggleRotate(){ QMGL->setRotate(!QMGL->getRotate());}
//-----------------------------------------------------------------------------
-void mglCanvasQT::Update() { SetCurFig(0); QMGL->restore(); }
+void mglCanvasQT::Update() { SetCurFig(0); QMGL->update(); }
//-----------------------------------------------------------------------------
-void mglCanvasQT::Adjust()
-{
- SetSize(scroll->width()-3, scroll->height()-3);
- QMGL->setSize(scroll->width()-3, scroll->height()-3);
- Update();
-}
+void mglCanvasQT::Adjust() { QMGL->adjust(); }
//-----------------------------------------------------------------------------
void mglCanvasQT::Window(int argc, char **argv, int (*draw)(mglBase *gr, void *p), const char *title, void *par, void (*reload)(void *p), bool maximize)
{
@@ -482,44 +629,52 @@ void mglCanvasQT::Window(int argc, char **argv, int (*draw)(mglBase *gr, void *p
Wnd = new QMainWindow; Wnd->resize(650,480);
Wnd->setWindowTitle(title);
scroll = new QScrollArea(Wnd);
- timer = new QTimer(Wnd);
- QMGL = new QMathGL(Wnd); makeMenu();
+ QMGL = new QMathGL(Wnd);
+ popup = mglMakeMenu(Wnd, QMGL, tet, phi);
QMGL->setPopup(popup); QMGL->setGraph(this);
QMGL->setDraw(draw, par);
+ QMGL->appName = title;
qApp->processEvents();
scroll->setWidget(QMGL);
Wnd->setCentralWidget(scroll);
- QMGL->update();
+ QMGL->refresh();
if(!maximize) Wnd->show();
else Wnd->showMaximized();
}
//-----------------------------------------------------------------------------
#define TR QObject::tr
-void mglCanvasQT::makeMenu()
+QMenu *mglMakeMenu(QMainWindow *Wnd, QMathGL *QMGL, QSpinBox *tet, QSpinBox *phi)
{
QAction *a;
QMenu *o, *oo;
QToolBar *bb;
- popup = new QMenu(Wnd);
+ QMenu *popup = new QMenu(Wnd);
// file menu
{
o = Wnd->menuBar()->addMenu(TR("&File"));
- oo = new QMenu(TR("&Export as ..."),Wnd);
+ oo = new QMenu(TR("&Export as 2D ..."),Wnd);
oo->addAction(TR("PNG"), QMGL, SLOT(exportPNG()),Qt::ALT+Qt::Key_P);
oo->addAction(TR("solid PNG"), QMGL, SLOT(exportPNGs()),Qt::ALT+Qt::Key_F);
oo->addAction(TR("JPEG"), QMGL, SLOT(exportJPG()),Qt::ALT+Qt::Key_J);
oo->addAction(TR("bitmap EPS"), QMGL, SLOT(exportBPS()));
oo->addAction(TR("vector EPS"), QMGL, SLOT(exportEPS()),Qt::ALT+Qt::Key_E);
oo->addAction(TR("SVG"), QMGL, SLOT(exportSVG()),Qt::ALT+Qt::Key_S);
+ oo->addAction(TR("LaTeX"), QMGL, SLOT(exportTEX()));
+ o->addMenu(oo); popup->addMenu(oo);
+ oo = new QMenu(TR("&Export as 3D ..."),Wnd);
+ oo->addAction(TR("X3D"), QMGL, SLOT(exportX3D()));
+ oo->addAction(TR("WRL"), QMGL, SLOT(exportWRL()));
+ oo->addAction(TR("XYZ"), QMGL, SLOT(exportXYZ()));
+ oo->addAction(TR("OBJ"), QMGL, SLOT(exportOBJ()));
+ oo->addAction(TR("STL"), QMGL, SLOT(exportSTL()));
oo->addAction(TR("IDTF"), QMGL, SLOT(exportIDTF()));
- o->addMenu(oo);
- popup->addMenu(oo);
+ o->addMenu(oo); popup->addMenu(oo);
o->addSeparator();
a = new QAction(QPixmap(fileprint), TR("Print &graphics"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(print()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(print()));
a->setToolTip(TR("Open printer dialog and print graphics\t(CTRl+P)"));
a->setShortcut(Qt::CTRL+Qt::Key_P); o->addAction(a);
o->addSeparator();
@@ -556,22 +711,22 @@ void mglCanvasQT::makeMenu()
bb->addAction(a);
o->addSeparator();
a = new QAction(QPixmap(zoom_out_xpm), TR("Res&tore"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(restore()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(restore()));
a->setToolTip(TR("Restore default graphics rotation, zoom and perspective (Alt+Space)."));
a->setShortcut(Qt::ALT+Qt::Key_Space);
o->addAction(a); bb->addAction(a); popup->addAction(a);
bb->addSeparator();
a = new QAction(QPixmap(ok_xpm), TR("Re&draw"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(update()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(update()));
a->setToolTip(TR("Execute script and redraw graphics (F5)."));
a->setShortcut(Qt::Key_F5);
o->addAction(a); bb->addAction(a); popup->addAction(a);
a = new QAction(TR("&Adjust size"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(adjust()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(adjust()));
a->setToolTip(TR("Change canvas size to fill whole region (F6)."));
a->setShortcut(Qt::Key_F6); o->addAction(a);
a = new QAction(QPixmap(copy_xpm), TR("&Copy plot"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(copy()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(copy()));
a->setToolTip(TR("Copy graphics to clipboard (CTRl+C)."));
a->setShortcut(Qt::CTRL+Qt::Key_C);
o->addAction(a); bb->addAction(a); popup->addAction(a);
@@ -595,27 +750,27 @@ void mglCanvasQT::makeMenu()
bb = new QToolBar(TR("Zoom graphics"),Wnd);
Wnd->addToolBar(Qt::LeftToolBarArea, bb);
a = new QAction(QPixmap(left_1_xpm), TR("Move &left"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(shiftLeft()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(shiftLeft()));
a->setToolTip(TR("Move graphics left by 1/3 of its width."));
bb->addAction(a); oo->addAction(a);
a = new QAction(QPixmap(up_1_xpm), TR("Move &up"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(shiftUp()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(shiftUp()));
a->setToolTip(TR("Move graphics up by 1/3 of its height."));
bb->addAction(a); oo->addAction(a);
a = new QAction(QPixmap(zoom_1_xpm), TR("Zoom &in"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(zoomIn()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(zoomIn()));
a->setToolTip(TR("Zoom in graphics."));
bb->addAction(a); oo->addAction(a);
a = new QAction(QPixmap(norm_1_xpm), TR("Zoom &out"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(zoomOut()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(zoomOut()));
a->setToolTip(TR("Zoom out graphics."));
bb->addAction(a); oo->addAction(a);
a = new QAction(QPixmap(down_1_xpm), TR("Move &down"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(shiftDown()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(shiftDown()));
a->setToolTip(TR("Move graphics up down 1/3 of its height."));
bb->addAction(a); oo->addAction(a);
a = new QAction(QPixmap(right_1_xpm), TR("Move &right"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(shiftRight()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(shiftRight()));
a->setToolTip(TR("Move graphics right by 1/3 of its width."));
bb->addAction(a); oo->addAction(a);
}
@@ -625,16 +780,16 @@ void mglCanvasQT::makeMenu()
bb = new QToolBar(TR("Animation"),Wnd);
Wnd->addToolBar(Qt::LeftToolBarArea, bb);
a = new QAction(QPixmap(next_sl_xpm), TR("&Next slide"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(nextSlide()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(nextSlide()));
a->setToolTip(TR("Show next slide (Alt+Right)."));
a->setShortcut(Qt::ALT+Qt::Key_Right); o->addAction(a); bb->addAction(a);
a = new QAction(QPixmap(show_sl_xpm), TR("&Slideshow"), Wnd);
- a->setCheckable(true); anim = a;
+ a->setCheckable(true);
Wnd->connect(a, SIGNAL(toggled(bool)), QMGL, SLOT(animation(bool)));
a->setToolTip(TR("Run slideshow (CTRl+F5)."));
a->setShortcut(Qt::CTRL+Qt::Key_F5); o->addAction(a); bb->addAction(a);
a = new QAction(QPixmap(prev_sl_xpm), TR("&Prev slide"), Wnd);
- Wnd->connect(a, SIGNAL(activated()), QMGL, SLOT(prevSlide()));
+ Wnd->connect(a, SIGNAL(triggered()), QMGL, SLOT(prevSlide()));
a->setToolTip(TR("Show previous slide (Alt+Left)."));
a->setShortcut(Qt::ALT+Qt::Key_Left); o->addAction(a); bb->addAction(a);
}
diff --git a/widgets/window.cpp b/widgets/window.cpp
index cb4c764..83192ce 100644
--- a/widgets/window.cpp
+++ b/widgets/window.cpp
@@ -21,20 +21,30 @@
//-----------------------------------------------------------------------------
mglCanvasW::mglCanvasW() : mglCanvas()
{
- Setup(true,false,true); Delay=0.5;
+ Setup(true,false,true);
LoadFunc=0; FuncPar=0; DrawFunc=0;
GG = 0; NumFig = 0; CurFig = -1;
+// set(MGL_USEDRWDAT); // TODO: experimental feature -- test later
}
//-----------------------------------------------------------------------------
mglCanvasW::~mglCanvasW() { if(GG) free(GG); }
//-----------------------------------------------------------------------------
void mglCanvasW::Clf(mglColor Back) { if(get(MGL_AUTO_CLF)) mglCanvas::Clf(Back); }
//-----------------------------------------------------------------------------
-void mglCanvasW::SetSize(int w,int h)
+void mglCanvasW::SetCurFig(int c) { CurFig=c; if(get(MGL_USEDRWDAT)) GetDrwDat(c); }
+//-----------------------------------------------------------------------------
+void mglCanvasW::ClearFrames()
{
if(GG) free(GG); GG = 0;
+ CurFrameId = NumFig = CurFig = 0;
+ DrwDat.clear();
+}
+//-----------------------------------------------------------------------------
+void mglCanvasW::SetSize(int w,int h)
+{
+ ClearFrames();
mglCanvas::SetSize(w,h);
- // if(Wnd) Wnd->size(w,h);
+// if(Wnd) Wnd->size(w,h);
}
//-----------------------------------------------------------------------------
void mglCanvasW::EndFrame()
@@ -57,8 +67,7 @@ void mglCanvasW::EndFrame()
//-----------------------------------------------------------------------------
void mglCanvasW::SetDrawFunc(int (*draw)(mglBase *gr, void *p), void *par, void (*reload)(void *p))
{
- NumFig=0; CurFig=0;
- CurFrameId = 0;
+ ClearFrames();
int n = draw ? draw(this,par) : 0;
if(n<NumFig && n>=0) NumFig = n;
DrawFunc = draw; FuncPar = par;
@@ -74,16 +83,24 @@ const unsigned char *mglCanvasW::GetBits()
}
//-----------------------------------------------------------------------------
void mglCanvasW::ReLoad()
-{ if(LoadFunc) { LoadFunc(FuncPar); Update(); } }
+{
+ if(LoadFunc)
+ {
+ LoadFunc(FuncPar);
+ // update number of slides
+ ClearFrames();
+ int n = DrawFunc ? DrawFunc(this,FuncPar) : 0;
+ if(n<NumFig && n>=0) NumFig = n;
+ Update();
+ }
+}
//-----------------------------------------------------------------------------
-void mgl_wnd_set_delay(HMGL gr, mreal dt)
-{ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr); if(g) g->SetDelay(dt); }
void mgl_wnd_toggle_alpha(HMGL gr)
{ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr); if(g) g->ToggleAlpha(); }
void mgl_wnd_toggle_light(HMGL gr)
{ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr); if(g) g->ToggleLight(); }
-//void mgl_wnd_toggle_zoom(HMGL gr)
-//{ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr); if(g) g->ToggleZoom(); }
+void mgl_wnd_toggle_zoom(HMGL gr)
+{ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr); if(g) g->ToggleZoom(); }
void mgl_wnd_toggle_rotate(HMGL gr)
{ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr); if(g) g->ToggleRotate(); }
void mgl_wnd_toggle_no(HMGL gr)
@@ -101,18 +118,15 @@ void mgl_wnd_prev_frame(HMGL gr)
void mgl_wnd_animation(HMGL gr)
{ mglCanvasW *g = dynamic_cast<mglCanvasW *>(gr); if(g) g->Animation(); }
//-----------------------------------------------------------------------------
-void mgl_wnd_set_delay_(uintptr_t *gr, mreal *dt)
-{ mglCanvasW *g = dynamic_cast<mglCanvasW *>((HMGL)(*gr));
- if(g) g->SetDelay(*dt); }
void mgl_wnd_toggle_alpha_(uintptr_t *gr)
{ mglCanvasW *g = dynamic_cast<mglCanvasW *>((HMGL)(*gr));
if(g) g->ToggleAlpha(); }
void mgl_wnd_toggle_light_(uintptr_t *gr)
{ mglCanvasW *g = dynamic_cast<mglCanvasW *>((HMGL)(*gr));
if(g) g->ToggleLight(); }
-//void mgl_wnd_toggle_zoom_(uintptr_t *gr)
-//{ mglCanvasW *g = dynamic_cast<mglCanvasW *>((HMGL)(*gr));
-// if(g) g->ToggleZoom(); }
+void mgl_wnd_toggle_zoom_(uintptr_t *gr)
+{ mglCanvasW *g = dynamic_cast<mglCanvasW *>((HMGL)(*gr));
+ if(g) g->ToggleZoom(); }
void mgl_wnd_toggle_rotate_(uintptr_t *gr)
{ mglCanvasW *g = dynamic_cast<mglCanvasW *>((HMGL)(*gr));
if(g) g->ToggleRotate(); }
--
Packaging for mathgl
More information about the debian-science-commits
mailing list